patches/linux/2.4.26/140-linux-2.4.26-arm-nonofpu.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 13 10:32:38 2008 +0000 (2008-07-13)
changeset 645 8e58024f8e37
permissions -rw-r--r--
Ioannis E. VENETIS <venetis@mail.capsl.udel.edu> pointed out that GMP and MPFR were not used by gcc.
Turned out that none could use GMP and MPFR as the config option changed its name, but the change was not propagated to all users.

/trunk/scripts/build/binutils.sh | 2 1 1 0 +-
/trunk/scripts/build/debug/300-gdb.sh | 2 1 1 0 +-
/trunk/scripts/build/cc_gcc.sh | 6 3 3 0 +++---
3 files changed, 5 insertions(+), 5 deletions(-)
yann@402
     1
Backport of linux-2.6.8-arm-nonofpu.patch.
yann@402
     2
Fixes error when building linux-2.4.26 kernel with gcc-3.4 on arm.
yann@402
     3
yann@402
     4
/opt/crosstool/arm-unknown-linux-gnu/gcc-3.4.2-glibc-2.2.5/bin/arm-unknown-linux-gnu-gcc -D__KERNEL__ -I/home/dank/wk/crosstool-0.28-rc37/build/arm-unknown-linux-gnu/gcc-3.4.2-glibc-2.2.5/linux-2.4.26/include -Wall -Wstrict-prototypes -Wno-trigraphs -Os -fno-strict-aliasing -fno-common -Uarm -fno-common -pipe -mapcs-32 -D__LINUX_ARM_ARCH__=4 -march=armv4 -mtune=strongarm110 -mshort-load-bytes -msoft-float -Uarm -S -o constants.h.tmp.1 getconstants.c
yann@402
     5
cc1: error: invalid option `short-load-bytes'
yann@402
     6
make[2]: *** [constants.h] Error 1
yann@402
     7
make[2]: Leaving directory `/home/dank/wk/crosstool-0.28-rc37/build/arm-unknown-linux-gnu/gcc-3.4.2-glibc-2.2.5/linux-2.4.26/arch/arm/tools'
yann@402
     8
make[1]: *** [dep] Error 2
yann@402
     9
make[1]: Leaving directory `/home/dank/wk/crosstool-0.28-rc37/build/arm-unknown-linux-gnu/gcc-3.4.2-glibc-2.2.5/linux-2.4.26/arch/arm/tools'
yann@402
    10
make: *** [archdep] Error 2
yann@402
    11
yann@402
    12
yann@402
    13
--- linux-2.4.26/Makefile.old	Thu Sep 30 23:21:14 2004
yann@402
    14
+++ linux-2.4.26/Makefile	Thu Sep 30 23:24:12 2004
yann@402
    15
@@ -21,6 +21,10 @@
yann@402
    16
 
yann@402
    17
 CROSS_COMPILE 	=
yann@402
    18
 
yann@402
    19
+# From linux-2.6
yann@402
    20
+check_gcc = $(shell if $(CC) $(CFLAGS) $(1) -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;)
yann@402
    21
+export check_gcc
yann@402
    22
+
yann@402
    23
 #
yann@402
    24
 # Include the make variables (CC, etc...)
yann@402
    25
 #
yann@402
    26
--- linux-2.4.26/arch/arm/Makefile.old	Thu Sep 30 23:16:49 2004
yann@402
    27
+++ linux-2.4.26/arch/arm/Makefile	Thu Sep 30 23:25:27 2004
yann@402
    28
@@ -50,9 +50,9 @@
yann@402
    29
 tune-$(CONFIG_CPU_SA110)	:=-mtune=strongarm110
yann@402
    30
 tune-$(CONFIG_CPU_SA1100)	:=-mtune=strongarm1100
yann@402
    31
 
yann@402
    32
-CFLAGS_BOOT	:=$(apcs-y) $(arch-y) $(tune-y) -mshort-load-bytes -msoft-float -Uarm
yann@402
    33
-CFLAGS		+=$(apcs-y) $(arch-y) $(tune-y) -mshort-load-bytes -msoft-float -Uarm
yann@402
    34
-AFLAGS		+=$(apcs-y) $(arch-y) -mno-fpu -msoft-float
yann@402
    35
+CFLAGS_BOOT	:=$(apcs-y) $(arch-y) $(tune-y) $(call check_gcc,-malignment-traps,-mshort-load-bytes) -msoft-float -Uarm
yann@402
    36
+CFLAGS		+=$(apcs-y) $(arch-y) $(tune-y) $(call check_gcc,-malignment-traps,-mshort-load-bytes) -msoft-float -Uarm
yann@402
    37
+AFLAGS		+=$(apcs-y) $(arch-y) -msoft-float
yann@402
    38
 
yann@402
    39
 ifeq ($(CONFIG_CPU_26),y)
yann@402
    40
 PROCESSOR	:= armo