aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorImre Kaloz <kaloz@openwrt.org>2007-12-28 18:06:47 +0000
committerImre Kaloz <kaloz@openwrt.org>2007-12-28 18:06:47 +0000
commit915e6b89b50eb2edac7e905039ec0592d6fc8723 (patch)
treea744d5c73dbb1964ab5dbdfffe9c322af467d86c
parent80475bb5737ae0f7c2ace9628b29e43d3ab22ed1 (diff)
downloadupstream-915e6b89b50eb2edac7e905039ec0592d6fc8723.tar.gz
upstream-915e6b89b50eb2edac7e905039ec0592d6fc8723.tar.bz2
upstream-915e6b89b50eb2edac7e905039ec0592d6fc8723.zip
fixup softfloat handling
SVN-Revision: 10003
-rw-r--r--rules.mk7
-rw-r--r--toolchain/binutils/Makefile1
-rw-r--r--toolchain/gcc/Makefile2
-rw-r--r--toolchain/uClibc/Makefile2
4 files changed, 11 insertions, 1 deletions
diff --git a/rules.mk b/rules.mk
index 2f528162f4..7ac39b123e 100644
--- a/rules.mk
+++ b/rules.mk
@@ -61,6 +61,13 @@ TARGET_CFLAGS:=$(TARGET_OPTIMIZATION) -fhonour-copts
TARGET_CPPFLAGS:=-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include
TARGET_LDFLAGS:=-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib
+ifeq ($(CONFIG_SOFT_FLOAT),y)
+SOFT_FLOAT_CONFIG_OPTION:=--with-float=soft
+TARGET_CFLAGS+=-msoft-float
+else
+SOFT_FLOAT_CONFIG_OPTION:=
+endif
+
export PATH:=$(TARGET_PATH)
export STAGING_DIR
export GCC_HONOUR_COPTS:=0
diff --git a/toolchain/binutils/Makefile b/toolchain/binutils/Makefile
index 2ca79d3eaf..d31742125e 100644
--- a/toolchain/binutils/Makefile
+++ b/toolchain/binutils/Makefile
@@ -33,6 +33,7 @@ define Build/Configure
--target=$(REAL_GNU_TARGET_NAME) \
--disable-werror \
--disable-nls \
+ $(SOFT_FLOAT_CONFIG_OPTION) \
$(call qstrip,$(CONFIG_EXTRA_BINUTILS_CONFIG_OPTIONS)) \
);
endef
diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile
index 59f8372702..a1d1baa400 100644
--- a/toolchain/gcc/Makefile
+++ b/toolchain/gcc/Makefile
@@ -60,6 +60,7 @@ define Stage1/Configure
--disable-nls \
--disable-libmudflap \
--disable-multilib \
+ $(SOFT_FLOAT_CONFIG_OPTION) \
$(call qstrip,$(CONFIG_EXTRA_GCC_CONFIG_OPTIONS)) \
);
endef
@@ -92,6 +93,7 @@ define Stage2/Configure
--disable-nls \
--disable-libmudflap \
--disable-multilib \
+ $(SOFT_FLOAT_CONFIG_OPTION) \
$(call qstrip,$(CONFIG_EXTRA_GCC_CONFIG_OPTIONS)) \
);
endef
diff --git a/toolchain/uClibc/Makefile b/toolchain/uClibc/Makefile
index 08f267001b..5774d245bf 100644
--- a/toolchain/uClibc/Makefile
+++ b/toolchain/uClibc/Makefile
@@ -44,7 +44,7 @@ define Build/Prepare
$(call Build/Prepare/Default)
$(CP) config/$(ARCH)$(if $(wildcard config/$(ARCH).$(BOARD)),$(BOARD)) $(PKG_BUILD_DIR)/.config
$(SED) 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"$(LINUX_HEADERS_DIR)\",g' \
- -e 's,.*HAS_FPU.*,HAS_FPU=$(if $(CONFIG_SOFT_FLOAT),n\nUCLIBC_HAS_FLOATS=y\nUCLIBC_HAS_SOFT_FLOAT=y,n),g' \
+ -e 's,.*HAS_FPU.*,HAS_FPU=$(if $(CONFIG_SOFT_FLOAT),n\nUCLIBC_HAS_FLOATS=y\nUCLIBC_HAS_SOFT_FLOAT=y,y),g' \
-e 's,^.*UCLIBC_HAS_LFS.*,UCLIBC_HAS_LFS=$(if $(CONFIG_LARGEFILE),y,n),g' \
-e 's,.*DO_C99_MATH.*,DO_C99_MATH=$(if $(CONFIG_C99_MATH),y,n),g' \
$(PKG_BUILD_DIR)/.config