scripts/build/test_suite/gcc.sh
author "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
Thu Jul 28 22:09:31 2011 +0200 (2011-07-28)
changeset 2573 424fa2092ace
parent 1965 e3d532dd8b5d
child 2830 c3ff88a0c788
permissions -rw-r--r--
scripts/libc: do not build add-ons by default

Currently, no --enable-add-ons option is passed to libc configure when
"$(do_libc_add_ons_list ,)" is empty, which makes configure automatically search
for present add-ons. In that case, all present add-ons are built, although
no add-on was selected by the user in the config. Moreover, this can make the
configure fail if some non-standard add-ons like eglibc-localedef are present.

This behavior also leads to an inconsistency from a user point of view between
the following cases:
- LIBC_ADDONS_LIST="", LIBC_GLIBC_USE_PORTS=n and THREADS="none" in the config,
which makes "$(do_libc_add_ons_list ,)" return "", so all present add-ons
are built.
- LIBC_ADDONS_LIST="", LIBC_GLIBC_USE_PORTS=n and THREADS!="none" in the
config, which makes "$(do_libc_add_ons_list ,)" return the add-on supporting
the chosen threading implementation, e.g. "nptl", so only this add-on is
built.

This patch disables the building of all add-ons in that case.

It is still possible to build all present add-ons by adding --enable-add-ons to
LIBC_GLIBC_EXTRA_CONFIG_ARRAY.

Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
     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