From a1dfb76d919d45276963f2be35e8a235937d9d8f Mon Sep 17 00:00:00 2001 From: Tom de Vries Date: Tue, 15 Nov 2022 15:24:54 +0100 Subject: [PATCH] [gdb/testsuite] Fix gdb.base/solib-vanish.exp for remote target When running test-case gdb.base/solib-vanish.exp with target board remote-gdbserver-on-localhost (using REMOTE_TARGET_USERNAME) we run into some failures. Fix these by adding the missing gdb_load_shlib. Tested on x86_64-linux. Co-Authored-by: Ivan Tetyushkin --- gdb/testsuite/gdb.base/solib-vanish.exp | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/gdb/testsuite/gdb.base/solib-vanish.exp b/gdb/testsuite/gdb.base/solib-vanish.exp index 5f47f2a80fd..57e0b684dc8 100644 --- a/gdb/testsuite/gdb.base/solib-vanish.exp +++ b/gdb/testsuite/gdb.base/solib-vanish.exp @@ -69,22 +69,35 @@ set srcfile_lib1 ${srcdir}/${subdir}/${lib1name}.c set binfile_lib1 [standard_output_file ${lib1name}.so] set lib1_flags [list debug shlib=${binfile_lib2}] +if { [gdb_compile_shlib ${srcfile_lib2} ${binfile_lib2} $lib2_flags] != "" + || [gdb_compile_shlib ${srcfile_lib1} ${binfile_lib1} $lib1_flags] != "" } { + untested "failed to compile" + return -1 +} + # Main program set testfile "solib-vanish-main" set srcfile ${srcdir}/${subdir}/${testfile}.c set executable ${testfile} set binfile [standard_output_file ${executable}] -set bin_flags [list debug shlib_load additional_flags=-DVANISH_LIB=\"${binfile_lib1}\"] +set bin_flags [list debug shlib_load] +set binfile_lib1_target [gdb_download_shlib $binfile_lib1] +lappend bin_flags additional_flags=-DVANISH_LIB=\"$binfile_lib1_target\" -if { [gdb_compile_shlib ${srcfile_lib2} ${binfile_lib2} $lib2_flags] != "" - || [gdb_compile_shlib ${srcfile_lib1} ${binfile_lib1} $lib1_flags] != "" - || [gdb_compile ${srcfile} ${binfile} executable $bin_flags] != "" } { +if {[is_remote target]} { + lappend cleanfiles_target $binfile_lib1_target.renamed +} + +if { [gdb_compile ${srcfile} ${binfile} executable $bin_flags] != "" } { untested "failed to compile" return -1 } clean_restart $testfile +gdb_locate_shlib $binfile_lib1 +gdb_load_shlib $binfile_lib2 + if { ![runto_main] } { return } -- 2.30.2