123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- Patch from Rich Felker
- From here:
- https://github.com/richfelker/musl-cross-make/blob/master/patches/binutils-2.25.1/0003-shemuls.diff
- Required to build sh2 big endian toolchain.
- diff -Nur binutils-2.25.1.orig/bfd/config.bfd binutils-2.25.1/bfd/config.bfd
- --- binutils-2.25.1.orig/bfd/config.bfd 2014-10-14 09:32:02.000000000 +0200
- +++ binutils-2.25.1/bfd/config.bfd 2015-12-06 15:17:26.703094863 +0100
- @@ -1370,6 +1370,7 @@
- sh-*-linux*)
- targ_defvec=sh_elf32_linux_be_vec
- targ_selvecs="sh_elf32_linux_vec sh64_elf32_linux_vec sh64_elf32_linux_be_vec sh64_elf64_linux_vec sh64_elf64_linux_be_vec"
- + targ_selvecs="${targ_selvecs} sh_elf32_vec sh_elf32_le_vec sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec"
- want64=true
- ;;
- #endif /* BFD64 */
- @@ -1377,10 +1378,12 @@
- sh*eb-*-linux*)
- targ_defvec=sh_elf32_linux_be_vec
- targ_selvecs=sh_elf32_linux_vec
- + targ_selvecs="${targ_selvecs} sh_elf32_vec sh_elf32_le_vec sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec"
- ;;
- sh*-*-linux*)
- targ_defvec=sh_elf32_linux_vec
- targ_selvecs=sh_elf32_linux_be_vec
- + targ_selvecs="${targ_selvecs} sh_elf32_vec sh_elf32_le_vec sh_elf32_fdpic_le_vec sh_elf32_fdpic_be_vec"
- ;;
-
- sh-*-uclinux* | sh[12]-*-uclinux*)
- diff -Nur binutils-2.25.1.orig/ld/configure.tgt binutils-2.25.1/ld/configure.tgt
- --- binutils-2.25.1.orig/ld/configure.tgt 2014-10-14 09:32:04.000000000 +0200
- +++ binutils-2.25.1/ld/configure.tgt 2015-12-06 15:17:26.723094193 +0100
- @@ -623,15 +623,17 @@
- score-*-elf) targ_emul=score7_elf
- targ_extra_emuls=score3_elf ;;
- sh-*-linux*) targ_emul=shlelf_linux
- - targ_extra_emuls=shelf_linux
- + targ_extra_emuls="shelf_linux shlelf_fd shelf_fd shlelf shelf"
- targ_extra_libpath=shelf_linux ;;
- sh64eb-*-linux*) targ_emul=shelf32_linux
- targ_extra_emuls="shlelf32_linux" ;;
- sh64-*-linux*) targ_emul=shlelf32_linux
- targ_extra_emuls="shelf32_linux"
- targ_extra_libpath=shelf32_linux ;;
- -sh*eb-*-linux*) targ_emul=shelf_linux ;;
- -sh*-*-linux*) targ_emul=shlelf_linux ;;
- +sh*eb-*-linux*) targ_emul=shelf_linux
- + targ_extra_emuls="shelf_fd shelf" ;;
- +sh*-*-linux*) targ_emul=shlelf_linux
- + targ_extra_emuls="shlelf_fd shlelf" ;;
- sh5le-*-netbsd*) targ_emul=shlelf32_nbsd
- targ_extra_emuls="shelf32_nbsd shelf64_nbsd shlelf64_nbsd shelf_nbsd shlelf_nbsd" ;;
- sh5-*-netbsd*) targ_emul=shelf32_nbsd
|