From: Doug Evans Date: Tue, 7 Dec 2010 17:26:06 +0000 (+0000) Subject: PR python/12227 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=aae1c79a03a;p=binutils-gdb.git PR python/12227 * NEWS: Mention -data-directory. * main.c (captured_main): Recognize -data-directory. doc/ * gdb.texinfo (Mode Options): Document -data-directory. (Data Files): Add reference to -data-directory. testsuite/ * gdb.base/catch-syscall.exp (do_syscall_tests): Remove setting of data-directory. * lib/gdb-python.exp (gdb_check_python_config): Delete, all callers updated. * lib/gdb.exp (INTERNAL_GDBFLAGS): Add -data-directory. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b8875d9a2fa..324b153a563 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2010-12-07 Doug Evans + + PR python/12227 + * NEWS: Mention -data-directory. + * main.c (captured_main): Recognize -data-directory. + 2010-12-06 Marc Khouzam * mi/mi-parse.c (mi_parse): Missing else. diff --git a/gdb/NEWS b/gdb/NEWS index f1efcd2b3e8..9dfb249a02a 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -3,6 +3,11 @@ *** Changes since GDB 7.2 +* New command line options + +-data-directory DIR Specify DIR as the "data-directory". + This is mostly for testing purposes. + * GDB has a new command: "set directories". It is like the "dir" command except that it replaces the source path list instead of augmenting it. diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 6b4f2bb396a..c1d0e1cfdfb 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,8 @@ +2010-12-07 Doug Evans + + * gdb.texinfo (Mode Options): Document -data-directory. + (Data Files): Add reference to -data-directory. + 2010-11-29 Doug Evans * gdb.texinfo (Pretty-Printer Introduction): Change diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 422812c323e..dc9630ac0c1 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -1111,6 +1111,12 @@ used if possible. Run @value{GDBN} using @var{directory} as its working directory, instead of the current directory. +@item -data-directory @var{directory} +@cindex @code{--data-directory} +Run @value{GDBN} using @var{directory} as its data directory. +The data directory is where @value{GDBN} searches for its +auxiliary files. @xref{Data Files}. + @item -fullname @itemx -f @cindex @code{--fullname} @@ -15598,6 +15604,10 @@ You can set the default data directory by using the configure-time automatically if the installed @value{GDBN} is moved to a new location. +The data directory may also be specified with the +@code{--data-directory} command line option. +@xref{Mode Options}. + @node Targets @chapter Specifying a Debugging Target diff --git a/gdb/main.c b/gdb/main.c index 9bd36cf20b0..c686bd29915 100644 --- a/gdb/main.c +++ b/gdb/main.c @@ -432,6 +432,7 @@ captured_main (void *data) {"i", required_argument, 0, 'i'}, {"directory", required_argument, 0, 'd'}, {"d", required_argument, 0, 'd'}, + {"data-directory", required_argument, 0, 'D'}, {"cd", required_argument, 0, OPT_CD}, {"tty", required_argument, 0, 't'}, {"baud", required_argument, 0, 'b'}, @@ -551,6 +552,10 @@ captured_main (void *data) batch_flag = batch_silent = 1; gdb_stdout = ui_file_new(); break; + case 'D': + xfree (gdb_datadir); + gdb_datadir = xstrdup (optarg); + break; #ifdef GDBTK case 'z': { diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 569c7b63a40..523374e95c5 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2010-12-07 Doug Evans + + * gdb.base/catch-syscall.exp (do_syscall_tests): Remove setting + of data-directory. + * lib/gdb-python.exp (gdb_check_python_config): Delete, all callers + updated. + * lib/gdb.exp (INTERNAL_GDBFLAGS): Add -data-directory. + 2010-11-29 Michael Snyder * gdb.base/callfuncs.exp: Test for skip_float_tests. diff --git a/gdb/testsuite/gdb.base/catch-syscall.exp b/gdb/testsuite/gdb.base/catch-syscall.exp index 7845655c9e8..b84c0dd28d3 100644 --- a/gdb/testsuite/gdb.base/catch-syscall.exp +++ b/gdb/testsuite/gdb.base/catch-syscall.exp @@ -277,8 +277,8 @@ proc test_catch_syscall_fail_nodatadir {} { proc do_syscall_tests {} { global gdb_prompt srcdir - # First, we need to set GDB datadir. - gdb_test_no_output "set data-directory [pwd]/../data-directory" + # NOTE: We don't have to point gdb at the correct data-directory. + # For the build tree that is handled by INTERNAL_GDBFLAGS. # Verify that the 'catch syscall' help is available set thistest "help catch syscall" diff --git a/gdb/testsuite/gdb.python/lib-types.exp b/gdb/testsuite/gdb.python/lib-types.exp index 0599b0da235..07480f52bec 100644 --- a/gdb/testsuite/gdb.python/lib-types.exp +++ b/gdb/testsuite/gdb.python/lib-types.exp @@ -44,9 +44,6 @@ if ![runto_main] then { return 0 } -# Ensure sys.path, et.al. are initialized properly. -gdb_check_python_config - gdb_test_no_output "python import gdb.types" # test get_basic_type const stripping diff --git a/gdb/testsuite/gdb.python/py-pp-maint.exp b/gdb/testsuite/gdb.python/py-pp-maint.exp index 747458463de..b613e414eef 100644 --- a/gdb/testsuite/gdb.python/py-pp-maint.exp +++ b/gdb/testsuite/gdb.python/py-pp-maint.exp @@ -51,9 +51,6 @@ if ![runto_main ] then { return -1 } -# Ensure sys.path, et.al. are initialized properly. -gdb_check_python_config - gdb_test "b [gdb_get_line_number {break to inspect} ${testfile}.c ]" \ ".*Breakpoint.*" gdb_test "continue" ".*Breakpoint.*" diff --git a/gdb/testsuite/lib/gdb-python.exp b/gdb/testsuite/lib/gdb-python.exp index 58deadc2cfe..4a15d7a71a7 100644 --- a/gdb/testsuite/lib/gdb-python.exp +++ b/gdb/testsuite/lib/gdb-python.exp @@ -45,21 +45,3 @@ proc gdb_py_test_multiple { name args } { } return 0 } - -# Establish various python configuration parameters if necessary. -# E.g. sys.path. - -proc gdb_check_python_config { } { - global USE_INSTALLED_TREE - # If we're running an installed version of gdb, and we want to test the - # installed versions of the python support scripts, then we don't want - # to point data-directory at the build tree. - if { [info exists USE_INSTALLED_TREE] && "$USE_INSTALLED_TREE" == "yes" } { - verbose -log "Assuming system config already installed." - } else { - verbose -log "Installing system config from build tree." - set gdb_data_dir "[pwd]/../data-directory" - gdb_test_no_output "set data-directory $gdb_data_dir" - gdb_test_no_output "python GdbSetPythonDirectory ('$gdb_data_dir/python')" - } -} diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index fc8751fdb01..50e2c700539 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -56,7 +56,7 @@ verbose "using GDBFLAGS = $GDBFLAGS" 2 # INTERNAL_GDBFLAGS contains flags that the testsuite requires. global INTERNAL_GDBFLAGS if ![info exists INTERNAL_GDBFLAGS] { - set INTERNAL_GDBFLAGS "-nw -nx" + set INTERNAL_GDBFLAGS "-nw -nx -data-directory [pwd]/../data-directory" } # The variable gdb_prompt is a regexp which matches the gdb prompt.