summaryrefslogtreecommitdiff
path: root/toolchain/binutils
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2015-12-06 17:29:01 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2015-12-06 17:30:14 +0100
commitd83df882620ce3fb6a4a02dc2875c96471b59d89 (patch)
tree6f3ff366f931f1598519f2517868aa7e03297df2 /toolchain/binutils
parent8d27683011689b3a72b8ab18ed0e2b359a40570f (diff)
install config.sub and config.guess always
We need it for toolchain components. Add latest config.sub/config.guess from upstream with a minor patch for sh2eb detection.
Diffstat (limited to 'toolchain/binutils')
-rw-r--r--toolchain/binutils/patches/2.25.1/sheb.patch54
1 files changed, 54 insertions, 0 deletions
diff --git a/toolchain/binutils/patches/2.25.1/sheb.patch b/toolchain/binutils/patches/2.25.1/sheb.patch
new file mode 100644
index 000000000..cb155e663
--- /dev/null
+++ b/toolchain/binutils/patches/2.25.1/sheb.patch
@@ -0,0 +1,54 @@
+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