diff options
| author | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2007-01-26 14:51:38 +0000 | 
|---|---|---|
| committer | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2007-01-26 14:51:38 +0000 | 
| commit | 4687e008086b44312cf45610a16a945ab4e89fa4 (patch) | |
| tree | 164a96b37a9b9811bb9558af7f80029f91b3da75 /toolchain/gcc | |
| parent | 9e6af6c004a16bc981616cc7db702ddc3a1bf80f (diff) | |
| download | buildroot-4687e008086b44312cf45610a16a945ab4e89fa4.tar.gz buildroot-4687e008086b44312cf45610a16a945ab4e89fa4.zip  | |
- for the native target gcc, drop --enable-optspace in favour of using the configured flags (that default to -Os anyway).
  Saves about 20% size without additional configure args:
   text    data     bss     dec     hex filename
4685000   17280  566360 5268640  5064a0 optspace/i586-linux-uclibc/4.2.0/cc1
3630655   15184  562172 4208011  40358b usrflags/i586-linux-uclibc/4.2.0/cc1
4853646   23532  568528 5445706  53184a optspace/i586-linux-uclibc/4.2.0/f951
3772121   21292  564148 4357561  427db9 usrflags/i586-linux-uclibc/4.2.0/f951
Diffstat (limited to 'toolchain/gcc')
| -rw-r--r-- | toolchain/gcc/Makefile.in | 14 | ||||
| -rw-r--r-- | toolchain/gcc/gcc-uclibc-3.x.mk | 9 | 
2 files changed, 18 insertions, 5 deletions
diff --git a/toolchain/gcc/Makefile.in b/toolchain/gcc/Makefile.in index 41e23cf591..1b6e241333 100644 --- a/toolchain/gcc/Makefile.in +++ b/toolchain/gcc/Makefile.in @@ -30,18 +30,30 @@ SOFT_FLOAT_CONFIG_OPTION:=--with-float=soft  else  SOFT_FLOAT_CONFIG_OPTION:=--without-float  endif +  # again... there must be a better way  ifeq ($(findstring 4.,$(GCC_VERSION)),4.)  SOFT_FLOAT_CONFIG_OPTION:=--with-float=soft +ifeq ($(BR2_SOFT_FLOAT_FP),y) +TARGET_SOFT_FLOAT:=-mfloat-abi=softfp +else # no fp at all +TARGET_SOFT_FLOAT:=-mfloat-abi=soft  endif +else # not gcc-4.x  TARGET_SOFT_FLOAT:=-msoft-float +endif  ARCH_FPU_SUFFIX:=_nofpu -else +else # no softfloat support  SOFT_FLOAT_CONFIG_OPTION:=  TARGET_SOFT_FLOAT:=  ARCH_FPU_SUFFIX:=  endif +TARGET_GCC_FLAGS= CFLAGS_FOR_TARGET="$(TARGET_CFLAGS) $(TARGET_SOFT_FLOAT)" \ +	CXXFLAGS_FOR_TARGET="$(TARGET_CFLAGS) $(TARGET_SOFT_FLOAT)" \ +	CFLAGS="$(TARGET_CFLAGS) $(TARGET_SOFT_FLOAT)" \ +	BOOT_CFLAGS="$(TARGET_CFLAGS) $(TARGET_SOFT_FLOAT)" +  ifeq ($(strip $(BR2_PACKAGE_GCC_TARGET)),y)  TARGETS+=gcc_target  endif diff --git a/toolchain/gcc/gcc-uclibc-3.x.mk b/toolchain/gcc/gcc-uclibc-3.x.mk index 9eb6d776c0..c67a2699d5 100644 --- a/toolchain/gcc/gcc-uclibc-3.x.mk +++ b/toolchain/gcc/gcc-uclibc-3.x.mk @@ -333,7 +333,8 @@ $(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR3)/.prepared  	(cd $(GCC_BUILD_DIR3); rm -rf config.cache ; \  		PATH=$(TARGET_PATH) \  		CC_FOR_BUILD="$(HOSTCC)" \ -		BOOT_CFLAGS="$(TARGET_CFLAGS)" \ +		CFLAGS_FOR_BUILD="-g -O2" \ +		$(TARGET_GCC_FLAGS) \  		$(GCC_DIR)/configure \  		--prefix=/usr \  		--build=$(GNU_HOST_NAME) \ @@ -342,7 +343,6 @@ $(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR3)/.prepared  		--enable-languages=$(GCC_TARGET_LANGUAGES) \  		--with-gxx-include-dir=/usr/include/c++ \  		--disable-__cxa_atexit \ -		--enable-target-optspace \  		--with-gnu-ld \  		$(GCC_SHARED_LIBGCC) \  		$(GCC_WITH_TARGET_GMP) \ @@ -354,12 +354,13 @@ $(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR3)/.prepared  		$(GCC_WITH_CPU) $(GCC_WITH_ARCH) $(GCC_WITH_TUNE) \  		$(GCC_USE_SJLJ_EXCEPTIONS) \  		$(DISABLE_LARGEFILE) \ -		$(EXTRA_GCC_CONFIG_OPTIONS)); +		$(EXTRA_GCC_CONFIG_OPTIONS) \ +		$(EXTRA_TARGET_GCC_CONFIG_OPTIONS));  	touch $@  $(GCC_BUILD_DIR3)/.compiled: $(GCC_BUILD_DIR3)/.configured  	PATH=$(TARGET_PATH) \ -	$(MAKE) $(TARGET_GCC_ARGS) -C $(GCC_BUILD_DIR3) all +	$(MAKE) -C $(GCC_BUILD_DIR3) all  	touch $@  #  | 

