+2018-02-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * lib/gdb.exp (gdb_is_target_1): Add prompt_regexp parameter and
+ use it.
+ (gdb_is_target_remote_prompt): New proc.
+ (gdb_is_target_remote): Use gdb_is_target_remote_prompt.
+ (gdb_is_target_native): Pass prompt parameter to
+ gdb_is_target_1.
+
2018-02-26 Simon Marchi <simon.marchi@polymtl.ca>
* gdb.base/load-command.c: New file.
# Helper for gdb_is_target_* procs. TARGET_NAME is the name of the target
# we're looking for (used to build the test name). TARGET_STACK_REGEXP
# is a regexp that will match the output of "maint print target-stack" if
-# the target in question is currently pushed.
-
-proc gdb_is_target_1 { target_name target_stack_regexp } {
- global gdb_prompt
-
- set prompt_regexp "$gdb_prompt $"
+# the target in question is currently pushed. PROMPT_REGEXP is a regexp
+# matching the expected prompt after the command output.
+proc gdb_is_target_1 { target_name target_stack_regexp prompt_regexp } {
set test "probe for target ${target_name}"
gdb_test_multiple "maint print target-stack" $test {
-re "${target_stack_regexp}${prompt_regexp}" {
return 0
}
+# Helper for gdb_is_target_remote where the expected prompt is variable.
+
+proc gdb_is_target_remote_prompt { prompt_regexp } {
+ return [gdb_is_target_1 "remote" ".*emote serial target in gdb-specific protocol.*" $prompt_regexp]
+}
+
# Check whether we're testing with the remote or extended-remote
# targets.
proc gdb_is_target_remote { } {
- return [gdb_is_target_1 "remote" ".*emote serial target in gdb-specific protocol.*"]
+ global gdb_prompt
+
+ return [gdb_is_target_remote_prompt "$gdb_prompt $"]
}
# Check whether we're testing with the native target.
proc gdb_is_target_native { } {
- return [gdb_is_target_1 "native" ".*native \\(Native process\\).*"]
+ global gdb_prompt
+
+ return [gdb_is_target_1 "native" ".*native \\(Native process\\).*" "$gdb_prompt $"]
}
# Return the effective value of use_gdb_stub.