kumquat-buildroot/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in
Arnout Vandecappelle (Essensium/Mind) 90932b407c toolchain: invert glibc <-> !static dependency
Currently, glibc depends on !BR2_STATIC_LIBS in all the toolchain
variants.

However, for some architectures, glibc is the only supported libc. In
commit 3b3105328e ("Config.in: only
allow BR2_STATIC_LIBS on supported libc/arch"), we implemented a fix
to avoid configurations were BR2_STATIC_LIBS=y with an architecture
already supported by glibc, because these configurations are
impossible. This commit 3b3105328e
prevents from selecting BR2_STATIC_LIBS=y when the C library used for
the internal toolchain backend is glibc.

However, it introduces a discrepency between how this topic is handled
for internal and external toolchains:

 - For internal toolchains, we prevent BR2_STATIC_LIBS=y if glibc is
   chosen.

 - For external toolchains, we allow BR2_STATIC_LIBS=y in all cases,
   and it's each glibc toolchain that has !BR2_STATIC_LIBS

This commit addresses this discrepency by preventing BR2_STATIC_LIBS=y
if glibc is chosen in all cases.

Thanks to this, we can remove the !BR2_STATIC_LIBS dependency on both
the glibc package, and all glibc external toolchains.

Fixes: https://bugs.busybox.net/show_bug.cgi?id=14256

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Thomas: update to master, fix the gen-bootlin-toolchains script, add
a comment in the static/shared choice to indicate that static is
supported only with uclibc or musl]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2022-07-27 11:11:19 +02:00

26 lines
1.0 KiB
Plaintext

comment "Linaro toolchains available for Cortex-A + EABIhf"
depends on BR2_armeb
depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF
config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
bool "Linaro armeb 2018.05"
depends on BR2_armeb
depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
depends on BR2_ARM_EABIHF
select BR2_TOOLCHAIN_EXTERNAL_GLIBC
select BR2_TOOLCHAIN_HAS_SSP
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
select BR2_TOOLCHAIN_HAS_OPENMP
select BR2_INSTALL_LIBSTDCPP
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_10
select BR2_TOOLCHAIN_GCC_AT_LEAST_7
help
Linaro toolchain for the ARM big endian architecture. It
uses Linaro GCC 2018.05 (based on gcc 7.3.1), Linaro GDB
2018.05 (based on GDB 8.1), glibc 2.25, Binutils 2018.05
(based on 2.28). It generates code that runs on all Cortex-A
profile devices, but tuned for the Cortex-A9. The code
generated is Thumb 2, with the hard floating point calling
convention, and uses the VFPv3-D16 FPU instructions.