From 9d56cca3be234fd0d591edcb6830565b6caf1d2f Mon Sep 17 00:00:00 2001 From: Abdoulaye Walsimou Gaye Date: Sun, 19 Dec 2010 23:23:35 +0100 Subject: Toolchain: eglibc: make disable of versioning optional Signed-off-by: Abdoulaye Walsimou Gaye --- kconfig/eglibc.kconfig | 16 +++++++++++++++- mk/eglibc.mk | 11 ++++++++--- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/kconfig/eglibc.kconfig b/kconfig/eglibc.kconfig index 6018452..0374756 100644 --- a/kconfig/eglibc.kconfig +++ b/kconfig/eglibc.kconfig @@ -4,7 +4,7 @@ # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or +# the Free Software Foundation, either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, @@ -22,6 +22,7 @@ # \author Abdoulaye Walsimou GAYE # \date May 2009 ################################################################################ + choice prompt "EGLIBC branch to checkout" help @@ -84,6 +85,19 @@ config EMBTK_EGLIBC_NEED_PATCH comment "------------------------------------" comment "----- EGLIBC options configuration" comment "------------------------------------" + +config EMBTK_EGLIBC_DISABLE_VERSIONING + bool "Build EGLIBC without compatibility code and symbol versioning" + depends on !EMBTK_EGLIBC_VERSION_2_10 && !EMBTK_EGLIBC_VERSION_2_9 + default y + help + EGLIBC supports building the library without compatibility code + and symbol versioning. + This feature allows reduction of EGLIBC's footprint by omitting + functionality that implements older APIs. + To build EGLIBC without compatibility code and symbol + versioning, answer yes here. + if EMBTK_EGLIBC_VERSION_2_12 source "kconfig/eglibc-kconfigs/eglibc-2.12.kconfig" endif diff --git a/mk/eglibc.mk b/mk/eglibc.mk index 00e2ab8..2c61bee 100644 --- a/mk/eglibc.mk +++ b/mk/eglibc.mk @@ -4,7 +4,7 @@ # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or +# the Free Software Foundation, either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, @@ -22,6 +22,7 @@ # \author Abdoulaye Walsimou GAYE # \date May 2009 ################################################################################ + EGLIBC_VERSION := $(subst ",,$(strip $(CONFIG_EMBTK_EGLIBC_VERSION_STRING))) EGLIBC_BRANCH := $(subst ",,$(strip $(CONFIG_EMBTK_EGLIBC_BRANCH_STRING))) EGLIBC_SVN_REVISION := $(CONFIG_EMBTK_EGLIBC_SVN_REVISION) @@ -39,6 +40,10 @@ else EGLIBC_FLOAT_TYPE := --with-fp=yes endif +# Versioning in eglibc +EGLIBC_VERSIONING_OPTION := \ + $(if $(CONFIG_EMBTK_EGLIBC_DISABLE_VERSIONING),--disable-versioning,) + OPTION_GROUPS_FILE = $(EMBTK_ROOT)/mk/eglibc/eglibc-$(EGLIBC_VERSION)-options.mk eglibc-headers_install: $(EGLIBC_HEADERS_BUILD_DIR)/.installed @@ -108,7 +113,7 @@ $(EGLIBC_HEADERS_BUILD_DIR)/.configured: --with-headers=$(SYSROOT)/usr/include \ --host=$(STRICT_GNU_TARGET) --build=$(HOST_BUILD) $(EGLIBC_FLOAT_TYPE) \ --disable-profile --without-gd --without-cvs --enable-add-ons \ - --enable-kernel="2.6.0" --disable-versioning \ + --enable-kernel="2.6.0" $(EGLIBC_VERSIONING_OPTION) \ --with-bugurl=$(EMBTK_BUGURL) @touch $@ @@ -132,7 +137,7 @@ $(EGLIBC_BUILD_DIR)/.configured: --with-headers=$(SYSROOT)/usr/include \ --host=$(STRICT_GNU_TARGET) --build=$(HOST_BUILD) $(EGLIBC_FLOAT_TYPE) \ --disable-profile --without-gd --without-cvs --enable-add-ons \ - --enable-kernel="2.6.0" --disable-versioning \ + --enable-kernel="2.6.0" $(EGLIBC_VERSIONING_OPTION) \ --with-bugurl=$(EMBTK_BUGURL) \ --with-pkgversion="EGLIBC from embtoolkit-$(EMBTK_VERSION)" @touch $@ -- cgit v1.2.3