summaryrefslogtreecommitdiffstats
path: root/toolchain/eglibc
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/eglibc')
-rw-r--r--toolchain/eglibc/Config.in15
-rw-r--r--toolchain/eglibc/Config.version17
-rw-r--r--toolchain/eglibc/common.mk5
-rw-r--r--toolchain/eglibc/patches/2.17/200-add-dl-search-paths.patch14
4 files changed, 44 insertions, 7 deletions
diff --git a/toolchain/eglibc/Config.in b/toolchain/eglibc/Config.in
index 2e3b73af7..791033662 100644
--- a/toolchain/eglibc/Config.in
+++ b/toolchain/eglibc/Config.in
@@ -1,17 +1,21 @@
choice
prompt "eglibc version"
depends on TOOLCHAINOPTS && USE_EGLIBC
- default EGLIBC_VERSION_2_15
+ default EGLIBC_USE_VERSION_2_15
help
Select the version of eglibc you wish to use.
- config EGLIBC_VERSION_2_15
+ config EGLIBC_USE_VERSION_2_15
bool "eglibc 2.15"
- depends !GCC_VERSION_LLVM
+ select EGLIBC_VERSION_2_15
- config EGLIBC_VERSION_2_16
+ config EGLIBC_USE_VERSION_2_16
bool "eglibc 2.16"
- depends !GCC_VERSION_LLVM
+ select EGLIBC_VERSION_2_16
+
+ config EGLIBC_USE_VERSION_2_17
+ bool "eglibc 2.17"
+ select EGLIBC_VERSION_2_17
endchoice
@@ -20,6 +24,7 @@ config EGLIBC_REVISION
depends on TOOLCHAINOPTS && USE_EGLIBC
default "18909" if EGLIBC_VERSION_2_15
default "21110" if EGLIBC_VERSION_2_16
+ default "22243" if EGLIBC_VERSION_2_17
default ""
menu "eglibc configuration"
diff --git a/toolchain/eglibc/Config.version b/toolchain/eglibc/Config.version
index 496b90bf6..a383bb211 100644
--- a/toolchain/eglibc/Config.version
+++ b/toolchain/eglibc/Config.version
@@ -1,6 +1,19 @@
+if USE_EGLIBC
+
config EGLIBC_VERSION
string
- depends on USE_EGLIBC
default "2.15" if EGLIBC_VERSION_2_15
default "2.16" if EGLIBC_VERSION_2_16
- default "2.15"
+ default "2.17" if EGLIBC_VERSION_2_17
+
+config EGLIBC_VERSION_2_15
+ default y if !TOOLCHAINOPTS
+ bool
+
+config EGLIBC_VERSION_2_16
+ bool
+
+config EGLIBC_VERSION_2_17
+ bool
+
+endif
diff --git a/toolchain/eglibc/common.mk b/toolchain/eglibc/common.mk
index 5c8dc117e..483f57db8 100644
--- a/toolchain/eglibc/common.mk
+++ b/toolchain/eglibc/common.mk
@@ -21,6 +21,9 @@ endif
ifneq ($(CONFIG_EGLIBC_VERSION_2_16),)
PKG_SOURCE_URL:=svn://svn.eglibc.org/branches/eglibc-2_16
endif
+ifneq ($(CONFIG_EGLIBC_VERSION_2_17),)
+ PKG_SOURCE_URL:=svn://svn.eglibc.org/branches/eglibc-2_17
+endif
PATCH_DIR:=$(PATH_PREFIX)/patches/$(PKG_VERSION)
@@ -80,7 +83,9 @@ define Host/Prepare
$(call Host/Prepare/Default)
ln -snf $(PKG_SOURCE_SUBDIR) $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME)
$(SED) 's,y,n,' $(HOST_BUILD_DIR)/libc/option-groups.defaults
+ifneq ($(CONFIG_EGLIBC_VERSION_2_17),y)
ln -sf ../ports $(HOST_BUILD_DIR)/libc/
+endif
endef
define Host/Clean
diff --git a/toolchain/eglibc/patches/2.17/200-add-dl-search-paths.patch b/toolchain/eglibc/patches/2.17/200-add-dl-search-paths.patch
new file mode 100644
index 000000000..70e7e604d
--- /dev/null
+++ b/toolchain/eglibc/patches/2.17/200-add-dl-search-paths.patch
@@ -0,0 +1,14 @@
+add /usr/lib to default search path for the dynamic linker
+
+--- a/libc/Makeconfig
++++ b/libc/Makeconfig
+@@ -539,6 +539,9 @@
+ default-rpath = $(libdir)
+ endif
+
++# Add /usr/lib to default search path for the dynamic linker
++user-defined-trusted-dirs := /usr/lib
++
+ ifndef link-extra-libs
+ link-extra-libs = $(LDLIBS-$(@F))
+ link-extra-libs-static = $(link-extra-libs)