From 8d29893893fe25461abef645bfd38bf2f49c59a4 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Sun, 30 Jun 2013 21:29:12 +0200 Subject: 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 Signed-off-by: Peter Korsgaard --- package/gcc/Config.in.host | 4 ++-- package/gcc/gcc-final/gcc-final.mk | 2 +- package/gcc/gcc-intermediate/gcc-intermediate.mk | 2 +- package/uclibc/Config.in | 4 ++++ 4 files changed, 8 insertions(+), 4 deletions(-) (limited to 'package') 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 -- cgit v1.2.3