This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Fix three test failures with extended remote targets


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=1586c8fbaf0116931ffacd1746a6540c81c2d438

commit 1586c8fbaf0116931ffacd1746a6540c81c2d438
Author: Gary Benson <gbenson@redhat.com>
Date:   Mon Apr 20 11:35:29 2015 +0100

    Fix three test failures with extended remote targets
    
    This commit fixes three gdb.base/attach.exp failures when using
    extended remote targets.  The failures occurred because GDB now
    locates and loads files when attaching on remote targets if the
    remote target supports qXfer:exec-file:read; the filenames were
    shown but with "target:" prefixes which the test has been updated
    to handle.
    
    gdb/testsuite/ChangeLog:
    
    	* gdb.base/attach.exp: Fix three extended remote failures.

Diff:
---
 gdb/testsuite/ChangeLog           |  4 ++++
 gdb/testsuite/gdb.base/attach.exp | 21 +++++++++++++++++----
 2 files changed, 21 insertions(+), 4 deletions(-)

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 500a774..8692a0b 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2015-04-20  Gary Benson <gbenson@redhat.com>
+
+	* gdb.base/attach.exp: Fix three extended remote failures.
+
 2015-04-17  Gary Benson <gbenson@redhat.com>
 
 	* gdb.server/server-exec-info.exp: Inhibit GDB from accessing
diff --git a/gdb/testsuite/gdb.base/attach.exp b/gdb/testsuite/gdb.base/attach.exp
index 38b19b5..f2ebe3a 100644
--- a/gdb/testsuite/gdb.base/attach.exp
+++ b/gdb/testsuite/gdb.base/attach.exp
@@ -66,6 +66,19 @@ proc do_attach_tests {} {
     global subdir
     global timeout
     
+    # Figure out a regular expression that will match the sysroot,
+    # noting that the default sysroot is "target:", and also noting
+    # that GDB will strip "target:" from the start of filenames when
+    # operating on the local filesystem
+    set sysroot ""
+    set test "show sysroot"
+    gdb_test_multiple $test $test {
+	-re "The current system root is \"(.*)\"\..*${gdb_prompt} $" {
+	    set sysroot $expect_out(1,string)
+	}
+    }
+    regsub "^target:" "$sysroot" "(target:)?" sysroot
+
     # Start the program running and then wait for a bit, to be sure
     # that it can be attached to.
 
@@ -219,17 +232,17 @@ proc do_attach_tests {} {
     set test "attach2, with no file"
     set found_exec_file 0
     gdb_test_multiple "attach $testpid" "$test" {
-	-re "Attaching to process $testpid.*Load new symbol table from \"$escapedbinfile\.exe\".*y or n. $" {
+	-re "Attaching to process $testpid.*Load new symbol table from \"$sysroot$escapedbinfile\.exe\".*y or n. $" {
 	    # On Cygwin, the DLL's symbol tables are loaded prior to the
 	    # executable's symbol table.  This in turn always results in
 	    # asking the user for actually loading the symbol table of the
 	    # executable.
-	    gdb_test "y" "Reading symbols from $escapedbinfile\.\.\.*done." \
+	    gdb_test "y" "Reading symbols from $sysroot$escapedbinfile\.\.\.*done." \
 		"$test (reset file)"
 
 	    set found_exec_file 1
 	}
-	-re "Attaching to process $testpid.*Reading symbols from $escapedbinfile.*main.*at .*$gdb_prompt $" {
+	-re "Attaching to process $testpid.*Reading symbols from $sysroot$escapedbinfile.*main.*at .*$gdb_prompt $" {
 	    pass "$test"
 	    set found_exec_file 1
 	}
@@ -298,7 +311,7 @@ proc do_attach_tests {} {
 	"before attach3, flush exec"
 
     gdb_test "attach $testpid" \
-	"Attaching to process $testpid.*Reading symbols from $escapedbinfile.*main.*at .*" \
+	"Attaching to process $testpid.*Reading symbols from $sysroot$escapedbinfile.*main.*at .*" \
 	"attach when process' a.out not in cwd"
 
     set test "after attach3, exit"


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]