diff options
author | Yann E. MORIN <yann.morin.1998@anciens.enib.fr> | 2010-03-26 20:46:37 +0100 |
---|---|---|
committer | Peter Korsgaard <jacmet@sunsite.dk> | 2010-03-31 10:53:12 +0200 |
commit | 26b44b2b0272e7f51415942c72328e9a3dbe400a (patch) | |
tree | 1f0d434000130434f36abd8b5330946dbca5cd0e | |
parent | 3b7aee23f2ab732f06b8a090ca002fb102d547ee (diff) | |
download | buildroot-novena-26b44b2b0272e7f51415942c72328e9a3dbe400a.tar.gz buildroot-novena-26b44b2b0272e7f51415942c72328e9a3dbe400a.zip |
toolchain: prepare for more than two alternatives
Lay down the path to add more than two toolchain kinds:
- check the type of toolchain as:
ifeq (toolchain_buildroot,y)
blabla buildroot-specific
else ifeq (toolchain_external,y)
blabla external-specific
endif
- prefer using positive checks, a-la:
ifeq (foo,y)
instead of:
ifneq (bar,y)
(where foo and bar are mutually exclusive)
- have the toolchain_buildroot case always appear first
- gettext is handled differently, because we want to add an option
only if not using the buildroot toolchain, hence we use ifneq.
Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
Acked-By: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-rw-r--r-- | Makefile | 6 | ||||
-rw-r--r-- | package/Makefile.in | 11 | ||||
-rw-r--r-- | package/gettext/gettext.mk | 2 |
3 files changed, 9 insertions, 10 deletions
@@ -199,7 +199,7 @@ PREFERRED_LIB_FLAGS:=--enable-static --enable-shared ############################################################## ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y) BASE_TARGETS:=uclibc-configured binutils cross_compiler uclibc-target-utils kernel-headers -else +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) BASE_TARGETS:=uclibc endif TARGETS:= @@ -301,7 +301,7 @@ include toolchain/kernel-headers/kernel-headers.mk include toolchain/mklibs/mklibs.mk include toolchain/sstrip/sstrip.mk include toolchain/uClibc/uclibc.mk -else +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) include toolchain/*/*.mk endif @@ -363,7 +363,7 @@ $(STAGING_DIR): ifeq ($(BR2_TOOLCHAIN_SYSROOT),y) @mkdir -p $(STAGING_DIR)/usr/lib else -ifneq ($(BR2_TOOLCHAIN_EXTERNAL),y) +ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y) @ln -snf . $(STAGING_DIR)/usr @mkdir -p $(STAGING_DIR)/usr/$(REAL_GNU_TARGET_NAME) @ln -snf ../lib $(STAGING_DIR)/usr/lib diff --git a/package/Makefile.in b/package/Makefile.in index 1e412a653..2bd364013 100644 --- a/package/Makefile.in +++ b/package/Makefile.in @@ -88,9 +88,8 @@ endif TARGET_CXXFLAGS=$(TARGET_CFLAGS) -# else it's an external toolchain ######################################################################### -else +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) TARGET_CFLAGS=$(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) --sysroot $(STAGING_DIR)/ TARGET_CXXFLAGS=$(TARGET_CFLAGS) TARGET_LDFLAGS=--sysroot $(STAGING_DIR)/ @@ -115,7 +114,7 @@ GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-linux REAL_GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)$(GNU_TARGET_SUFFIX) TARGET_CROSS=$(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)- KERNEL_CROSS=$(TARGET_CROSS) -else +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) TOOLCHAIN_EXTERNAL_PREFIX:=$(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PREFIX)) TOOLCHAIN_EXTERNAL_PATH:=$(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PATH)) TOOLCHAIN_DIR=$(BASE_DIR)/toolchain @@ -139,10 +138,10 @@ TARGET_NM=$(TARGET_CROSS)nm TARGET_RANLIB=$(TARGET_CROSS)ranlib TARGET_OBJCOPY=$(TARGET_CROSS)objcopy TARGET_OBJDUMP=$(TARGET_CROSS)objdump -ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) -TARGET_LDCONFIG=/sbin/ldconfig -else +ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y) TARGET_LDCONFIG=$(TARGET_CROSS)ldconfig +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) +TARGET_LDCONFIG=/sbin/ldconfig endif ifeq ($(BR2_STRIP_strip),y) STRIP_DISCARD_ALL:=--discard-all diff --git a/package/gettext/gettext.mk b/package/gettext/gettext.mk index dbc1f2cfa..81ab9debc 100644 --- a/package/gettext/gettext.mk +++ b/package/gettext/gettext.mk @@ -29,7 +29,7 @@ $(GETTEXT_DIR)/.unpacked: $(DL_DIR)/$(GETTEXT_SOURCE) $(CONFIG_UPDATE) $(GETTEXT_DIR)/build-aux touch $@ -ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y) +ifneq ($(BR2_TOOLCHAIN_BUILDROOT),y) IGNORE_EXTERNAL_GETTEXT:=--with-included-gettext endif |