Introduce target_is_gdbserver

This patch introduces a function in gdbserver-support.exp to find out
whether the current target is GDBserver.

The code was inspired from gdb.trace/qtro.exp, so it replaces the code
there by a call to the new function.

gdb/testsuite/ChangeLog:

	* gdb.trace/qtro.exp: Replace gdbserver detection code by...
	* lib/gdb.exp (target_is_gdbserver): New
	procedure.
This commit is contained in:
Simon Marchi 2014-12-10 15:12:17 -05:00
parent 56286edfdc
commit 0a46d518c7
3 changed files with 31 additions and 12 deletions

View File

@ -1,3 +1,8 @@
2014-12-10 Simon Marchi <simon.marchi@ericsson.com>
* gdb.trace/qtro.exp: Replace gdbserver detection code by...
* lib/gdb.exp (target_is_gdbserver): New procedure.
2014-12-08 Doug Evans <dje@google.com>
* gdb.python/py-objfile.exp: Add tests for objfile.owner.

View File

@ -98,18 +98,7 @@ if { $traceframe_info_supported == -1 } {
}
# Check whether we're testing with our own GDBserver.
set is_gdbserver -1
set test "probe for GDBserver"
gdb_test_multiple "monitor help" $test {
-re "The following monitor commands are supported.*debug-hw-points.*remote-debug.*GDBserver.*$gdb_prompt $" {
set is_gdbserver 1
pass $test
}
-re "$gdb_prompt $" {
set is_gdbserver 0
pass $test
}
}
set is_gdbserver [target_is_gdbserver]
if { $is_gdbserver == -1 } {
return -1
}

View File

@ -2537,6 +2537,31 @@ proc gdb_is_target_remote {} {
return 0
}
# Return 1 if the current remote target is an instance of our GDBserver, 0
# otherwise. Return -1 if there was an error and we can't tell.
gdb_caching_proc target_is_gdbserver {
global gdb_prompt
set is_gdbserver -1
set test "Probing for GDBserver"
gdb_test_multiple "monitor help" $test {
-re "The following monitor commands are supported.*Quit GDBserver.*$gdb_prompt $" {
set is_gdbserver 1
}
-re "$gdb_prompt $" {
set is_gdbserver 0
}
}
if { $is_gdbserver == -1 } {
verbose -log "Unable to tell whether we are using GDBserver or not."
}
return $is_gdbserver
}
set compiler_info "unknown"
set gcc_compiled 0
set hp_cc_compiler 0