Previously, it was possible to select an external toolchain that did not support the GCC arch tuning the user had selected. This is problematic because it can lead to confusing error messages during builds [0]. Now, external toolchain selections will be filtered to only those that support the required GCC version specified by the target arch tuning. Note: this patch does not touch the Bootlin toolchain config file as it is generated by a script. Additional note: there is "soft" support for toolchains prior to GCC 4.8 but there are no accompanying BR2_ARCH_NEEDS_GCC_AT_LEAST_X symbols. Instead of adding those, just use BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 which is the minimum GCC version with claimed support [1]. [0]: https://lists.buildroot.org/pipermail/buildroot/2023-August/671877.html [1]: https://buildroot.org/downloads/manual/manual.html#requirement-mandatory Signed-off-by: Vincent Fazio <vfazio@gmail.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
31 lines
1.1 KiB
Plaintext
31 lines
1.1 KiB
Plaintext
comment "Arm toolchains available for Cortex-A with NEON + EABIhf"
|
|
depends on BR2_arm
|
|
depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF || !BR2_ARM_CPU_HAS_NEON
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_ARM_ARM
|
|
bool "Arm ARM 12.2.rel1"
|
|
depends on BR2_arm
|
|
depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A
|
|
depends on BR2_ARM_CPU_HAS_NEON
|
|
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "aarch64"
|
|
depends on BR2_ARM_EABIHF
|
|
depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
|
select BR2_TOOLCHAIN_EXTERNAL_GLIBC
|
|
select BR2_TOOLCHAIN_HAS_SSP
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_12
|
|
select BR2_TOOLCHAIN_HAS_FORTRAN
|
|
select BR2_TOOLCHAIN_HAS_OPENMP
|
|
help
|
|
Arm toolchain for the ARM architecture. It uses GCC 12.2,
|
|
GDB 12, glibc 2.36, Binutils 2.39. It generates code
|
|
that runs on all Cortex-A profile devices. The code
|
|
generated uses the hard floating point calling convention,
|
|
and uses the NEON FPU instructions.
|
|
|
|
This is the same toolchain that was previously distributed by
|
|
Linaro.
|
|
|
|
https://developer.arm.com/open-source/gnu-toolchain
|