diff options
author | Imre Kaloz <kaloz@openwrt.org> | 2011-02-25 16:52:25 +0000 |
---|---|---|
committer | Imre Kaloz <kaloz@openwrt.org> | 2011-02-25 16:52:25 +0000 |
commit | 7dd2d2cbd3e516107edb4cf20469206b93a1edec (patch) | |
tree | 53c32ea18521043aae12d81eba831be518db0e09 | |
parent | c4b79f390411d319afde53231f6b3c5a01e28142 (diff) | |
download | master-187ad058-7dd2d2cbd3e516107edb4cf20469206b93a1edec.tar.gz master-187ad058-7dd2d2cbd3e516107edb4cf20469206b93a1edec.tar.bz2 master-187ad058-7dd2d2cbd3e516107edb4cf20469206b93a1edec.zip |
We use different toolchain directories for different
ARM archs, so we should set the default arch of gcc
to reflect this.
This enables EABI support for armv4 CPUs.
Signed-off-by: Jochen Friedrich <jochen@scram.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25705 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | rules.mk | 18 | ||||
-rw-r--r-- | toolchain/Config.in | 2 | ||||
-rw-r--r-- | toolchain/gcc/common.mk | 4 |
3 files changed, 10 insertions, 14 deletions
@@ -54,21 +54,15 @@ endif HOST_FPIC:=-fPIC ARCH_SUFFIX:= +GCC_ARCH:= + +ifneq ($(filter -march=armv%,$(TARGET_OPTIMIZATION)),) + ARCH_SUFFIX:=_$(patsubst -march=arm%,%,$(filter -march=armv%,$(TARGET_OPTIMIZATION))) + GCC_ARCH:=$(patsubst -march=%,%,$(filter -march=armv%,$(TARGET_OPTIMIZATION))) +endif ifneq ($(findstring -mips32r2,$(TARGET_OPTIMIZATION)),) ARCH_SUFFIX:=_r2 endif -ifneq ($(findstring -march=armv4,$(TARGET_OPTIMIZATION)),) - ARCH_SUFFIX:=_v4 -endif -ifneq ($(findstring -march=armv4t,$(TARGET_OPTIMIZATION)),) - ARCH_SUFFIX:=_v4t -endif -ifneq ($(findstring -march=armv5t,$(TARGET_OPTIMIZATION)),) - ARCH_SUFFIX:=_v5t -endif -ifneq ($(findstring -march=armv5te,$(TARGET_OPTIMIZATION)),) - ARCH_SUFFIX:=_v5te -endif ifdef CONFIG_HAS_SPE_FPU TARGET_SUFFIX:=$(TARGET_SUFFIX)spe endif diff --git a/toolchain/Config.in b/toolchain/Config.in index 318847f736..bc9e6df06d 100644 --- a/toolchain/Config.in +++ b/toolchain/Config.in @@ -90,8 +90,6 @@ config EABI_SUPPORT bool depends arm||armeb prompt "Enable EABI support" if TOOLCHAINOPTS - default n if TARGET_gemini - default n if TARGET_cns21xx default y help Enable ARM EABI support diff --git a/toolchain/gcc/common.mk b/toolchain/gcc/common.mk index 0f22e41021..888cf7a1e5 100644 --- a/toolchain/gcc/common.mk +++ b/toolchain/gcc/common.mk @@ -167,6 +167,10 @@ ifdef CONFIG_powerpc TARGET_CFLAGS := $(patsubst -Os,-O2,$(TARGET_CFLAGS)) endif +ifneq ($(GCC_ARCH),) + GCC_CONFIGURE+= --with-arch=$(GCC_ARCH) +endif + GCC_MAKE:= \ export SHELL="$(BASH)"; \ $(MAKE) $(TOOLCHAIN_JOBS) \ |