scripts/showTuple.sh.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Sep 12 23:51:25 2010 +0200 (2010-09-12)
changeset 2123 ff2181adbd28
child 2468 90595d1c1017
permissions -rw-r--r--
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>
     1 #!@@CT_bash@@
     2 
     3 # What we need:
     4 #  - the .config file
     5 
     6 # Parse the tools' paths configuration
     7 . "${CT_LIB_DIR}/paths.mk"
     8 
     9 # We'll need the stdout later, save it
    10 exec 7>&1
    11 
    12 # Parse the common functions
    13 . "${CT_LIB_DIR}/scripts/functions"
    14 
    15 # Don't care about any log file
    16 exec >/dev/null
    17 rm -f "${tmp_log_file}"
    18 
    19 # Parse the configuration file
    20 . .config
    21 
    22 # Parse architecture and kernel specific functions
    23 . "${CT_LIB_DIR}/scripts/build/arch/${CT_ARCH}.sh"
    24 . "${CT_LIB_DIR}/scripts/build/kernel/${CT_KERNEL}.sh"
    25 
    26 # Build CT_TARGET
    27 CT_DoBuildTargetTuple
    28 
    29 # All this for this single echo... :-( Sigh, I'll have to re-arrange things...
    30 echo "${CT_TARGET}" >&7