diff options
author | Yao Qi <yao.qi@linaro.org> | 2018-02-01 14:50:23 +0000 |
---|---|---|
committer | Yao Qi <yao.qi@linaro.org> | 2018-02-01 14:50:23 +0000 |
commit | d4d38844faaff1576b021558d0835dedbd415e8d (patch) | |
tree | 7d232d7c5af53fe3b6c4c5a35cee718eb7e8a772 /gdb | |
parent | e99955cd8eca9ac8eff828e8c7b676955fd46e04 (diff) | |
download | binutils-d4d38844faaff1576b021558d0835dedbd415e8d.zip binutils-d4d38844faaff1576b021558d0835dedbd415e8d.tar.gz binutils-d4d38844faaff1576b021558d0835dedbd415e8d.tar.bz2 |
Fix gdb.base/attach.exp fails when gdb is configured --with-sysroot=/
I see some test fails in gdb.base/attach.exp when gdb is configured
--with-sysroot=/.
FAIL: gdb.base/attach.exp: attach2, with no file
FAIL: gdb.base/attach.exp: load file manually, after attach2 (re-read) (got interactive prompt)
FAIL: gdb.base/attach.exp: attach when process' a.out not in cwd
If gdb is configured this way, sysroot is "/" in default, and if binfile
is a absolute path, the regexp pattern $sysroot$escapedbinfile is
incorrect.
There are different ways to fix it, but I don't want to complicate the
test, so I choose this naive way.
gdb/testsuite:
2018-02-01 Yao Qi <yao.qi@linaro.org>
* gdb.base/attach.exp (do_attach_tests): Set sysroot to
"\[^\r\n\]*".
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/attach.exp | 15 |
2 files changed, 11 insertions, 9 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 00c01fd..ad6c04a 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2018-02-01 Yao Qi <yao.qi@linaro.org> + + * gdb.base/attach.exp (do_attach_tests): Set sysroot to + "\[^\r\n\]*". + 2018-01-31 Nikola Prica <nikola.prica@rt-rk.com> * gdb.arch/powerpc-prologue-frame.s: New file. diff --git a/gdb/testsuite/gdb.base/attach.exp b/gdb/testsuite/gdb.base/attach.exp index d315c27..efec49e 100644 --- a/gdb/testsuite/gdb.base/attach.exp +++ b/gdb/testsuite/gdb.base/attach.exp @@ -57,15 +57,12 @@ proc do_attach_tests {} { # 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 + # operating on the local filesystem. However the default sysroot + # can be set via configure option --with-sysroot, which can be "/". + # If $binfile is a absolute path, so pattern + # "$sysroot$escapedbinfile" below is wrong. Use [^\r\n]* to make + # $sysroot simple. + set sysroot "\[^\r\n\]*" # Start the program running and then wait for a bit, to be sure # that it can be attached to. |