fixup softfloat handling
authorkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 28 Dec 2007 18:06:47 +0000 (18:06 +0000)
committerkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 28 Dec 2007 18:06:47 +0000 (18:06 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10003 3c298f89-4303-0410-b956-a3cf2f4a3e73

rules.mk
toolchain/binutils/Makefile
toolchain/gcc/Makefile
toolchain/uClibc/Makefile

index 2f52816..7ac39b1 100644 (file)
--- 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
index 2ca79d3..d317421 100644 (file)
@@ -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
index 59f8372..a1d1baa 100644 (file)
@@ -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
index 08f2670..5774d24 100644 (file)
@@ -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