Toplevel configury, multilibs, new autoconf versions
Nathanael Nerode
neroden@twcny.rr.com
Sat Jul 26 15:01:00 GMT 2003
>The next step in converting to the new autotools is making multilibs
>work.
I tend to think the 'correct' way to do things is to move multilibbing
to the top level. ;-) But that might be too much work to do *before*
the autoconf upgrade.
>The build is using the value of CXX passed around in the environment.
>For libstdc++, it's a special case from the toplevel:
>
> libstdcxx_flags='`test ! -f
>$$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL)
>$$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags
>--build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src
>-L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
> raw_libstdcxx_flags=' -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src
>-L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs'
>
>Note the -L options; these get embedded into CXX_FOR_TARGET a few lines
>later, which becomes CXX inside the library.
So the testsuite_flags stuff isn't the problem? That was the part I've
been afraid to tweak. :-)
I think 'preinstall' is the correct solution for this. libstdc++ should
be changed to preinstall the libraries into preinstall-${target}/lib.
Then after multilibbing is moved to the top level, the
non-multilib version would always have preinstall-${target}/lib added
to the LD_LIBRARY_PATH passed down from the top. For the multilibbed
targets, each one would have a different, appropriate
preinstall-${target}/xx/lib added to LD_LIBRARY_PATH.
OK, so this is pie-in-the-sky. But maybe you can find a way to adapt
this idea to the current state of things?
--
Nathanael Nerode <neroden at gcc.gnu.org>
http://home.twcny.rr.com/nerode/neroden/fdl.html
More information about the Gcc
mailing list