crosstool-ng/config/cc/gcc.in
Yann E. MORIN" 355586027b Add support for building toolchains with gcc-4.4 snapshots.
Initial patch by Dmitry PLOTNIKOV: http://sourceware.org/ml/crossgcc/2009-03/msg00053.html
  It [the toolchain] uses current ct-ng (nightly snapshot 20090324, latest
  release 1.3.2 work also), glibc 2.9 (from CVS), binutils 2.19 and latest
  snapshot of GCC 4.4.0 (as of March 20, 2009).

  We have successfully built linux kernel 2.6.29 and a lot of other stuff
  with this toolchain.

  Here's the patch that adds GCC 4.4.0 to the ct-ng menu and enables it to
  download a 4.4.0 snapshot from ftp.

Patch was adpated by me, mostly to better fit the configuration layout.

 /trunk/scripts/build/cc/gcc.sh |   34    22    12     0 ++++++++++++++++++++++------------
 /trunk/config/cc/gcc.in        |   35    30     5     0 ++++++++++++++++++++++++++++++-----
 2 files changed, 52 insertions(+), 17 deletions(-)
2009-03-26 18:47:34 +00:00

264 lines
5.9 KiB
Plaintext

# Compiler options
config CC_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.
choice
bool
prompt "gcc version"
config CC_V_3_2_3
bool
prompt "3.2.3 (OBSOLETE)"
depends on OBSOLETE
config CC_V_3_3_6
bool
prompt "3.3.6 (OBSOLETE)"
depends on OBSOLETE
config CC_V_3_4_6
bool
prompt "3.4.6 (OBSOLETE)"
depends on OBSOLETE
config CC_V_4_0_0
bool
prompt "4.0.0 (OBSOLETE)"
depends on OBSOLETE
config CC_V_4_0_1
bool
prompt "4.0.1 (OBSOLETE)"
depends on OBSOLETE
config CC_V_4_0_2
bool
prompt "4.0.2 (OBSOLETE)"
depends on OBSOLETE
config CC_V_4_0_3
bool
prompt "4.0.3 (OBSOLETE)"
depends on OBSOLETE
config CC_V_4_0_4
bool
prompt "4.0.4"
config CC_V_4_1_0
bool
prompt "4.1.0 (OBSOLETE)"
depends on OBSOLETE
config CC_V_4_1_1
bool
prompt "4.1.1 (OBSOLETE)"
depends on OBSOLETE
config CC_V_4_1_2
bool
prompt "4.1.2"
config CC_V_4_2_0
bool
prompt "4.2.0"
config CC_V_4_2_1
bool
prompt "4.2.1"
config CC_V_4_2_2
bool
prompt "4.2.2"
config CC_V_4_2_3
bool
prompt "4.2.3"
config CC_V_4_2_4
bool
prompt "4.2.4"
config CC_V_4_3_0
bool
prompt "4.3.0 (EXPERIMENTAL)"
depends on EXPERIMENTAL
select CC_GCC_4_3_or_later
config CC_V_4_3_1
bool
prompt "4.3.1"
select CC_GCC_4_3_or_later
config CC_V_4_3_2
bool
prompt "4.3.2"
select CC_GCC_4_3_or_later
config CC_V_4_3_3
bool
prompt "4.3.3 (EXPERIMENTAL)"
depends on EXPERIMENTAL
select CC_GCC_4_3_or_later
config CC_V_4_4_0
bool
prompt "4.4.0 snapshot"
depends on EXPERIMENTAL
select CC_GCC_4_3_or_later
select CC_GCC_4_4_snapshot
# CT_INSERT_VERSION_ABOVE
# Don't remove above line!
endchoice
config CC_GCC_4_3_or_later
bool
default n
select GMP_MPFR
config CC_GCC_4_4_snapshot
bool
default n
config CC_GCC_4_4_snapshot_date
string
prompt "Snapshot date"
depends on CC_GCC_4_4_snapshot
help
Enter the snapshot date in the form YYYYMMDD.
Snapshots are made every friday, at around 22:30 GMT+1,
so look at your calendar to find a suitable date.
Also, know that crosstool-NG does *not* carry any patch
for the gcc-4.4 snapshots. So, you may have to answer
'y' to CUSTOM_PATCH, and set CUSTOM_PATCH_DIR adequately.
config CC_VERSION
string
default "3.2.3" if CC_V_3_2_3
default "3.3.6" if CC_V_3_3_6
default "3.4.6" if CC_V_3_4_6
default "4.0.0" if CC_V_4_0_0
default "4.0.1" if CC_V_4_0_1
default "4.0.2" if CC_V_4_0_2
default "4.0.3" if CC_V_4_0_3
default "4.0.4" if CC_V_4_0_4
default "4.1.0" if CC_V_4_1_0
default "4.1.1" if CC_V_4_1_1
default "4.1.2" if CC_V_4_1_2
default "4.2.0" if CC_V_4_2_0
default "4.2.1" if CC_V_4_2_1
default "4.2.2" if CC_V_4_2_2
default "4.2.3" if CC_V_4_2_3
default "4.2.4" if CC_V_4_2_4
default "4.3.0" if CC_V_4_3_0
default "4.3.1" if CC_V_4_3_1
default "4.3.2" if CC_V_4_3_2
default "4.3.3" if CC_V_4_3_3
default "4.4-" if CC_V_4_4_0
# CT_INSERT_VERSION_STRING_ABOVE
# Don't remove above line!
config CC_CXA_ATEXIT
bool
prompt "Use __cxa_atexit"
default y
depends on ! BARE_METAL
help
If you get the missing symbol "__cxa_atexit" when building C++ programs,
you might want to try disabling this option.
choice
bool
prompt "Use sjlj for exceptions"
default CC_SJLJ_EXCEPTIONS_CONFIGURE
depends on ! BARE_METAL
# This config option is used nowhere in the code on purpose.
# It only serves as a choice entry to force neither using nor not using sjlj
config CC_SJLJ_EXCEPTIONS_CONFIGURE
bool
prompt "Let configure decide"
help
Let configure decide if setjmp/longjmp should be used to handle
exceptions.
Choose that if you trust configure to detect the correct settings.
This is the default choice.
config CC_SJLJ_EXCEPTIONS_USE
bool
prompt "Force using sjlj"
help
Do use setjmp/longjmp for exceptions.
This is gcc's --enable-sjlj-exceptions configure switch.
Choose that if you want to use setjmp/longjmp to handle exceptions.
config CC_SJLJ_EXCEPTIONS_DONT_USE
bool
prompt "Force not using sjlj"
help
Do not use setjmp/longjmp for exceptions.
This is gcc's --disable-sjlj-exceptions configure switch.
Choose that if you want to not use setjmp/longjmp to handle exceptions.
endchoice
config CC_CORE_EXTRA_CONFIG
string
prompt "Core gcc extra config"
default ""
help
Extra flags to pass onto ./configure when configuring the core gcc.
The core gcc is a stripped down, C-only compiler needed to build
the C library. Kinda bootstrap gcc, if you wish.
config CC_EXTRA_CONFIG
string
prompt "gcc extra config"
default ""
depends on ! BARE_METAL
help
Extra flags to pass onto ./configure when configuring gcc.
config CC_PKGVERSION
string
prompt "gcc ID string"
depends on CC_GCC_4_3_or_later
default "crosstool-NG-${CT_VERSION}"
help
Specify a string that identifies your package. You may wish to include
a build number or build date. This version string will be included in
the output of gcc --version.
This is passed to the configure flag --with-pkgversion.
config CC_BUGURL
string
prompt "gcc bug URL"
depends on CC_GCC_4_3_or_later
default ""
help
Specify the URL that users should visit if they wish to report a bug.
config CC_LANG_JAVA_USE_ECJ
bool
default y
depends on CC_LANG_JAVA
depends on CC_GCC_4_3_or_later