scripts/build/gmp.sh
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Sep 23 14:48:10 2008 +0000 (2008-09-23)
changeset 872 fd4bf138f08f
parent 655 35b22b8c0a92
child 1112 c72aecd1a9ef
permissions -rw-r--r--
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 GMP library
     2 # Copyright 2008 Yann E. MORIN
     3 # Licensed under the GPL v2. See COPYING in the root of this package
     4 
     5 do_print_filename() { :; }
     6 do_gmp_get() { :; }
     7 do_gmp_extract() { :; }
     8 do_gmp() { :; }
     9 do_gmp_target() { :; }
    10 
    11 # Overide functions depending on configuration
    12 if [ "${CT_GMP_MPFR}" = "y" ]; then
    13 
    14 do_print_filename() {
    15     [ "${CT_GMP_MPFR}" = "y" ] || return 0
    16     echo "gmp-${CT_GMP_VERSION}"
    17 }
    18 
    19 # Download GMP
    20 do_gmp_get() {
    21     CT_GetFile "${CT_GMP_FILE}" {ftp,http}://{ftp.sunet.se/pub,ftp.gnu.org}/gnu/gmp
    22 }
    23 
    24 # Extract GMP
    25 do_gmp_extract() {
    26     CT_ExtractAndPatch "${CT_GMP_FILE}"
    27 }
    28 
    29 do_gmp() {
    30     mkdir -p "${CT_BUILD_DIR}/build-gmp"
    31     cd "${CT_BUILD_DIR}/build-gmp"
    32 
    33     CT_DoStep INFO "Installing GMP"
    34 
    35     CT_DoLog EXTRA "Configuring GMP"
    36     CFLAGS="${CT_CFLAGS_FOR_HOST}"              \
    37     CT_DoExecLog ALL                            \
    38     "${CT_SRC_DIR}/${CT_GMP_FILE}/configure"    \
    39         --build=${CT_BUILD}                     \
    40         --host=${CT_HOST}                       \
    41         --prefix="${CT_PREFIX_DIR}"             \
    42         --disable-shared --enable-static        \
    43         --enable-fft --enable-mpbsd
    44 
    45     CT_DoLog EXTRA "Building GMP"
    46     CT_DoExecLog ALL make ${PARALLELMFLAGS}
    47 
    48     if [ "${CT_GMP_CHECK}" = "y" ]; then
    49         CT_DoLog EXTRA "Checking GMP"
    50         CT_DoExecLog ALL make ${PARALLELMFLAGS} -s check
    51     fi
    52 
    53     CT_DoLog EXTRA "Installing GMP"
    54     CT_DoExecLog ALL make install
    55 
    56     CT_EndStep
    57 }
    58 
    59 if [ "${CT_GMP_MPFR_TARGET}" = "y" ]; then
    60 
    61 do_gmp_target() {
    62     mkdir -p "${CT_BUILD_DIR}/build-gmp-target"
    63     cd "${CT_BUILD_DIR}/build-gmp-target"
    64 
    65     CT_DoStep INFO "Installing GMP for the target"
    66 
    67     CT_DoLog EXTRA "Configuring GMP"
    68     CFLAGS="${CT_CFLAGS_FOR_TARGET}"            \
    69     CT_DoExecLog ALL                            \
    70     "${CT_SRC_DIR}/${CT_GMP_FILE}/configure"    \
    71         --build=${CT_BUILD}                     \
    72         --host=${CT_TARGET}                     \
    73         --prefix=/usr                           \
    74         --disable-shared --enable-static        \
    75         --enable-fft --enable-mpbsd
    76 
    77     CT_DoLog EXTRA "Building GMP"
    78     CT_DoExecLog ALL make ${PARALLELMFLAGS}
    79 
    80     # Not possible to check MPFR while X-compiling
    81 
    82     CT_DoLog EXTRA "Installing GMP"
    83     CT_DoExecLog ALL make DESTDIR="${CT_SYSROOT_DIR}" install
    84 
    85     CT_EndStep
    86 }
    87 
    88 fi # CT_GMP_MPFR_TARGET == y
    89 
    90 fi # CT_GMP_MPFR == y