# HG changeset patch # User "Yann E. MORIN" # Date 1284328285 -7200 # Node ID ff2181adbd28c91a21fa5f230bf92aaa7824dc73 # Parent eb837be50f8f0a508206154381f036f49927c202 cc/gcc: disable complibs if not selected Force gcc to not link with some companion libraries when there are not needed (because selected-out). There is no option to tell gcc *not* to build the Graphite and/or LTO stuff. They *will* be built if gcc finds the suitable companion libraries. If we do not provide them, but the host has them, then gcc *will* find them, and link with them. Consider the following: - host has suitable PPL and CLooG (eg. Debian Squeeze) - user wants to build gcc>=4.4 - user de-selects GRAPHITE - gcc will find the hosts PPL and CLooG, and will use them - the user moves the toolchain to an older host that does not have them (eg. Debian Lenny) - the toolchain fails, when it was properly setup not to So, explicitly tell gcc *not* to use unneeded companion libs. Signed-off-by: "Yann E. MORIN" diff -r eb837be50f8f -r ff2181adbd28 scripts/build/cc/gcc.sh --- a/scripts/build/cc/gcc.sh Sun Sep 12 20:54:54 2010 +0200 +++ b/scripts/build/cc/gcc.sh Sun Sep 12 23:51:25 2010 +0200 @@ -175,9 +175,14 @@ if [ "${CT_CC_GCC_USE_GRAPHITE}" = "y" ]; then extra_config+=("--with-ppl=${CT_COMPLIBS_DIR}") extra_config+=("--with-cloog=${CT_COMPLIBS_DIR}") + elif [ "${CT_CC_GCC_HAS_GRAPHITE}" = "y" ]; then + extra_config+=("--with-ppl=no") + extra_config+=("--with-cloog=no") fi if [ "${CT_CC_GCC_USE_LTO}" = "y" ]; then extra_config+=("--with-libelf=${CT_COMPLIBS_DIR}") + elif [ "${CT_CC_GCC_HAS_LTO}" = "y" ]; then + extra_config+=("--with-libelf=no") fi if [ "${CT_CC_GCC_ENABLE_TARGET_OPTSPACE}" = "y" ]; then @@ -373,9 +378,14 @@ if [ "${CT_CC_GCC_USE_GRAPHITE}" = "y" ]; then extra_config+=("--with-ppl=${CT_COMPLIBS_DIR}") extra_config+=("--with-cloog=${CT_COMPLIBS_DIR}") + elif [ "${CT_CC_GCC_HAS_GRAPHITE}" = "y" ]; then + extra_config+=("--with-ppl=no") + extra_config+=("--with-cloog=no") fi if [ "${CT_CC_GCC_USE_LTO}" = "y" ]; then extra_config+=("--with-libelf=${CT_COMPLIBS_DIR}") + elif [ "${CT_CC_GCC_HAS_LTO}" = "y" ]; then + extra_config+=("--with-libelf=no") fi if [ "${CT_THREADS}" = "none" ]; then