Toplevel configury, multilibs, new autoconf versions

Phil Edwards phil@jaj.com
Sat Jul 26 20:59:00 GMT 2003


On Sat, Jul 26, 2003 at 01:16:10AM -0400, Nathanael Nerode wrote:
> >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.  :-)

It's not the problem /now/.  --build-includes emits a bunch of -I's.
It's the -L's that are the problem, and those are embedded in the toplevel
configure.in.


> 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.

And LD_RUN_PATH too, I hope.


> 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?

Not at the present time.  I've got too many local changes already to try
and do preinstalling.  (FWIW, both Benjamin and I -- and maybe others too,
I simply don't know -- agree that a staging area for installation is needed.)

Also, I'm having trouble understanding how this manages to work at present,
i.e., with the "old" autotools.  The -L options are still hardcoded
either way.


Phil

-- 
If ye love wealth greater than liberty, the tranquility of servitude greater
than the animating contest for freedom, go home and leave us in peace.  We seek
not your counsel, nor your arms.  Crouch down and lick the hand that feeds you;
and may posterity forget that ye were our countrymen.            - Samuel Adams



More information about the Libstdc++ mailing list