This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH v16 5/5] Test adding and removing a symbol file at runtime.


>>>>> "Nicolas" == Nicolas Blanc <nicolas.blanc@intel.com> writes:

Nicolas> 2013-04-04  Nicolas Blanc  <nicolas.blanc@intel.com>
Nicolas> 	* gdb.base/sym-file-lib.c: New file.
Nicolas> 	* gdb.base/sym-file-loader.c: New file.
Nicolas> 	* gdb.base/sym-file-loader.h: New file.
Nicolas> 	* gdb.base/sym-file-main.c: New file.
Nicolas> 	* gdb.base/sym-file.exp: New file.

Nicolas> +if [is_lp64_target] {
Nicolas> +    set target_size TARGET_LP64
Nicolas> +} elseif [is_ilp32_target] {
Nicolas> +   set target_size TARGET_ILP32
Nicolas> +} else {
Nicolas> +    return 0
Nicolas> +}

It's slightly better to brace the expressions.  Otherwise they are both
evaluated first.

That is:

    if {[is_ilp64_target]} { ...

Nicolas> +set testfile sym-file.exp
Nicolas> +set mainfile sym-file-main
Nicolas> +set loaderfile sym-file-loader
Nicolas> +set libfile sym-file-lib
Nicolas> +set srcfiles "${mainfile}.c ${loaderfile}.c"
Nicolas> +set libsrc "${srcdir}/${subdir}/${libfile}.c"
Nicolas> +set libname "${libfile}.so"
Nicolas> +set shlib_name "${objdir}/${subdir}/${libname}"
Nicolas> +set libobj "${objdir}/${subdir}/${libname}"

It's better to use standard_testfile and standard_output_file.
That way it will work with the parallelization patch series.

Nicolas> +set result [gdb_test "add-symbol-file ${shlib_name} addr" \
Nicolas> +		     "Reading symbols from .*${shlib_name}\\.\\.\\.done\\." \
Nicolas> +		     "add-symbol-file ${shlib_name} addr" \

It looks like the full file name of the shlib ends up in the test name
here.  It's better to use a test name that doesn't depend on the cwd, so
that comparisons across different build directories don't yield spurious
differences.

Nicolas> +gdb_test "info files" \
Nicolas> +	 "^(?=(.*${libname})).*" \
Nicolas> +	 "info files must display $libname"

Here too and presumably elsewhere.

Tom


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]