[1/9,gdb/testsuite] Fix gdb.base/foll-exec.exp for remote target

Message ID 20221107161333.16999-2-tdevries@suse.de
State Committed
Commit b108c563f0f8a74813cae6b8e0e2b0089de32ba1
Headers
Series Fix remote target test fails |

Commit Message

Tom de Vries Nov. 7, 2022, 4:13 p.m. UTC
  When running test-case gdb.base/foll-exec.exp with target board
remote-gdbserver-on-localhost.exp, I run into:
...
(gdb) PASS: gdb.base/foll-exec.exp: insert first exec catchpoint
continue^M
Continuing.^M
[Inferior 1 (process 4476) exited normally]^M
(gdb) FAIL: gdb.base/foll-exec.exp: continue to first exec catchpoint (the program e\
xited)
...

The problem is that the foll-exec executable expects the exec-ed executable
execd-prog alongside it, but it's missing.

Fix this by adding the missing gdb_remote_download.

Likewise in a few other test-cases.

Tested on x86_64-linux.
---
 gdb/testsuite/gdb.base/exec-invalid-sysroot.exp | 4 ++++
 gdb/testsuite/gdb.base/foll-exec.exp            | 4 ++++
 gdb/testsuite/gdb.base/foll-vfork.exp           | 4 ++++
 3 files changed, 12 insertions(+)
  

Patch

diff --git a/gdb/testsuite/gdb.base/exec-invalid-sysroot.exp b/gdb/testsuite/gdb.base/exec-invalid-sysroot.exp
index cacd5a092a2..7f7599cbf86 100644
--- a/gdb/testsuite/gdb.base/exec-invalid-sysroot.exp
+++ b/gdb/testsuite/gdb.base/exec-invalid-sysroot.exp
@@ -33,6 +33,10 @@  if  { [gdb_compile "${srcdir}/${subdir}/${srcfile2}" "${binfile2}" executable $c
     return -1
 }
 
+if { [is_remote target] } {
+    gdb_remote_download target $binfile2
+}
+
 if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable $compile_options] != "" } {
     untested "failed to compile main testcase"
     return -1
diff --git a/gdb/testsuite/gdb.base/foll-exec.exp b/gdb/testsuite/gdb.base/foll-exec.exp
index 8cddfa52c3b..a3d1a8781e9 100644
--- a/gdb/testsuite/gdb.base/foll-exec.exp
+++ b/gdb/testsuite/gdb.base/foll-exec.exp
@@ -36,6 +36,10 @@  if  { [gdb_compile "${srcdir}/${subdir}/${srcfile2}" "${binfile2}" executable $c
      return -1
 }
 
+if { [is_remote target] } {
+    gdb_remote_download target $binfile2
+}
+
 if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable $compile_options] != "" } {
      untested "failed to compile"
      return -1
diff --git a/gdb/testsuite/gdb.base/foll-vfork.exp b/gdb/testsuite/gdb.base/foll-vfork.exp
index e4f75728600..9627a177896 100644
--- a/gdb/testsuite/gdb.base/foll-vfork.exp
+++ b/gdb/testsuite/gdb.base/foll-vfork.exp
@@ -42,6 +42,10 @@  if {[build_executable $testfile.exp $testfile2 $srcfile2 $compile_options] == -1
     return -1
 }
 
+if { [is_remote target] } {
+    gdb_remote_download target [standard_output_file $testfile2]
+}
+
 # A few of these tests require a little more time than the standard
 # timeout allows.
 set oldtimeout $timeout