diff options
Diffstat (limited to 'toolchain')
14 files changed, 52 insertions, 15 deletions
diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in index 25ab667927..9668f8d41a 100644 --- a/toolchain/toolchain-buildroot/Config.in +++ b/toolchain/toolchain-buildroot/Config.in @@ -52,6 +52,7 @@ config BR2_TOOLCHAIN_BUILDROOT_GLIBC depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 || !BR2_powerpc64le + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 || !BR2_MIPS_NAN_2008 depends on !BR2_powerpc_SPE select BR2_TOOLCHAIN_USES_GLIBC # our glibc.mk enables RPC support @@ -71,12 +72,17 @@ comment "glibc on powerpc64le needs a toolchain w/ headers >= 3.10" depends on BR2_powerpc64le depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 +# Support for MIPS NAN2008 needs headers >= 4.5 +comment "glibc on MIPS w/ NAN2008 needs a toolchain w/ headers >= 4.5" + depends on BR2_MIPS_NAN_2008 + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5 + config BR2_TOOLCHAIN_BUILDROOT_MUSL bool "musl" - depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || \ - BR2_microblaze || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \ - BR2_sh || BR2_x86_64 + depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || \ + BR2_microblaze || BR2_mips || BR2_mipsel || BR2_mips64 || \ + BR2_mips64el || BR2_or1k || BR2_powerpc || BR2_powerpc64 || \ + BR2_powerpc64le || BR2_sh || BR2_x86_64 depends on !BR2_powerpc_SPE # not supported, build breaks # sh2 nommu is supported by musl, but we don't have support # for it in Buildroot. diff --git a/toolchain/toolchain-common.in b/toolchain/toolchain-common.in index d87d4d7657..d743c637ce 100644 --- a/toolchain/toolchain-common.in +++ b/toolchain/toolchain-common.in @@ -253,10 +253,15 @@ config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 bool select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 + # This order guarantees that the highest version is set, as kconfig # stops affecting a value on the first matching default. config BR2_TOOLCHAIN_HEADERS_AT_LEAST string + default "4.14" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 default "4.13" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 default "4.12" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 default "4.11" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 @@ -351,10 +356,6 @@ config BR2_TOOLCHAIN_HAS_MNAN_OPTION bool default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 -config BR2_TOOLCHAIN_HAS_MFPXX_OPTION - bool - default y if BR2_TOOLCHAIN_GCC_AT_LEAST_5 - config BR2_TOOLCHAIN_HAS_SYNC_1 bool default y diff --git a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in index e29c4dcb87..8b2eab0ad2 100644 --- a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in +++ b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in @@ -1,6 +1,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS bool "Codescape IMG GNU Linux Toolchain 2016.05" depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_MIPS_CPU_MIPS32R6 || (BR2_MIPS_CPU_MIPS64R6 && !BR2_MIPS_SOFT_FLOAT) select BR2_TOOLCHAIN_EXTERNAL_GLIBC diff --git a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in index efe6f8527e..db191fd1be 100644 --- a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in +++ b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in @@ -1,6 +1,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS bool "Codescape MTI GNU Linux Toolchain 2016.05" depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_MIPS_CPU_MIPS32R2 || (BR2_MIPS_CPU_MIPS64R2 && !BR2_MIPS_SOFT_FLOAT) || \ BR2_MIPS_CPU_MIPS32R5 || (BR2_MIPS_CPU_MIPS64R5 && !BR2_MIPS_SOFT_FLOAT) diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in index 66a032e9ac..24cbcffa29 100644 --- a/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in @@ -1,6 +1,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64 bool "CodeSourcery AArch64 2014.11" depends on BR2_aarch64 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5 # a57/a53 and a72/a53 appeared in gcc-6 or were broken before depends on !BR2_cortex_a57_a53 && !BR2_cortex_a72_a53 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-amd64/Config.in b/toolchain/toolchain-external/toolchain-external-codesourcery-amd64/Config.in index 101e227af9..50c5a20019 100644 --- a/toolchain/toolchain-external/toolchain-external-codesourcery-amd64/Config.in +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-amd64/Config.in @@ -1,6 +1,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64 bool "Sourcery CodeBench AMD64 2016.11" depends on BR2_x86_64 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on !BR2_STATIC_LIBS depends on BR2_x86_jaguar || BR2_x86_steamroller diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in b/toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in index e1a7891007..bdbe2acaea 100644 --- a/toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in @@ -1,14 +1,11 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM bool "Sourcery CodeBench ARM 2014.05" depends on BR2_arm - # a15/a7 appeared in gcc-4.9, a17/a7 in gcc-5, a57/a53 and a72/a53 - # in gcc-6, or they each were broken earlier than that. - depends on !BR2_cortex_a15_a7 && !BR2_cortex_a17_a7 - depends on !BR2_cortex_a57_53 && !BR2_cortex_a72_53 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_ARM_EABI # Unsupported ARM cores - depends on !BR2_cortex_a12 && !BR2_cortex_a17 && !BR2_ARM_CPU_ARMV8 + depends on !BR2_cortex_a12 && !BR2_cortex_a17 && !BR2_ARM_CPU_ARMV8A depends on !BR2_STATIC_LIBS select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_SSP @@ -35,5 +32,6 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM comment "Sourcery CodeBench toolchains available for the EABI ABI" depends on BR2_arm + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 depends on !BR2_ARM_EABI depends on !BR2_STATIC_LIBS diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in b/toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in index 6a13ae6cd6..734f0e4c7c 100644 --- a/toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in @@ -2,6 +2,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS bool "Sourcery CodeBench MIPS 2016.05" depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el depends on BR2_MIPS_CPU_MIPS32R2 || BR2_MIPS_CPU_MIPS64R2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6 # Unsupported MIPS cores depends on !BR2_mips_interaptiv depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" @@ -89,5 +90,6 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS Select BR2_SOFT_FLOAT comment "Sourcery CodeBench toolchains are only available for MIPS/MIPS64 o32 and n64" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6 depends on BR2_MIPS_NABI32 depends on !BR2_STATIC_LIBS diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in b/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in index 341bc2ab44..7563995eb6 100644 --- a/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in @@ -1,6 +1,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII bool "Sourcery CodeBench Nios-II 2017.05" depends on BR2_nios2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on !BR2_STATIC_LIBS select BR2_TOOLCHAIN_EXTERNAL_GLIBC diff --git a/toolchain/toolchain-external/toolchain-external-custom/Config.in.options b/toolchain/toolchain-external/toolchain-external-custom/Config.in.options index a28534080d..e35ef8784d 100644 --- a/toolchain/toolchain-external/toolchain-external-custom/Config.in.options +++ b/toolchain/toolchain-external/toolchain-external-custom/Config.in.options @@ -18,6 +18,11 @@ config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX choice bool "External toolchain gcc version" + default BR2_TOOLCHAIN_EXTERNAL_GCC_7 if BR2_ARCH_NEEDS_GCC_AT_LEAST_7 + default BR2_TOOLCHAIN_EXTERNAL_GCC_6 if BR2_ARCH_NEEDS_GCC_AT_LEAST_6 + default BR2_TOOLCHAIN_EXTERNAL_GCC_5 if BR2_ARCH_NEEDS_GCC_AT_LEAST_5 + default BR2_TOOLCHAIN_EXTERNAL_GCC_4_9 if BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 + default BR2_TOOLCHAIN_EXTERNAL_GCC_4_8 if BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 default BR2_TOOLCHAIN_EXTERNAL_GCC_4_3 help Set to the gcc version that is used by your external @@ -29,42 +34,52 @@ config BR2_TOOLCHAIN_EXTERNAL_GCC_7 config BR2_TOOLCHAIN_EXTERNAL_GCC_6 bool "6.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 select BR2_TOOLCHAIN_GCC_AT_LEAST_6 config BR2_TOOLCHAIN_EXTERNAL_GCC_5 bool "5.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6 select BR2_TOOLCHAIN_GCC_AT_LEAST_5 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_9 bool "4.9.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_8 bool "4.8.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_7 bool "4.7.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_6 bool "4.6.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_5 bool "4.5.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_4 bool "4.4.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_4 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_3 bool "4.3.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3 config BR2_TOOLCHAIN_EXTERNAL_GCC_OLD bool "older" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 help Use this option if your GCC version is older than any of the above. @@ -93,6 +108,10 @@ choice m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14 + bool "4.14.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 + config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_13 bool "4.13.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in index 5f66f56662..0a9e60a371 100644 --- a/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in @@ -1,6 +1,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64 bool "Linaro AArch64 2017.08" depends on BR2_aarch64 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on !BR2_STATIC_LIBS select BR2_TOOLCHAIN_EXTERNAL_GLIBC diff --git a/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in index fd4e03b2bc..d665b99874 100644 --- a/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in +++ b/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in @@ -1,12 +1,14 @@ comment "Linaro toolchains available for Cortex-A + EABIhf" depends on BR2_arm + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF depends on !BR2_STATIC_LIBS config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM bool "Linaro ARM 2017.08" depends on BR2_arm - depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 + depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_ARM_EABIHF depends on !BR2_STATIC_LIBS diff --git a/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in index 5fb7eb5c1d..3c45a610c5 100644 --- a/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in +++ b/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in @@ -1,12 +1,14 @@ comment "Linaro toolchains available for Cortex-A + EABIhf" depends on BR2_armeb + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF depends on !BR2_STATIC_LIBS config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB bool "Linaro armeb 2017.08" depends on BR2_armeb - depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 + depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_ARM_EABIHF depends on !BR2_STATIC_LIBS diff --git a/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in b/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in index f438ea765d..8e4344a83d 100644 --- a/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in +++ b/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in @@ -1,6 +1,7 @@ config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC bool "Synopsys ARC 2016.09 toolchain" depends on BR2_arc + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 depends on BR2_HOSTARCH = "x86_64" select BR2_TOOLCHAIN_EXTERNAL_UCLIBC select BR2_INSTALL_LIBSTDCPP |