summaryrefslogtreecommitdiffstats
path: root/toolchain/binutils
diff options
context:
space:
mode:
authorjk <jk@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-04-12 23:14:42 +0000
committerjk <jk@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-04-12 23:14:42 +0000
commit7e4be8edea219e2e688c2557961b1603bb71a7c2 (patch)
treeadccbc87893b645052bf0627516313616a982ce5 /toolchain/binutils
parentf3ad2585b310d3629e6990b372c08aa551f295d5 (diff)
[toolchain] provide a cleaner way to specify a biarch toolchain build
Currently, to build a biarch toolchain, we need to explicitly give options to the binutils and gcc configure commands: CONFIG_EXTRA_BINUTILS_CONFIG_OPTIONS="--enable-targets=powerpc64-linux-uclibc" CONFIG_EXTRA_GCC_CONFIG_OPTIONS="--enable-biarch --enable-targets=powerpc64-linux-uclibc" This change replaces the command line options with an 'extra arch' configure option: CONFIG_EXTRA_TARGET_ARCH=y CONFIG_EXTRA_TARGET_ARCH_NAME="powerpc64" And a way to invoke this extra arch on the compiler command-line: CONFIG_EXTRA_TARGET_ARCH_OPTS="-m64" In this case, this results in an extra compiler: 'powerpc64-linux-uclibc-gcc', which invokes 'powerpc-linux-uclibc-gcc -m64' This is a more standard way of building biarch toolchains, and allows the packages to not have to care about how to invoke the 64-bit compiler. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10802 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/binutils')
-rw-r--r--toolchain/binutils/Makefile3
1 files changed, 3 insertions, 0 deletions
diff --git a/toolchain/binutils/Makefile b/toolchain/binutils/Makefile
index b3161b315..8682fa596 100644
--- a/toolchain/binutils/Makefile
+++ b/toolchain/binutils/Makefile
@@ -24,6 +24,8 @@ BUILD_DIR_HOST:=$(BUILD_DIR_TOOLCHAIN)
include $(INCLUDE_DIR)/host-build.mk
+EXTRA_TARGET=$(if $(CONFIG_EXTRA_TARGET_ARCH),--enable-targets=$(call qstrip,$(CONFIG_EXTRA_TARGET_ARCH_NAME))-linux-uclibc)
+
define Build/Configure
$(CP) $(SCRIPT_DIR)/config.{guess,sub} $(PKG_BUILD_DIR)/
(cd $(PKG_BUILD_DIR); \
@@ -34,6 +36,7 @@ define Build/Configure
--target=$(REAL_GNU_TARGET_NAME) \
--disable-werror \
--disable-nls \
+ $(EXTRA_TARGET) \
$(SOFT_FLOAT_CONFIG_OPTION) \
$(call qstrip,$(CONFIG_EXTRA_BINUTILS_CONFIG_OPTIONS)) \
);