diff options
author | Dave Brolley <brolley@redhat.com> | 2008-07-14 13:41:48 -0400 |
---|---|---|
committer | Dave Brolley <brolley@redhat.com> | 2008-07-14 13:41:48 -0400 |
commit | 233614952872b4561accc79d9d7ef2c66f52dce4 (patch) | |
tree | 72e66a76a92a485637f299c1720f9c3ea26a57a3 /testsuite | |
parent | f1743f00e6058d2dee44510f3ef165c549a6291e (diff) | |
download | systemtap-steved-233614952872b4561accc79d9d7ef2c66f52dce4.tar.gz systemtap-steved-233614952872b4561accc79d9d7ef2c66f52dce4.tar.xz systemtap-steved-233614952872b4561accc79d9d7ef2c66f52dce4.zip |
Enable 'make check' and 'make installcheck' using the systemtap client/server.
Diffstat (limited to 'testsuite')
-rw-r--r-- | testsuite/ChangeLog | 16 | ||||
-rw-r--r-- | testsuite/Makefile.am | 6 | ||||
-rw-r--r-- | testsuite/Makefile.in | 5 | ||||
-rw-r--r-- | testsuite/lib/stap_compile.exp | 2 | ||||
-rw-r--r-- | testsuite/lib/stap_run.exp | 2 | ||||
-rw-r--r-- | testsuite/lib/stap_run2.exp | 2 | ||||
-rw-r--r-- | testsuite/lib/stap_run_binary.exp | 2 | ||||
-rw-r--r-- | testsuite/lib/stap_run_exact.exp | 2 | ||||
-rw-r--r-- | testsuite/lib/systemtap.exp | 20 |
9 files changed, 47 insertions, 10 deletions
diff --git a/testsuite/ChangeLog b/testsuite/ChangeLog index 7296f52c..b563cc89 100644 --- a/testsuite/ChangeLog +++ b/testsuite/ChangeLog @@ -1,3 +1,19 @@ +2008-07-14 <brolley@redhat.com> + + * Makefile.am (TOOL_OPTS): New variable. + (installcheck): Add $(TOOL_OPTS) to --tool_opts. + (RUNTESTDEFAULTFLAGS): Likewise. + * Makefile.in: Regenerated. + * lib/systemtap.exp (installtest_p): Look for 'install' as a substring + of $TOOL_OPTIONS. + (use_server_p): New proc. + (stap_exec): New proc. + * lib/stap_compile.exp: Use [stap_exec] to call systemtap. + * lib/stap_run.exp: Likewise. + * lib/stap_run2.exp: Likewise. + * lib/stap_run_binary.exp: Likewise. + * lib/stap_run_exact.exp: Likewise. + 2008-07-09 Frank Ch. Eigler <fche@elastic.org> From <James.Bottomley@HansenPartnership.com>: diff --git a/testsuite/Makefile.am b/testsuite/Makefile.am index b66bb75f..5f3044cd 100644 --- a/testsuite/Makefile.am +++ b/testsuite/Makefile.am @@ -13,6 +13,8 @@ clean-local: DEJAZILLA=@dejazilla@ +TOOL_OPTS=$(EXTRA_TOOL_OPTS) + # automake's dejagnu library already runs check-DEJAGNU before check-local # That's why we need to add "execrc" to $(RUNTEST) - to ensure that this # subtarget gets run even if runtest per se exits with a failure. @@ -21,7 +23,7 @@ check-local: # but installcheck does not follow an implicit check-DEJAGNU, go figure installcheck: site.exp - -$(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU RUNTESTFLAGS="$(RUNTESTFLAGS) --tool_opts install" + -$(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU RUNTESTFLAGS="$(RUNTESTFLAGS) --tool_opts \'install $(TOOL_OPTS)\'" if test -n "$(DEJAZILLA)"; then mail $(DEJAZILLA) < systemtap.sum; fi SRCDIR = $(shell cd $(srcdir); pwd) @@ -40,6 +42,6 @@ LD_LIBRARY_PATH=$(DESTDIR)$(libdir)/systemtap CRASH_LIBDIR=$(DESTDIR)$(libdir)/systemtap SYSTEMTAP_PATH=$(DESTDIR)$(bindir) -RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir +RUNTESTDEFAULTFLAGS = --tool $$tool --tool_opts \'$(TOOL_OPTS)\' --srcdir $$srcdir EXPECT = expect RUNTEST="env SYSTEMTAP_RUNTIME=$(SYSTEMTAP_RUNTIME) SYSTEMTAP_TAPSET=$(SYSTEMTAP_TAPSET) LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) CRASH_LIBDIR=$(CRASH_LIBDIR) PATH=$(SYSTEMTAP_PATH):$$PATH $(srcdir)/execrc runtest" diff --git a/testsuite/Makefile.in b/testsuite/Makefile.in index c8b07bdc..8fe7a21f 100644 --- a/testsuite/Makefile.in +++ b/testsuite/Makefile.in @@ -134,6 +134,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ AUTOMAKE_OPTIONS = dejagnu DEJAZILLA = @dejazilla@ +TOOL_OPTS = $(EXTRA_TOOL_OPTS) SRCDIR = $(shell cd $(srcdir); pwd) EXTRA_DIST = execrc config lib systemtap \ parseok parseko semok semko transok transko buildok buildok \ @@ -149,7 +150,7 @@ SYSTEMTAP_TAPSET = $(DESTDIR)$(pkgdatadir)/tapset LD_LIBRARY_PATH = $(DESTDIR)$(libdir)/systemtap CRASH_LIBDIR = $(DESTDIR)$(libdir)/systemtap SYSTEMTAP_PATH = $(DESTDIR)$(bindir) -RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir +RUNTESTDEFAULTFLAGS = --tool $$tool --tool_opts \'$(TOOL_OPTS)\' --srcdir $$srcdir EXPECT = expect RUNTEST = "env SYSTEMTAP_RUNTIME=$(SYSTEMTAP_RUNTIME) SYSTEMTAP_TAPSET=$(SYSTEMTAP_TAPSET) LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) CRASH_LIBDIR=$(CRASH_LIBDIR) PATH=$(SYSTEMTAP_PATH):$$PATH $(srcdir)/execrc runtest" all: all-am @@ -469,7 +470,7 @@ check-local: # but installcheck does not follow an implicit check-DEJAGNU, go figure installcheck: site.exp - -$(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU RUNTESTFLAGS="$(RUNTESTFLAGS) --tool_opts install" + -$(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU RUNTESTFLAGS="$(RUNTESTFLAGS) --tool_opts \'install $(TOOL_OPTS)\'" if test -n "$(DEJAZILLA)"; then mail $(DEJAZILLA) < systemtap.sum; fi # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/testsuite/lib/stap_compile.exp b/testsuite/lib/stap_compile.exp index 8c6df0ee..8f82018f 100644 --- a/testsuite/lib/stap_compile.exp +++ b/testsuite/lib/stap_compile.exp @@ -4,7 +4,7 @@ # - script is the script to compile # Additional arguments are passed to stap as-is. proc stap_compile { TEST_NAME compile script args } { - set cmd [concat {stap -v -p4 -e} $script $args] + set cmd [concat [stap_exec] {-v -p4 -e} $script $args] verbose -log "running $cmd" eval spawn $cmd diff --git a/testsuite/lib/stap_run.exp b/testsuite/lib/stap_run.exp index 43964d8e..5f67d773 100644 --- a/testsuite/lib/stap_run.exp +++ b/testsuite/lib/stap_run.exp @@ -26,7 +26,7 @@ proc stap_run { TEST_NAME {LOAD_GEN_FUNCTION ""} {OUTPUT_CHECK_STRING ""} args } if {[info procs installtest_p] != "" && ![installtest_p]} { untested $TEST_NAME; return } - set cmd [concat {stap -v} $args] + set cmd [concat [stap_exec] -v $args] if [file readable $test_file_name] { lappend cmd $test_file_name } diff --git a/testsuite/lib/stap_run2.exp b/testsuite/lib/stap_run2.exp index 9849aefb..1d9dc0b3 100644 --- a/testsuite/lib/stap_run2.exp +++ b/testsuite/lib/stap_run2.exp @@ -15,7 +15,7 @@ proc stap_run2 { TEST_NAME args } { if {[info procs installtest_p] != "" && ![installtest_p]} { untested $TEST_NAME; return } - set cmd [concat stap $args $test_file_name] + set cmd [concat [stap_exec] $args $test_file_name] catch {eval exec $cmd} res set n 0 diff --git a/testsuite/lib/stap_run_binary.exp b/testsuite/lib/stap_run_binary.exp index 1d31d817..a5e1195a 100644 --- a/testsuite/lib/stap_run_binary.exp +++ b/testsuite/lib/stap_run_binary.exp @@ -13,7 +13,7 @@ proc stap_run_binary { TEST_NAME} { if {[info procs installtest_p] != "" && ![installtest_p]} {untested $TEST_NAME; return} set hex_args {-ve 8/1 "%02x " "\n"} - set res [exec stap $test_file_name | hexdump $hex_args] + set res [exec [stap_exec] $test_file_name | hexdump $hex_args] if {[string compare $res $::result_string] == 0} { pass "$TEST_NAME" diff --git a/testsuite/lib/stap_run_exact.exp b/testsuite/lib/stap_run_exact.exp index 6a473798..23c22ec0 100644 --- a/testsuite/lib/stap_run_exact.exp +++ b/testsuite/lib/stap_run_exact.exp @@ -12,7 +12,7 @@ proc stap_run_exact { TEST_NAME test_file_name args } { if {[info procs installtest_p] != "" && ![installtest_p]} { untested $TEST_NAME; return } - set cmd [concat stap $args $test_file_name] + set cmd [concat [stap_exec] $args $test_file_name] catch {eval exec $cmd} res set n 0 diff --git a/testsuite/lib/systemtap.exp b/testsuite/lib/systemtap.exp index 0f6a69dd..e74bd13c 100644 --- a/testsuite/lib/systemtap.exp +++ b/testsuite/lib/systemtap.exp @@ -2,11 +2,29 @@ load_lib site.exp proc installtest_p {} { global TOOL_OPTIONS - if {[info exists TOOL_OPTIONS] && ($TOOL_OPTIONS == "install")} { + if {[info exists TOOL_OPTIONS] && [string match "*install*" $TOOL_OPTIONS]} { return 1 } else { return 0 } } + +proc use_server_p {} { + global TOOL_OPTIONS + if {[info exists TOOL_OPTIONS] && [string match "*server*" $TOOL_OPTIONS]} { + return 1 + } else { return 0 } +} + + +proc stap_exec {} { + if {[info procs use_server_p] != "" && [use_server_p]} then { + return "stap-client" + } else { + return "stap" + } +} + + proc print_systemtap_version {} { set version [exec /bin/uname -r] set location "/boot/vmlinux-$version" |