revert ARM to oabi by default, add some eabi patches for fixing up the toolchain...
[openwrt-10.03/.git] / toolchain / gcc / patches / 4.1.2 / 930-eabi_fixes.patch
1 Index: gcc-4.1.2/gcc/config.gcc
2 ===================================================================
3 --- gcc-4.1.2.orig/gcc/config.gcc       2008-02-12 23:29:31.037442374 +0100
4 +++ gcc-4.1.2/gcc/config.gcc    2008-02-12 23:30:11.051722656 +0100
5 @@ -670,7 +670,7 @@
6         extra_parts=""
7         use_collect2=yes
8         ;;
9 -arm*-*-linux*)                 # ARM GNU/Linux with ELF
10 +arm*-linux*)                   # ARM GNU/Linux with ELF
11         tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h" 
12         case $target in
13         arm*b-*)
14 @@ -679,7 +679,7 @@
15         esac
16         tmake_file="${tmake_file} t-linux arm/t-arm"
17         case ${target} in
18 -       arm*-*-linux-gnueabi | arm*-*-linux-uclibcgnueabi)
19 +       arm*-*eabi)
20             tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
21             tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi"
22             # The BPABI long long divmod functions return a 128-bit value in 
23 Index: gcc-4.1.2/gcc/config/arm/linux-eabi.h
24 ===================================================================
25 --- gcc-4.1.2.orig/gcc/config/arm/linux-eabi.h  2008-02-12 23:51:04.655161444 +0100
26 +++ gcc-4.1.2/gcc/config/arm/linux-eabi.h       2008-02-12 23:51:10.619501332 +0100
27 @@ -48,7 +48,8 @@
28  #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm10tdmi
29  
30  #undef SUBTARGET_EXTRA_LINK_SPEC
31 -#define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux_eabi"
32 +#define SUBTARGET_EXTRA_LINK_SPEC \
33 +       " %{mbig-endian:-m armelfb_linux_eabi} %{mlittle-endian:-m armelf_linux_eabi} "
34  
35  /* Use ld-linux.so.3 so that it will be possible to run "classic"
36     GNU/Linux binaries on an EABI system.  */