On 7/28/2010 9:06 AM, Paolo Bonzini wrote:
So we have two bugs now instead of one. :) On the other hand it means we
can consider one change at a time, which is good news.

[out of order reply]
Regarding the libtool.m4, maybe squashing the (untested) attached patch
could help...

Yes, that fixes the old:tagdemo-conf+tagdemo-make failure as well as the new:101 failure in native builds. Also, cross builds continue to pass tests new:117-119 (sysroot.at).

So, we're down to just one bug.

In particular, the sysroot patches should change nothing for native. So
just comparing "./testsuite -v -d 41" output and diffing the .la files
may pinpoint the cause pretty quickly. The sysroot patches are in fact
relatively mechanical.

The uninstalled .la files are all identical

041/.libs/liba.la
041/.libs/libb.la
041/liba.la
041/libb.la

However, the installed ones differ
041/inst/lib/liba.la
041/inst/lib/libb.la

$ diff good-041/inst/lib/liba.la bad-041/inst/lib/liba.la
20c20
< dependency_libs=' -R/usr/src/packages/libtool/git/build-bisect/tests/testsuite.dir/041/foobar'
---
> dependency_libs=''

$ diff good-041/inst/lib/libb.la bad-041/inst/lib/libb.la
20c20
< dependency_libs=' -R/usr/src/packages/libtool/git/build-bisect/tests/testsuite.dir/041/foobar /usr/src/packages/libtool/git/build-bisect/tests/testsuite.dir/041/inst/lib/liba.la'
---
> dependency_libs=' /usr/src/packages/libtool/git/build-bisect/tests/testsuite.dir/041/inst/lib/liba.la /usr/src/packages/libtool/git/build-bisect/tests/testsuite.dir/041/inst/lib/liba.la'


The testsuite.log files differ as:
$ diff good-041/testsuite.log bad-041/testsuite.log
244,248c244,245
< dependency_libs=' -R/usr/src/packages/libtool/git/build-bisect/tests/testsuite.dir/041/foobar' < ../../libtool-sysroot/tests/runpath-in-lalib.at:62: grep /foobar $libdir/libb.la
< stdout:
< dependency_libs=' -R/usr/src/packages/libtool/git/build-bisect/tests/testsuite.dir/041/foobar /usr/src/packages/libtool/git/build-bisect/tests/testsuite.dir/041/inst/lib/liba.la' < 41. runpath-in-lalib.at:25: 41. Runpath in libtool library files (runpath-in-lalib.at:25): ok (0m2.417s 0m4.451s)
---
> ../../libtool-sysroot/tests/runpath-in-lalib.at:61: exit code was 1, expected 0 > 41. runpath-in-lalib.at:25: 41. Runpath in libtool library files (runpath-in-lalib.at:25): FAILED (runpath-in-lalib.at:61)


Basically the extra -R path added when linking liba is stripped out

addrunpath=`pwd`/foobar

AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la a.lo -rpath $libdir -R$addrunpath],
         [], [ignore], [ignore])

--
Chuck

Reply via email to