8d29893893
Using the newly introduced 'eglibc' package, this commit enables the option of building a toolchain using the eglibc C library in the Buildroot toolchain backend. In details, this commit: * Creates a choice to select uClibc or eglibc in the Buildroot toolchain backend (in toolchain/toolchain-buildroot/Config.in), and removes the fact that the Buildroot toolchain backend forcefully enables uClibc (toolchain/Config.in). * Creates a BUILDROOT_LIBC variables, which points to the package implementing the C library (i.e either 'uclibc' or 'eglibc'). * Modifies the gcc-final and gcc-intermediate makefiles to use the BUILDROOT_LIBC variable instead of hardcoding the use of uclibc. * Ensures that TLS support is always enabled when building eglibc. [Peter: fix commit text to refer to BUILDROOT_LIBC] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
49 lines
1.2 KiB
Plaintext
49 lines
1.2 KiB
Plaintext
# Config entries for internal toolchain backend
|
|
|
|
if BR2_TOOLCHAIN_BUILDROOT
|
|
source "package/linux-headers/Config.in.host"
|
|
|
|
choice
|
|
prompt "C library"
|
|
|
|
config BR2_TOOLCHAIN_BUILDROOT_UCLIBC
|
|
bool "uClibc"
|
|
select BR2_TOOLCHAIN_USES_UCLIBC
|
|
help
|
|
This option selects uClibc as the C library for the
|
|
cross-compilation toolchain.
|
|
|
|
http://uclibc.org
|
|
|
|
config BR2_TOOLCHAIN_BUILDROOT_EGLIBC
|
|
bool "eglibc (experimental)"
|
|
depends on BR2_arm || BR2_armeb || BR2_aarch64 || \
|
|
BR2_i386 || BR2_mips || BR2_mipsel || \
|
|
BR2_mips64 || BR2_mips64el || BR2_powerpc || \
|
|
BR2_sh || BR2_sh64 || BR2_sparc || \
|
|
BR2_x86_64
|
|
select BR2_TOOLCHAIN_USES_GLIBC
|
|
# our eglibc.mk enables RPC support
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
help
|
|
This option selects eglibc as the C library for the
|
|
cross-compilation toolchain.
|
|
|
|
The eglibc support in the Buildroot toolchain backend is
|
|
very recent, and therefore marked experimental.
|
|
|
|
http://eglibc.org
|
|
|
|
endchoice
|
|
|
|
config BR2_TOOLCHAIN_BUILDROOT_LIBC
|
|
string
|
|
default "uclibc" if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
|
|
default "eglibc" if BR2_TOOLCHAIN_BUILDROOT_EGLIBC
|
|
|
|
source "package/uclibc/Config.in"
|
|
|
|
source "package/binutils/Config.in.host"
|
|
source "package/gcc/Config.in.host"
|
|
endif
|