scripts/build/test_suite/gcc.sh
author Johannes Stezenbach <js@sig21.net>
Thu Jul 29 19:47:16 2010 +0200 (2010-07-29)
changeset 2045 fdaa6c7f6dea
parent 1965 e3d532dd8b5d
child 2830 c3ff88a0c788
permissions -rw-r--r--
cc/gcc: add option to compile against static libstdc++, for gcc-4.4 and newer

Idea and know-how taken from CodeSourcery build script.

Normal build:
$ ldd arm-unknown-linux-uclibcgnueabi-gcc
linux-gate.so.1 => (0xb77f3000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb76e8000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb75a1000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb757a000)
/lib/ld-linux.so.2 (0xb77f4000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb755c000)

CC_STATIC_LIBSTDCXX=y:
$ ldd arm-unknown-linux-uclibcgnueabi-gcc
linux-gate.so.1 => (0xb7843000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb76e6000)
/lib/ld-linux.so.2 (0xb7844000)

I made CC_STATIC_LIBSTDCXX default=y since I think
it is always desirable.

Signed-off-by: Johannes Stezenbach <js@sig21.net>
     1 # This file adds the functions to build the GCC test suite
     2 # Copyright 2010 DoréDevelopment
     3 # Created by Martin Lund <mgl@doredevelopment.dk>
     4 # Licensed under the GPL v2. See COPYING in the root of this package
     5 
     6 do_test_suite_gcc_get() { :; }
     7 do_test_suite_gcc_extract() { :; }
     8 do_test_suite_gcc_build() { :; }
     9 
    10 # Overide functions depending on configuration
    11 if [ "${CT_TEST_SUITE_GCC}" = "y" ]; then
    12 
    13 do_test_suite_gcc_build() {
    14  
    15     CT_DoStep INFO "Installing GCC test suite"
    16 
    17     CT_DoExecLog ALL mkdir -p "${CT_TEST_SUITE_DIR}/gcc"
    18     CT_DoExecLog ALL cp -a "${CT_LIB_DIR}/contrib/gcc-test-suite/default.cfg"               \
    19                            "${CT_LIB_DIR}/contrib/gcc-test-suite/Makefile"                  \
    20                            "${CT_LIB_DIR}/contrib/gcc-test-suite/README"                    \
    21                            "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/gcc/testsuite"               \
    22                            "${CT_TEST_SUITE_DIR}/gcc"
    23 
    24     CT_DoExecLog ALL sed -i -r -e "s/@@DG_TARGET@@/${CT_TARGET}/g;"     \
    25                          "${CT_TEST_SUITE_DIR}/gcc/Makefile"
    26 
    27     CT_EndStep
    28 }
    29 
    30 fi # CT_TEST_SUITE_GCC