From 9af7a370030a3729da4efbf26b0c746420408b3d 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/info_sources_2.exp for remote target With test-case gdb.base/info_sources_2.exp and 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. --- gdb/testsuite/gdb.base/info_sources_2.exp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gdb/testsuite/gdb.base/info_sources_2.exp b/gdb/testsuite/gdb.base/info_sources_2.exp index f9246b8fa96..9fe3d479018 100644 --- a/gdb/testsuite/gdb.base/info_sources_2.exp +++ b/gdb/testsuite/gdb.base/info_sources_2.exp @@ -20,6 +20,8 @@ if { [skip_shlib_tests] } { return 0 } +set is_remote_target [is_remote target] + standard_testfile -test.c -lib.c set solib_name [standard_output_file ${testfile}-lib.so] @@ -37,6 +39,8 @@ if {[gdb_compile ${srcdir}/${subdir}/${srcfile} ${binfile} executable \ clean_restart ${binfile} +set solib_name [gdb_load_shlib $solib_name] + if ![runto foo] { untested "failed to run to function foo" return -1 @@ -55,6 +59,7 @@ if ![runto foo] { # file is NOT listed for the given object file. proc run_info_sources { extra_args args } { global gdb_prompt srcdir subdir + global is_remote_target with_test_prefix "args: ${extra_args}" { @@ -76,6 +81,9 @@ proc run_info_sources { extra_args args } { -re "^(\[^\r\n\]+):\r\n" { set objfile_name $expect_out(1,string) + if { $is_remote_target } { + set objfile_name [file tail $objfile_name] + } exp_continue } @@ -129,6 +137,10 @@ proc run_info_sources { extra_args args } { # Figure out the path for SOURCEFILE that we're looking for. set sourcepath [file normalize ${srcdir}/${subdir}/${sourcefile}] + if { $is_remote_target } { + set objfile [file tail $objfile] + } + # Make sure we handle the case where there are no source files # associated with a particular objfile. set source_list {} -- 2.30.2