buildroot: allow specifying libc personality for external toolchains
[openwrt.git] / toolchain / gcc / patches / llvm / 930-eabi_fixes.patch
1 --- a/gcc/config.gcc
2 +++ b/gcc/config.gcc
3 @@ -760,7 +760,7 @@ arm*-*-netbsd*)
4         extra_parts=""
5         use_collect2=yes
6         ;;
7 -arm*-*-linux*)                 # ARM GNU/Linux with ELF
8 +arm*-linux*)                   # ARM GNU/Linux with ELF
9         tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h"
10         tmake_file="${tmake_file} t-linux arm/t-arm"
11         case ${target} in
12 @@ -769,7 +769,7 @@ arm*-*-linux*)                      # ARM GNU/Linux with EL
13                 ;;
14         esac
15         case ${target} in
16 -       arm*-*-linux-*eabi)
17 +       arm*-linux-*eabi)
18             tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
19             tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi"
20             # The BPABI long long divmod functions return a 128-bit value in
21 --- a/gcc/config/arm/linux-eabi.h
22 +++ b/gcc/config/arm/linux-eabi.h
23 @@ -48,7 +48,8 @@
24  #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm10tdmi
25  
26  #undef SUBTARGET_EXTRA_LINK_SPEC
27 -#define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux_eabi"
28 +#define SUBTARGET_EXTRA_LINK_SPEC \
29 +       " %{mbig-endian:-m armelfb_linux_eabi} %{mlittle-endian:-m armelf_linux_eabi} "
30  
31  /* Use ld-linux.so.3 so that it will be possible to run "classic"
32     GNU/Linux binaries on an EABI system.  */