From d83df882620ce3fb6a4a02dc2875c96471b59d89 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Sun, 6 Dec 2015 17:29:01 +0100 Subject: 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. --- toolchain/binutils/patches/2.25.1/sheb.patch | 54 ++++++++++++++++++++++++++++ toolchain/gmp/Makefile | 4 +-- toolchain/libelf/Makefile | 12 ------- toolchain/mpc/Makefile | 1 - toolchain/mpfr/Makefile | 1 - 5 files changed, 56 insertions(+), 16 deletions(-) create mode 100644 toolchain/binutils/patches/2.25.1/sheb.patch (limited to 'toolchain') 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 diff --git a/toolchain/gmp/Makefile b/toolchain/gmp/Makefile index fbc8687e0..7b805beea 100644 --- a/toolchain/gmp/Makefile +++ b/toolchain/gmp/Makefile @@ -14,7 +14,6 @@ ifeq (${ARCH_FOR_BUILD},x32) GMP_CONFOPTS+= ABI=x32 endif -$(WRKBUILD)/.headers: $(WRKBUILD)/.configured: ifneq ($(OStype),Darwin) (cd $(WRKBUILD); cp configfsf.guess config.guess) @@ -30,7 +29,8 @@ endif touch $@ $(WRKBUILD)/.compiled: $(WRKBUILD)/.configured - env PATH="$(STAGING_HOST_DIR)/usr/bin:$$PATH" $(MAKE) ${GMP_MAKEOPTS} -C $(WRKBUILD) all + env PATH="$(STAGING_HOST_DIR)/usr/bin:$$PATH" \ + $(MAKE) ${GMP_MAKEOPTS} -C $(WRKBUILD) all touch $@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled diff --git a/toolchain/libelf/Makefile b/toolchain/libelf/Makefile index 4d1b81164..c1be5c400 100644 --- a/toolchain/libelf/Makefile +++ b/toolchain/libelf/Makefile @@ -10,19 +10,7 @@ ifeq (${ADK_MAKE_PARALLEL},y) LIBELF_MAKEOPTS+= -j${ADK_MAKE_JOBS} endif -$(WRKBUILD)/.headers: $(WRKBUILD)/.configured: - @cd ${WRKBUILD}; \ - for i in $$(find . -name config.sub);do \ - if [ -f $$i ]; then \ - ${CP} ${SCRIPT_DIR}/config.sub $$i; \ - fi; \ - done; \ - for i in $$(find . -name config.guess);do \ - if [ -f $$i ]; then \ - ${CP} ${SCRIPT_DIR}/config.guess $$i; \ - fi; \ - done; (cd $(WRKBUILD); \ $(WRKBUILD)/configure \ --prefix=$(STAGING_HOST_DIR)/usr \ diff --git a/toolchain/mpc/Makefile b/toolchain/mpc/Makefile index fbc6a3a7e..eafebcc53 100644 --- a/toolchain/mpc/Makefile +++ b/toolchain/mpc/Makefile @@ -10,7 +10,6 @@ ifeq (${ADK_MAKE_PARALLEL},y) MPC_MAKEOPTS+= -j${ADK_MAKE_JOBS} endif -$(WRKBUILD)/.headers: $(WRKBUILD)/.configured: (cd $(WRKBUILD); \ $(WRKBUILD)/configure \ diff --git a/toolchain/mpfr/Makefile b/toolchain/mpfr/Makefile index 17296503d..e24867a5a 100644 --- a/toolchain/mpfr/Makefile +++ b/toolchain/mpfr/Makefile @@ -10,7 +10,6 @@ ifeq (${ADK_MAKE_PARALLEL},y) MPFR_MAKEOPTS+= -j${ADK_MAKE_JOBS} endif -$(WRKBUILD)/.headers: $(WRKBUILD)/.configured: (cd $(WRKBUILD); \ $(WRKBUILD)/configure \ -- cgit v1.2.3