123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- comment "GCC Options"
- config BR2_GCC_NEEDS_MPC
- bool
- config BR2_GCC_SUPPORTS_GRAPHITE
- bool
- choice
- prompt "GCC compiler Version"
- default BR2_GCC_VERSION_ARC if BR2_arc
- default BR2_GCC_VERSION_5_X
- help
- Select the version of gcc you wish to use.
- config BR2_GCC_VERSION_4_7_X
- bool "gcc 4.7.x"
- depends on BR2_DEPRECATED_SINCE_2016_05
- # Broken or unsupported architectures
- depends on !BR2_microblaze && !BR2_aarch64 && !BR2_arc \
- && !BR2_powerpc64le && !BR2_nios2 && !BR2_bfin
- # Broken or unsupported ARM cores
- depends on !BR2_cortex_a12 && !BR2_pj4 && !BR2_cortex_a17
- # 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
- # Unsupported MIPS cores
- depends on !BR2_mips_interaptiv
- # Unsupported for MIPS R5
- depends on !BR2_MIPS_CPU_MIPS32R5 && !BR2_MIPS_CPU_MIPS64R5
- # Unsupported for MIPS R6
- depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6
- # musl ppc64 unsupported
- depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64el))
- select BR2_GCC_NEEDS_MPC
- select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
- 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 && !BR2_bfin
- # Broken or unsupported ARM cores
- depends on !BR2_cortex_a12 && !BR2_cortex_a17
- # Broken or unsupported PPC cores
- depends on !BR2_powerpc_power8
- # Unsupported MIPS cores
- depends on !BR2_mips_interaptiv
- # gcc-4.8.x + binutils-2.25 is broken for MIPS
- depends on !((BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) && BR2_BINUTILS_VERSION_2_25_X)
- # Unsupported for MIPS R5
- depends on !BR2_MIPS_CPU_MIPS32R5 && !BR2_MIPS_CPU_MIPS64R5
- # Unsupported for MIPS R6
- depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6
- # musl ppc64 unsupported
- depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64el))
- # musl mips64 unsupported
- depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
- select BR2_GCC_NEEDS_MPC
- select BR2_GCC_SUPPORTS_GRAPHITE
- select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
- config BR2_GCC_VERSION_ARC
- bool "gcc arc (6.x)"
- # Only supported architecture
- depends on BR2_arc
- select BR2_GCC_NEEDS_MPC
- select BR2_TOOLCHAIN_GCC_AT_LEAST_6
- config BR2_GCC_VERSION_4_9_X
- bool "gcc 4.9.x"
- # Broken or unsupported architectures
- depends on !BR2_arc && !BR2_bfin
- # Broken or unsupported ARM cores
- depends on !BR2_cortex_a17
- # Unsupported MIPS cores
- depends on !BR2_mips_interaptiv
- # Unsupported for MIPS R5
- depends on !BR2_MIPS_CPU_MIPS32R5 && !BR2_MIPS_CPU_MIPS64R5
- # Unsupported for MIPS R6
- depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6
- # musl ppc64 unsupported
- depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64el))
- # musl mips64 unsupported
- depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
- # PR60102 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60102
- select BR2_GCC_NEEDS_MPC
- select BR2_GCC_SUPPORTS_GRAPHITE
- select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
- config BR2_GCC_VERSION_5_X
- bool "gcc 5.x"
- # Broken or unsupported architectures
- depends on !BR2_arc && !BR2_bfin
- # musl ppc64 unsupported
- depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64el))
- # Unsupported MIPS cores
- depends on !BR2_mips_interaptiv && !BR2_mips_m5100 && \
- !BR2_mips_m5101 && !BR2_mips_i6400 && !BR2_mips_p6600
- # musl mips64 unsupported
- depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
- select BR2_GCC_NEEDS_MPC
- select BR2_GCC_SUPPORTS_GRAPHITE
- select BR2_TOOLCHAIN_GCC_AT_LEAST_5
- config BR2_GCC_VERSION_6_X
- bool "gcc 6.x"
- # Broken or unsupported architectures
- depends on !BR2_arc
- # Unsupported MIPS cores
- depends on !BR2_mips_p6600
- select BR2_GCC_NEEDS_MPC
- select BR2_GCC_SUPPORTS_GRAPHITE
- select BR2_TOOLCHAIN_GCC_AT_LEAST_6
- endchoice
- # Indicates if GCC for architecture supports --with-{arch,cpu,..} to
- # set default CFLAGS, otherwise values will be used by toolchain
- # wrapper.
- config BR2_GCC_ARCH_HAS_CONFIGURABLE_DEFAULTS
- bool
- default y if !BR2_bfin
- config BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE
- bool
- default y
- config BR2_GCC_VERSION
- string
- default "4.7.4" if BR2_GCC_VERSION_4_7_X
- default "4.8.5" if BR2_GCC_VERSION_4_8_X
- default "4.9.4" if BR2_GCC_VERSION_4_9_X
- default "5.4.0" if BR2_GCC_VERSION_5_X
- default "6.2.0" if BR2_GCC_VERSION_6_X
- default "arc-2016.09-eng015" if BR2_GCC_VERSION_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.
- comment "Fortran support needs a toolchain w/ wchar"
- depends on BR2_TOOLCHAIN_HAS_LIBQUADMATH
- depends on !BR2_USE_WCHAR # libquadmath
- config BR2_TOOLCHAIN_BUILDROOT_FORTRAN
- bool "Enable Fortran support"
- # on architecture building libquadmath, wchar is required
- depends on !BR2_TOOLCHAIN_HAS_LIBQUADMATH || \
- (BR2_TOOLCHAIN_HAS_LIBQUADMATH && BR2_USE_WCHAR)
- select BR2_TOOLCHAIN_HAS_FORTRAN
- help
- Enable this option if you want your toolchain to support the
- Fortran language and you want Fortran libraries to be
- installed on your target system.
- 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_TOOLCHAIN_GCC_AT_LEAST_4_9
- 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.
|