mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2025-01-18 10:46:26 +00:00
cc/gcc: do not force use of non-vital companion libraries
While GMP and MPFR are required by gcc>=4.3 (to build the frontends), and MPC is required by gcc>=4.5, the other libs are not. If they are present then gcc will enable advanced features; if they are missing, then gcc will (should) simply disable those features. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
This commit is contained in:
parent
4c326c2924
commit
d34a5ec7d8
@ -136,13 +136,22 @@ config CC_GCC_4_4_or_later
|
||||
bool
|
||||
default n
|
||||
select CC_GCC_4_3_or_later
|
||||
select CC_GCC_USE_PPL_CLOOG
|
||||
select CC_GCC_HAS_GRAPHITE
|
||||
|
||||
config CC_GCC_4_5_or_later
|
||||
bool
|
||||
default n
|
||||
select CC_GCC_4_4_or_later
|
||||
select CC_GCC_USE_MPC_LIBELF
|
||||
select CC_GCC_USE_MPC
|
||||
select CC_GCC_HAS_LTO
|
||||
|
||||
config CC_GCC_HAS_GRAPHITE
|
||||
bool
|
||||
default n
|
||||
|
||||
config CC_GCC_HAS_LTO
|
||||
bool
|
||||
default n
|
||||
|
||||
config CC_GCC_USE_GMP_MPFR
|
||||
bool
|
||||
@ -156,10 +165,14 @@ config CC_GCC_USE_PPL_CLOOG
|
||||
select PPL
|
||||
select CLOOG
|
||||
|
||||
config CC_GCC_USE_MPC_LIBELF
|
||||
config CC_GCC_USE_MPC
|
||||
bool
|
||||
default n
|
||||
select MPC
|
||||
|
||||
config CC_GCC_USE_LIBELF
|
||||
bool
|
||||
default n
|
||||
select LIBELF
|
||||
|
||||
config CC_VERSION
|
||||
|
@ -7,6 +7,33 @@ config CC_GCC_ENABLE_TARGET_OPTSPACE
|
||||
|
||||
This will compile crossgcc's libs with -Os.
|
||||
|
||||
config CC_GCC_USE_GRAPHITE
|
||||
bool
|
||||
prompt "Enable GRAPHITE loop optimisations"
|
||||
default y
|
||||
depends on CC_GCC_HAS_GRAPHITE
|
||||
select CC_GCC_USE_PPL_CLOOG
|
||||
help
|
||||
Enable the GRAPHITE loop optimsations.
|
||||
|
||||
This requires the PPL and CLooG companion libraries, and
|
||||
those will be automatically build for you.
|
||||
|
||||
On some systems (eg. Cygwin), PPL and/or CLooG may not
|
||||
build properly (yet), so you'll have to say 'N' here.
|
||||
|
||||
config CC_GCC_USE_LTO
|
||||
bool
|
||||
prompt "Enable LTO"
|
||||
default y
|
||||
depends on CC_GCC_HAS_LTO
|
||||
select CC_GCC_USE_LIBELF
|
||||
help
|
||||
Enable the Link Time Optimisations.
|
||||
|
||||
This will require the libelf companion library, and it
|
||||
wil be build automatically for you.
|
||||
|
||||
config CC_STATIC_LIBSTDCXX
|
||||
bool
|
||||
prompt "Link libstdc++ statically into the gcc binary"
|
||||
|
@ -169,12 +169,14 @@ do_cc_core() {
|
||||
extra_config+=("--with-gmp=${CT_COMPLIBS_DIR}")
|
||||
extra_config+=("--with-mpfr=${CT_COMPLIBS_DIR}")
|
||||
fi
|
||||
if [ "${CT_CC_GCC_USE_PPL_CLOOG}" = "y" ]; then
|
||||
if [ "${CT_CC_GCC_USE_MPC}" = "y" ]; then
|
||||
extra_config+=("--with-mpc=${CT_COMPLIBS_DIR}")
|
||||
fi
|
||||
if [ "${CT_CC_GCC_USE_GRAPHITE}" = "y" ]; then
|
||||
extra_config+=("--with-ppl=${CT_COMPLIBS_DIR}")
|
||||
extra_config+=("--with-cloog=${CT_COMPLIBS_DIR}")
|
||||
fi
|
||||
if [ "${CT_CC_GCC_USE_MPC_LIBELF}" = "y" ]; then
|
||||
extra_config+=("--with-mpc=${CT_COMPLIBS_DIR}")
|
||||
if [ "${CT_CC_GCC_USE_LTO}" = "y" ]; then
|
||||
extra_config+=("--with-libelf=${CT_COMPLIBS_DIR}")
|
||||
fi
|
||||
|
||||
@ -365,12 +367,14 @@ do_cc() {
|
||||
extra_config+=("--with-gmp=${CT_COMPLIBS_DIR}")
|
||||
extra_config+=("--with-mpfr=${CT_COMPLIBS_DIR}")
|
||||
fi
|
||||
if [ "${CT_CC_GCC_USE_PPL_CLOOG}" = "y" ]; then
|
||||
if [ "${CT_CC_GCC_USE_MPC}" = "y" ]; then
|
||||
extra_config+=("--with-mpc=${CT_COMPLIBS_DIR}")
|
||||
fi
|
||||
if [ "${CT_CC_GCC_USE_GRAPHITE}" = "y" ]; then
|
||||
extra_config+=("--with-ppl=${CT_COMPLIBS_DIR}")
|
||||
extra_config+=("--with-cloog=${CT_COMPLIBS_DIR}")
|
||||
fi
|
||||
if [ "${CT_CC_GCC_USE_MPC_LIBELF}" = "y" ]; then
|
||||
extra_config+=("--with-mpc=${CT_COMPLIBS_DIR}")
|
||||
if [ "${CT_CC_GCC_USE_LTO}" = "y" ]; then
|
||||
extra_config+=("--with-libelf=${CT_COMPLIBS_DIR}")
|
||||
fi
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user