Document gdb.in/gdb.cmd files and debugredirect cli command

Message ID 20190521090758.62153-1-alan.hayward@arm.com
State New, archived
Headers

Commit Message

Alan Hayward May 21, 2019, 9:08 a.m. UTC
  Add missing documentation for the debugredirect setting.

Add description and uses of gdb.in/gdb.cmd to the testsuite README.

Mention this in the NEWS file.

[Wasn't sure if testsuite changes belonged in NEWS? If not I can
 drop that part]
---
 gdb/NEWS             | 11 +++++++++++
 gdb/doc/gdb.texinfo  |  3 +++
 gdb/testsuite/README | 21 +++++++++++++++++++++
 3 files changed, 35 insertions(+)

-- 
2.20.1 (Apple Git-117)
  

Comments

Alan Hayward May 21, 2019, 9:22 a.m. UTC | #1
And here are the missing ChangeLogs for it:


gdb/ChangeLog:

2019-05-21  Alan Hayward  <alan.hayward@arm.com>

	* NEWS: Add debugredirect and testsuite sections.

gdb/doc/ChangeLog:

2019-05-21  Alan Hayward  <alan.hayward@arm.com>

	* gdb.texinfo (Shell Commands): Add debugredirect.

gdb/testsuite/ChangeLog:

2019-05-21  Alan Hayward  <alan.hayward@arm.com>

	* README (Re-running Tests Outside The Testsuite): New section.


Alan.

> On 21 May 2019, at 10:08, Alan Hayward <Alan.Hayward@arm.com> wrote:
> 
> Add missing documentation for the debugredirect setting.
> 
> Add description and uses of gdb.in/gdb.cmd to the testsuite README.
> 
> Mention this in the NEWS file.
> 
> [Wasn't sure if testsuite changes belonged in NEWS? If not I can
> drop that part]
> ---
> gdb/NEWS             | 11 +++++++++++
> gdb/doc/gdb.texinfo  |  3 +++
> gdb/testsuite/README | 21 +++++++++++++++++++++
> 3 files changed, 35 insertions(+)
> 
> diff --git a/gdb/NEWS b/gdb/NEWS
> index 1e92a2b52c..792548139e 100644
> --- a/gdb/NEWS
> +++ b/gdb/NEWS
> @@ -46,6 +46,10 @@ show print max-depth
>   The default max-depth is 20, but this can be set to unlimited to get
>   the old behavior back.
> 
> +set logging debugredirect [on|off]
> +  By default, GDB debug output will go to both the terminal and the logfile.
> +  Set if you want debug output to go only to the log file.
> +
> * New MI commands
> 
> -complete
> @@ -53,6 +57,13 @@ show print max-depth
>   were to be given as a command itself.  This is intended for use by MI
>   frontends in cases when separate CLI and MI channels cannot be used.
> 
> +* Testsuite
> +
> +  The testsuite now creates the files gdb.cmd (containing the arguments
> +  used to launch GDB) and gdb.in (containing all the commands sent to
> +  GDB) in the output directory for each test script.  Multiple invocations
> +  are appended with .1, .2, .3 etc.
> +
> *** Changes in GDB 8.3
> 
> * GDB and GDBserver now support access to additional registers on
> diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
> index 37e2f14ad0..bc21601606 100644
> --- a/gdb/doc/gdb.texinfo
> +++ b/gdb/doc/gdb.texinfo
> @@ -1477,6 +1477,9 @@ you want @code{set logging on} to overwrite the logfile instead.
> @item set logging redirect [on|off]
> By default, @value{GDBN} output will go to both the terminal and the logfile.
> Set @code{redirect} if you want output to go only to the log file.
> +@item set logging debugredirect [on|off]
> +By default, @value{GDBN} debug output will go to both the terminal and the logfile.
> +Set @code{debugredirect} if you want debug output to go only to the log file.
> @kindex show logging
> @item show logging
> Show the current values of the logging settings.
> diff --git a/gdb/testsuite/README b/gdb/testsuite/README
> index b6487cf8c4..4795df1f75 100644
> --- a/gdb/testsuite/README
> +++ b/gdb/testsuite/README
> @@ -95,6 +95,27 @@ example:
> 
> The script will output its analysis report to the standard output.
> 
> +Re-running Tests Outside The Testsuite
> +**************************************
> +
> +When running a test, the arguments used to run GDB are saved to gdb.cmd and
> +all commands sent to GDB are saved to gdb.in.  As well as being a reference
> +of the commands run, they can be used to manually re-run a test by using
> +the gdb.in file as a batch file to a GDB launched with the arguments in the
> +gdb.cmd file, for example:
> +	$(cat outputs/gdb.base/store/gdb.cmd) -x outputs/gdb.base/store/gdb.in
> +
> +Tests that run GDB multiple times will append .1, .2, .3 etc to the end
> +of each .cmd and .in file.
> +
> +When gdbserver is launched as part of a test, a gdbserver.cmd will be created.
> +To re-run these tests, run the contents of gdbserver.cmd in a separate
> +terminal before running gdb, for example:
> +	$(cat outputs/gdb.base/store/gdbserver.cmd)
> +Alternatively, if the test is run with GDBSERVER_DEBUG="replay", then this
> +will create a gdbserver.replay file which can be used with the gdbreplay tool,
> +instead of launching gdbserver.
> +
> Running the Performance Tests
> *****************************
> 
> -- 
> 2.20.1 (Apple Git-117)
>
  
