OLD | NEW |
1 # sigthread.exp -- Expect script to test thread and signal interaction | 1 # sigthread.exp -- Expect script to test thread and signal interaction |
2 # Copyright (C) 2007-2012 Free Software Foundation, Inc. | 2 # Copyright (C) 2007-2012 Free Software Foundation, Inc. |
3 | 3 |
4 # This program is free software; you can redistribute it and/or modify | 4 # This program is free software; you can redistribute it and/or modify |
5 # it under the terms of the GNU General Public License as published by | 5 # it under the terms of the GNU General Public License as published by |
6 # the Free Software Foundation; either version 3 of the License, or | 6 # the Free Software Foundation; either version 3 of the License, or |
7 # (at your option) any later version. | 7 # (at your option) any later version. |
8 # | 8 # |
9 # This program is distributed in the hope that it will be useful, | 9 # This program is distributed in the hope that it will be useful, |
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
12 # GNU General Public License for more details. | 12 # GNU General Public License for more details. |
13 # | 13 # |
14 # You should have received a copy of the GNU General Public License | 14 # You should have received a copy of the GNU General Public License |
15 # along with this program. If not, see <http://www.gnu.org/licenses/>. */ | 15 # along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
16 | 16 |
17 set testfile sigthread | 17 standard_testfile |
18 set srcfile ${testfile}.c | |
19 set binfile ${objdir}/${subdir}/${testfile} | |
20 | 18 |
21 if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" \ | 19 if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" \ |
22 executable { debug }] != "" } { | 20 executable { debug }] != "" } { |
23 return -1 | 21 return -1 |
24 } | 22 } |
25 | 23 |
26 gdb_exit | 24 clean_restart ${binfile} |
27 gdb_start | |
28 gdb_reinitialize_dir $srcdir/$subdir | |
29 gdb_load ${binfile} | |
30 | 25 |
31 if ![runto_main] then { | 26 if ![runto_main] then { |
32 fail "Can't run to main" | 27 fail "Can't run to main" |
33 return 0 | 28 return 0 |
34 } | 29 } |
35 | 30 |
36 gdb_test "handle SIGUSR1 nostop noprint pass" | 31 gdb_test "handle SIGUSR1 nostop noprint pass" |
37 gdb_test "handle SIGUSR2 nostop noprint pass" | 32 gdb_test "handle SIGUSR2 nostop noprint pass" |
38 | 33 |
39 gdb_test_multiple "continue" "continue" { | 34 gdb_test_multiple "continue" "continue" { |
40 -re "Continuing" { | 35 -re "Continuing" { |
41 pass "continue" | 36 pass "continue" |
42 } | 37 } |
43 } | 38 } |
44 | 39 |
45 # For this to work we must be sure to consume the "Continuing." | 40 # For this to work we must be sure to consume the "Continuing." |
46 # message first, or GDB's signal handler may not be in place. | 41 # message first, or GDB's signal handler may not be in place. |
47 after 500 {send_gdb "\003"} | 42 after 500 {send_gdb "\003"} |
48 | 43 |
49 # Make sure we do not get an internal error from hitting Control-C | 44 # Make sure we do not get an internal error from hitting Control-C |
50 # while many signals are flying back and forth. | 45 # while many signals are flying back and forth. |
51 gdb_test "" "Program received signal SIGINT.*" "stop with control-c" | 46 gdb_test "" "Program received signal SIGINT.*" "stop with control-c" |
OLD | NEW |