crosstool-ng/config/cc.in
Yann E. MORIN" 799672a641 Introduce a new EXPERIMENTAL feature: BARE_METAL.
This should ultimately llow to build bare-metal compilers, for targets that have no kernel and no C library.
Move the C library build script to their own sub-directory; introduce an empty build script for bare-metal.
Move the compiler build script to its own sub-directory.
Move the kernel build script to its own sub-directory; introduce an empty build script for bare-metal.
Update the ARM target tuples to enable bare-metal targets.
Add two ARM bare-metal samples.
Add latest Linux kernel versions.

 /trunk/scripts/build/kernel/none.sh              |   77     6    71     0 +----
 /trunk/scripts/build/cc/gcc.sh                   |   58    41    17     0 ++-
 /trunk/scripts/build/libc/none.sh                |  513     9   504     0 +-----------------------------
 /trunk/scripts/crosstool.sh                      |   17     9     8     0 +
 /trunk/scripts/functions                         |    6     4     2     0 +
 /trunk/scripts/showSamples.sh                    |    6     3     3     0
 /trunk/samples/arm-unknown-elf/crosstool.config  |  225   225     0     0 +++++++++++++
 /trunk/samples/arm-unknown-eabi/crosstool.config |  223   223     0     0 +++++++++++++
 /trunk/config/kernel/linux_headers_install.in    |   64    27    37     0 ++--
 /trunk/config/kernel.in                          |    9     8     1     0 +
 /trunk/config/toolchain.in                       |    1     1     0     0 +
 /trunk/config/cc/gcc.in                          |    3     3     0     0 +
 /trunk/config/debug/dmalloc.in                   |    1     1     0     0 +
 /trunk/config/debug/gdb.in                       |    4     3     1     0 +
 /trunk/config/debug/strace.in                    |    1     1     0     0 +
 /trunk/config/debug/duma.in                      |    1     1     0     0 +
 /trunk/config/cc.in                              |    8     8     0     0 +
 /trunk/config/target.in                          |   13    13     0     0 +
 /trunk/config/binutils.in                        |    1     1     0     0 +
 /trunk/config/gmp_mpfr.in                        |    1     1     0     0 +
 /trunk/config/libc.in                            |   17    11     6     0 +
 /trunk/arch/arm/functions                        |    3     1     2     0 -
 22 files changed, 600 insertions(+), 652 deletions(-)
2008-09-14 16:21:07 +00:00

148 lines
3.0 KiB
Plaintext

# Compiler options
menu "C compiler"
choice
bool
prompt "C compiler flavour"
default CC_GCC
config CC_GCC
bool
prompt "gcc"
select CC_SUPPORT_CXX
select CC_SUPPORT_FORTRAN
select CC_SUPPORT_JAVA
select CC_SUPPORT_ADA
select CC_SUPPORT_OBJC
select CC_SUPPORT_OBJCXX
help
gcc is the full-blown GNU compiler. This is what most people will choose.
gcc supports many languages, a powerful code parser, optimised binary
output, and lots of other features.
endchoice
config CC_VERSION
string
config CC
string
default "gcc" if CC_GCC
if CC_GCC
source config/cc/gcc.in
endif
config CC_SUPPORT_CXX
bool
config CC_SUPPORT_FORTRAN
bool
config CC_SUPPORT_JAVA
bool
config CC_SUPPORT_ADA
bool
config CC_SUPPORT_OBJC
bool
config CC_SUPPORT_OBJCXX
bool
if ! BARE_METAL
comment "Additional supported languages:"
config CC_LANG_CXX
bool
prompt "C++"
default n
depends on CC_SUPPORT_CXX
help
Enable building a C++ compiler.
Only select this if you know that your specific version of the
compiler supports this language.
config CC_LANG_FORTRAN
bool
prompt "Fortran"
default n
depends on CC_SUPPORT_FORTRAN
help
Enable building a FORTRAN compiler.
Only select this if you know that your specific version of the
compiler supports this language.
config CC_LANG_JAVA
bool
prompt "Java"
default n
depends on CC_SUPPORT_JAVA
help
Enable building a Java compiler.
Only select this if you know that your specific version of the
compiler supports this language.
config CC_LANG_ADA
bool
prompt "ADA (EXPERIMENTAL)"
default n
depends on CC_SUPPORT_ADA
depends on EXPERIMENTAL
help
Enable building an Ada compiler.
Only select this if you know that your specific version of the
compiler supports this language.
config CC_LANG_OBJC
bool
prompt "Objective-C (EXPERIMENTAL)"
default n
depends on CC_SUPPORT_OBJC
depends on EXPERIMENTAL
help
Enable building an Objective C compiler.
Only select this if you know that your specific version of the
compiler supports this language.
config CC_LANG_OBJCXX
bool
prompt "Objective-C++ (EXPERIMENTAL)"
depends on EXPERIMENTAL
default n
depends on CC_SUPPORT_OBJCXX
help
Enable building an Objective C++ compiler.
Only select this if you know that your specific version of the
compiler supports this language.
config CC_LANG_OTHERS
string
prompt "Other languages (EXPERIMENTAL)"
default ""
depends on EXPERIMENTAL
help
Enter here a comma-separated list of languages that you know your compiler
supports, besides those listed above.
Eg. gcc-4.1+ has a toy programming language, treelang. As it is not usefull
in real life, it is not available in the selection above.
endif # ! BARE_METAL
if BARE_METAL
comment "Only C language supported on bare metal"
endif # BARE_METAL
endmenu