Re: [PATCH] Always organize test artifacts in a directory hierarchy

Simon Marchi
2016-02-08T19:01:27Z

On 16-02-07 02:09 AM, Joel Brobecker wrote:
>>> However, when building in-tree, srcdir is relative: ./gdb.ada/fun_addr.
>>> When using parallel or always-in-outputs-directory mode, we are cd'ed in
>>> the outputs directory. So -I$srcdir is relative to the current
>>> directory, which is wrong.
>>>
>>> To fix it, I made the TCL variable srcdir (set in site.exp, from which
>>> everything else is derived) always absolute. It is done by assigning
>>> autoconf's abs_srcdir instead of autoconf's srcdir. This way -I$srcdir
>>> will always be good, regardless of where we cd'ed to. A small apparent
>>> change is that when running tests, DejaGnu will say:
>>>
>>> Running /tmp/binutils-gdb/gdb/testsuite/gdb.ada/fun_addr.exp ...
>>>
>>> instead of
>>>
>>> Running ./gdb.ada/fun_addr.exp ...
>>>
>>> I hope it's not too much of an annoyance. I think that it should make
>>> the testsuite a tiny bit more robust against other bugs of the same
>>> class.
>>>
>>> Regtested in & out of tree, only with native target.
>>> ---
>>> gdb/testsuite/Makefile.in | 3 ++-
>>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/gdb/testsuite/Makefile.in b/gdb/testsuite/Makefile.in
>>> index 7c251d3..38c3052 100644
>>> --- a/gdb/testsuite/Makefile.in
>>> +++ b/gdb/testsuite/Makefile.in
>>> @@ -21,6 +21,7 @@ srcdir = @srcdir@
>>> prefix = @prefix@
>>> exec_prefix = @exec_prefix@
>>> abs_builddir = @abs_builddir@
>>> +abs_srcdir = @abs_srcdir@
>>>
>>> target_alias = @target_noncanonical@
>>> program_transform_name = @program_transform_name@
>>> @@ -119,7 +120,7 @@ $(abs_builddir)/site.exp site.exp: ./config.status Makefile
>>> @echo "set target_alias $(target_alias)" >> ./tmp0
>>> @echo "set target_triplet ${target_canonical}" >> ./tmp0
>>> @echo "set build_triplet ${build_canonical}" >> ./tmp0
>>> - @echo "set srcdir ${srcdir}" >> ./tmp0
>>> + @echo "set srcdir ${abs_srcdir}" >> ./tmp0
>>> @echo "set tool gdb" >> ./tmp0
>>> @echo 'source $${srcdir}/lib/append_gdb_boards_dir.exp' >> ./tmp0
>>> @echo "## All variables above are generated by configure. Do Not Edit ##" >> ./tmp0
>
> OK for me!

Ok thanks, I pushed this one.