--- /dev/null
+comment "GCC Options"
+
+config BR2_GCC_NEEDS_MPC
+ bool
+
+config BR2_GCC_SUPPORTS_GRAPHITE
+ bool
+
+choice
+ prompt "GCC compiler Version"
+ default BR2_GCC_VERSION_4_8_ARC if BR2_arc
+ default BR2_GCC_VERSION_4_9_X if BR2_microblaze || BR2_powerpc64le
+ default BR2_GCC_VERSION_4_8_X
+ help
+ Select the version of gcc you wish to use.
+
+ config BR2_GCC_VERSION_4_5_X
+ bool "gcc 4.5.x"
+ depends on BR2_DEPRECATED_SINCE_2015_05
+ # Broken or unsupported architectures
+ depends on !BR2_microblaze && !BR2_aarch64 && !BR2_arc \
+ && !BR2_powerpc64le && !BR2_nios2
+ # Broken or unsupported ARM cores
+ depends on !BR2_cortex_a7 && !BR2_cortex_a12 && \
+ !BR2_cortex_a15 && !BR2_fa526 && !BR2_pj4
+ # Broken or unsupported PPC cores
+ depends on !BR2_powerpc_e5500 && !BR2_powerpc_e6500 && \
+ !BR2_powerpc_power8
+ # SPARC -mcpu=leon3 appeared in gcc 4.8.x
+ depends on !BR2_sparc_leon3
+ # Broken or unsupported X86 cores
+ depends on !BR2_x86_corei7 && !BR2_x86_jaguar && !BR2_x86_steamroller
+ # ARM EABIhf support appeared in gcc 4.6
+ depends on !BR2_ARM_EABIHF
+ # musl patches only for gcc 4.7+
+ depends on !BR2_TOOLCHAIN_BUILDROOT_MUSL
+ select BR2_GCC_NEEDS_MPC
+
+ config BR2_GCC_VERSION_4_7_X
+ bool "gcc 4.7.x"
+ # Broken or unsupported architectures
+ depends on !BR2_microblaze && !BR2_aarch64 && !BR2_arc \
+ && !BR2_powerpc64le && !BR2_nios2
+ # Broken or unsupported ARM cores
+ depends on !BR2_cortex_a12 && !BR2_pj4
+ # Broken or unsupported PPC cores
+ depends on !BR2_powerpc_e5500 && !BR2_powerpc_e6500 && \
+ !BR2_powerpc_power8
+ # SPARC -mcpu=leon3 appeared in gcc 4.8.x
+ depends on !BR2_sparc_leon3
+ # Broken or unsupported x86 cores
+ depends on !BR2_x86_jaguar && !BR2_x86_steamroller
+ select BR2_GCC_NEEDS_MPC
+
+ config BR2_GCC_VERSION_4_8_X
+ bool "gcc 4.8.x"
+ # Broken or unsupported architectures
+ depends on !BR2_microblaze && !BR2_arc \
+ && !BR2_powerpc64le && !BR2_nios2
+ # Broken or unsupported ARM cores
+ depends on !BR2_cortex_a12
+ # Broken or unsupported PPC cores
+ depends on !BR2_powerpc_power8
+ select BR2_GCC_NEEDS_MPC
+ select BR2_GCC_SUPPORTS_GRAPHITE
+
+ config BR2_GCC_VERSION_4_8_ARC
+ bool "gcc 4.8-arc"
+ # Only supported architecture
+ depends on BR2_arc
+ select BR2_GCC_NEEDS_MPC
+
+ config BR2_GCC_VERSION_4_9_X
+ bool "gcc 4.9.x"
+ # Broken or unsupported architectures
+ depends on !BR2_arc
+ # PR60102 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60102
+ select BR2_GCC_NEEDS_MPC
+ select BR2_GCC_SUPPORTS_GRAPHITE
+
+endchoice
+
+config BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
+ bool
+ default y
+
+config BR2_GCC_VERSION
+ string
+ default "4.5.4" if BR2_GCC_VERSION_4_5_X
+ default "4.7.4" if BR2_GCC_VERSION_4_7_X
+ default "4.8.4" if BR2_GCC_VERSION_4_8_X
+ default "4.9.2" if BR2_GCC_VERSION_4_9_X
+ default "arc-2014.12" if BR2_GCC_VERSION_4_8_ARC
+
+config BR2_EXTRA_GCC_CONFIG_OPTIONS
+ string "Additional gcc options"
+ default ""
+ help
+ Any additional gcc configure options you may want to
+ include. Those options are applied for all of the gcc
+ initial, gcc intermediate and gcc final passes.
+
+config BR2_TOOLCHAIN_BUILDROOT_CXX
+ bool "Enable C++ support"
+ select BR2_INSTALL_LIBSTDCPP
+ help
+ Enable this option if you want your toolchain to support the
+ C++ language and you want C++ libraries to be installed on
+ your target system.
+
+config BR2_GCC_ENABLE_TLS
+ bool "Enable compiler tls support" if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
+ default y
+ depends on BR2_PTHREADS_NATIVE || BR2_TOOLCHAIN_BUILDROOT_EGLIBC || BR2_TOOLCHAIN_BUILDROOT_GLIBC
+ help
+ Enable the compiler to generate code for accessing
+ thread local storage variables
+
+config BR2_GCC_ENABLE_LTO
+ bool "Enable compiler link-time-optimization support"
+ select BR2_BINUTILS_ENABLE_LTO
+ help
+ This option enables link-time optimization (LTO) support in
+ gcc.
+
+config BR2_GCC_ENABLE_OPENMP
+ bool "Enable compiler OpenMP support"
+ depends on !BR2_PTHREADS_NONE && !BR2_arc && !BR2_microblaze
+ help
+ Enable OpenMP support for the compiler
+
+config BR2_GCC_ENABLE_LIBMUDFLAP
+ bool "Enable libmudflap support"
+ # There are architectures, or specific configurations for
+ # which mudflap is not supported.
+ depends on !BR2_ARM_INSTRUCTIONS_THUMB && !BR2_powerpc_SPE
+ depends on !BR2_GCC_VERSION_4_9_X
+ help
+ libmudflap is a gcc library used for the mudflap pointer
+ debugging functionality. It is only needed if you intend to
+ use the -fmudflap gcc flag.
+
+ See http://gcc.gnu.org/wiki/Mudflap_Pointer_Debugging and
+ the help of the gcc -fmudflap option for more details.
+
+ If you're unsure, leave this option disabled.
+
+config BR2_GCC_ENABLE_GRAPHITE
+ bool "Enable graphite support"
+ depends on BR2_GCC_SUPPORTS_GRAPHITE
+ help
+ This option enables the graphite optimizations in the
+ compiler.