diff options
-rw-r--r-- | gdb/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/testsuite/lib/selftest-support.exp | 19 |
2 files changed, 22 insertions, 2 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 2e7eb1d..aa016c8 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2017-10-13 Pedro Alves <palves@redhat.com> + * lib/selftest-support.exp (selftest_setup): Extend comments, and + also skip on stub-like targets. + +2017-10-13 Pedro Alves <palves@redhat.com> + PR gdb/22293 * gdb.base/find-unmapped.exp: Don't skip if is_remote target. (top level): Move some tests to ... diff --git a/gdb/testsuite/lib/selftest-support.exp b/gdb/testsuite/lib/selftest-support.exp index 987b5c8..798d19d 100644 --- a/gdb/testsuite/lib/selftest-support.exp +++ b/gdb/testsuite/lib/selftest-support.exp @@ -124,8 +124,23 @@ proc selftest_setup { executable function } { proc do_self_tests {function body} { global GDB tool - # Are we on a target board. - if { [is_remote target] || ![isnative] } then { + # Are we testing with a remote board? In that case, the target + # won't have access to the GDB's auxilliary data files + # (data-directory, etc.). It's simpler to just skip. + if [is_remote target] { + return + } + + # ... or seemingly testing with a cross debugger? Likely GDB + # wouldn't be able to debug itself then... + if ![isnative] { + return + } + + # ... or with a stub-like server? I.e., gdbserver + "target + # remote"? In that case we won't be able to pass command line + # arguments to GDB, and selftest_setup wants to do exactly that. + if [target_info exists use_gdb_stub] { return } |