From d221e7efd61fc80f6fbf862b7e32927835575329 Mon Sep 17 00:00:00 2001 From: Don Breazeal Date: Thu, 15 Jan 2015 10:47:31 -0800 Subject: [PATCH] Skip two more attach tests when testing against stub-like targets This patch updates two attach tests to use utility procs for checking if the attach test should run and for launching the program to be attached, as follows: 1) Use can_spawn_for_attach instead of is_remote target 2) Use spawn_wait_for_attach instead of exec/sleep Tested (1) with i686-mingw32 host and i686-pc-linux-gnu build/target and both with x86_64 Ubuntu. gdb/testsuite/ChangeLog: * gdb.base/attach-pie-noexec.exp: Use can_spawn_for_attach instead of checking whether the target board is remote and use spawn_wait_for_attach instead of exec/sleep. * gdb.base/attach-twice.exp: Likewise. --- gdb/testsuite/ChangeLog | 7 +++++++ gdb/testsuite/gdb.base/attach-pie-noexec.exp | 9 +++++---- gdb/testsuite/gdb.base/attach-twice.exp | 9 +++++---- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index a71ee988ea..0558960a57 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2015-01-15 Don Breazeal + + * gdb.base/attach-pie-noexec.exp: Use can_spawn_for_attach + instead of checking whether the target board is remote and + use spawn_wait_for_attach instead of exec/sleep. + * gdb.base/attach-twice.exp: Likewise. + 2015-01-15 Joel Brobecker * gdb.ada/var_arr_attrs: New testcase. diff --git a/gdb/testsuite/gdb.base/attach-pie-noexec.exp b/gdb/testsuite/gdb.base/attach-pie-noexec.exp index f6aa1c8c21..30a2f4d9de 100644 --- a/gdb/testsuite/gdb.base/attach-pie-noexec.exp +++ b/gdb/testsuite/gdb.base/attach-pie-noexec.exp @@ -13,8 +13,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -# Manipulation with PID on target is not supported. -if [is_remote target] then { +if {![can_spawn_for_attach]} { return 0 } @@ -53,8 +52,10 @@ if {$arch == ""} { return 0 } -set testpid [eval exec $binfile &] -exec sleep 2 +# Start the program running and then wait for a bit, to be sure +# that it can be attached to. + +set testpid [spawn_wait_for_attach $binfile] gdb_start file delete -- $binfile diff --git a/gdb/testsuite/gdb.base/attach-twice.exp b/gdb/testsuite/gdb.base/attach-twice.exp index 654ceca561..f6a9eb6f5e 100644 --- a/gdb/testsuite/gdb.base/attach-twice.exp +++ b/gdb/testsuite/gdb.base/attach-twice.exp @@ -13,8 +13,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -# Manipulation with PID on target is not supported. -if [is_remote target] then { +if {![can_spawn_for_attach]} { return 0 } @@ -25,8 +24,10 @@ if { [prepare_for_testing ${testfile}.exp $executable] } { return -1 } -set testpid [eval exec $binfile &] -exec sleep 2 +# Start the program running and then wait for a bit, to be sure +# that it can be attached to. + +set testpid [spawn_wait_for_attach $binfile] set parentpid 0 -- 2.34.1