crossgcc: Update toolchain
New tools: * mpfr 3.1.4 * binutils 2.26 * gcc 5.3.0 * llvm/clang 3.8.0 Patch changes: * binutils-2.25_fix-aarch64.patch: fixed in 2.26 * binutils-2.25_host-clang.patch: the positions of header file includes have been adjusted * binutils-2.25_no-bfd-doc.patch: update to 2.26 * binutils-2.25_riscv.patch: update from riscv-gnu-toolchain * gcc-5.2.0_elf_biarch.patch: update to 5.3.0 * gcc-5.2.0_gnat.patch: update to 5.3.0 * gcc-5.2.0_libgcc.patch: update to 5.3.0 * gcc-5.2.0_nds32.patch: update to 5.3.0 * gcc-5.2.0_riscv.patch: update from riscv-gnu-toolchain * cfe-3.7.1.src_frontend.patch: update to 3.8.0 In the latest code of riscv-gnu-toolchain project, the patch for {binutils,gcc}/config.sub has been removed, and the target is renamed as riscv32 and riscv64. The `riscv' to `riscv64' change in xcompile is in another commit. Test results: All GCC and LLVM/clang toolchain build successfully. x86,arm: qemu boots power8: firmware fails to boot aarch64,mips: not tested riscv: firmware fails to build with new binutils clang: firmware fails to boot Signed-off-by: Iru Cai <mytbk920423@gmail.com> Change-Id: I42ce89c29263d768d161c28199994f17d0389633 Reviewed-on: https://review.coreboot.org/14227 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
parent
2da008afa6
commit
ae8e3a0bbb
|
@ -18,8 +18,8 @@
|
|||
|
||||
cd $(dirname $0)
|
||||
|
||||
CROSSGCC_DATE="April 3rd, 2016"
|
||||
CROSSGCC_VERSION="1.38"
|
||||
CROSSGCC_DATE="April 16th, 2016"
|
||||
CROSSGCC_VERSION="1.39"
|
||||
CROSSGCC_COMMIT=$( git describe )
|
||||
|
||||
# default settings
|
||||
|
@ -33,18 +33,18 @@ SKIPPYTHON=1
|
|||
|
||||
# GCC toolchain version numbers
|
||||
GMP_VERSION=6.1.0
|
||||
MPFR_VERSION=3.1.3
|
||||
MPFR_VERSION=3.1.4
|
||||
MPC_VERSION=1.0.3
|
||||
LIBELF_VERSION=0.8.13
|
||||
GCC_VERSION=5.2.0
|
||||
GCC_VERSION=5.3.0
|
||||
GCC_AUTOCONF_VERSION=2.69
|
||||
BINUTILS_VERSION=2.25
|
||||
BINUTILS_VERSION=2.26
|
||||
GDB_VERSION=7.9.1
|
||||
IASL_VERSION=20160318
|
||||
PYTHON_VERSION=3.4.3
|
||||
EXPAT_VERSION=2.1.0
|
||||
# CLANG version number
|
||||
CLANG_VERSION=3.7.1
|
||||
CLANG_VERSION=3.8.0
|
||||
MAKE_VERSION=4.1
|
||||
|
||||
# GCC toolchain archive locations
|
||||
|
@ -674,7 +674,7 @@ case "$TARGETARCH" in
|
|||
i386-elf) ;;
|
||||
i386-mingw32) ;;
|
||||
mipsel-elf) ;;
|
||||
riscv-elf) ;;
|
||||
riscv-elf) TARGETARCH=riscv64-elf;;
|
||||
powerpc64*-linux*) ;;
|
||||
i386*) TARGETARCH=i386-elf;;
|
||||
arm*) TARGETARCH=arm-eabi;;
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
Taken from https://sourceware.org/ml/binutils/2014-10/msg00099.html
|
||||
Authored by Andreas Schwab <schwab@linux-m68k.org>
|
||||
diff --git a/gold/configure.tgt b/gold/configure.tgt
|
||||
index 9a75070..59a681e 100644
|
||||
--- binutils-2.25/gold/configure.tgt
|
||||
+++ binutils-2.25/gold/configure.tgt
|
||||
@@ -146,6 +146,7 @@ arm*-*-*)
|
||||
;;
|
||||
aarch64*-*)
|
||||
targ_obj=aarch64
|
||||
+ targ_extra_obj=aarch64-reloc-property
|
||||
targ_machine=EM_AARCH64
|
||||
targ_size=64
|
||||
targ_extra_size=32
|
|
@ -1,18 +0,0 @@
|
|||
This is a known issue on GNU mail list. Please refer
|
||||
the link below.
|
||||
https://sourceware.org/bugzilla/show_bug.cgi?id=17473
|
||||
|
||||
--- binutils-2.25/gold/binary.cc 2014-10-14 00:32:04.000000000 -0700
|
||||
+++ binutils-2.25.patched/gold/binary.cc 2015-09-15 07:02:40.000000000 -0700
|
||||
@@ -24,10 +24,10 @@
|
||||
|
||||
#include <cerrno>
|
||||
#include <cstring>
|
||||
+#include "stringpool.h"
|
||||
#include "safe-ctype.h"
|
||||
|
||||
#include "elfcpp.h"
|
||||
-#include "stringpool.h"
|
||||
#include "fileread.h"
|
||||
#include "output.h"
|
||||
#include "binary.h"
|
|
@ -1,7 +1,7 @@
|
|||
diff -ur binutils-2.25/bfd/Makefile.in binutils-2.25.patched/bfd/Makefile.in
|
||||
--- binutils-2.25/bfd/Makefile.in 2015-09-15 06:25:42.000000000 -0700
|
||||
+++ binutils-2.25.patched/bfd/Makefile.in 2015-09-15 05:51:01.000000000 -0700
|
||||
@@ -339,7 +339,7 @@
|
||||
diff -ur binutils-2.26/bfd/Makefile.in binutils-2.26.patched/bfd/Makefile.in
|
||||
--- binutils-2.26/bfd/Makefile.in 2015-11-13 16:27:40.000000000 +0800
|
||||
+++ binutils-2.26.patched/bfd/Makefile.in 2016-04-02 11:05:43.398422394 +0800
|
||||
@@ -341,7 +341,7 @@
|
||||
ACLOCAL_AMFLAGS = -I . -I .. -I ../config
|
||||
INCDIR = $(srcdir)/../include
|
||||
CSEARCH = -I. -I$(srcdir) -I$(INCDIR)
|
File diff suppressed because it is too large
Load Diff
|
@ -5,8 +5,8 @@ https://llvm.org/bugs/show_bug.cgi?id=21538
|
|||
Index: include/clang/Driver/Driver.h
|
||||
===================================================================
|
||||
--- cfe-3.7.1.src/include/clang/Driver/Driver.h (revision 211898)
|
||||
+++ cfe-3.7.1.src/include/clang/Driver/Driver.h (working copy)
|
||||
@@ -325,6 +325,14 @@
|
||||
+++ cfe-3.8.0.src/include/clang/Driver/Driver.h (working copy)
|
||||
@@ -357,6 +357,14 @@
|
||||
// FIXME: This should be in CompilationInfo.
|
||||
std::string GetFilePath(const char *Name, const ToolChain &TC) const;
|
||||
|
||||
|
@ -24,8 +24,8 @@ Index: include/clang/Driver/Driver.h
|
|||
Index: include/clang/Driver/Options.td
|
||||
===================================================================
|
||||
--- cfe-3.7.1.src/include/clang/Driver/Options.td (revision 211898)
|
||||
+++ cfe-3.7.1.src/include/clang/Driver/Options.td (working copy)
|
||||
@@ -1269,6 +1269,8 @@
|
||||
+++ cfe-3.8.0.src/include/clang/Driver/Options.td (working copy)
|
||||
@@ -1669,6 +1669,8 @@
|
||||
HelpText<"Enable Objective-C Ivar layout bitmap print trace">;
|
||||
def print_libgcc_file_name : Flag<["-", "--"], "print-libgcc-file-name">,
|
||||
HelpText<"Print the library path for \"libgcc.a\"">;
|
||||
|
@ -37,8 +37,8 @@ Index: include/clang/Driver/Options.td
|
|||
Index: lib/Driver/Driver.cpp
|
||||
===================================================================
|
||||
--- cfe-3.7.1.src/lib/Driver/Driver.cpp (revision 211898)
|
||||
+++ cfe-3.7.1.src/lib/Driver/Driver.cpp (working copy)
|
||||
@@ -756,6 +756,11 @@
|
||||
+++ cfe-3.8.0.src/lib/Driver/Driver.cpp (working copy)
|
||||
@@ -910,6 +910,11 @@
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -48,10 +48,10 @@ Index: lib/Driver/Driver.cpp
|
|||
+ }
|
||||
+
|
||||
if (C.getArgs().hasArg(options::OPT_print_multi_lib)) {
|
||||
const MultilibSet &Multilibs = TC.getMultilibs();
|
||||
|
||||
@@ -1820,6 +1825,26 @@
|
||||
return Name;
|
||||
for (const Multilib &Multilib : TC.getMultilibs())
|
||||
llvm::outs() << Multilib << "\n";
|
||||
@@ -2153,6 +2158,26 @@
|
||||
return false;
|
||||
}
|
||||
|
||||
+std::string Driver::GetCompilerRTPath(const ToolChain &TC) const {
|
||||
|
@ -76,4 +76,4 @@ Index: lib/Driver/Driver.cpp
|
|||
+
|
||||
std::string Driver::GetProgramPath(const char *Name,
|
||||
const ToolChain &TC) const {
|
||||
// FIXME: Needs a better variable than DefaultTargetTriple
|
||||
SmallVector<std::string, 2> TargetSpecificExecutables;
|
|
@ -1,6 +1,6 @@
|
|||
diff -urN gcc-4.9.2/gcc/config/i386/t-elf64 gcc-4.9.2/gcc/config/i386/t-elf64
|
||||
--- gcc-4.9.2/gcc/config/i386/t-elf64 1969-12-31 16:00:00.000000000 -0800
|
||||
+++ gcc-5.2.0/gcc/config/i386/t-elf64 2015-06-17 11:20:08.032513005 -0700
|
||||
+++ gcc-5.3.0/gcc/config/i386/t-elf64 2015-06-17 11:20:08.032513005 -0700
|
||||
@@ -0,0 +1,38 @@
|
||||
+# Copyright (C) 2002-2014 Free Software Foundation, Inc.
|
||||
+#
|
||||
|
@ -42,7 +42,7 @@ diff -urN gcc-4.9.2/gcc/config/i386/t-elf64 gcc-4.9.2/gcc/config/i386/t-elf64
|
|||
+MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-elf-x32)
|
||||
diff -urN gcc-4.9.2/gcc/config.gcc gcc-4.9.2/gcc/config.gcc
|
||||
--- gcc-4.9.2/gcc/config.gcc 2015-06-17 11:20:57.841008182 -0700
|
||||
+++ gcc-5.2.0/gcc/config.gcc 2015-06-17 11:17:24.818890200 -0700
|
||||
+++ gcc-5.3.0/gcc/config.gcc 2015-06-17 11:17:24.818890200 -0700
|
||||
@@ -1353,6 +1353,30 @@
|
||||
;;
|
||||
x86_64-*-elf*)
|
||||
|
@ -74,8 +74,8 @@ diff -urN gcc-4.9.2/gcc/config.gcc gcc-4.9.2/gcc/config.gcc
|
|||
;;
|
||||
i[34567]86-*-rdos*)
|
||||
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h newlib-stdint.h i386/i386elf.h i386/rdos.h"
|
||||
--- gcc-5.2.0/gcc/config/i386/x86-64.h.orig 2015-08-20 17:17:34.555919593 +0200
|
||||
+++ gcc-5.2.0/gcc/config/i386/x86-64.h 2015-08-20 17:17:42.615908670 +0200
|
||||
--- gcc-5.3.0/gcc/config/i386/x86-64.h.orig 2015-08-20 17:17:34.555919593 +0200
|
||||
+++ gcc-5.3.0/gcc/config/i386/x86-64.h 2015-08-20 17:17:42.615908670 +0200
|
||||
@@ -49,7 +49,7 @@
|
||||
#define WCHAR_TYPE_SIZE 32
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
--- gcc-5.2.0/gcc/ada/gcc-interface/Make-lang.in.bak 2015-08-24 16:23:25.004493665 +0200
|
||||
+++ gcc-5.2.0/gcc/ada/gcc-interface/Make-lang.in 2015-08-24 17:53:52.496636113 +0200
|
||||
--- gcc-5.3.0/gcc/ada/gcc-interface/Make-lang.in.bak 2015-08-24 16:23:25.004493665 +0200
|
||||
+++ gcc-5.3.0/gcc/ada/gcc-interface/Make-lang.in 2015-08-24 17:53:52.496636113 +0200
|
||||
@@ -45,7 +45,7 @@
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
diff -urN gcc-5.2.0.orig/libgcc/config/t-hardfp gcc-5.2.0/libgcc/config/t-hardfp
|
||||
--- gcc-5.2.0.orig/libgcc/config/t-hardfp 2015-01-05 04:33:28.000000000 -0800
|
||||
+++ gcc-5.2.0/libgcc/config/t-hardfp 2016-04-06 12:04:51.000000000 -0700
|
||||
+++ gcc-5.3.0/libgcc/config/t-hardfp 2016-04-06 12:04:51.000000000 -0700
|
||||
@@ -59,21 +59,52 @@
|
||||
|
||||
hardfp_func_list := $(filter-out $(hardfp_exclusions),$(hardfp_func_list))
|
|
@ -1,6 +1,6 @@
|
|||
diff -urN gcc-5.2.0.orig/gcc/config/nds32/nds32.md gcc-5.2.0/gcc/config/nds32/nds32.md
|
||||
--- gcc-5.2.0.orig/gcc/config/nds32/nds32.md 2015-01-15 22:45:09.000000000 -0800
|
||||
+++ gcc-5.2.0/gcc/config/nds32/nds32.md 2016-04-14 22:09:09.000000000 -0700
|
||||
diff -urN gcc-5.3.0.orig/gcc/config/nds32/nds32.md gcc-5.3.0/gcc/config/nds32/nds32.md
|
||||
--- gcc-5.3.0.orig/gcc/config/nds32/nds32.md 2015-01-15 22:45:09.000000000 -0800
|
||||
+++ gcc-5.3.0/gcc/config/nds32/nds32.md 2016-04-14 22:09:09.000000000 -0700
|
||||
@@ -2289,11 +2289,11 @@
|
||||
emit_jump_insn (gen_cbranchsi4 (test, operands[0], operands[2],
|
||||
operands[4]));
|
File diff suppressed because it is too large
Load Diff
|
@ -1 +0,0 @@
|
|||
b46cc90ebaba7ffcf6c6d996d60738881b14e50d tarballs/binutils-2.25.tar.bz2
|
|
@ -0,0 +1 @@
|
|||
a637508cffeb2323b14bc8dd65378819768ad4ff tarballs/binutils-2.26.tar.bz2
|
|
@ -1 +0,0 @@
|
|||
15475a2c1e750a13755812785a4796cf4d9fa4c2 tarballs/cfe-3.7.1.src.tar.xz
|
|
@ -0,0 +1 @@
|
|||
2230ef962f2df3c13ec93f5b04b0e3cdff94b2ce tarballs/cfe-3.8.0.src.tar.xz
|
|
@ -1 +0,0 @@
|
|||
af7b0208d00be365849a923b16b8e6d0fca2a2fc tarballs/clang-tools-extra-3.7.1.src.tar.xz
|
|
@ -0,0 +1 @@
|
|||
a99d8b6fc5e593c4671424b327779318a1856acf tarballs/clang-tools-extra-3.8.0.src.tar.xz
|
|
@ -1 +0,0 @@
|
|||
8ad98fcc0bc801ba448c9bc43942fd3f545a6923 tarballs/compiler-rt-3.7.1.src.tar.xz
|
|
@ -0,0 +1 @@
|
|||
480ea09e369dac6de1f3759b27fa19417b26b69e tarballs/compiler-rt-3.8.0.src.tar.xz
|
|
@ -1 +0,0 @@
|
|||
fe3f5390949d47054b613edc36c557eb1d51c18e tarballs/gcc-5.2.0.tar.bz2
|
|
@ -0,0 +1 @@
|
|||
0612270b103941da08376df4d0ef4e5662a2e9eb tarballs/gcc-5.3.0.tar.bz2
|
|
@ -1 +0,0 @@
|
|||
5dbdcafac105273dcbff94c68837a66c6dd78cef tarballs/llvm-3.7.1.src.tar.xz
|
|
@ -0,0 +1 @@
|
|||
723ac918979255706434a05f5af34b71c49c9971 tarballs/llvm-3.8.0.src.tar.xz
|
|
@ -1 +0,0 @@
|
|||
3e46c5ce43701f2f36f9d01f407efe081700da80 tarballs/mpfr-3.1.3.tar.bz2
|
Loading…
Reference in New Issue