diff options
Diffstat (limited to 'gdb/testsuite/gdb.base/signals.exp')
-rw-r--r-- | gdb/testsuite/gdb.base/signals.exp | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/gdb/testsuite/gdb.base/signals.exp b/gdb/testsuite/gdb.base/signals.exp index 50ed0fe..d8c454d 100644 --- a/gdb/testsuite/gdb.base/signals.exp +++ b/gdb/testsuite/gdb.base/signals.exp @@ -10,11 +10,12 @@ if $tracelevel then { set prms_id 0 set bug_id 0 -set binfile $objdir/$subdir/signals - -if ![file exists $binfile] then { - perror "$binfile does not exist." - return 0 +set testfile signals +set srcfile ${srcdir}/$subdir/${testfile}.c +set binfile ${objdir}/${subdir}/${testfile} +if { [compile "${srcfile} -g -o ${binfile}"] != "" } { + perror "Couldn't compile ${srcfile}" + return -1 } proc signal_tests_1 {} { @@ -290,8 +291,15 @@ gdb_start # This will need to be updated as the exact list of signals changes, # but I want to test that TARGET_SIGNAL_0, TARGET_SIGNAL_DEFAULT, and # TARGET_SIGNAL_UNKNOWN are skipped. -setup_xfail "i*86-unknown-bsdi2.0" -gdb_test "handle all print" "Signal Stop Print Pass to program Description\r\nSIGHUP Yes Yes Yes Hangup.*SIG63 Yes Yes Yes Real-time event 63" +proc test_handle_all_print {} { + + # Increase timeout and expect input buffer for large output from gdb. + # Allow blank or TAB as whitespace characters. + set timeout 30 + match_max 8000 + gdb_test "handle all print" "Signal\[ \]+Stop\[ \]+Print\[ \]+Pass to program\[ \]+Description\r\nSIGHUP\[ \]+Yes\[ \]+Yes\[ \]+Yes\[ \]+Hangup.*SIG63\[ \]+Yes\[ \]+Yes\[ \]+Yes\[ \]+Real-time event 63" +} +test_handle_all_print gdb_exit gdb_start |