diff options
author | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2010-09-12 23:51:25 +0200 |
---|---|---|
committer | Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> | 2010-09-12 23:51:25 +0200 |
commit | 9176074aecda78ed7a85701d14f5572cdab624e8 (patch) | |
tree | 9948082623444d8b1af0a0f9a5a3686d962dd632 | |
parent | d34a5ec7d8003256b859421dc080be0362663678 (diff) | |
download | crosstool-ng-9176074aecda78ed7a85701d14f5572cdab624e8.tar.gz crosstool-ng-9176074aecda78ed7a85701d14f5572cdab624e8.tar.bz2 crosstool-ng-9176074aecda78ed7a85701d14f5572cdab624e8.zip |
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>
-rw-r--r-- | scripts/build/cc/gcc.sh | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/scripts/build/cc/gcc.sh b/scripts/build/cc/gcc.sh index 0f12c61f..e7e56f11 100644 --- a/scripts/build/cc/gcc.sh +++ b/scripts/build/cc/gcc.sh @@ -175,9 +175,14 @@ do_cc_core() { 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 @@ do_cc() { 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 |