mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-23 03:29:47 +08:00
* lib/gdb.exp (default_gdb_init): Set gdb_test_file_name.
(standard_output_file, standard_testfile): New procs. (build_executable, clean_restart): Use standard_output_file.
This commit is contained in:
@ -1,3 +1,9 @@
|
|||||||
|
2012-06-22 Tom Tromey <tromey@redhat.com>
|
||||||
|
|
||||||
|
* lib/gdb.exp (default_gdb_init): Set gdb_test_file_name.
|
||||||
|
(standard_output_file, standard_testfile): New procs.
|
||||||
|
(build_executable, clean_restart): Use standard_output_file.
|
||||||
|
|
||||||
2012-06-22 Yao Qi <yao@codesourcery.com>
|
2012-06-22 Yao Qi <yao@codesourcery.com>
|
||||||
|
|
||||||
* boards/native-gdbserver.exp: New proc ${board}_exec.
|
* boards/native-gdbserver.exp: New proc ${board}_exec.
|
||||||
|
@ -3024,12 +3024,15 @@ proc gdb_continue { function } {
|
|||||||
proc default_gdb_init { args } {
|
proc default_gdb_init { args } {
|
||||||
global gdb_wrapper_initialized
|
global gdb_wrapper_initialized
|
||||||
global gdb_wrapper_target
|
global gdb_wrapper_target
|
||||||
|
global gdb_test_file_name
|
||||||
global cleanfiles
|
global cleanfiles
|
||||||
|
|
||||||
set cleanfiles {}
|
set cleanfiles {}
|
||||||
|
|
||||||
gdb_clear_suppressed;
|
gdb_clear_suppressed;
|
||||||
|
|
||||||
|
set gdb_test_file_name [file rootname [file tail [lindex $args 0]]]
|
||||||
|
|
||||||
# Make sure that the wrapper is rebuilt
|
# Make sure that the wrapper is rebuilt
|
||||||
# with the appropriate multilib option.
|
# with the appropriate multilib option.
|
||||||
if { $gdb_wrapper_target != [current_target_name] } {
|
if { $gdb_wrapper_target != [current_target_name] } {
|
||||||
@ -3063,6 +3066,70 @@ proc default_gdb_init { args } {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Turn BASENAME into a full file name in the standard output
|
||||||
|
# directory.
|
||||||
|
|
||||||
|
proc standard_output_file {basename} {
|
||||||
|
global objdir subdir
|
||||||
|
|
||||||
|
return $objdir/$subdir/$basename
|
||||||
|
}
|
||||||
|
|
||||||
|
# Set 'testfile', 'srcfile', and 'binfile'.
|
||||||
|
#
|
||||||
|
# ARGS is a list of source file specifications.
|
||||||
|
# Without any arguments, the .exp file's base name is used to
|
||||||
|
# compute the source file name. The ".c" extension is added in this case.
|
||||||
|
# If ARGS is not empty, each entry is a source file specification.
|
||||||
|
# If the specification starts with a ".", it is treated as a suffix
|
||||||
|
# to append to the .exp file's base name.
|
||||||
|
# If the specification is the empty string, it is treated as if it
|
||||||
|
# were ".c".
|
||||||
|
# Otherwise it is a file name.
|
||||||
|
# The first file in the list is used to set the 'srcfile' global.
|
||||||
|
# Each subsequent name is used to set 'srcfile2', 'srcfile3', etc.
|
||||||
|
#
|
||||||
|
# Most tests should call this without arguments.
|
||||||
|
#
|
||||||
|
# If a completely different binary file name is needed, then it
|
||||||
|
# should be handled in the .exp file with a suitable comment.
|
||||||
|
|
||||||
|
proc standard_testfile {args} {
|
||||||
|
global gdb_test_file_name
|
||||||
|
global objdir subdir
|
||||||
|
|
||||||
|
# Outputs.
|
||||||
|
global testfile binfile
|
||||||
|
|
||||||
|
set testfile $gdb_test_file_name
|
||||||
|
set binfile [standard_output_file ${testfile}]
|
||||||
|
|
||||||
|
if {[llength $args] == 0} {
|
||||||
|
set args .c
|
||||||
|
}
|
||||||
|
|
||||||
|
set suffix ""
|
||||||
|
foreach arg $args {
|
||||||
|
set varname srcfile$suffix
|
||||||
|
global $varname
|
||||||
|
|
||||||
|
# Handle an extension.
|
||||||
|
if {$arg == ""} {
|
||||||
|
set arg $testfile.c
|
||||||
|
} elseif {[string range $arg 0 0] == "."} {
|
||||||
|
set arg $testfile$arg
|
||||||
|
}
|
||||||
|
|
||||||
|
set $varname $arg
|
||||||
|
|
||||||
|
if {$suffix == ""} {
|
||||||
|
set suffix 2
|
||||||
|
} else {
|
||||||
|
incr suffix
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
# The default timeout used when testing GDB commands. We want to use
|
# The default timeout used when testing GDB commands. We want to use
|
||||||
# the same timeout as the default dejagnu timeout, unless the user has
|
# the same timeout as the default dejagnu timeout, unless the user has
|
||||||
# already provided a specific value (probably through a site.exp file).
|
# already provided a specific value (probably through a site.exp file).
|
||||||
@ -3666,7 +3733,7 @@ proc build_executable { testname executable {sources ""} {options {debug}} } {
|
|||||||
set sources ${executable}.c
|
set sources ${executable}.c
|
||||||
}
|
}
|
||||||
|
|
||||||
set binfile ${objdir}/${subdir}/${executable}
|
set binfile [standard_output_file $executable]
|
||||||
|
|
||||||
set objects {}
|
set objects {}
|
||||||
for {set i 0} "\$i<[llength $sources]" {incr i} {
|
for {set i 0} "\$i<[llength $sources]" {incr i} {
|
||||||
@ -3694,12 +3761,12 @@ proc build_executable { testname executable {sources ""} {options {debug}} } {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Starts fresh GDB binary and loads EXECUTABLE into GDB. EXECUTABLE is
|
# Starts fresh GDB binary and loads EXECUTABLE into GDB. EXECUTABLE is
|
||||||
# the name of binary in ${objdir}/${subdir}.
|
# the basename of the binary.
|
||||||
proc clean_restart { executable } {
|
proc clean_restart { executable } {
|
||||||
global srcdir
|
global srcdir
|
||||||
global objdir
|
global objdir
|
||||||
global subdir
|
global subdir
|
||||||
set binfile ${objdir}/${subdir}/${executable}
|
set binfile [standard_output_file ${executable}]
|
||||||
|
|
||||||
gdb_exit
|
gdb_exit
|
||||||
gdb_start
|
gdb_start
|
||||||
|
Reference in New Issue
Block a user