crosstool-ng/config/companion_libs.in

191 lines
5.1 KiB
Plaintext
Raw Normal View History

# Companion libraries config options
# Those libraries are required for different versions of gcc,
# and can be used by binutils and gdb (maybe others as well).
menu "Companion libraries"
comment "FIXME: check real dependencies!!!"
config COMPLIBS
bool
default n
config WRAPPER_NEEDED
bool
default n
config GMP
bool
prompt "GMP"
select COMPLIBS
select WRAPPER_NEEDED
help
gcc 4.3.0 and above requires GMP to build some frontends, and some
other components can use them as well.
This will be automatically selected if you choose gcc>=4.3.0, but you
can say 'Y' here if you want to build this library for the other
components (that don't select them by default).
The packages that can use GMP and MPFR are:
- binutils
- gcc
- gdb
config MPFR
bool
prompt "MPFR"
select GMP
select COMPLIBS
select WRAPPER_NEEDED
help
gcc 4.3.0 and above requires MPFR to build some frontends, and some
other components can use them as well.
This will be automatically selected if you choose gcc>=4.3.0, but you
can say 'Y' here if you want to build this library for the other
components (that don't select them by default).
The packages that can use GMP and MPFR are:
- binutils
- gcc
- gdb
config PPL
bool
prompt "PPL"
select GMP
select MPFR
select COMPLIBS
select WRAPPER_NEEDED
help
gcc-4.4.0 and above requires PPL to build some parts of the optimiser
(the GRAPHITE loop optimisation, to be precise).
This will be automatically selected if you choose gcc>=4.4.0, but you
can say 'Y' here, although it is unknown yet if any other component
can use it.
config CLOOG
bool
prompt "GLooG/PPL"
select GMP
select MPFR
select PPL
select COMPLIBS
select WRAPPER_NEEDED
help
gcc-4.4.0 and above requires CLooG/PPL to build some parts of the
optimiser (the GRAPHITE loop optimisation, to be precise).
This will be automatically selected if you choose gcc>=4.4.0, but you
can say 'Y' here, although it is unknown yet if any other component
can use it.
config MPC
bool
prompt "MPC"
select GMP
select MPFR
select PPL
select CLOOG
select COMPLIBS
select WRAPPER_NEEDED
help
gcc-4.4.0 and above can also optionally use MPC to enable additional
optimisations on complex numbers. Although MPC is optional,
crosstool-NG requires it and uses it to build gcc >= 4.4.0.
This will be automatically selected if you choose gcc>=4.4.0, but you
can say 'Y' here, although it is unknown yet if any other component
can use it.
if GMP
source config/companion_libs/gmp.in
endif
if MPFR
source config/companion_libs/mpfr.in
endif
if PPL
source config/companion_libs/ppl.in
endif
if CLOOG
source config/companion_libs/cloog.in
endif
if MPC
source config/companion_libs/mpc.in
endif
config FOO
bool
comment "Companion libraries common options"
depends on COMPLIBS || WRAPPER_NEEDED
if COMPLIBS
config COMP_LIBS_CHECK
bool
prompt "| Check the companion libraries builds (!!! READ HELP!!!)"
default n
help
It is highly recommended to check the newly built companion libraries.
Unfortunately, this is a very intensive task, and takes a loooong time.
Checking the newly built companion libraries is thus disabled by default,
but it is suggested that you check them at least once on your machine,
and if they work, disable the check on subsequent builds.
If you suspect that one (or more) of your companion libraries is the
cause for incorrectly generated code, you should answer 'Y' here.
Note however that this will take a really long time. For example,
building PPL on my machine takes roughly 1'40", while checking it takes
about 1h40'...
config COMPLIBS_TARGET
bool
prompt "| Build companion libraries for the target"
depends on ! BARE_METAL
default n
help
Also build companion libraries for the target. This can be usefull if
you want to later build a compiler that will run on the target, or if
you want to run gdb natively on the target.
Please note that for now, crosstool-NG can only build GMP and MPFR so.
endif # COMPLIBS
choice
bool
prompt "| Install tools wrapper as:"
depends on WRAPPER_NEEDED
default TOOLS_WRAPPER_SHELL
config TOOLS_WRAPPER_SCRIPT
bool
prompt "shell script"
help
If your host has a shell, then you should say 'Y' here, to use
a (very very simple) shell script as wrapper.
See docs/overview.txt, section "Tools wrapper".
config TOOLS_WRAPPER_EXEC
bool
prompt "executable"
help
If your host lacks a shell, then you should say 'Y' here, to use
an executable.
See docs/overview.txt, section "Tools wrapper".
endchoice
config TOOLS_WRAPPER
string
default "script" if TOOLS_WRAPPER_SCRIPT
default "exec" if TOOLS_WRAPPER_EXEC
endmenu