summaryrefslogtreecommitdiffstats
path: root/package
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2013-06-30 21:29:12 +0200
committerPeter Korsgaard <jacmet@sunsite.dk>2013-07-04 11:08:27 +0200
commit8d29893893fe25461abef645bfd38bf2f49c59a4 (patch)
treebe15b85d95cfecbda3f0ca34736aed8775b8a7dd /package
parent413ecfa80faf29b55a94b666c97efea0dc8162d9 (diff)
downloadbuildroot-novena-8d29893893fe25461abef645bfd38bf2f49c59a4.tar.gz
buildroot-novena-8d29893893fe25461abef645bfd38bf2f49c59a4.zip
eglibc: enable support in the Buildroot toolchain backend
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>
Diffstat (limited to 'package')
-rw-r--r--package/gcc/Config.in.host4
-rw-r--r--package/gcc/gcc-final/gcc-final.mk2
-rw-r--r--package/gcc/gcc-intermediate/gcc-intermediate.mk2
-rw-r--r--package/uclibc/Config.in4
4 files changed, 8 insertions, 4 deletions
diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index 7ecf2fb11..0e26a8018 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -114,9 +114,9 @@ config BR2_GCC_SHARED_LIBGCC
Build/install a shared libgcc library
config BR2_GCC_ENABLE_TLS
- bool "Enable compiler tls support"
+ bool "Enable compiler tls support" if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
default y
- depends on BR2_PTHREADS_NATIVE
+ depends on BR2_PTHREADS_NATIVE || BR2_TOOLCHAIN_BUILDROOT_EGLIBC
help
Enable the compiler to generate code for accessing
thread local storage variables
diff --git a/package/gcc/gcc-final/gcc-final.mk b/package/gcc/gcc-final/gcc-final.mk
index 998c928f6..f99f1a378 100644
--- a/package/gcc/gcc-final/gcc-final.mk
+++ b/package/gcc/gcc-final/gcc-final.mk
@@ -10,7 +10,7 @@ GCC_FINAL_SOURCE = $(GCC_SOURCE)
HOST_GCC_FINAL_DEPENDENCIES = \
$(HOST_GCC_COMMON_DEPENDENCIES) \
- uclibc
+ $(BUILDROOT_LIBC)
HOST_GCC_FINAL_EXTRACT_CMDS = $(HOST_GCC_EXTRACT_CMDS)
diff --git a/package/gcc/gcc-intermediate/gcc-intermediate.mk b/package/gcc/gcc-intermediate/gcc-intermediate.mk
index 3a7167196..546000097 100644
--- a/package/gcc/gcc-intermediate/gcc-intermediate.mk
+++ b/package/gcc/gcc-intermediate/gcc-intermediate.mk
@@ -10,7 +10,7 @@ GCC_INTERMEDIATE_SOURCE = $(GCC_SOURCE)
HOST_GCC_INTERMEDIATE_DEPENDENCIES = \
$(HOST_GCC_COMMON_DEPENDENCIES) \
- uclibc-configure
+ $(BUILDROOT_LIBC)-configure
HOST_GCC_INTERMEDIATE_EXTRACT_CMDS = $(HOST_GCC_EXTRACT_CMDS)
diff --git a/package/uclibc/Config.in b/package/uclibc/Config.in
index 410326bf5..f309243c0 100644
--- a/package/uclibc/Config.in
+++ b/package/uclibc/Config.in
@@ -1,3 +1,5 @@
+if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
+
comment "uClibc Options"
choice
@@ -241,3 +243,5 @@ config BR2_UCLIBC_X86_TYPE
default PENTIUMIII if BR2_x86_pentium3
default PENTIUM4 if BR2_x86_pentium4 || BR2_x86_pentium_m || \
BR2_x86_nocona || BR2_x86_core2
+
+endif # BR2_TOOLCHAIN_BUILDROOT_UCLIBC