From 915e6b89b50eb2edac7e905039ec0592d6fc8723 Mon Sep 17 00:00:00 2001 From: Imre Kaloz Date: Fri, 28 Dec 2007 18:06:47 +0000 Subject: [PATCH] fixup softfloat handling SVN-Revision: 10003 --- rules.mk | 7 +++++++ toolchain/binutils/Makefile | 1 + toolchain/gcc/Makefile | 2 ++ toolchain/uClibc/Makefile | 2 +- 4 files changed, 11 insertions(+), 1 deletion(-) diff --git a/rules.mk b/rules.mk index 2f528162f4e..7ac39b123e7 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 2ca79d3eaf9..d31742125e4 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 59f83727024..a1d1baa4008 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 08f267001be..5774d245bfd 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