]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Don't put JIT_READER_DIR into help text
authorTom Tromey <tromey@adacore.com>
Wed, 13 Nov 2024 15:49:53 +0000 (08:49 -0700)
committerTom Tromey <tromey@adacore.com>
Thu, 21 Nov 2024 21:08:18 +0000 (14:08 -0700)
The 80-column-help-string self-test can fail if gdb's install
directory is too long, because the help for "jit-reader-load" includes
JIT_READER_DIR.

This help text is actually somewhat misleading, though.
JIT_READER_DIR is not actually used directly -- instead the relocated
variant is used.

This patch adds a new "show jit-reader-directory" command and changes
the help text to refer to this instead.  I considered adding a "set"
command as well, but since absolute paths are acceptable here, and
since this is a very niche command anyway, I figured there was no need
to bother.

Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=32357
Reviewed-By: Kévin Le Gouguec <legouguec@adacore.com>
Reviewed-By: Eli Zaretskii <eliz@gnu.org>
Approved-By: Andrew Burgess <aburgess@redhat.com>
gdb/NEWS
gdb/doc/gdb.texinfo
gdb/jit.c
gdb/testsuite/gdb.base/jit-reader.exp

index 046daad0eae5fe8d853beb6cb0bb751ee6f23a77..f3c5d720b15c6a8e208bd62dcdf3cbe1c0c28070 100644 (file)
--- a/gdb/NEWS
+++ b/gdb/NEWS
 
 * New commands
 
+show jit-reader-directory
+  Show the name of the directory that "jit-reader-load" uses for
+  relative file names.
+
 set style line-number foreground COLOR
 set style line-number background COLOR
 set style line-number intensity VALUE
index 99720f1206e90facf7ffdb27dc5cc06ffd9eec52..b91b5d693ed9212765c47f73f3f5bbfb335afe11 100644 (file)
@@ -40047,6 +40047,10 @@ reporting an error.  A new JIT reader can be loaded by first unloading
 the current one using @code{jit-reader-unload} and then invoking
 @code{jit-reader-load}.
 
+@item show jit-reader-directory
+This command will show the directory that is used by
+@code{jit-reader-load} when a relative file name is specified.
+
 @item jit-reader-unload
 Unload the currently loaded JIT reader.
 
index 48be1c880c914f0ab960477fa07d8b572ae74ff6..77d41bf86bad16c2434633f2ec6367f77adb615a 100644 (file)
--- a/gdb/jit.c
+++ b/gdb/jit.c
@@ -28,6 +28,7 @@
 #include "filenames.h"
 #include "frame-unwind.h"
 #include "cli/cli-cmds.h"
+#include "cli/cli-style.h"
 #include "gdbcore.h"
 #include "inferior.h"
 #include "observable.h"
@@ -1298,6 +1299,16 @@ jit_event_handler (gdbarch *gdbarch, objfile *jiter)
     }
 }
 
+/* Implementation of "show jit-reader-directory".  */
+
+static void
+show_jit_reader_directory (const char *args, int from_tty)
+{
+  gdb_printf (_("JIT reader directory is %ps.\n"),
+             styled_string (file_name_style.style (),
+                            jit_reader_dir.c_str ()));
+}
+
 void _initialize_jit ();
 void
 _initialize_jit ()
@@ -1329,8 +1340,8 @@ _initialize_jit ()
 Load FILE as debug info reader and unwinder for JIT compiled code.\n\
 Usage: jit-reader-load FILE\n\
 Try to load file FILE as a debug info reader (and unwinder) for\n\
-JIT compiled code.  The file is loaded from " JIT_READER_DIR ",\n\
-relocated relative to the GDB executable if required."));
+JIT compiled code.  If FILE is not an absolute file name, it is found\n\
+relative to a built-in directory.  See \"show jit-reader-directory\"."));
       set_cmd_completer (c, deprecated_filename_completer);
 
       c = add_com ("jit-reader-unload", no_class,
@@ -1339,5 +1350,11 @@ Unload the currently loaded JIT debug info reader.\n\
 Usage: jit-reader-unload\n\n\
 Do \"help jit-reader-load\" for info on loading debug info readers."));
       set_cmd_completer (c, noop_completer);
+
+      add_cmd ("jit-reader-directory", class_obscure,
+              show_jit_reader_directory,
+              _("Show the JIT reader directory.\n\
+This is the directory used by \"jit-reader-load\" when given\n\
+a relative file name."), &showlist);
     }
 }
index 62f6af29ac15a2245e2a99c5ab40a0eaf59ec310..2a96207346cc168f71947198ad20d3eeadba18a7 100644 (file)
@@ -109,6 +109,10 @@ proc jit_reader_test {} {
        gdb_test_no_output "set debug jit 1"
     }
 
+    # Just test that this is installed and prints something.
+    gdb_test "show jit-reader-directory" \
+       "JIT reader directory is .*\\."
+
     gdb_test_no_output "jit-reader-load ${jit_reader_bin}" "jit-reader-load"
     gdb_run_cmd
     gdb_test "" "Program received signal SIGTRAP, .*" "expect SIGTRAP"