# 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. config CC_GCC_SHOW_LINARO bool prompt "Show Linaro versions (EXPERIMENTAL)" depends on EXPERIMENTAL help Linaro is maintaining some advanced/more stable/experimental versions of gcc, especially for the ARM architecture. Those versions have not been blessed by the gcc comunity (nor have they been cursed either!), but they look to be pretty much stable, and even more stable than the upstream versions. YMMV... If you do not know what this Linaro stuff is, then simply say 'n' here, and rest in peace. OTOH, if you know what you are doing, you will be able to use and enjoy :-) the Linaro versions by saying 'y' here. Linaro: http://www.linaro.org/ choice bool prompt "gcc version" # Don't remove next line # CT_INSERT_VERSION_BELOW config CC_V_linaro_4_6_2011_03_0 bool prompt "linaro-4.6-2011.03-0 (EXPERIMENTAL)" depends on CC_GCC_SHOW_LINARO select CC_GCC_4_6 config CC_V_4_6_0 bool prompt "4.6.0 (EXPERIMENTAL)" depends on EXPERIMENTAL select CC_GCC_4_6 config CC_V_linaro_4_5_2011_03_0 bool prompt "linaro-4.5-2011.03-0 (EXPERIMENTAL)" depends on CC_GCC_SHOW_LINARO select CC_GCC_4_5 config CC_V_4_5_2 bool prompt "4.5.2 (EXPERIMENTAL)" depends on EXPERIMENTAL select CC_GCC_4_5 config CC_V_4_5_1 bool prompt "4.5.1 (EXPERIMENTAL)" depends on EXPERIMENTAL select CC_GCC_4_5 config CC_V_4_5_0 bool prompt "4.5.0 (EXPERIMENTAL)" depends on EXPERIMENTAL select CC_GCC_4_5 config CC_V_linaro_4_4_2011_02_0 bool prompt "linaro-4.4-2011.02-0 (EXPERIMENTAL)" depends on CC_GCC_SHOW_LINARO select CC_GCC_4_4 config CC_V_4_4_6 bool prompt "4.4.6" select CC_GCC_4_4_or_later config CC_V_4_4_5 bool prompt "4.4.5" select CC_GCC_4_4 config CC_V_4_4_4 bool prompt "4.4.4" select CC_GCC_4_4 config CC_V_4_4_3 bool prompt "4.4.3" select CC_GCC_4_4 config CC_V_4_4_2 bool prompt "4.4.2" select CC_GCC_4_4 config CC_V_4_4_1 bool prompt "4.4.1" select CC_GCC_4_4 config CC_V_4_4_0 bool prompt "4.4.0" select CC_GCC_4_4 config CC_V_4_3_5 bool prompt "4.3.5" select CC_GCC_4_3 config CC_V_4_3_4 bool prompt "4.3.4" select CC_GCC_4_3 config CC_V_4_3_3 bool prompt "4.3.3" select CC_GCC_4_3 config CC_V_4_3_2 bool prompt "4.3.2" select CC_GCC_4_3 config CC_V_4_3_1 bool prompt "4.3.1" select CC_GCC_4_3 config CC_V_4_2_4 bool prompt "4.2.4" select CC_GCC_4_2 config CC_V_4_2_3 bool prompt "4.2.3 (OBSOLETE)" select CC_GCC_4_2 depends on OBSOLETE config CC_V_4_2_2 bool prompt "4.2.2" select CC_GCC_4_2 config CC_V_4_2_1 bool prompt "4.2.1 (OBSOLETE)" select CC_GCC_4_2 depends on OBSOLETE config CC_V_4_2_0 bool prompt "4.2.0 (OBSOLETE)" select CC_GCC_4_2 depends on OBSOLETE config CC_V_4_1_2 bool prompt "4.1.2 (OBSOLETE)" depends on OBSOLETE config CC_V_4_0_4 bool prompt "4.0.4 (OBSOLETE)" depends on OBSOLETE config CC_V_3_4_6 bool prompt "3.4.6 (OBSOLETE)" depends on OBSOLETE endchoice config CC_GCC_4_2 bool default n select CC_GCC_4_2_or_later config CC_GCC_4_2_or_later bool default n config CC_GCC_4_3 bool default n select CC_GCC_4_3_or_later select CC_GCC_USE_GMP_MPFR config CC_GCC_4_3_or_later bool default n select CC_GCC_4_2_or_later config CC_GCC_4_4 bool default n select CC_GCC_4_4_or_later select CC_GCC_USE_GMP_MPFR select CC_GCC_HAS_GRAPHITE config CC_GCC_4_4_or_later bool default n select CC_GCC_4_3_or_later config CC_GCC_4_5 bool default n select CC_GCC_4_5_or_later select CC_GCC_USE_GMP_MPFR select CC_GCC_USE_MPC select CC_GCC_HAS_GRAPHITE select CC_GCC_HAS_LTO config CC_GCC_4_5_or_later bool default n select CC_GCC_4_4_or_later config CC_GCC_4_6 bool default n select CC_GCC_4_6_or_later select CC_GCC_USE_GMP_MPFR select CC_GCC_USE_MPC select CC_GCC_HAS_GRAPHITE select CC_GCC_HAS_LTO config CC_GCC_4_6_or_later bool default n select CC_GCC_4_5_or_later config CC_GCC_HAS_GRAPHITE bool default n # The way LTO works is a bit twisted. # See: http://gcc.gnu.org/wiki/LinkTimeOptimization#Requirements # Basically: # - if binutils has plugins: LTO is handled by ld/gold by loading # the plugin when linking # - if binutils does not have plugins: LTO is handled by collect2 # In any case, LTO support does not depend on plugins, but takes # advantage of it config CC_GCC_HAS_LTO bool default n # Only enable gcc's support for plugins if binutils has it as well # They are usefull only when doing LTO, but it does no harm enabling # them even without LTO. config CC_GCC_ENABLE_PLUGINS bool depends on BINUTILS_PLUGINS depends on ! STATIC_TOOLCHAIN default y # If binutils installs gold, enable support for gold in gcc config CC_GCC_GOLD bool depends on BINUTILS_GOLD_INSTALLED default y config CC_GCC_USE_GMP_MPFR bool default n select GMP_NEEDED select MPFR_NEEDED config CC_GCC_USE_PPL_CLOOG bool default n select PPL_NEEDED select CLOOG_NEEDED config CC_GCC_USE_MPC bool default n select MPC_NEEDED config CC_GCC_USE_LIBELF bool default n select LIBELF_NEEDED config CC_VERSION string # Don't remove next line # CT_INSERT_VERSION_STRING_BELOW default "4.4.6" if CC_V_4_4_6 default "linaro-4.6-2011.03-0" if CC_V_linaro_4_6_2011_03_0 default "4.6.0" if CC_V_4_6_0 default "linaro-4.5-2011.03-0" if CC_V_linaro_4_5_2011_03_0 default "4.5.2" if CC_V_4_5_2 default "4.5.1" if CC_V_4_5_1 default "4.5.0" if CC_V_4_5_0 default "linaro-4.4-2011.02-0" if CC_V_linaro_4_4_2011_02_0 default "4.4.5" if CC_V_4_4_5 default "4.4.4" if CC_V_4_4_4 default "4.4.3" if CC_V_4_4_3 default "4.4.2" if CC_V_4_4_2 default "4.4.1" if CC_V_4_4_1 default "4.4.0" if CC_V_4_4_0 default "4.3.5" if CC_V_4_3_5 default "4.3.4" if CC_V_4_3_4 default "4.3.3" if CC_V_4_3_3 default "4.3.2" if CC_V_4_3_2 default "4.3.1" if CC_V_4_3_1 default "4.3.0" if CC_V_4_3_0 default "4.2.4" if CC_V_4_2_4 default "4.2.3" if CC_V_4_2_3 default "4.2.2" if CC_V_4_2_2 default "4.2.1" if CC_V_4_2_1 default "4.2.0" if CC_V_4_2_0 default "4.1.2" if CC_V_4_1_2 default "4.0.4" if CC_V_4_0_4 default "3.4.6" if CC_V_3_4_6 config CC_LANG_JAVA_USE_ECJ bool default y depends on CC_LANG_JAVA depends on CC_GCC_4_3_or_later