[PATCH 3 of 3] cc/gcc: disable complibs if not selected
Yann E. MORIN
yann.morin.1998@anciens.enib.fr
Sun Sep 12 21:57:00 GMT 2010
# HG changeset patch
# User "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
# Date 1284328285 -7200
# Node ID 7706644c841c1a5dee72478b1119489527708988
# Parent 9a1f6abd5e3808b70d0c8e1a34b983e01cb4c5d9
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" <yann.morin.1998@anciens.enib.fr>
diff --git a/scripts/build/cc/gcc.sh b/scripts/build/cc/gcc.sh
--- a/scripts/build/cc/gcc.sh
+++ b/scripts/build/cc/gcc.sh
@@ -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}" ]; 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}" ]; then
+ extra_config+=("--with-libelf=no")
fi
if [ "${CT_CC_GCC_ENABLE_TARGET_OPTSPACE}" = "y" ]; then
--
For unsubscribe information see http://sourceware.org/lists.html#faq
More information about the crossgcc
mailing list