Bart De VOS pointed out that removing absolute paths from the libc linker scripts is plainly wrong.
It dates from dawn ages of the original crosstool code, and is not well explained. At that time, binutils might not understand the sysroot stuff, and it was necessary to remove absolute paths in that case.
/trunk/scripts/build/libc/glibc.sh | 14 2 12 0 ++------------
1 file changed, 2 insertions(+), 12 deletions(-)
1 --- gcc-4.1.2.orig/libstdc++-v3/src/Makefile.am 2006-01-10 05:01:00.000000000 +0100
2 +++ gcc-4.1.2/libstdc++-v3/src/Makefile.am 2007-03-04 23:32:40.000000000 +0100
4 $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LDFLAGS) -o $@
8 +ifeq ($(enable_shared),yes)
9 + $(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o
10 + $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir)
13 # Added bits to build debug library.
14 if GLIBCXX_BUILD_DEBUG
15 all-local: build_debug
16 --- gcc-4.1.2.orig/libstdc++-v3/src/Makefile.in 2006-01-10 18:14:00.000000000 +0100
17 +++ gcc-4.1.2/libstdc++-v3/src/Makefile.in 2007-03-04 23:32:40.000000000 +0100
20 install-data-am: install-data-local
22 -install-exec-am: install-toolexeclibLTLIBRARIES
23 +install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local
25 install-info: install-info-am
28 distclean-libtool distclean-tags distdir dvi dvi-am html \
29 html-am info info-am install install-am install-data \
30 install-data-am install-data-local install-exec \
31 + install-exec-local \
32 install-exec-am install-info install-info-am install-man \
33 install-strip install-toolexeclibLTLIBRARIES installcheck \
34 installcheck-am installdirs maintainer-clean \
37 (cd ${debugdir} && $(MAKE) \
38 toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install)
41 +ifeq ($(enable_shared),yes)
42 + $(AR) cru libstdc++_pic.a *.o $(top_builddir)/libsupc++/*.o
43 + $(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir)
46 # Tell versions [3.59,3.63) of GNU make to not export all variables.
47 # Otherwise a system limit (for SysV at least) may be exceeded.