diff options
| -rw-r--r-- | Rules.mak | 21 | ||||
| -rw-r--r-- | extra/Configs/Config.arm | 11 | ||||
| -rw-r--r-- | extra/Configs/Config.cross.arm.uclinux | 11 | ||||
| -rw-r--r-- | extra/Configs/Config.i386 | 11 | ||||
| -rw-r--r-- | extra/Configs/Config.m68k | 11 | ||||
| -rw-r--r-- | extra/Configs/Config.m68k.coff | 11 | ||||
| -rw-r--r-- | extra/Configs/Config.mips | 12 | ||||
| -rw-r--r-- | extra/Configs/Config.mipsel | 12 | ||||
| -rw-r--r-- | extra/Configs/Config.powerpc | 11 | ||||
| -rw-r--r-- | extra/Configs/Config.sh | 11 | ||||
| -rw-r--r-- | extra/Configs/Config.v850e | 6 | 
11 files changed, 39 insertions, 89 deletions
@@ -38,11 +38,28 @@ BUILDTIME = ${shell TZ=UTC date --utc "+%Y.%m.%d-%H:%M%z"}  GCCINCDIR = ${shell $(CC) -print-search-dirs | sed -ne "s/install: \(.*\)/\1include/gp"}  NATIVE_ARCH = ${shell uname -m | sed -e 's/i.86/i386/' -e 's/sparc.*/sparc/' \  		-e 's/arm.*/arm/g' -e 's/m68k.*/m68k/' -e 's/ppc/powerpc/g'} +TARGET_ARCH=${shell $(CC) -dumpmachine | sed -e s'/-linux//' -e 's/i.86/i386/' -e 's/sparc.*/sparc/' \ +		-e 's/arm.*/arm/g' -e 's/m68k.*/m68k/' -e 's/ppc/powerpc/g'} -# use '-Os' optimization if available, else use -O2, allow Config to override +# Some nice architecture specific optimizations  ifndef OPTIMIZATION +# use '-Os' optimization if available, else use -O2, allow Config to override  OPTIMIZATION = ${shell if $(CC) -Os -S -o /dev/null -xc /dev/null >/dev/null 2>&1; \      then echo "-Os"; else echo "-O2" ; fi} +ifeq ($(strip $(TARGET_ARCH)),arm) +	OPTIMIZATION+=-fstrict-aliasing +endif +ifeq ($(strip $(TARGET_ARCH)),i386) +	OPTIMIZATION+=-march=i386 +	OPTIMIZATION += ${shell if $(CC) -mpreferred-stack-boundary=2 -S -o /dev/null -xc \ +		/dev/null >/dev/null 2>&1; then echo "-mpreferred-stack-boundary=2"; fi} +	OPTIMIZATION += ${shell if $(CC) -malign-functions=0 -malign-jumps=0 -malign-loops=0 \ +		-S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo \ +		"-malign-functions=0 -malign-jumps=0 -malign-loops=0"; fi} +	CPUFLAGS+=-pipe +else +	CPUFLAGS+=-pipe +endif  endif  ARFLAGS=r @@ -75,7 +92,7 @@ ifeq ($(strip $(HAVE_SHARED)),true)  ifeq ($(strip $(BUILD_UCLIBC_LDSO)),true)  	LDSO=$(TOPDIR)lib/$(UCLIBC_LDSO)  	DYNAMIC_LINKER=$(SHARED_LIB_LOADER_PATH)/$(UCLIBC_LDSO) -	BUILD_DYNAMIC_LINKER=$(shell cd $(TOPDIR)lib; pwd)/$(UCLIBC_LDSO) +	BUILD_DYNAMIC_LINKER=${shell cd $(TOPDIR)lib && pwd}/$(UCLIBC_LDSO)  else  	LDSO=$(SYSTEM_LDSO)  	DYNAMIC_LINKER=/lib/$(notdir $(SYSTEM_LDSO)) diff --git a/extra/Configs/Config.arm b/extra/Configs/Config.arm index d68a3e2a5..95ebe8489 100644 --- a/extra/Configs/Config.arm +++ b/extra/Configs/Config.arm @@ -25,16 +25,9 @@  # other sundry sources.  Files within this library are copyright by their  # respective copyright holders. -# What arch do you want to compile for... -TARGET_ARCH=arm -#TARGET_ARCH=i386 -#TARGET_ARCH=m68k -#TARGET_ARCH=powerpc -#TARGET_ARCH=sh -#TARGET_ARCH=sparc -  # If you are running a cross compiler, you may want to set this -# to something more interesting... +# to something more interesting...  Target architecture is determined +# by asking this compiler what arch it compiles stuff for.  NATIVE_CC = gcc  CROSS = #arm-linux-  CC = $(CROSS)gcc diff --git a/extra/Configs/Config.cross.arm.uclinux b/extra/Configs/Config.cross.arm.uclinux index 5058c4e59..d90c1ee42 100644 --- a/extra/Configs/Config.cross.arm.uclinux +++ b/extra/Configs/Config.cross.arm.uclinux @@ -25,16 +25,9 @@  # other sundry sources.  Files within this library are copyright by their  # respective copyright holders. -# What arch do you want to compile for... -TARGET_ARCH=arm -#TARGET_ARCH=i386 -#TARGET_ARCH=m68k -#TARGET_ARCH=powerpc -#TARGET_ARCH=sh -#TARGET_ARCH=sparc -  # If you are running a cross compiler, you may want to set this -# to something more interesting... +# to something more interesting...  Target architecture is determined +# by asking this compiler what arch it compiles stuff for.  NATIVE_CC = gcc  CROSS = arm-elf-  CC = $(CROSS)gcc diff --git a/extra/Configs/Config.i386 b/extra/Configs/Config.i386 index 11e3566c5..c7c202583 100644 --- a/extra/Configs/Config.i386 +++ b/extra/Configs/Config.i386 @@ -25,16 +25,9 @@  # other sundry sources.  Files within this library are copyright by their  # respective copyright holders. -# What arch do you want to compile for... -#TARGET_ARCH=arm -TARGET_ARCH=i386 -#TARGET_ARCH=m68k -#TARGET_ARCH=powerpc -#TARGET_ARCH=sh -#TARGET_ARCH=sparc -  # If you are running a cross compiler, you may want to set this -# to something more interesting... +# to something more interesting...  Target architecture is determined +# by asking this compiler what arch it compiles stuff for.  NATIVE_CC = gcc  CROSS = #$(TARGET_ARCH)-linux-  CC = $(CROSS)gcc diff --git a/extra/Configs/Config.m68k b/extra/Configs/Config.m68k index 1ebe7b097..b6bb64de0 100644 --- a/extra/Configs/Config.m68k +++ b/extra/Configs/Config.m68k @@ -25,16 +25,9 @@  # other sundry sources.  Files within this library are copyright by their  # respective copyright holders. -# What arch do you want to compile for... -#TARGET_ARCH=arm -#TARGET_ARCH=i386 -TARGET_ARCH=m68k -#TARGET_ARCH=powerpc -#TARGET_ARCH=sh -#TARGET_ARCH=sparc -  # If you are running a cross compiler, you may want to set this -# to something more interesting... +# to something more interesting...  Target architecture is determined +# by asking this compiler what arch it compiles stuff for.  NATIVE_CC = gcc  #CROSS = m68k-elf-  CC = $(CROSS)gcc diff --git a/extra/Configs/Config.m68k.coff b/extra/Configs/Config.m68k.coff index c45243315..0794431f7 100644 --- a/extra/Configs/Config.m68k.coff +++ b/extra/Configs/Config.m68k.coff @@ -25,16 +25,9 @@  # other sundry sources.  Files within this library are copyright by their  # respective copyright holders. -# What arch do you want to compile for... -#TARGET_ARCH=arm -#TARGET_ARCH=i386 -TARGET_ARCH=m68k -#TARGET_ARCH=powerpc -#TARGET_ARCH=sh -#TARGET_ARCH=sparc -  # If you are running a cross compiler, you may want to set this -# to something more interesting... +# to something more interesting...  Target architecture is determined +# by asking this compiler what arch it compiles stuff for.  NATIVE_CC = gcc  CROSS = m68k-coff-  CC = $(CROSS)gcc diff --git a/extra/Configs/Config.mips b/extra/Configs/Config.mips index 817a6083a..d2ba47266 100644 --- a/extra/Configs/Config.mips +++ b/extra/Configs/Config.mips @@ -25,17 +25,9 @@  # other sundry sources.  Files within this library are copyright by their  # respective copyright holders. -# What arch do you want to compile for... -#TARGET_ARCH=arm -#TARGET_ARCH=i386 -#TARGET_ARCH=m68k -#TARGET_ARCH=powerpc -#TARGET_ARCH=sh -#TARGET_ARCH=sparc -TARGET_ARCH=mipsel -  # If you are running a cross compiler, you may want to set this -# to something more interesting... +# to something more interesting...  Target architecture is determined +# by asking this compiler what arch it compiles stuff for.  NATIVE_CC = gcc  CROSS = mipsel-linux-  CC = $(CROSS)gcc diff --git a/extra/Configs/Config.mipsel b/extra/Configs/Config.mipsel index 817a6083a..d2ba47266 100644 --- a/extra/Configs/Config.mipsel +++ b/extra/Configs/Config.mipsel @@ -25,17 +25,9 @@  # other sundry sources.  Files within this library are copyright by their  # respective copyright holders. -# What arch do you want to compile for... -#TARGET_ARCH=arm -#TARGET_ARCH=i386 -#TARGET_ARCH=m68k -#TARGET_ARCH=powerpc -#TARGET_ARCH=sh -#TARGET_ARCH=sparc -TARGET_ARCH=mipsel -  # If you are running a cross compiler, you may want to set this -# to something more interesting... +# to something more interesting...  Target architecture is determined +# by asking this compiler what arch it compiles stuff for.  NATIVE_CC = gcc  CROSS = mipsel-linux-  CC = $(CROSS)gcc diff --git a/extra/Configs/Config.powerpc b/extra/Configs/Config.powerpc index 7022dfd45..fe20607d6 100644 --- a/extra/Configs/Config.powerpc +++ b/extra/Configs/Config.powerpc @@ -25,16 +25,9 @@  # other sundry sources.  Files within this library are copyright by their  # respective copyright holders. -# What arch do you want to compile for... -#TARGET_ARCH=arm -#TARGET_ARCH=i386 -#TARGET_ARCH=m68k -TARGET_ARCH=powerpc -#TARGET_ARCH=sh -#TARGET_ARCH=sparc -  # If you are running a cross compiler, you may want to set this -# to something more interesting... +# to something more interesting...  Target architecture is determined +# by asking this compiler what arch it compiles stuff for.  NATIVE_CC = gcc  CROSS = #$(TARGET_ARCH)-linux-  CC = $(CROSS)gcc diff --git a/extra/Configs/Config.sh b/extra/Configs/Config.sh index 5b5645727..4e337e6f1 100644 --- a/extra/Configs/Config.sh +++ b/extra/Configs/Config.sh @@ -25,16 +25,9 @@  # other sundry sources.  Files within this library are copyright by their  # respective copyright holders. -# What arch do you want to compile for... -#TARGET_ARCH=arm -#TARGET_ARCH=i386 -#TARGET_ARCH=m68k -#TARGET_ARCH=powerpc -TARGET_ARCH=sh -#TARGET_ARCH=sparc -  # If you are running a cross compiler, you may want to set this -# to something more interesting... +# to something more interesting...  Target architecture is determined +# by asking this compiler what arch it compiles stuff for.  NATIVE_CC = gcc  CROSS = /usr/cygnus/yapp-001013/H-i686-pc-linux-gnulibc2.1/bin/sh-linux-gnu-  CC = $(CROSS)gcc diff --git a/extra/Configs/Config.v850e b/extra/Configs/Config.v850e index 25031dd5e..d7d93e596 100644 --- a/extra/Configs/Config.v850e +++ b/extra/Configs/Config.v850e @@ -30,11 +30,9 @@ PROJ_UCLINUX=/proj/soft2/uclinux  # Cross compile on i386-pc-linux-gnu  DESTDIR=$(PROJ_UCLINUX)/i386-pc-linux-gnu/v850e-linux -# What arch do you want to compile for... -TARGET_ARCH = v850 -  # If you are running a cross compiler, you may want to set this -# to something more interesting... +# to something more interesting...  Target architecture is determined +# by asking this compiler what arch it compiles stuff for.  NATIVE_CC = gcc  CROSS = v850e-elf-  CC = $(CROSS)gcc  | 
