diff options
author | fche <fche> | 2005-07-28 18:07:02 +0000 |
---|---|---|
committer | fche <fche> | 2005-07-28 18:07:02 +0000 |
commit | 24cb178fd82936f55d254ebd0cd79802da21134a (patch) | |
tree | d9fbde4a94c16abf37a994c7d3ae147d04b77919 | |
parent | b290c791d701b5841ed824fddfce3f949b0a7b61 (diff) | |
download | systemtap-steved-24cb178fd82936f55d254ebd0cd79802da21134a.tar.gz systemtap-steved-24cb178fd82936f55d254ebd0cd79802da21134a.tar.xz systemtap-steved-24cb178fd82936f55d254ebd0cd79802da21134a.zip |
2005-07-28 Frank Ch. Eigler <fche@redhat.com>
translator/1120
* main.cxx (main): Preset -R and -I options from environment
variables (if set). Pass guru mode flags to parser.
* parse.cxx (privileged): New parser operation flag. Update callers.
(parse_embeddedcode): Throw an error if !privileged.
(parse_functiondecl): Change signature. Prevent duplicates.
(parse_globals): Ditto.
* parse.h: Corresponding changes.
* tapset/*.stp: Beginnings of real tapset library, to replace
previous builtins.
* tapsets.cxx: Greatly reduce verbose mode output.
* Makefile.am: Install & dist it.
* runtest.sh: Refer to it.
* Makefile.in, aclocal.m4: Regenerated.
* testsuite/*/*.stp: Set guru mode via /bin/sh if needed.
* testusite/*/*ko.stp: Homogenize shell scripts.
-rw-r--r-- | ChangeLog | 19 | ||||
-rw-r--r-- | Makefile.am | 6 | ||||
-rw-r--r-- | Makefile.in | 128 | ||||
-rw-r--r-- | aclocal.m4 | 458 | ||||
-rw-r--r-- | main.cxx | 48 | ||||
-rw-r--r-- | parse.cxx | 68 | ||||
-rw-r--r-- | parse.h | 11 | ||||
-rwxr-xr-x | runtest.sh | 6 | ||||
-rw-r--r-- | tapset/builtin_log.stp | 7 | ||||
-rw-r--r-- | tapset/builtin_printk.stp | 7 | ||||
-rw-r--r-- | tapset/builtin_warn.stp | 7 | ||||
-rw-r--r-- | tapsets.cxx | 32 | ||||
-rwxr-xr-x | testsuite/buildko/one.stp | 6 | ||||
-rwxr-xr-x | testsuite/buildok/two.stp | 6 | ||||
-rwxr-xr-x | testsuite/parseko/eleven.stp | 4 | ||||
-rwxr-xr-x | testsuite/parseko/fourteen.stp | 7 | ||||
-rwxr-xr-x | testsuite/parseko/ten.stp | 6 | ||||
-rwxr-xr-x | testsuite/parseko/thirteen.stp | 7 | ||||
-rwxr-xr-x | testsuite/parseko/twelve.stp | 4 | ||||
-rwxr-xr-x | testsuite/parseok/semko.stp | 11 | ||||
-rwxr-xr-x | testsuite/parseok/twelve.stp | 6 | ||||
-rwxr-xr-x | testsuite/semok/transko.stp | 8 | ||||
-rwxr-xr-x | testsuite/transok/buildko.stp | 8 | ||||
-rwxr-xr-x | testsuite/transok/nine.stp | 6 |
24 files changed, 446 insertions, 430 deletions
@@ -1,6 +1,25 @@ 2005-07-28 Frank Ch. Eigler <fche@redhat.com> translator/1120 + * main.cxx (main): Preset -R and -I options from environment + variables (if set). Pass guru mode flags to parser. + * parse.cxx (privileged): New parser operation flag. Update callers. + (parse_embeddedcode): Throw an error if !privileged. + (parse_functiondecl): Change signature. Prevent duplicates. + (parse_globals): Ditto. + * parse.h: Corresponding changes. + * tapset/*.stp: Beginnings of real tapset library, to replace + previous builtins. + * tapsets.cxx: Greatly reduce verbose mode output. + * Makefile.am: Install & dist it. + * runtest.sh: Refer to it. + * Makefile.in, aclocal.m4: Regenerated. + * testsuite/*/*.stp: Set guru mode via /bin/sh if needed. + * testusite/*/*ko.stp: Homogenize shell scripts. + +2005-07-28 Frank Ch. Eigler <fche@redhat.com> + + translator/1120 translator/1123 * elaborate.cxx (semantic_pass_symbols): Print a more helpful error message around exceptions. diff --git a/Makefile.am b/Makefile.am index e3262f68..327bdbaf 100644 --- a/Makefile.am +++ b/Makefile.am @@ -10,18 +10,20 @@ bin_PROGRAMS = stap stap_SOURCES = main.cxx \ parse.cxx staptree.cxx elaborate.cxx translate.cxx \ tapsets.cxx buildrun.cxx +stap_CXXFLAGS = -Werror $(AM_CXXFLAGS) libexec_PROGRAMS = stpd stpd_SOURCES = runtime/stpd/stpd.c runtime/stpd/librelay.c stpd_LDADD = -lpthread # automake doesn't get rpath right unless we do this stpd_LDFLAGS = -Wl,-rpath '$(libdir)/systemtap' + AM_CXXFLAGS = -Wall # Get extra libs as needed LDADD = -EXTRA_DIST=testsuite runtime $(wildcard $(srcdir)/*.h) systemtap.spec +EXTRA_DIST=testsuite runtime tapset $(wildcard $(srcdir)/*.h) systemtap.spec dist-hook: find $(distdir) -name CVS -o -name '*~' -o -name '.#*' | xargs rm -rf find $(distdir) -name '*.o' -o -name '*.ko' -o -name '*.cmd' -o -name '*.mod.c' -o -name '.??*' | xargs rm -rf @@ -36,6 +38,8 @@ install-data-local: tar -f - -c --exclude=CVS --exclude='*~' --exclude='.#*' \ -C $(srcdir)/runtime transport \ | (cd $(DESTDIR)$(pkgdatadir)/runtime && tar xpf -) + -mkdir $(DESTDIR)$(pkgdatadir)/tapset + (cd $(srcdir)/tapset ; find . -name '*.stp' | cpio -pdmv $(DESTDIR)$(pkgdatadir)/tapset) p=$(srcdir)/testsuite/parse s=$(srcdir)/testsuite/sem diff --git a/Makefile.in b/Makefile.in index 37a79c78..53ec3b03 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.2 from Makefile.am. +# Makefile.in generated by automake 1.9.5 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004 Free Software Foundation, Inc. +# 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -58,9 +58,10 @@ am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(libexecdir)" binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) libexecPROGRAMS_INSTALL = $(INSTALL_PROGRAM) PROGRAMS = $(bin_PROGRAMS) $(libexec_PROGRAMS) -am_stap_OBJECTS = main.$(OBJEXT) parse.$(OBJEXT) staptree.$(OBJEXT) \ - elaborate.$(OBJEXT) translate.$(OBJEXT) tapsets.$(OBJEXT) \ - buildrun.$(OBJEXT) +am_stap_OBJECTS = stap-main.$(OBJEXT) stap-parse.$(OBJEXT) \ + stap-staptree.$(OBJEXT) stap-elaborate.$(OBJEXT) \ + stap-translate.$(OBJEXT) stap-tapsets.$(OBJEXT) \ + stap-buildrun.$(OBJEXT) stap_OBJECTS = $(am_stap_OBJECTS) stap_LDADD = $(LDADD) stap_DEPENDENCIES = @@ -188,6 +189,7 @@ stap_SOURCES = main.cxx \ parse.cxx staptree.cxx elaborate.cxx translate.cxx \ tapsets.cxx buildrun.cxx +stap_CXXFLAGS = -Werror $(AM_CXXFLAGS) stpd_SOURCES = runtime/stpd/stpd.c runtime/stpd/librelay.c stpd_LDADD = -lpthread # automake doesn't get rpath right unless we do this @@ -196,7 +198,7 @@ AM_CXXFLAGS = -Wall # Get extra libs as needed LDADD = -EXTRA_DIST = testsuite runtime $(wildcard $(srcdir)/*.h) systemtap.spec +EXTRA_DIST = testsuite runtime tapset $(wildcard $(srcdir)/*.h) systemtap.spec p = $(srcdir)/testsuite/parse s = $(srcdir)/testsuite/sem t = $(srcdir)/testsuite/trans @@ -328,15 +330,15 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/buildrun.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/elaborate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/librelay.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/parse.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/staptree.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stap-buildrun.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stap-elaborate.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stap-main.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stap-parse.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stap-staptree.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stap-tapsets.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stap-translate.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stpd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tapsets.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/translate.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ @@ -393,6 +395,104 @@ librelay.obj: runtime/stpd/librelay.c @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +stap-main.o: main.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-main.o -MD -MP -MF "$(DEPDIR)/stap-main.Tpo" -c -o stap-main.o `test -f 'main.cxx' || echo '$(srcdir)/'`main.cxx; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-main.Tpo" "$(DEPDIR)/stap-main.Po"; else rm -f "$(DEPDIR)/stap-main.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='main.cxx' object='stap-main.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-main.o `test -f 'main.cxx' || echo '$(srcdir)/'`main.cxx + +stap-main.obj: main.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-main.obj -MD -MP -MF "$(DEPDIR)/stap-main.Tpo" -c -o stap-main.obj `if test -f 'main.cxx'; then $(CYGPATH_W) 'main.cxx'; else $(CYGPATH_W) '$(srcdir)/main.cxx'; fi`; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-main.Tpo" "$(DEPDIR)/stap-main.Po"; else rm -f "$(DEPDIR)/stap-main.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='main.cxx' object='stap-main.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-main.obj `if test -f 'main.cxx'; then $(CYGPATH_W) 'main.cxx'; else $(CYGPATH_W) '$(srcdir)/main.cxx'; fi` + +stap-parse.o: parse.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-parse.o -MD -MP -MF "$(DEPDIR)/stap-parse.Tpo" -c -o stap-parse.o `test -f 'parse.cxx' || echo '$(srcdir)/'`parse.cxx; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-parse.Tpo" "$(DEPDIR)/stap-parse.Po"; else rm -f "$(DEPDIR)/stap-parse.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='parse.cxx' object='stap-parse.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-parse.o `test -f 'parse.cxx' || echo '$(srcdir)/'`parse.cxx + +stap-parse.obj: parse.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-parse.obj -MD -MP -MF "$(DEPDIR)/stap-parse.Tpo" -c -o stap-parse.obj `if test -f 'parse.cxx'; then $(CYGPATH_W) 'parse.cxx'; else $(CYGPATH_W) '$(srcdir)/parse.cxx'; fi`; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-parse.Tpo" "$(DEPDIR)/stap-parse.Po"; else rm -f "$(DEPDIR)/stap-parse.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='parse.cxx' object='stap-parse.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-parse.obj `if test -f 'parse.cxx'; then $(CYGPATH_W) 'parse.cxx'; else $(CYGPATH_W) '$(srcdir)/parse.cxx'; fi` + +stap-staptree.o: staptree.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-staptree.o -MD -MP -MF "$(DEPDIR)/stap-staptree.Tpo" -c -o stap-staptree.o `test -f 'staptree.cxx' || echo '$(srcdir)/'`staptree.cxx; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-staptree.Tpo" "$(DEPDIR)/stap-staptree.Po"; else rm -f "$(DEPDIR)/stap-staptree.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='staptree.cxx' object='stap-staptree.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-staptree.o `test -f 'staptree.cxx' || echo '$(srcdir)/'`staptree.cxx + +stap-staptree.obj: staptree.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-staptree.obj -MD -MP -MF "$(DEPDIR)/stap-staptree.Tpo" -c -o stap-staptree.obj `if test -f 'staptree.cxx'; then $(CYGPATH_W) 'staptree.cxx'; else $(CYGPATH_W) '$(srcdir)/staptree.cxx'; fi`; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-staptree.Tpo" "$(DEPDIR)/stap-staptree.Po"; else rm -f "$(DEPDIR)/stap-staptree.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='staptree.cxx' object='stap-staptree.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-staptree.obj `if test -f 'staptree.cxx'; then $(CYGPATH_W) 'staptree.cxx'; else $(CYGPATH_W) '$(srcdir)/staptree.cxx'; fi` + +stap-elaborate.o: elaborate.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-elaborate.o -MD -MP -MF "$(DEPDIR)/stap-elaborate.Tpo" -c -o stap-elaborate.o `test -f 'elaborate.cxx' || echo '$(srcdir)/'`elaborate.cxx; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-elaborate.Tpo" "$(DEPDIR)/stap-elaborate.Po"; else rm -f "$(DEPDIR)/stap-elaborate.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='elaborate.cxx' object='stap-elaborate.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-elaborate.o `test -f 'elaborate.cxx' || echo '$(srcdir)/'`elaborate.cxx + +stap-elaborate.obj: elaborate.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-elaborate.obj -MD -MP -MF "$(DEPDIR)/stap-elaborate.Tpo" -c -o stap-elaborate.obj `if test -f 'elaborate.cxx'; then $(CYGPATH_W) 'elaborate.cxx'; else $(CYGPATH_W) '$(srcdir)/elaborate.cxx'; fi`; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-elaborate.Tpo" "$(DEPDIR)/stap-elaborate.Po"; else rm -f "$(DEPDIR)/stap-elaborate.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='elaborate.cxx' object='stap-elaborate.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-elaborate.obj `if test -f 'elaborate.cxx'; then $(CYGPATH_W) 'elaborate.cxx'; else $(CYGPATH_W) '$(srcdir)/elaborate.cxx'; fi` + +stap-translate.o: translate.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-translate.o -MD -MP -MF "$(DEPDIR)/stap-translate.Tpo" -c -o stap-translate.o `test -f 'translate.cxx' || echo '$(srcdir)/'`translate.cxx; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-translate.Tpo" "$(DEPDIR)/stap-translate.Po"; else rm -f "$(DEPDIR)/stap-translate.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='translate.cxx' object='stap-translate.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-translate.o `test -f 'translate.cxx' || echo '$(srcdir)/'`translate.cxx + +stap-translate.obj: translate.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-translate.obj -MD -MP -MF "$(DEPDIR)/stap-translate.Tpo" -c -o stap-translate.obj `if test -f 'translate.cxx'; then $(CYGPATH_W) 'translate.cxx'; else $(CYGPATH_W) '$(srcdir)/translate.cxx'; fi`; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-translate.Tpo" "$(DEPDIR)/stap-translate.Po"; else rm -f "$(DEPDIR)/stap-translate.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='translate.cxx' object='stap-translate.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-translate.obj `if test -f 'translate.cxx'; then $(CYGPATH_W) 'translate.cxx'; else $(CYGPATH_W) '$(srcdir)/translate.cxx'; fi` + +stap-tapsets.o: tapsets.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-tapsets.o -MD -MP -MF "$(DEPDIR)/stap-tapsets.Tpo" -c -o stap-tapsets.o `test -f 'tapsets.cxx' || echo '$(srcdir)/'`tapsets.cxx; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-tapsets.Tpo" "$(DEPDIR)/stap-tapsets.Po"; else rm -f "$(DEPDIR)/stap-tapsets.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='tapsets.cxx' object='stap-tapsets.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-tapsets.o `test -f 'tapsets.cxx' || echo '$(srcdir)/'`tapsets.cxx + +stap-tapsets.obj: tapsets.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-tapsets.obj -MD -MP -MF "$(DEPDIR)/stap-tapsets.Tpo" -c -o stap-tapsets.obj `if test -f 'tapsets.cxx'; then $(CYGPATH_W) 'tapsets.cxx'; else $(CYGPATH_W) '$(srcdir)/tapsets.cxx'; fi`; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-tapsets.Tpo" "$(DEPDIR)/stap-tapsets.Po"; else rm -f "$(DEPDIR)/stap-tapsets.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='tapsets.cxx' object='stap-tapsets.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-tapsets.obj `if test -f 'tapsets.cxx'; then $(CYGPATH_W) 'tapsets.cxx'; else $(CYGPATH_W) '$(srcdir)/tapsets.cxx'; fi` + +stap-buildrun.o: buildrun.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-buildrun.o -MD -MP -MF "$(DEPDIR)/stap-buildrun.Tpo" -c -o stap-buildrun.o `test -f 'buildrun.cxx' || echo '$(srcdir)/'`buildrun.cxx; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-buildrun.Tpo" "$(DEPDIR)/stap-buildrun.Po"; else rm -f "$(DEPDIR)/stap-buildrun.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='buildrun.cxx' object='stap-buildrun.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-buildrun.o `test -f 'buildrun.cxx' || echo '$(srcdir)/'`buildrun.cxx + +stap-buildrun.obj: buildrun.cxx +@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -MT stap-buildrun.obj -MD -MP -MF "$(DEPDIR)/stap-buildrun.Tpo" -c -o stap-buildrun.obj `if test -f 'buildrun.cxx'; then $(CYGPATH_W) 'buildrun.cxx'; else $(CYGPATH_W) '$(srcdir)/buildrun.cxx'; fi`; \ +@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/stap-buildrun.Tpo" "$(DEPDIR)/stap-buildrun.Po"; else rm -f "$(DEPDIR)/stap-buildrun.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='buildrun.cxx' object='stap-buildrun.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stap_CXXFLAGS) $(CXXFLAGS) -c -o stap-buildrun.obj `if test -f 'buildrun.cxx'; then $(CYGPATH_W) 'buildrun.cxx'; else $(CYGPATH_W) '$(srcdir)/buildrun.cxx'; fi` uninstall-info-am: ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) @@ -762,6 +862,8 @@ install-data-local: tar -f - -c --exclude=CVS --exclude='*~' --exclude='.#*' \ -C $(srcdir)/runtime transport \ | (cd $(DESTDIR)$(pkgdatadir)/runtime && tar xpf -) + -mkdir $(DESTDIR)$(pkgdatadir)/tapset + (cd $(srcdir)/tapset ; find . -name '*.stp' | cpio -pdmv $(DESTDIR)$(pkgdatadir)/tapset) gcov: @$(MAKE) clean CXXFLAGS="-g -fprofile-arcs -ftest-coverage" all check @@ -1,7 +1,7 @@ -# generated automatically by aclocal 1.9.2 -*- Autoconf -*- +# generated automatically by aclocal 1.9.5 -*- Autoconf -*- -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 -# Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -11,23 +11,11 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. -# -*- Autoconf -*- -# Copyright (C) 2002, 2003 Free Software Foundation, Inc. -# Generated from amversion.in; do not edit by hand. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- @@ -40,26 +28,15 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"]) # Call AM_AUTOMAKE_VERSION so it can be traced. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], - [AM_AUTOMAKE_VERSION([1.9.2])]) + [AM_AUTOMAKE_VERSION([1.9.5])]) -# AM_AUX_DIR_EXPAND +# AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to @@ -107,25 +84,14 @@ am_aux_dir=`cd $ac_aux_dir && pwd` ]) -# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003 +# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2005 # Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 3 +# serial 4 # This was merged into AC_PROG_CC in Autoconf. @@ -140,26 +106,16 @@ am_cv_prog_cc_stdc=$ac_cv_prog_cc_stdc ]) AU_DEFUN([fp_PROG_CC_STDC]) -# AM_CONDITIONAL -*- Autoconf -*- +# AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997, 2000, 2001, 2003, 2004 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# serial 6 +# serial 7 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- @@ -183,26 +139,15 @@ AC_CONFIG_COMMANDS_PRE( Usually this means the macro was only invoked conditionally.]]) fi])]) -# serial 7 -*- Autoconf -*- -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - +# serial 8 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, @@ -211,7 +156,6 @@ fi])]) # CC etc. in the Makefile, will ask for an AC_PROG_CC use... - # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. @@ -351,27 +295,16 @@ AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH]) ]) -# Generate code to set up dependency tracking. -*- Autoconf -*- - -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 -# Free Software Foundation, Inc. +# Generate code to set up dependency tracking. -*- Autoconf -*- -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -#serial 2 +#serial 3 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ @@ -430,30 +363,19 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) -# Do all the work for Automake. -*- Autoconf -*- +# Do all the work for Automake. -*- Autoconf -*- -# This macro actually does too much some checks are only needed if -# your package does certain things. But this isn't really a big deal. - -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# serial 12 -# serial 11 +# This macro actually does too much. Some checks are only needed if +# your package does certain things. But this isn't really a big deal. # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) @@ -555,51 +477,27 @@ for _am_header in $config_headers :; do done echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. - -# Copyright (C) 2001, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl install_sh=${install_sh-"$am_aux_dir/install-sh"} AC_SUBST(install_sh)]) -# -*- Autoconf -*- -# Copyright (C) 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# serial 1 +# serial 2 # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. @@ -614,28 +512,17 @@ fi rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) -# Add --enable-maintainer-mode option to configure. +# Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering -# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004 +# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 3 +# serial 4 AC_DEFUN([AM_MAINTAINER_MODE], [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) @@ -654,26 +541,15 @@ AC_DEFUN([AM_MAINTAINER_MODE], AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) -# Check to see how 'make' treats includes. -*- Autoconf -*- - -# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# Check to see how 'make' treats includes. -*- Autoconf -*- -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# serial 2 +# serial 3 # AM_MAKE_INCLUDE() # ----------------- @@ -717,27 +593,16 @@ AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) -# -*- Autoconf -*- - - -# Copyright (C) 1997, 1999, 2000, 2001, 2003 Free Software Foundation, Inc. +# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 3 +# serial 4 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ @@ -763,27 +628,16 @@ else fi ]) +# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + # AM_PROG_MKDIR_P # --------------- # Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise. - -# Copyright (C) 2003, 2004 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - +# # Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories # created by `make install' are always world readable, even if the # installer happens to have an overly restrictive umask (e.g. 077). @@ -837,26 +691,15 @@ else fi AC_SUBST([mkdir_p])]) -# Helper functions for option handling. -*- Autoconf -*- - -# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# Helper functions for option handling. -*- Autoconf -*- -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# serial 2 +# serial 3 # _AM_MANGLE_OPTION(NAME) # ----------------------- @@ -881,26 +724,14 @@ AC_DEFUN([_AM_SET_OPTIONS], AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) - -# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003 +# Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2005 # Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 3 +# serial 4 AC_DEFUN([AM_C_PROTOTYPES], [AC_REQUIRE([AC_C_PROTOTYPES]) @@ -918,28 +749,16 @@ AC_SUBST(ANSI2KNR)dnl AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES]) -# -# Check to make sure that the build environment is sane. -# - -# Copyright (C) 1996, 1997, 2000, 2001, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# Check to make sure that the build environment is sane. -*- Autoconf -*- -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. -# serial 3 +# serial 4 # AM_SANITY_CHECK # --------------- @@ -982,25 +801,14 @@ Check your system clock]) fi AC_MSG_RESULT(yes)]) -# AM_PROG_INSTALL_STRIP - -# Copyright (C) 2001, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. +# AM_PROG_INSTALL_STRIP +# --------------------- # One issue with vendor `install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip @@ -1023,25 +831,13 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# serial 1 +# Copyright (C) 2004, 2005 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. +# serial 2 # _AM_PROG_TAR(FORMAT) # -------------------- @@ -17,6 +17,7 @@ #include <fstream> #include <sstream> #include <cerrno> +#include <cstdlib> extern "C" { #include <glob.h> @@ -57,19 +58,16 @@ usage (systemtap_session& s) if (s.include_path.size() == 0) clog << endl; else - clog << ", instead of" << endl; + clog << ", in addition to" << endl; for (unsigned i=0; i<s.include_path.size(); i++) clog << " " << s.include_path[i] << endl; clog - << " -R DIR look in DIR for runtime, instead of " - << s.runtime_path - << endl - << " -r RELEASE use kernel RELEASE, instead of " - << s.kernel_release - << endl - << " -m MODULE set probe module name, insetad of " - << s.module_name - << endl + << " -R DIR look in DIR for runtime, instead of" << endl + << " " << s.runtime_path << endl + << " -r RELEASE use kernel RELEASE, instead of" << endl + << " " << s.kernel_release << endl + << " -m MODULE set probe module name, insetad of" << endl + << " " << s.module_name << endl << " -o FILE send output to file instead of stdout" << endl << " -k keep temporary directory" << endl; // XXX: other options: @@ -109,10 +107,20 @@ main (int argc, char * const argv []) s.test_mode = false; s.guru_mode = false; s.last_pass = 5; - s.runtime_path = string(PKGDATADIR) + "/runtime"; s.module_name = "stap_" + stringify(getuid()) + "_" + stringify(time(0)); s.keep_tmpdir = false; - s.include_path.push_back (string(PKGDATADIR) + "/tapsets"); + + const char* s_p = getenv ("SYSTEMTAP_TAPSET"); + if (s_p != NULL) + s.include_path.push_back (s_p); + else + s.include_path.push_back (string(PKGDATADIR) + "/tapset"); + + const char* s_r = getenv ("SYSTEMTAP_RUNTIME"); + if (s_r != NULL) + s.runtime_path = s_r; + else + s.runtime_path = string(PKGDATADIR) + "/runtime"; while (true) { @@ -223,19 +231,17 @@ main (int argc, char * const argv []) // XXX: pass args vector, so parser (or lexer?) can substitute // $1..$NN with actual arguments if (script_file == "-") - s.user_file = parser::parse (cin); + s.user_file = parser::parse (cin, s.guru_mode); else if (script_file != "") - s.user_file = parser::parse (script_file); + s.user_file = parser::parse (script_file, s.guru_mode); else { istringstream ii (cmdline_script); - s.user_file = parser::parse (ii); + s.user_file = parser::parse (ii, s.guru_mode); } if (s.user_file == 0) // syntax errors already printed rc ++; - else - s.user_file->privileged = s.guru_mode; // Construct kernel-versioning search path vector<string> version_suffixes; @@ -273,14 +279,12 @@ main (int argc, char * const argv []) for (unsigned j=0; j<globbuf.gl_pathc; j++) { - stapfile* f = parser::parse (globbuf.gl_pathv[j]); + // privilege only for /usr/share/systemtap? + stapfile* f = parser::parse (globbuf.gl_pathv[j], true); if (f == 0) rc ++; else - { - f->privileged = true; // XXX only for /usr/share/systemtap? - s.library_files.push_back (f); - } + s.library_files.push_back (f); } globfree (& globbuf); @@ -22,14 +22,15 @@ using namespace std; -parser::parser (istream& i): - input_name ("<input>"), free_input (0), input (i, input_name), +parser::parser (istream& i, bool p): + input_name ("<input>"), free_input (0), + input (i, input_name), privileged (p), last_t (0), next_t (0), num_errors (0) { } -parser::parser (const string& fn): +parser::parser (const string& fn, bool p): input_name (fn), free_input (new ifstream (input_name.c_str(), ios::in)), - input (* free_input, input_name), + input (* free_input, input_name), privileged (p), last_t (0), next_t (0), num_errors (0) { } @@ -40,17 +41,17 @@ parser::~parser() stapfile* -parser::parse (std::istream& i) +parser::parse (std::istream& i, bool pr) { - parser p (i); + parser p (i, pr); return p.parse (); } stapfile* -parser::parse (const std::string& n) +parser::parse (const std::string& n, bool pr) { - parser p (n); + parser p (n, pr); return p.parse (); } @@ -66,14 +67,16 @@ operator << (ostream& o, const token& t) t.type == tok_embedded ? "embedded-code" : "unknown token"); - // XXX: filter out embedded-code contents? - o << " '"; - for (unsigned i=0; i<t.content.length(); i++) + if (t.type != tok_embedded) // XXX: other types? { - char c = t.content[i]; - o << (isprint (c) ? c : '?'); + o << " '"; + for (unsigned i=0; i<t.content.length(); i++) + { + char c = t.content[i]; + o << (isprint (c) ? c : '?'); + } + o << "'"; } - o << "'"; o << " at " << t.location.file << ":" @@ -404,11 +407,11 @@ parser::parse () else if (t->type == tok_identifier && t->content == "global") parse_global (f->globals); else if (t->type == tok_identifier && t->content == "function") - f->functions.push_back (parse_functiondecl ()); + parse_functiondecl (f->functions); else if (t->type == tok_embedded) f->embeds.push_back (parse_embeddedcode ()); else - throw parse_error ("expected 'probe', 'global', 'function', or embedded code"); + throw parse_error ("expected 'probe', 'global', 'function', or '%{'"); } catch (parse_error& pe) { @@ -516,7 +519,10 @@ parser::parse_embeddedcode () embeddedcode* e = new embeddedcode; const token* t = next (); if (t->type != tok_embedded) - throw parse_error ("expected embedded code"); + throw parse_error ("expected '%{'"); + + if (! privileged) + throw parse_error ("embedded code in unprivileged script"); e->tok = t; e->code = t->content; @@ -624,18 +630,14 @@ parser::parse_global (vector <vardecl*>& globals) if (! (t->type == tok_identifier)) throw parse_error ("expected identifier"); - bool dupe = false; for (unsigned i=0; i<globals.size(); i++) if (globals[i]->name == t->content) - dupe = true; + throw parse_error ("duplicate global name"); - if (! dupe) - { - vardecl* d = new vardecl; - d->name = t->content; - d->tok = t; - globals.push_back (d); - } + vardecl* d = new vardecl; + d->name = t->content; + d->tok = t; + globals.push_back (d); t = peek (); if (t && t->type == tok_operator && t->content == ",") @@ -649,18 +651,23 @@ parser::parse_global (vector <vardecl*>& globals) } -functiondecl* -parser::parse_functiondecl () +void +parser::parse_functiondecl (std::vector<functiondecl*>& functions) { const token* t = next (); if (! (t->type == tok_identifier && t->content == "function")) throw parse_error ("expected 'function'"); - functiondecl *fd = new functiondecl (); t = next (); if (! (t->type == tok_identifier)) throw parse_error ("expected identifier"); + + for (unsigned i=0; i<functions.size(); i++) + if (functions[i]->name == t->content) + throw parse_error ("duplicate function name"); + + functiondecl *fd = new functiondecl (); fd->name = t->content; fd->tok = t; @@ -696,7 +703,8 @@ parser::parse_functiondecl () fd->body = parse_embeddedcode (); else fd->body = parse_stmt_block (); - return fd; + + functions.push_back (fd); } @@ -70,19 +70,20 @@ private: class parser { public: - parser (std::istream& i); - parser (const std::string& n); + parser (std::istream& i, bool p); + parser (const std::string& n, bool p); ~parser (); stapfile* parse (); - static stapfile* parse (std::istream& i); - static stapfile* parse (const std::string& n); + static stapfile* parse (std::istream& i, bool privileged); + static stapfile* parse (const std::string& n, bool privileged); private: std::string input_name; std::istream* free_input; lexer input; + bool privileged; // scanning state const token* last (); @@ -98,10 +99,10 @@ private: private: // nonterminals void parse_probe (std::vector<probe*>&, std::vector<probe_alias*>&); void parse_global (std::vector<vardecl*>&); + void parse_functiondecl (std::vector<functiondecl*>&); embeddedcode* parse_embeddedcode (); probe_point* parse_probe_point (); literal* parse_literal (); - functiondecl* parse_functiondecl (); block* parse_stmt_block (); statement* parse_statement (); if_statement* parse_if_statement (); @@ -5,5 +5,11 @@ SRCDIR=`dirname $0` export SRCDIR +SYSTEMTAP_TAPSET=$SRCDIR/tapset +export SYSTEMTAP_TAPSET + +SYSTEMTAP_RUNTIME=$SRCDIR/runtime +export SYSTEMTAP_RUNTIME + exec >/dev/null 2>&1 exec ${1+"$@"} diff --git a/tapset/builtin_log.stp b/tapset/builtin_log.stp new file mode 100644 index 00000000..2932d66e --- /dev/null +++ b/tapset/builtin_log.stp @@ -0,0 +1,7 @@ +function _log (msg) %{ + _stp_log (THIS->msg); +%} + +function log (msg) { + return 0 + _log (msg . "") +} diff --git a/tapset/builtin_printk.stp b/tapset/builtin_printk.stp new file mode 100644 index 00000000..3e456fb2 --- /dev/null +++ b/tapset/builtin_printk.stp @@ -0,0 +1,7 @@ +function _printk (msg) %{ + printk (KERN_INFO "%s\n", THIS->msg); +%} + +function printk (msg) { + return 0 + _printk (msg . "") +} diff --git a/tapset/builtin_warn.stp b/tapset/builtin_warn.stp new file mode 100644 index 00000000..98fef7fe --- /dev/null +++ b/tapset/builtin_warn.stp @@ -0,0 +1,7 @@ +function _warn (msg) %{ + _stp_warn (THIS->msg); +%} + +function warn (msg) { + return 0 + _warn (msg . "") +} diff --git a/tapsets.cxx b/tapsets.cxx index 0d51d8f0..040c8424 100644 --- a/tapsets.cxx +++ b/tapsets.cxx @@ -166,7 +166,7 @@ dwflpp { if (in) return in; - if (sess.verbose) + if (false && sess.verbose) clog << "WARNING: no name found for " << type << endl; return string("default_anonymous_" ) + type; } @@ -187,7 +187,7 @@ dwflpp NULL, NULL, NULL, NULL), "module"); - if (sess.verbose) + if (false && sess.verbose) clog << "focused on module " << module_name << endl; } @@ -196,7 +196,7 @@ dwflpp assert(c); cu = c; cu_name = default_name(dwarf_diename(c), "cu"); - if (sess.verbose) + if (false && sess.verbose) clog << "focused on CU " << cu_name << ", in module " << module_name << endl; } @@ -207,7 +207,7 @@ dwflpp function = f; function_name = default_name(dwarf_func_name(function), "function"); - if (sess.verbose) + if (false && sess.verbose) clog << "focused on function " << function_name << ", in CU " << cu_name << ", module " << module_name << endl; @@ -216,7 +216,7 @@ dwflpp void focus_on_module_containing_global_address(Dwarf_Addr a) { assert(dwfl); - if (sess.verbose) + if (false && sess.verbose) clog << "focusing on module containing global addr " << a << endl; focus_on_module(dwfl_addrmodule(dwfl, a)); } @@ -273,9 +273,9 @@ dwflpp assert(module); get_module_dwarf(); bool t = (fnmatch(pattern.c_str(), module_name.c_str(), 0) == 0); - if (sess.verbose) + if (t && sess.verbose) clog << "pattern '" << pattern << "' " - << (t ? "matches " : "does not match ") + << "matches " << "module '" << module_name << "'" << endl; return t; } @@ -284,9 +284,9 @@ dwflpp { assert(function); bool t = (fnmatch(pattern.c_str(), function_name.c_str(), 0) == 0); - if (sess.verbose) + if (t && sess.verbose) clog << "pattern '" << pattern << "' " - << (t ? "matches " : "does not match ") + << "matches " << "function '" << function_name << "'" << endl; return t; } @@ -295,9 +295,9 @@ dwflpp { assert(cu); bool t = (fnmatch(pattern.c_str(), cu_name.c_str(), 0) == 0); - if (sess.verbose) + if (t && sess.verbose) clog << "pattern '" << pattern << "' " - << (t ? "matches " : "does not match ") + << "matches " << "CU '" << cu_name << "'" << endl; return t; } @@ -364,7 +364,7 @@ dwflpp Dwarf *, Dwarf_Addr, void *), void * data) { - if (sess.verbose) + if (false && sess.verbose) clog << "iterating over modules" << endl; ptrdiff_t off = 0; do @@ -372,7 +372,7 @@ dwflpp off = dwfl_getdwarf(dwfl, callback, data, off); } while (off > 0); - if (sess.verbose) + if (false && sess.verbose) clog << "finished iterating over modules" << endl; dwflpp_assert("getdwarf", off); } @@ -388,7 +388,7 @@ dwflpp return; } - if (sess.verbose) + if (false && sess.verbose) clog << "iterating over CUs in module " << module_name << endl; Dwarf *dw = module_dwarf; @@ -411,7 +411,7 @@ dwflpp { assert(module); assert(cu); - if (sess.verbose) + if (false && sess.verbose) clog << "iterating over functions in CU " << cu_name << endl; dwarf_getfuncs(cu, callback, data, 0); } @@ -833,7 +833,7 @@ query_function(Dwarf_Func * func, void * arg) Dwarf_Addr addr; if (!q->dw.function_entrypc(&addr)) { - if (q->sess.verbose) + if (false && q->sess.verbose) clog << "WARNING: cannot find entry PC for function " << q->dw.function_name << endl; return DWARF_CB_OK; diff --git a/testsuite/buildko/one.stp b/testsuite/buildko/one.stp index b8d54c51..1b4da936 100755 --- a/testsuite/buildko/one.stp +++ b/testsuite/buildko/one.stp @@ -1,4 +1,6 @@ -#! stap -p4 +#! /bin/sh + +./stap -p4 -g - $@ <<'END' %{ #include <linux/version.h> @@ -14,4 +16,4 @@ probe begin printk("hello from systemtap, kernel version " . get_release()) } - +END diff --git a/testsuite/buildok/two.stp b/testsuite/buildok/two.stp index 83a4705c..7453cae1 100755 --- a/testsuite/buildok/two.stp +++ b/testsuite/buildok/two.stp @@ -1,4 +1,6 @@ -#! stap -p4 +#! /bin/sh + +./stap -p4 -g $@ - <<'END' %{ #include <linux/version.h> @@ -13,4 +15,4 @@ probe begin printk("hello from systemtap, kernel version " . get_release()) } - +END diff --git a/testsuite/parseko/eleven.stp b/testsuite/parseko/eleven.stp new file mode 100755 index 00000000..f1b9321d --- /dev/null +++ b/testsuite/parseko/eleven.stp @@ -0,0 +1,4 @@ +#! stap -p1 + +function foo () {} +function foo () {} diff --git a/testsuite/parseko/fourteen.stp b/testsuite/parseko/fourteen.stp new file mode 100755 index 00000000..b646f8b6 --- /dev/null +++ b/testsuite/parseko/fourteen.stp @@ -0,0 +1,7 @@ +#! stap -p2 + +function zoo () %{ /* invalid embedded code */ %} + +probe begin +{ +} diff --git a/testsuite/parseko/ten.stp b/testsuite/parseko/ten.stp index a268db4e..0a5f338e 100755 --- a/testsuite/parseko/ten.stp +++ b/testsuite/parseko/ten.stp @@ -1,5 +1,9 @@ -#! stap -p1 +#! /bin/sh + +./stap -p1 -g - <<'END' probe foo { %{ /* not a valid place for embedded code */ %} } + +END diff --git a/testsuite/parseko/thirteen.stp b/testsuite/parseko/thirteen.stp new file mode 100755 index 00000000..1a5b46f6 --- /dev/null +++ b/testsuite/parseko/thirteen.stp @@ -0,0 +1,7 @@ +#! stap -p2 + +%{ /* embedded code not permitted since -g not supplied */ %} + +probe begin +{ +} diff --git a/testsuite/parseko/twelve.stp b/testsuite/parseko/twelve.stp new file mode 100755 index 00000000..199f6a90 --- /dev/null +++ b/testsuite/parseko/twelve.stp @@ -0,0 +1,4 @@ +#! stap -p1 + +global foo +global foo diff --git a/testsuite/parseok/semko.stp b/testsuite/parseok/semko.stp index 11f2a2da..92339597 100755 --- a/testsuite/parseok/semko.stp +++ b/testsuite/parseok/semko.stp @@ -3,4 +3,13 @@ # make sure that we can *parse* all semko test files, to ensure # that it is semantic (elaboration) checks that fail, not parse errors -./stap -p1 -I${SRCDIR}/testsuite/semko -e 'global nothing' + +set -e +for file in ${SRCDIR}/testsuite/semko/*.stp +do + if grep -q /bin/sh $file; then + true # can't override stap options + else + ./stap -p1 $file + fi +done diff --git a/testsuite/parseok/twelve.stp b/testsuite/parseok/twelve.stp index 5b8a3932..d5029d1a 100755 --- a/testsuite/parseok/twelve.stp +++ b/testsuite/parseok/twelve.stp @@ -1,4 +1,6 @@ -#! stap -p1 +#! /bin/sh + +./stap -p1 -g $@ - <<'END' %{ /* hello world */ @@ -7,3 +9,5 @@ function foo (p1, p2) %{ /* goodbye world */ %} + +END diff --git a/testsuite/semok/transko.stp b/testsuite/semok/transko.stp index 9c78c6ef..18bfc8aa 100755 --- a/testsuite/semok/transko.stp +++ b/testsuite/semok/transko.stp @@ -1,10 +1,14 @@ #! /bin/sh # make sure that we can *semcheck* all transko test files, to ensure -# that it is translation-time checks that fail, not earlier ones errors +# that it is translation-time checks that fail, not earlier ones set -e for file in ${SRCDIR}/testsuite/transko/*.stp do - ./stap -p2 $file + if grep -q /bin/sh $file; then + true # can't override stap options + else + ./stap -p2 $file + fi done diff --git a/testsuite/transok/buildko.stp b/testsuite/transok/buildko.stp index 67f11eba..4387b0f1 100755 --- a/testsuite/transok/buildko.stp +++ b/testsuite/transok/buildko.stp @@ -1,10 +1,14 @@ #! /bin/sh # make sure that we can *translate* all buildko test files, to ensure -# that it is build-time checks that fail, not earlier ones errors +# that it is build-time checks that fail, not earlier ones set -e for file in ${SRCDIR}/testsuite/buildko/*.stp do - ./stap -p3 $file + if grep -q /bin/sh $file; then + true # can't override stap options + else + ./stap -p3 $file + fi done diff --git a/testsuite/transok/nine.stp b/testsuite/transok/nine.stp index a75fad5e..82ebc4a9 100755 --- a/testsuite/transok/nine.stp +++ b/testsuite/transok/nine.stp @@ -1,4 +1,6 @@ -#! stap -p3 +#! /bin/sh + +./stap -p3 -g $@ - <<'END' %{ void just_some_declaration () {} @@ -10,3 +12,5 @@ probe begin { bar (5) + 0 } + +END |