summaryrefslogtreecommitdiffstats
path: root/testsuite/systemtap.base/sdt.exp
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/systemtap.base/sdt.exp')
-rw-r--r--testsuite/systemtap.base/sdt.exp64
1 files changed, 64 insertions, 0 deletions
diff --git a/testsuite/systemtap.base/sdt.exp b/testsuite/systemtap.base/sdt.exp
new file mode 100644
index 00000000..21b94810
--- /dev/null
+++ b/testsuite/systemtap.base/sdt.exp
@@ -0,0 +1,64 @@
+set test "sdt"
+set ::result_string {1
+1 2
+1 2 3
+1 2 3 4
+1 2 3 4 5
+1 2 3 4 5 6
+1 2 3 4 5 6 7
+1 2 3 4 5 6 7 8
+1 2 3 4 5 6 7 8 9
+1 2 3 4 5 6 7 8 9 10}
+
+set extra_flags {{""} {additional_flags=-std=gnu89} {additional_flags=-ansi} {additional_flags=-pedantic} {additional_flags=-ansi additional_flags=-pedantic} {additional_flags=-O2} {additional_flags="-O3"}}
+
+# Iterate extra_flags, trying each with C and C++
+for {set i 0} {$i < [llength $extra_flags]} {incr i} {
+set extra_flag [lindex $extra_flags $i]
+
+# C
+set test_flags "additional_flags=-g"
+set test_flags "$test_flags additional_flags=-I$srcdir/../includes/sys"
+set test_flags "$test_flags additional_flags=-Wall"
+set test_flags "$test_flags additional_flags=-Wextra"
+set test_flags "$test_flags additional_flags=-Werror"
+
+set res [target_compile $srcdir/$subdir/$test.c $test.prog executable "$test_flags $extra_flag"]
+if { $res != "" } {
+ verbose "target_compile failed: $res" 2
+ fail "compiling $test.c $extra_flag"
+ return
+} else {
+ pass "compiling $test.c $extra_flag"
+}
+
+if {[installtest_p]} {
+ stap_run3 "$test $extra_flag" $srcdir/$subdir/$test.stp -c ./$test.prog
+} else {
+ untested "$test $extra_flag"
+}
+
+# C++
+set test_flags "additional_flags=-g"
+set test_flags "$test_flags additional_flags=-I$srcdir/../includes/sys"
+set test_flags "$test_flags additional_flags=-Wall"
+set test_flags "$test_flags additional_flags=-Werror"
+set test_flags "$test_flags additional_flags=-x additional_flags=c++"
+
+set res [target_compile $srcdir/$subdir/$test.c $test.prog executable "$test_flags $extra_flag"]
+if { $res != "" } {
+ verbose "target_compile failed: $res" 2
+ fail "compiling $test.c c++ $extra_flag"
+ return
+} else {
+ pass "compiling $test.c c++ $extra_flag"
+}
+
+if {[installtest_p]} {
+ stap_run3 "$test c++ $extra_flag" $srcdir/$subdir/$test.stp -c ./$test.prog
+} else {
+ untested "$test c++ $extra_flag"
+}
+}
+
+catch {exec rm -f $test.prog}