+2019-05-17 Alan Hayward <alan.hayward@arm.com>
+
+ * README (Running the Testsuite): Change example.
+ (Testsuite Parameters): Remove TRANSCRIPT.
+ * lib/gdb.exp: Remove TRANSCRIPT check.
+
2019-05-17 Alan Hayward <alan.hayward@arm.com>
* README (Testsuite Parameters): Add replay logging to
to DejaGnu. The first is to do `make check' in the main build
directory and specifying the makefile variable `RUNTESTFLAGS':
- make check RUNTESTFLAGS='TRANSCRIPT=y gdb.base/a2-run.exp'
+ make check RUNTESTFLAGS='GDB=/usr/bin/gdb gdb.base/a2-run.exp'
The second is to cd to the testsuite directory and invoke the DejaGnu
`runtest' command directly.
cd testsuite
make site.exp
- runtest TRANSCRIPT=y
+ runtest GDB=/usr/bin/gdb
(The `site.exp' file contains a handful of useful variables like host
and target triplets, and pathnames.)
The following parameters are DejaGNU variables that you can set to
affect the testsuite run globally.
-TRANSCRIPT
-
-You may find it useful to have a transcript of the commands that the
-testsuite sends to GDB, for instance if GDB crashes during the run,
-and you want to reconstruct the sequence of commands.
-
-If the DejaGNU variable TRANSCRIPT is set (to any value), each
-invocation of GDB during the test run will get a transcript file
-written into the DejaGNU output directory. The file will have the
-name transcript.<n>, where <n> is an integer. The first line of the
-file shows the invocation command with all the options passed to it,
-while subsequent lines are the GDB commands. A `make check' might
-look like this:
-
- make check RUNTESTFLAGS=TRANSCRIPT=y
-
-The transcript may not be complete, as for instance tests of command
-completion may show only partial command lines.
-
GDB
By default, the testsuite exercises the GDB in the build directory,
return [eval file join [lrange $full_split $len end]]
}
-# Log gdb command line and script if requested.
-if {[info exists TRANSCRIPT]} {
- rename send_gdb real_send_gdb
- rename remote_spawn real_remote_spawn
- rename remote_close real_remote_close
-
- global gdb_transcript
- set gdb_transcript ""
-
- global gdb_trans_count
- set gdb_trans_count 1
-
- proc remote_spawn {args} {
- global gdb_transcript gdb_trans_count outdir
-
- if {$gdb_transcript != ""} {
- close $gdb_transcript
- }
- set gdb_transcript [open [file join $outdir transcript.$gdb_trans_count] w]
- puts $gdb_transcript [lindex $args 1]
- incr gdb_trans_count
-
- return [uplevel real_remote_spawn $args]
- }
-
- proc remote_close {args} {
- global gdb_transcript
-
- if {$gdb_transcript != ""} {
- close $gdb_transcript
- set gdb_transcript ""
- }
-
- return [uplevel real_remote_close $args]
- }
-
- proc send_gdb {args} {
- global gdb_transcript
-
- if {$gdb_transcript != ""} {
- puts -nonewline $gdb_transcript [lindex $args 0]
- }
-
- return [uplevel real_send_gdb $args]
- }
-}
-
# If GDB_PARALLEL exists, then set up the parallel-mode directories.
if {[info exists GDB_PARALLEL]} {
if {[is_remote host]} {