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 # This file adds the functions to build the MPFR library
2 # Copyright 2008 Yann E. MORIN
3 # Licensed under the GPL v2. See COPYING in the root of this package
5 do_print_filename() { :; }
7 do_mpfr_extract() { :; }
9 do_mpfr_target() { :; }
11 # Overide function depending on configuration
12 if [ "${CT_GMP_MPFR}" = "y" ]; then
15 [ "${CT_GMP_MPFR}" = "y" ] || return 0
16 echo "mpfr-${CT_MPFR_VERSION}"
21 CT_GetFile "${CT_MPFR_FILE}" http://www.mpfr.org/mpfr-current/ \
22 http://www.mpfr.org/mpfr-${CT_MPFR_VERSION}/
27 CT_ExtractAndPatch "${CT_MPFR_FILE}"
29 # OK, Gentoo have a sanity check that libtool.m4 and ltmain.sh have the
30 # same version number. Unfortunately, some tarballs of MPFR are not
31 # built sanely, and thus ./configure fails on Gentoo.
32 # See: http://sourceware.org/ml/crossgcc/2008-05/msg00080.html
33 # and: http://sourceware.org/ml/crossgcc/2008-06/msg00005.html
34 # This hack is not bad per se, but the MPFR guys would be better not to
35 # do that in the future...
36 CT_Pushd "${CT_SRC_DIR}/${CT_MPFR_FILE}"
37 if [ ! -f .autotools.ct-ng ]; then
38 CT_DoLog DEBUG "Re-building autotools files"
39 CT_DoExecLog ALL autoreconf -fi
40 CT_DoExecLog ALL libtoolize -f
41 touch .autotools.ct-ng
47 mkdir -p "${CT_BUILD_DIR}/build-mpfr"
48 cd "${CT_BUILD_DIR}/build-mpfr"
50 CT_DoStep INFO "Installing MPFR"
52 CT_DoLog EXTRA "Configuring MPFR"
53 CFLAGS="${CT_CFLAGS_FOR_HOST}" \
55 "${CT_SRC_DIR}/${CT_MPFR_FILE}/configure" \
58 --prefix="${CT_PREFIX_DIR}" \
59 --enable-thread-safe \
60 --disable-shared --enable-static \
61 --with-gmp="${CT_PREFIX_DIR}"
63 CT_DoLog EXTRA "Building MPFR"
64 CT_DoExecLog ALL make ${PARALLELMFLAGS}
66 if [ "${CT_MPFR_CHECK}" = "y" ]; then
67 CT_DoLog EXTRA "Checking MPFR"
68 CT_DoExecLog ALL make ${PARALLELMFLAGS} -s check
71 CT_DoLog EXTRA "Installing MPFR"
72 CT_DoExecLog ALL make install
77 if [ "${CT_GMP_MPFR_TARGET}" = "y" ]; then
80 mkdir -p "${CT_BUILD_DIR}/build-mpfr-target"
81 cd "${CT_BUILD_DIR}/build-mpfr-target"
83 CT_DoStep INFO "Installing MPFR for the target"
85 CT_DoLog EXTRA "Configuring MPFR"
86 CFLAGS="${CT_CFLAGS_FOR_TARGET}" \
88 "${CT_SRC_DIR}/${CT_MPFR_FILE}/configure" \
92 --enable-thread-safe \
93 --disable-shared --enable-static \
94 --with-gmp="${CT_SYSROOT_DIR}/usr"
96 CT_DoLog EXTRA "Building MPFR"
97 CT_DoExecLog ALL make ${PARALLELMFLAGS}
99 # Not possible to check MPFR while X-compiling
101 CT_DoLog EXTRA "Installing MPFR"
102 CT_DoExecLog ALL make DESTDIR="${CT_SYSROOT_DIR}" install
107 fi # CT_GMP_MPFR_TARGET == y
109 fi # CT_GMP_MPFR == y