Eli Zaretskii May 22, 2019, 7:23 a.m. UTC | #2
> From: Alan Hayward <Alan.Hayward@arm.com>
> CC: nd <nd@arm.com>, Alan Hayward <Alan.Hayward@arm.com>
> Date: Tue, 21 May 2019 09:08:01 +0000
> 
> Add missing documentation for the debugredirect setting.
> 
> Add description and uses of gdb.in/gdb.cmd to the testsuite README.
> 
> Mention this in the NEWS file.
> 
> [Wasn't sure if testsuite changes belonged in NEWS? If not I can
>  drop that part]
> ---
>  gdb/NEWS             | 11 +++++++++++
>  gdb/doc/gdb.texinfo  |  3 +++
>  gdb/testsuite/README | 21 +++++++++++++++++++++
>  3 files changed, 35 insertions(+)

This is OK, but please also update the 2 ChangeLog files.
  

Patch

diff --git a/gdb/NEWS b/gdb/NEWS
index 1e92a2b52c..792548139e 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -46,6 +46,10 @@  show print max-depth
   The default max-depth is 20, but this can be set to unlimited to get
   the old behavior back.
 
+set logging debugredirect [on|off]
+  By default, GDB debug output will go to both the terminal and the logfile.
+  Set if you want debug output to go only to the log file.
+
 * New MI commands
 
 -complete
@@ -53,6 +57,13 @@  show print max-depth
   were to be given as a command itself.  This is intended for use by MI
   frontends in cases when separate CLI and MI channels cannot be used.
 
+* Testsuite
+
+  The testsuite now creates the files gdb.cmd (containing the arguments
+  used to launch GDB) and gdb.in (containing all the commands sent to
+  GDB) in the output directory for each test script.  Multiple invocations
+  are appended with .1, .2, .3 etc.
+
 *** Changes in GDB 8.3
 
 * GDB and GDBserver now support access to additional registers on
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 37e2f14ad0..bc21601606 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -1477,6 +1477,9 @@  you want @code{set logging on} to overwrite the logfile instead.
 @item set logging redirect [on|off]
 By default, @value{GDBN} output will go to both the terminal and the logfile.
 Set @code{redirect} if you want output to go only to the log file.
+@item set logging debugredirect [on|off]
+By default, @value{GDBN} debug output will go to both the terminal and the logfile.
+Set @code{debugredirect} if you want debug output to go only to the log file.
 @kindex show logging
 @item show logging
 Show the current values of the logging settings.
diff --git a/gdb/testsuite/README b/gdb/testsuite/README
index b6487cf8c4..4795df1f75 100644
--- a/gdb/testsuite/README
+++ b/gdb/testsuite/README
@@ -95,6 +95,27 @@  example:
 
 The script will output its analysis report to the standard output.
 
+Re-running Tests Outside The Testsuite
+**************************************
+
+When running a test, the arguments used to run GDB are saved to gdb.cmd and
+all commands sent to GDB are saved to gdb.in.  As well as being a reference
+of the commands run, they can be used to manually re-run a test by using
+the gdb.in file as a batch file to a GDB launched with the arguments in the
+gdb.cmd file, for example:
+	$(cat outputs/gdb.base/store/gdb.cmd) -x outputs/gdb.base/store/gdb.in
+
+Tests that run GDB multiple times will append .1, .2, .3 etc to the end
+of each .cmd and .in file.
+
+When gdbserver is launched as part of a test, a gdbserver.cmd will be created.
+To re-run these tests, run the contents of gdbserver.cmd in a separate
+terminal before running gdb, for example:
+	$(cat outputs/gdb.base/store/gdbserver.cmd)
+Alternatively, if the test is run with GDBSERVER_DEBUG="replay", then this
+will create a gdbserver.replay file which can be used with the gdbreplay tool,
+instead of launching gdbserver.
+
 Running the Performance Tests
 *****************************