5bd21f991f
This commit bumps ARC toolchain to arc-2017.09-rc1. The arc-2017.09 series is built on top of upstream GCC 7.1.1 and Binutils 2.29 so please expect all kinds of breakages related to GCC 7.x as we saw earlier with the move from 4.8 to 6.x :) Note patches for both GCC and Binutils were updated with copies from corresponding mainline versions, i.e. "package/gcc/7.2.0" and "package/binutils/2.29". Please note that it is a release candidate and it might contain some breakages, please don't use it for production builds. Signed-off-by: Evgeniy Didin <didin@synopsys.com> Cc: Alexey Brodkin <abrodkin@synopsys.com> Cc: arc-buildroot@synopsys.com Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> [Thomas: drop binutils patch related to the Blackfin architecture.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
167 lines
5.2 KiB
Plaintext
167 lines
5.2 KiB
Plaintext
comment "GCC Options"
|
|
|
|
choice
|
|
prompt "GCC compiler Version"
|
|
default BR2_GCC_VERSION_ARC if BR2_arc
|
|
default BR2_GCC_VERSION_OR1K if BR2_or1k
|
|
default BR2_GCC_VERSION_6_X
|
|
help
|
|
Select the version of gcc you wish to use.
|
|
|
|
config BR2_GCC_VERSION_ARC
|
|
bool "gcc arc (7.x)"
|
|
# Only supported architecture
|
|
depends on BR2_arc
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_7
|
|
|
|
config BR2_GCC_VERSION_OR1K
|
|
bool "gcc or1k (5.x)"
|
|
# Only supported architecture
|
|
depends on BR2_or1k
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
|
|
|
config BR2_GCC_VERSION_4_9_X
|
|
bool "gcc 4.9.x"
|
|
# Broken or unsupported architectures
|
|
depends on !BR2_arc && !BR2_bfin && !BR2_or1k
|
|
# Broken or unsupported ARM cores
|
|
depends on !BR2_cortex_a17 && !BR2_cortex_a17_a7
|
|
depends on !BR2_cortex_a72 && !BR2_cortex_a72_a53
|
|
# 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 microblaze unsupported
|
|
depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_microblazeel || BR2_microblazebe))
|
|
# musl ppc64 unsupported
|
|
depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
|
|
# musl mips64 unsupported
|
|
depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
|
|
# glibc >= 2.26 needs gcc >= 6.2
|
|
depends on !(BR2_TOOLCHAIN_USES_GLIBC && BR2_powerpc64le)
|
|
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 && !BR2_or1k
|
|
# Broken or unsupported ARM cores
|
|
depends on !BR2_cortex_a57_a53 && !BR2_cortex_a72_a53
|
|
# musl ppc64 unsupported
|
|
depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
|
|
# Unsupported MIPS cores
|
|
depends on !BR2_mips_interaptiv && !BR2_mips_m5150 && !BR2_mips_i6400
|
|
# musl mips64 unsupported
|
|
depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
|
|
# glibc >= 2.26 needs gcc >= 6.2
|
|
depends on !(BR2_TOOLCHAIN_USES_GLIBC && BR2_powerpc64le)
|
|
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
|
|
depends on !BR2_or1k
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_6
|
|
|
|
config BR2_GCC_VERSION_7_X
|
|
bool "gcc 7.x"
|
|
# Broken or unsupported architectures
|
|
depends on !BR2_arc
|
|
depends on !BR2_or1k
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_7
|
|
|
|
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.9.4" if BR2_GCC_VERSION_4_9_X
|
|
default "5.4.0" if BR2_GCC_VERSION_5_X
|
|
default "6.4.0" if BR2_GCC_VERSION_6_X
|
|
default "7.2.0" if BR2_GCC_VERSION_7_X
|
|
default "arc-2017.09-rc1" if BR2_GCC_VERSION_ARC
|
|
default "musl-5.4.0" if BR2_GCC_VERSION_OR1K
|
|
|
|
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_TOOLCHAIN_GCC_AT_LEAST_5
|
|
help
|
|
This option enables the graphite optimizations in the
|
|
compiler.
|
|
|
|
comment "graphite support needs gcc >= 5.x"
|
|
depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_5
|