8477c41244
While testing Buildroot on a Cortex-A5 that doesn't provide NEON, we found out that a system generated with the ARM toolchain from Arm didn't boot. It turns out that this ARM toolchain is built with: --with-arch=armv7-a --with-fpu=neon --with-float=hard --with-mode=thumb So, it uses NEON as its FPU, which means it can only work on CPU cores that have NEON support. This commit adds the appropriate dependency to the toolchain-external-arm-arm package, and adjusts the Config.in help text accordingly. While at it, it also drops the part of the Config.in help text that says the code is tuned for Cortex-A9, as it is not the case: it was the case for the Linaro toolchain (built with --with-tune=cortex-a9), but not for the ARM toolchain, for which no specific --with-tune is passed. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com> Cc: Romain Naour <romain.naour@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
33 lines
1.1 KiB
Plaintext
33 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
|
|
depends on !BR2_STATIC_LIBS
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_ARM_ARM
|
|
bool "Arm ARM 2019.12"
|
|
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"
|
|
depends on BR2_ARM_EABIHF
|
|
depends on !BR2_STATIC_LIBS
|
|
select BR2_TOOLCHAIN_EXTERNAL_GLIBC
|
|
select BR2_TOOLCHAIN_HAS_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_9
|
|
select BR2_TOOLCHAIN_HAS_FORTRAN
|
|
select BR2_TOOLCHAIN_HAS_OPENMP
|
|
help
|
|
Arm toolchain for the ARM architecture. It uses GCC 9.2.1,
|
|
GDB 8.3.0, glibc 2.30, Binutils 2.33.1. 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
|