summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2017-01-10 18:36:23 (GMT)
committerGitHub <noreply@github.com>2017-01-10 18:36:23 (GMT)
commitabdaa36b5ab0a46055248bc437d0f74183984d78 (patch)
tree251acfdd28203230bbc2d39370fd9c93515f01cd
parenta2d49174dffdb9e33aa6cb53da16d84824fd4ed6 (diff)
parente427a6408f61a1950ad2dfa5ac32853dcb391be7 (diff)
Merge pull request #515 from InfernoEmbedded/arm-toolchain-update
Arm toolchain update
-rw-r--r--config/binutils/binutils.in24
-rw-r--r--config/cc/gcc.in6
-rw-r--r--config/companion_libs/gmp.in6
-rw-r--r--config/companion_libs/isl.in11
-rw-r--r--config/companion_libs/mpfr.in5
-rw-r--r--config/libc/newlib.in37
-rw-r--r--patches/binutils/2.27/120-sh-conf.patch33
-rw-r--r--patches/binutils/2.27/300-001_ld_makefile_patch.patch26
-rw-r--r--patches/binutils/2.27/300-012_check_ldrunpath_length.patch22
-rw-r--r--patches/binutils/2.27/320-MinGW-w64-winpthreads-doesnt-have-pthread_mutexattr_settype.patch11
-rw-r--r--patches/binutils/2.27/330-Dont-link-to-libfl-as-its-unnecessary.patch108
-rw-r--r--patches/binutils/2.27/340-Darwin-gold-binary-cc-include-string-not-cstring.patch13
-rw-r--r--patches/binutils/2.27/350-Darwin-Two-fixes-from-Android-NDK-PTHREAD_ONCE_INIT-wcsncasecmp.patch77
-rw-r--r--patches/binutils/2.27/500-sysroot.patch37
-rw-r--r--patches/binutils/2.27/600-poison-system-directories.patch285
-rw-r--r--patches/gcc/6.3.0/100-uclibc-conf.patch (renamed from patches/gcc/6.2.0/100-uclibc-conf.patch)0
-rw-r--r--patches/gcc/6.3.0/301-missing-execinfo_h.patch (renamed from patches/gcc/6.2.0/301-missing-execinfo_h.patch)0
-rw-r--r--patches/gcc/6.3.0/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch (renamed from patches/gcc/6.2.0/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch)0
-rw-r--r--patches/gcc/6.3.0/380-gcc-plugin-POSIX-include-sys-select-h.patch (renamed from patches/gcc/6.2.0/380-gcc-plugin-POSIX-include-sys-select-h.patch)0
-rw-r--r--patches/gcc/6.3.0/810-arm-softfloat-libgcc.patch (renamed from patches/gcc/6.2.0/810-arm-softfloat-libgcc.patch)0
-rw-r--r--patches/gcc/6.3.0/830-arm_unbreak_armv4t.patch (renamed from patches/gcc/6.2.0/830-arm_unbreak_armv4t.patch)0
-rw-r--r--patches/gcc/6.3.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch (renamed from patches/gcc/6.2.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch)0
-rw-r--r--patches/gcc/6.3.0/860-cilk-wchar.patch (renamed from patches/gcc/6.2.0/860-cilk-wchar.patch)0
-rw-r--r--patches/gcc/6.3.0/870-xtensa-don-t-use-unwind-dw2-fde-dip-with-elf-targets.patch (renamed from patches/gcc/6.2.0/870-xtensa-don-t-use-unwind-dw2-fde-dip-with-elf-targets.patch)0
-rw-r--r--patches/gcc/6.3.0/871-xtensa-Fix-PR-target-78118.patch (renamed from patches/gcc/6.2.0/871-xtensa-Fix-PR-target-78118.patch)0
-rw-r--r--patches/gcc/6.3.0/872-xtensa-Fix-PR-target-78603.patch (renamed from patches/gcc/6.2.0/872-xtensa-Fix-PR-target-78603.patch)0
-rw-r--r--patches/gcc/6.3.0/890-fix-m68k-compile.patch (renamed from patches/gcc/6.2.0/890-fix-m68k-compile.patch)0
-rw-r--r--patches/gcc/6.3.0/891-fix-m68k-uclinux.patch (renamed from patches/gcc/6.2.0/891-fix-m68k-uclinux.patch)0
-rw-r--r--patches/gcc/6.3.0/892-libgcc-mkmap-symver-support-skip_underscore.patch (renamed from patches/gcc/6.2.0/892-libgcc-mkmap-symver-support-skip_underscore.patch)0
-rw-r--r--patches/gcc/6.3.0/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch (renamed from patches/gcc/6.2.0/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch)0
-rw-r--r--patches/gcc/6.3.0/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch (renamed from patches/gcc/6.2.0/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch)0
-rw-r--r--patches/gcc/6.3.0/895-bfin-define-REENTRANT.patch (renamed from patches/gcc/6.2.0/895-bfin-define-REENTRANT.patch)0
-rw-r--r--patches/gcc/6.3.0/910-nios2-bad-multilib-default.patch (renamed from patches/gcc/6.2.0/910-nios2-bad-multilib-default.patch)0
-rw-r--r--patches/gcc/6.3.0/930-libgcc-disable-split-stack-nothreads.patch (renamed from patches/gcc/6.2.0/930-libgcc-disable-split-stack-nothreads.patch)0
-rw-r--r--patches/gcc/6.3.0/940-uclinux-enable-threads.patch (renamed from patches/gcc/6.2.0/940-uclinux-enable-threads.patch)0
-rwxr-xr-xscripts/addToolVersion.sh4
36 files changed, 689 insertions, 16 deletions
diff --git a/config/binutils/binutils.in b/config/binutils/binutils.in
index 91b5e9f..7d9ab04 100644
--- a/config/binutils/binutils.in
+++ b/config/binutils/binutils.in
@@ -43,15 +43,15 @@ config CC_BINUTILS_SHOW_LINARO
help
Linaro is maintaining some advanced/more stable/experimental versions
of binutils, especially for the ARM architecture.
-
+
Those versions have not been blessed by the binutils comunity (nor have they
been cursed either!), but they look to be pretty much stable, and even
more stable than the upstream versions. YMMV...
-
+
If you do not know what this Linaro stuff is, then simply say 'n' here,
and rest in peace. OTOH, if you know what you are doing, you will be
able to use and enjoy :-) the Linaro versions by saying 'y' here.
-
+
Linaro: http://www.linaro.org/
choice
@@ -60,6 +60,11 @@ choice
# Don't remove next line
# CT_INSERT_VERSION_BELOW
+config BINUTILS_V_2_27
+ bool
+ prompt "2.27"
+ select BINUTILS_2_27_or_later
+
config BINUTILS_V_2_26
bool
prompt "2.26"
@@ -98,6 +103,7 @@ config BINUTILS_VERSION
string
# Don't remove next line
# CT_INSERT_VERSION_STRING_BELOW
+ default "2.27" if BINUTILS_V_2_27
default "2.26" if BINUTILS_V_2_26
default "2.25.1" if BINUTILS_V_2_25_1
default "linaro-2.25.0-2015.01-2" if BINUTILS_LINARO_V_2_25
@@ -107,6 +113,10 @@ config BINUTILS_VERSION
endif # ! BINUTILS_CUSTOM
+config BINUTILS_2_27_or_later
+ bool
+ select BINUTILS_2_26_or_later
+
config BINUTILS_2_26_or_later
bool
select BINUTILS_2_25_1_or_later
@@ -192,7 +202,7 @@ config BINUTILS_LINKER_LD_GOLD
help
Both the historical ld and the new gold linkers will be
installed, with ld being the default linker used.
-
+
See help for gold, above.
config BINUTILS_LINKER_GOLD_LD
@@ -205,7 +215,7 @@ config BINUTILS_LINKER_GOLD_LD
help
Both the historical ld and the new gold linkers will be
installed, with gold being the default linker used.
-
+
See help for gold, above.
endchoice # Enable linkers
@@ -242,7 +252,7 @@ config BINUTILS_LD_WRAPPER
depends on BINUTILS_LINKER_BOTH
help
Add an ld wrapper that calls to either gold or ld.
-
+
By default, the wrapper will call to the default wrapper,
but if you set the environment variable CTNG_LD_IS, you
can change which linker will get called:
@@ -270,7 +280,7 @@ config BINUTILS_EXTRA_CONFIG_ARRAY
default ""
help
Extra flags passed onto ./configure when configuring
-
+
You can enter multiple arguments here, and arguments can contain spaces
if they are properly quoted (or escaped, but prefer quotes). Eg.:
--with-foo="1st arg with 4 spaces" --with-bar=2nd-arg-without-space
diff --git a/config/cc/gcc.in b/config/cc/gcc.in
index 691355a..a98b9f1 100644
--- a/config/cc/gcc.in
+++ b/config/cc/gcc.in
@@ -71,9 +71,9 @@ choice
# Don't remove next line
# CT_INSERT_VERSION_BELOW
-config CC_GCC_V_6_2_0
+config CC_GCC_V_6_3_0
bool
- prompt "6.2.0"
+ prompt "6.3.0"
select CC_GCC_6
config CC_GCC_V_5_4_0
@@ -287,7 +287,7 @@ config CC_GCC_VERSION
string
# Don't remove next line
# CT_INSERT_VERSION_STRING_BELOW
- default "6.2.0" if CC_GCC_V_6_2_0
+ default "6.3.0" if CC_GCC_V_6_3_0
default "5.4.0" if CC_GCC_V_5_4_0
default "linaro-5.2-2015.11-2" if CC_GCC_V_linaro_5_2
default "linaro-4.9-2015.06" if CC_GCC_V_linaro_4_9
diff --git a/config/companion_libs/gmp.in b/config/companion_libs/gmp.in
index 52ffcdf..b92050d 100644
--- a/config/companion_libs/gmp.in
+++ b/config/companion_libs/gmp.in
@@ -6,6 +6,11 @@ choice
# Don't remove next line
# CT_INSERT_VERSION_BELOW
+config GMP_V_6_1_2
+ bool
+ prompt "6.1.2"
+ select GMP_5_0_2_or_later
+
config GMP_V_6_1_0
bool
prompt "6.1.0"
@@ -57,6 +62,7 @@ config GMP_VERSION
string
# Don't remove next line
# CT_INSERT_VERSION_STRING_BELOW
+ default "6.1.2" if GMP_V_6_1_2
default "6.1.0" if GMP_V_6_1_0
default "6.0.0a" if GMP_V_6_0_0
default "5.1.3" if GMP_V_5_1_3
diff --git a/config/companion_libs/isl.in b/config/companion_libs/isl.in
index 1477212..0584764 100644
--- a/config/companion_libs/isl.in
+++ b/config/companion_libs/isl.in
@@ -6,6 +6,12 @@ choice
# Don't remove next line
# CT_INSERT_VERSION_BELOW
+config ISL_V_0_16_1
+ bool
+ prompt "0.16.1"
+ depends on CLOOG_0_18_4_or_later || CC_GCC_5_or_later
+ select ISL_V_0_16_or_later
+
config ISL_V_0_14
bool
prompt "0.14"
@@ -26,6 +32,10 @@ config ISL_V_0_11_1
endchoice
+config ISL_V_0_16_or_later
+ bool
+ select ISL_V_0_14_or_later
+
config ISL_V_0_14_or_later
bool
select ISL_V_0_12_or_later
@@ -37,6 +47,7 @@ config ISL_VERSION
string
# Don't remove next line
# CT_INSERT_VERSION_STRING_BELOW
+ default "0.16.1" if ISL_V_0_16_1
default "0.14" if ISL_V_0_14
default "0.12.2" if ISL_V_0_12_2
default "0.11.1" if ISL_V_0_11_1
diff --git a/config/companion_libs/mpfr.in b/config/companion_libs/mpfr.in
index fef50b0..5957e23 100644
--- a/config/companion_libs/mpfr.in
+++ b/config/companion_libs/mpfr.in
@@ -6,6 +6,10 @@ choice
# Don't remove next line
# CT_INSERT_VERSION_BELOW
+config MPFR_V_3_1_5
+ bool
+ prompt "3.1.5"
+
config MPFR_V_3_1_3
bool
prompt "3.1.3"
@@ -44,6 +48,7 @@ config MPFR_VERSION
string
# Don't remove next line
# CT_INSERT_VERSION_STRING_BELOW
+ default "3.1.5" if MPFR_V_3_1_5
default "3.1.3" if MPFR_V_3_1_3
default "3.1.2" if MPFR_V_3_1_2
default "3.1.0" if MPFR_V_3_1_0
diff --git a/config/libc/newlib.in b/config/libc/newlib.in
index a201551..166130f 100644
--- a/config/libc/newlib.in
+++ b/config/libc/newlib.in
@@ -17,7 +17,7 @@ config LIBC_NEWLIB_CUSTOM
bool
prompt "Custom newlib"
depends on EXPERIMENTAL
- select LIBC_NEWLIB_2_3_or_later
+ select LIBC_NEWLIB_2_5_or_later
help
The choosen newlib version shall be not downloaded. Instead use
a custom location to get the source.
@@ -54,15 +54,15 @@ config CC_NEWLIB_SHOW_LINARO
help
Linaro is maintaining some advanced/more stable/experimental versions
of newlib, especially for the ARM architecture.
-
+
Those versions have not been blessed by the newlib comunity (nor have they
been cursed either!), but they look to be pretty much stable, and even
more stable than the upstream versions. YMMV...
-
+
If you do not know what this Linaro stuff is, then simply say 'n' here,
and rest in peace. OTOH, if you know what you are doing, you will be
able to use and enjoy :-) the Linaro versions by saying 'y' here.
-
+
Linaro: http://www.linaro.org/
choice
@@ -70,6 +70,15 @@ choice
prompt "newlib version"
# Don't remove next line
# CT_INSERT_VERSION_BELOW
+config LIBC_NEWLIB_V_2_5_0
+ bool
+ prompt "2.5.0"
+ select LIBC_NEWLIB_2_5
+
+config LIBC_NEWLIB_V_2_4_0
+ bool
+ prompt "2.4.0.20161025"
+ select LIBC_NEWLIB_2_4
config LIBC_NEWLIB_V_2_3_0
bool
@@ -123,6 +132,14 @@ endchoice
endif # ! LIBC_NEWLIB_CUSTOM
+config LIBC_NEWLIB_2_5
+ bool
+ select LIBC_NEWLIB_2_5_or_later
+
+config LIBC_NEWLIB_2_4
+ bool
+ select LIBC_NEWLIB_2_4_or_later
+
config LIBC_NEWLIB_2_3
bool
select LIBC_NEWLIB_2_3_or_later
@@ -139,6 +156,14 @@ config LIBC_NEWLIB_2_0
bool
select LIBC_NEWLIB_2_0_or_later
+config LIBC_NEWLIB_2_5_or_later
+ bool
+ select LIBC_NEWLIB_2_4_or_later
+
+config LIBC_NEWLIB_2_4_or_later
+ bool
+ select LIBC_NEWLIB_2_3_or_later
+
config LIBC_NEWLIB_2_3_or_later
bool
select LIBC_NEWLIB_2_2_or_later
@@ -162,6 +187,8 @@ config LIBC_VERSION
string
# Don't remove next line
# CT_INSERT_VERSION_STRING_BELOW
+ default "2.5.0" if LIBC_NEWLIB_V_2_5_0
+ default "2.4.0.20161025" if LIBC_NEWLIB_V_2_4_0
default "2.3.0.20160226" if LIBC_NEWLIB_V_2_3_0
default "linaro-2.2.0-2015.01" if LIBC_NEWLIB_LINARO_V_2_2_0
default "2.2.0.20151023" if LIBC_NEWLIB_V_2_2_0
@@ -189,5 +216,5 @@ config LIBC_NEWLIB_TARGET_CFLAGS
gcc target libraries.
Note: Both TARGET_CFLAGS and LIBC_NEWLIB_TARGET_CFLAGS are used
to compile the libraries.
-
+
Leave blank if you don't know better.
diff --git a/patches/binutils/2.27/120-sh-conf.patch b/patches/binutils/2.27/120-sh-conf.patch
new file mode 100644
index 0000000..c12a023
--- /dev/null
+++ b/patches/binutils/2.27/120-sh-conf.patch
@@ -0,0 +1,33 @@
+r10231 | lethal | 2005-05-02 09:58:00 -0400 (Mon, 02 May 2005) | 13 lines
+
+Likewise, binutils has no idea about any of these new targets either, so we
+fix that up too.. now we're able to actually build a real toolchain for
+sh2a_nofpu- and other more ineptly named toolchains (and yes, there are more
+inept targets than that one, really. Go look, I promise).
+
+diff --git a/configure b/configure
+index 87677bc..2d916f1 100755
+--- a/configure
++++ b/configure
+@@ -3812,7 +3812,7 @@ case "${target}" in
+ or1k*-*-*)
+ noconfigdirs="$noconfigdirs gdb"
+ ;;
+- sh-*-* | sh64-*-*)
++ sh*-*-* | sh64-*-*)
+ case "${target}" in
+ sh*-*-elf)
+ ;;
+diff --git a/configure.ac b/configure.ac
+index 8fe0eca..b10a99f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1140,7 +1140,7 @@ case "${target}" in
+ or1k*-*-*)
+ noconfigdirs="$noconfigdirs gdb"
+ ;;
+- sh-*-* | sh64-*-*)
++ sh*-*-* | sh64-*-*)
+ case "${target}" in
+ sh*-*-elf)
+ ;;
diff --git a/patches/binutils/2.27/300-001_ld_makefile_patch.patch b/patches/binutils/2.27/300-001_ld_makefile_patch.patch
new file mode 100644
index 0000000..2a1320c
--- /dev/null
+++ b/patches/binutils/2.27/300-001_ld_makefile_patch.patch
@@ -0,0 +1,26 @@
+diff --git a/ld/Makefile.am b/ld/Makefile.am
+index 9575f1f..84df0bf 100644
+--- a/ld/Makefile.am
++++ b/ld/Makefile.am
+@@ -54,7 +54,7 @@ endif
+ # We put the scripts in the directory $(scriptdir)/ldscripts.
+ # We can't put the scripts in $(datadir) because the SEARCH_DIR
+ # directives need to be different for native and cross linkers.
+-scriptdir = $(tooldir)/lib
++scriptdir = $(libdir)
+
+ EMUL = @EMUL@
+ EMULATION_OFILES = @EMULATION_OFILES@
+diff --git a/ld/Makefile.in b/ld/Makefile.in
+index 9f56ca1..272860f 100644
+--- a/ld/Makefile.in
++++ b/ld/Makefile.in
+@@ -388,7 +388,7 @@ AM_CFLAGS = $(WARN_CFLAGS)
+ # We put the scripts in the directory $(scriptdir)/ldscripts.
+ # We can't put the scripts in $(datadir) because the SEARCH_DIR
+ # directives need to be different for native and cross linkers.
+-scriptdir = $(tooldir)/lib
++scriptdir = $(libdir)
+ BASEDIR = $(srcdir)/..
+ BFDDIR = $(BASEDIR)/bfd
+ INCDIR = $(BASEDIR)/include
diff --git a/patches/binutils/2.27/300-012_check_ldrunpath_length.patch b/patches/binutils/2.27/300-012_check_ldrunpath_length.patch
new file mode 100644
index 0000000..f1f31af
--- /dev/null
+++ b/patches/binutils/2.27/300-012_check_ldrunpath_length.patch
@@ -0,0 +1,22 @@
+diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
+index 137446f..bb8391a 100644
+--- a/ld/emultempl/elf32.em
++++ b/ld/emultempl/elf32.em
+@@ -1195,6 +1195,8 @@ fragment <<EOF
+ && command_line.rpath == NULL)
+ {
+ lib_path = (const char *) getenv ("LD_RUN_PATH");
++ if ((lib_path) && (strlen (lib_path) == 0))
++ lib_path = NULL;
+ if (gld${EMULATION_NAME}_search_needed (lib_path, &n,
+ force))
+ break;
+@@ -1458,6 +1460,8 @@ gld${EMULATION_NAME}_before_allocation (void)
+ rpath = command_line.rpath;
+ if (rpath == NULL)
+ rpath = (const char *) getenv ("LD_RUN_PATH");
++ if ((rpath) && (*rpath == '\0'))
++ rpath = NULL;
+
+ for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
+ if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
diff --git a/patches/binutils/2.27/320-MinGW-w64-winpthreads-doesnt-have-pthread_mutexattr_settype.patch b/patches/binutils/2.27/320-MinGW-w64-winpthreads-doesnt-have-pthread_mutexattr_settype.patch
new file mode 100644
index 0000000..2956385
--- /dev/null
+++ b/patches/binutils/2.27/320-MinGW-w64-winpthreads-doesnt-have-pthread_mutexattr_settype.patch
@@ -0,0 +1,11 @@
+--- binutils-2.27/gold/gold-threads.cc.orig 2016-12-26 16:44:23.691075600 +1100
++++ binutils-2.27/gold/gold-threads.cc 2016-12-26 16:46:21.071855200 +1100
+@@ -101,7 +101,7 @@
+ int err = pthread_mutexattr_init(&attr);
+ if (err != 0)
+ gold_fatal(_("pthead_mutexattr_init failed: %s"), strerror(err));
+-#ifdef PTHREAD_MUTEX_ADAPTIVE_NP
++#if defined(PTHREAD_MUTEX_ADAPTIVE_NP) && !defined(_WIN32)
+ err = pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ADAPTIVE_NP);
+ if (err != 0)
+ gold_fatal(_("pthread_mutexattr_settype failed: %s"), strerror(err));
diff --git a/patches/binutils/2.27/330-Dont-link-to-libfl-as-its-unnecessary.patch b/patches/binutils/2.27/330-Dont-link-to-libfl-as-its-unnecessary.patch
new file mode 100644
index 0000000..c52af05
--- /dev/null
+++ b/patches/binutils/2.27/330-Dont-link-to-libfl-as-its-unnecessary.patch
@@ -0,0 +1,108 @@
+diff --git a/binutils/configure b/binutils/configure
+index 6e1f21e..78bf4ae 100755
+--- a/binutils/configure
++++ b/binutils/configure
+@@ -12106,6 +12106,7 @@
+ done
+ test -n "$YACC" || YACC="yacc"
+
++save_LIBS=$LIBS
+ for ac_prog in flex lex
+ do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+@@ -12267,6 +12268,8 @@
+ if test "$LEX" = :; then
+ LEX=${am_missing_run}flex
+ fi
++LIBS=$save_LIBS
++LEXLIB=
+
+ ALL_LINGUAS="bg da es fi fr id it ja ro ru rw sk sv tr uk vi zh_CN zh_TW hr ca"
+ # If we haven't got the data from the intl directory,
+diff --git a/binutils/configure.ac b/binutils/configure.ac
+index defe781..8fd236a 100644
+--- a/binutils/configure.ac
++++ b/binutils/configure.ac
+@@ -87,7 +87,10 @@
+ fi
+
+ AC_PROG_YACC
++save_LIBS=$LIBS
+ AM_PROG_LEX
++LIBS=$save_LIBS
++LEXLIB=
+
+ ALL_LINGUAS="bg da es fi fr id it ja ro ru rw sk sv tr uk vi zh_CN zh_TW hr ca"
+ ZW_GNU_GETTEXT_SISTER_DIR
+diff --git a/gas/configure b/gas/configure
+index f959e95..9bb4043 100755
+--- a/gas/configure
++++ b/gas/configure
+@@ -12819,6 +12819,7 @@ fi
+ done
+ test -n "$YACC" || YACC="yacc"
+
++save_LIBS=$LIBS
+ for ac_prog in flex lex
+ do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+@@ -12980,6 +12981,8 @@ esac
+ if test "$LEX" = :; then
+ LEX=${am_missing_run}flex
+ fi
++LIBS=$save_LIBS
++LEXLIB=
+
+ ALL_LINGUAS="fr tr es rw id ru fi ja zh_CN"
+ # If we haven't got the data from the intl directory,
+diff --git a/gas/configure.ac b/gas/configure.ac
+index 07f825d..c552b7e 100644
+--- a/gas/configure.ac
++++ b/gas/configure.ac
+@@ -734,7 +734,10 @@ AC_DEFINE_UNQUOTED(TARGET_VENDOR, "${target_vendor}", [Target vendor.])
+ AC_DEFINE_UNQUOTED(TARGET_OS, "${target_os}", [Target OS.])
+
+ AC_PROG_YACC
++save_LIBS=$LIBS
+ AM_PROG_LEX
++LIBS=$save_LIBS
++LEXLIB=
+
+ ALL_LINGUAS="fr tr es rw id ru fi ja zh_CN"
+ ZW_GNU_GETTEXT_SISTER_DIR
+diff --git a/ld/configure b/ld/configure
+index a446283..1a6bf81 100755
+--- a/ld/configure
++++ b/ld/configure
+@@ -16087,6 +16087,7 @@ fi
+ done
+ test -n "$YACC" || YACC="yacc"
+
++save_LIBS=$LIBS
+ for ac_prog in flex lex
+ do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+@@ -16248,6 +16249,8 @@ esac
+ if test "$LEX" = :; then
+ LEX=${am_missing_run}flex
+ fi
++LIBS=$save_LIBS
++LEXLIB=
+
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
+diff --git a/ld/configure.ac b/ld/configure.ac
+index 188172d..45eec53 100644
+--- a/ld/configure.ac
++++ b/ld/configure.ac
+@@ -186,7 +186,10 @@ AM_PO_SUBDIRS
+ AC_EXEEXT
+
+ AC_PROG_YACC
++save_LIBS=$LIBS
+ AM_PROG_LEX
++LIBS=$save_LIBS
++LEXLIB=
+
+ AM_MAINTAINER_MODE
+ AM_CONDITIONAL(GENINSRC_NEVER, false)
diff --git a/patches/binutils/2.27/340-Darwin-gold-binary-cc-include-string-not-cstring.patch b/patches/binutils/2.27/340-Darwin-gold-binary-cc-include-string-not-cstring.patch
new file mode 100644
index 0000000..e4f235b
--- /dev/null
+++ b/patches/binutils/2.27/340-Darwin-gold-binary-cc-include-string-not-cstring.patch
@@ -0,0 +1,13 @@
+diff --git a/gold/binary.cc b/gold/binary.cc
+index 52df81a..03a8f20 100644
+--- a/gold/binary.cc
++++ b/gold/binary.cc
+@@ -23,7 +23,7 @@
+ #include "gold.h"
+
+ #include <cerrno>
+-#include <cstring>
++#include <string>
+
+ #include "elfcpp.h"
+ #include "stringpool.h"
diff --git a/patches/binutils/2.27/350-Darwin-Two-fixes-from-Android-NDK-PTHREAD_ONCE_INIT-wcsncasecmp.patch b/patches/binutils/2.27/350-Darwin-Two-fixes-from-Android-NDK-PTHREAD_ONCE_INIT-wcsncasecmp.patch
new file mode 100644
index 0000000..6168b31
--- /dev/null
+++ b/patches/binutils/2.27/350-Darwin-Two-fixes-from-Android-NDK-PTHREAD_ONCE_INIT-wcsncasecmp.patch
@@ -0,0 +1,77 @@
+From c39479f4ab4d372b518957871e1f205a03e7c3d6 Mon Sep 17 00:00:00 2001
+From: Andrew Hsieh <andrewhsieh@google.com>
+Date: Wed, 18 Mar 2015 10:57:24 +0800
+Subject: [PATCH] Fix darwin build
+
+1. In Drawin PTHREAD_ONCE_INIT is {0x30B1BCBA, {0}} and the GCC < 4.4
+ doesn't support ended initializer list
+2. wcsncasecmp doesn't exist in MacSDK10.6.x
+
+Change-Id: I69204a72f853f5263dffedc448379d75ed4eca2e
+---
+ binutils-2.25/bfd/peXXigen.c | 22 ++++++++++++++++++++++
+ binutils-2.25/gold/gold-threads.cc | 15 ++++++++++++---
+ 2 files changed, 34 insertions(+), 3 deletions(-)
+
+diff --git binutils-2.25.orig/bfd/peXXigen.c binutils-2.25/bfd/peXXigen.c
+index 13e39e4..7a98306 100644
+--- binutils-2.25.orig/bfd/peXXigen.c
++++ binutils-2.25/bfd/peXXigen.c
+@@ -3522,6 +3522,28 @@ u16_mbtouc (wchar_t * puc, const unsigned short * s, unsigned int n)
+ }
+ #endif /* HAVE_WCHAR_H and not Cygwin/Mingw */
+
++#if defined __APPLE__ && __DARWIN_C_LEVEL < 200809L
++/* wcsncasecmp isn't always defined in Mac SDK */
++static int
++wcsncasecmp(const wchar_t *s1, const wchar_t *s2, size_t n)
++{
++ wchar_t c1, c2;
++
++ if (n == 0)
++ return (0);
++ for (; *s1; s1++, s2++)
++ {
++ c1 = towlower(*s1);
++ c2 = towlower(*s2);
++ if (c1 != c2)
++ return ((int)c1 - c2);
++ if (--n == 0)
++ return (0);
++ }
++ return (-*s2);
++}
++#endif
++
+ /* Perform a comparison of two entries. */
+ static signed int
+ rsrc_cmp (bfd_boolean is_name, rsrc_entry * a, rsrc_entry * b)
+diff --git binutils-2.25.orig/gold/gold-threads.cc binutils-2.25/gold/gold-threads.cc
+index ff5a8ac..45140e0 100644
+--- binutils-2.25.orig/gold/gold-threads.cc
++++ binutils-2.25/gold/gold-threads.cc
+@@ -284,9 +284,18 @@ Condvar::~Condvar()
+ class Once_initialize
+ {
+ public:
+- Once_initialize()
+- : once_(PTHREAD_ONCE_INIT)
+- { }
++ Once_initialize()
++#if !defined(__APPLE__)
++ : once_(PTHREAD_ONCE_INIT)
++ { }
++#else
++// In Drawin PTHREAD_ONCE_INIT is {0x30B1BCBA, {0}} and the GCC < 4.4 doesn't support
++// extended initializer list as above */
++ {
++ pthread_once_t once_2 = PTHREAD_ONCE_INIT;
++ once_ = once_2;
++ }
++#endif
+
+ // Return a pointer to the pthread_once_t variable.
+ pthread_once_t*
+--
+2.1.3
+
diff --git a/patches/binutils/2.27/500-sysroot.patch b/patches/binutils/2.27/500-sysroot.patch
new file mode 100644
index 0000000..4cb9bc7
--- /dev/null
+++ b/patches/binutils/2.27/500-sysroot.patch
@@ -0,0 +1,37 @@
+Signed-off-by: Sven Rebhan <odinshorse@googlemail.com>
+
+Always try to prepend the sysroot prefix to absolute filenames first.
+
+http://bugs.gentoo.org/275666
+http://sourceware.org/bugzilla/show_bug.cgi?id=10340
+
+--- a/ld/ldfile.c
++++ b/ld/ldfile.c
+@@ -336,18 +336,25 @@
+ directory first. */
+ if (!entry->flags.maybe_archive)
+ {
+- if (entry->flags.sysrooted && IS_ABSOLUTE_PATH (entry->filename))
++ /* For absolute pathnames, try to always open the file in the
++ sysroot first. If this fails, try to open the file at the
++ given location. */
++ entry->flags.sysrooted = is_sysrooted_pathname (entry->filename);
++ if (!entry->flags.sysrooted && IS_ABSOLUTE_PATH (entry->filename)
++ && ld_sysroot)
+ {
+ char *name = concat (ld_sysroot, entry->filename,
+ (const char *) NULL);
+ if (ldfile_try_open_bfd (name, entry))
+ {
+ entry->filename = name;
++ entry->flags.sysrooted = TRUE;
+ return TRUE;
+ }
+ free (name);
+ }
+- else if (ldfile_try_open_bfd (entry->filename, entry))
++
++ if (ldfile_try_open_bfd (entry->filename, entry))
+ return TRUE;
+
+ if (IS_ABSOLUTE_PATH (entry->filename))
diff --git a/patches/binutils/2.27/600-poison-system-directories.patch b/patches/binutils/2.27/600-poison-system-directories.patch
new file mode 100644
index 0000000..ff235e3
--- /dev/null
+++ b/patches/binutils/2.27/600-poison-system-directories.patch
@@ -0,0 +1,285 @@
+Patch adapted to binutils 2.23.2 and extended to use
+BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni.
+
+[Gustavo: adapt to binutils 2.25]
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+Upstream-Status: Inappropriate [distribution: codesourcery]
+
+Patch originally created by Mark Hatle, forward-ported to
+binutils 2.21 by Scott Garman.
+
+purpose: warn for uses of system directories when cross linking
+
+Code Merged from Sourcery G++ binutils 2.19 - 4.4-277
+
+2008-07-02 Joseph Myers <joseph@codesourcery.com>
+
+ ld/
+ * ld.h (args_type): Add error_poison_system_directories.
+ * ld.texinfo (--error-poison-system-directories): Document.
+ * ldfile.c (ldfile_add_library_path): Check
+ command_line.error_poison_system_directories.
+ * ldmain.c (main): Initialize
+ command_line.error_poison_system_directories.
+ * lexsup.c (enum option_values): Add
+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES.
+ (ld_options): Add --error-poison-system-directories.
+ (parse_args): Handle new option.
+
+2007-06-13 Joseph Myers <joseph@codesourcery.com>
+
+ ld/
+ * config.in: Regenerate.
+ * ld.h (args_type): Add poison_system_directories.
+ * ld.texinfo (--no-poison-system-directories): Document.
+ * ldfile.c (ldfile_add_library_path): Check
+ command_line.poison_system_directories.
+ * ldmain.c (main): Initialize
+ command_line.poison_system_directories.
+ * lexsup.c (enum option_values): Add
+ OPTION_NO_POISON_SYSTEM_DIRECTORIES.
+ (ld_options): Add --no-poison-system-directories.
+ (parse_args): Handle new option.
+
+2007-04-20 Joseph Myers <joseph@codesourcery.com>
+
+ Merge from Sourcery G++ binutils 2.17:
+
+ 2007-03-20 Joseph Myers <joseph@codesourcery.com>
+ Based on patch by Mark Hatle <mark.hatle@windriver.com>.
+ ld/
+ * configure.ac (--enable-poison-system-directories): New option.
+ * configure, config.in: Regenerate.
+ * ldfile.c (ldfile_add_library_path): If
+ ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib,
+ /usr/lib, /usr/local/lib or /usr/X11R6/lib.
+
+Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+Signed-off-by: Scott Garman <scott.a.garman@intel.com>
+
+diff --git a/ld/config.in b/ld/config.in
+index 276fb77..35c58eb 100644
+--- a/ld/config.in
++++ b/ld/config.in
+@@ -17,6 +17,9 @@
+ language is requested. */
+ #undef ENABLE_NLS
+
++/* Define to warn for use of native system library directories */
++#undef ENABLE_POISON_SYSTEM_DIRECTORIES
++
+ /* Additional extension a shared object might have. */
+ #undef EXTRA_SHLIB_EXTENSION
+
+diff --git a/ld/configure b/ld/configure
+index a446283..d1f9504 100755
+--- a/ld/configure
++++ b/ld/configure
+@@ -788,6 +788,7 @@ with_lib_path
+ enable_targets
+ enable_64_bit_bfd
+ with_sysroot
++enable_poison_system_directories
+ enable_gold
+ enable_got
+ enable_compressed_debug_sections
+@@ -1445,6 +1446,8 @@ Optional Features:
+ --disable-largefile omit support for large files
+ --enable-targets alternative target configurations
+ --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)
++ --enable-poison-system-directories
++ warn for use of native system library directories
+ --enable-gold[=ARG] build gold [ARG={default,yes,no}]
+ --enable-got=<type> GOT handling scheme (target, single, negative,
+ multigot)
+@@ -15498,7 +15501,18 @@ else
+ fi
+
+
++# Check whether --enable-poison-system-directories was given.
++if test "${enable_poison_system_directories+set}" = set; then :
++ enableval=$enable_poison_system_directories;
++else
++ enable_poison_system_directories=no
++fi
++
++if test "x${enable_poison_system_directories}" = "xyes"; then
+
++$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h
++
++fi
+
+ # Check whether --enable-got was given.
+ if test "${enable_got+set}" = set; then :
+diff --git a/ld/configure.ac b/ld/configure.ac
+index 188172d..2cd8443 100644
+--- a/ld/configure.ac
++++ b/ld/configure.ac
+@@ -95,6 +95,16 @@ AC_SUBST(use_sysroot)
+ AC_SUBST(TARGET_SYSTEM_ROOT)
+ AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE)
+
++AC_ARG_ENABLE([poison-system-directories],
++ AS_HELP_STRING([--enable-poison-system-directories],
++ [warn for use of native system library directories]),,
++ [enable_poison_system_directories=no])
++if test "x${enable_poison_system_directories}" = "xyes"; then
++ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES],
++ [1],
++ [Define to warn for use of native system library directories])
++fi
++
+ dnl Use --enable-gold to decide if this linker should be the default.
+ dnl "install_as_default" is set to false if gold is the default linker.
+ dnl "installed_linker" is the installed BFD linker name.
+diff --git a/ld/ld.h b/ld/ld.h
+index d84ec4e..3476b26 100644
+--- a/ld/ld.h
++++ b/ld/ld.h
+@@ -169,6 +169,14 @@ typedef struct {
+ /* If set, display the target memory usage (per memory region). */
+ bfd_boolean print_memory_usage;
+
++ /* If TRUE (the default) warn for uses of system directories when
++ cross linking. */
++ bfd_boolean poison_system_directories;
++
++ /* If TRUE (default FALSE) give an error for uses of system
++ directories when cross linking instead of a warning. */
++ bfd_boolean error_poison_system_directories;
++
+ /* Big or little endian as set on command line. */
+ enum endian_enum endian;
+
+diff --git a/ld/ld.texinfo b/ld/ld.texinfo
+index 1dd7492..fb1438e 100644
+--- a/ld/ld.texinfo
++++ b/ld/ld.texinfo
+@@ -2357,6 +2357,18 @@ string identifying the original linked file does not change.
+
+ Passing @code{none} for @var{style} disables the setting from any
+ @code{--build-id} options earlier on the command line.
++
++@kindex --no-poison-system-directories
++@item --no-poison-system-directories
++Do not warn for @option{-L} options using system directories such as
++@file{/usr/lib} when cross linking. This option is intended for use
++in chroot environments when such directories contain the correct
++libraries for the target system rather than the host.
++
++@kindex --error-poison-system-directories
++@item --error-poison-system-directories
++Give an error instead of a warning for @option{-L} options using
++system directories when cross linking.
+ @end table
+
+ @c man end
+diff --git a/ld/ldfile.c b/ld/ldfile.c
+index 96f9ecc..af231c0 100644
+--- a/ld/ldfile.c
++++ b/ld/ldfile.c
+@@ -114,6 +114,23 @@ ldfile_add_library_path (const char *name, bfd_boolean cmdline)
+ new_dirs->name = concat (ld_sysroot, name + 1, (const char *) NULL);
+ else
+ new_dirs->name = xstrdup (name);
++
++#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES
++ if (command_line.poison_system_directories
++ && ((!strncmp (name, "/lib", 4))
++ || (!strncmp (name, "/usr/lib", 8))
++ || (!strncmp (name, "/usr/local/lib", 14))
++ || (!strncmp (name, "/usr/X11R6/lib", 14))))
++ {
++ if (command_line.error_poison_system_directories)
++ einfo (_("%X%P: error: library search path \"%s\" is unsafe for "
++ "cross-compilation\n"), name);
++ else
++ einfo (_("%P: warning: library search path \"%s\" is unsafe for "
++ "cross-compilation\n"), name);
++ }
++#endif
++
+ }
+
+ /* Try to open a BFD for a lang_input_statement. */
+diff --git a/ld/ldlex.h b/ld/ldlex.h
+index 6f11e7b..0ca3110 100644
+--- a/ld/ldlex.h
++++ b/ld/ldlex.h
+@@ -144,6 +144,8 @@ enum option_values
+ OPTION_PRINT_MEMORY_USAGE,
+ OPTION_REQUIRE_DEFINED_SYMBOL,
+ OPTION_ORPHAN_HANDLING,
++ OPTION_NO_POISON_SYSTEM_DIRECTORIES,
++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES,
+ };
+
+ /* The initial parser states. */
+diff --git a/ld/ldmain.c b/ld/ldmain.c
+index bb0b9cc..a23c56c 100644
+--- a/ld/ldmain.c
++++ b/ld/ldmain.c
+@@ -257,6 +257,8 @@ main (int argc, char **argv)
+ command_line.warn_mismatch = TRUE;
+ command_line.warn_search_mismatch = TRUE;
+ command_line.check_section_addresses = -1;
++ command_line.poison_system_directories = TRUE;
++ command_line.error_poison_system_directories = FALSE;
+
+ /* We initialize DEMANGLING based on the environment variable
+ COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the
+diff --git a/ld/lexsup.c b/ld/lexsup.c
+index 4cad209..be7d584 100644
+--- a/ld/lexsup.c
++++ b/ld/lexsup.c
+@@ -530,6 +530,14 @@ static const struct ld_option ld_options[] =
+ { {"orphan-handling", required_argument, NULL, OPTION_ORPHAN_HANDLING},
+ '\0', N_("=MODE"), N_("Control how orphan sections are handled."),
+ TWO_DASHES },
++ { {"no-poison-system-directories", no_argument, NULL,
++ OPTION_NO_POISON_SYSTEM_DIRECTORIES},
++ '\0', NULL, N_("Do not warn for -L options using system directories"),
++ TWO_DASHES },
++ { {"error-poison-system-directories", no_argument, NULL,
++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES},
++ '\0', NULL, N_("Give an error for -L options using system directories"),
++ TWO_DASHES },
+ };
+
+ #define OPTION_COUNT ARRAY_SIZE (ld_options)
+@@ -542,6 +550,7 @@ parse_args (unsigned argc, char **argv)
+ int ingroup = 0;
+ char *default_dirlist = NULL;
+ char *shortopts;
++ char *BR_paranoid_env;
+ struct option *longopts;
+ struct option *really_longopts;
+ int last_optind;
+@@ -1516,6 +1525,14 @@ parse_args (unsigned argc, char **argv)
+ }
+ break;
+
++ case OPTION_NO_POISON_SYSTEM_DIRECTORIES:
++ command_line.poison_system_directories = FALSE;
++ break;
++
++ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES:
++ command_line.error_poison_system_directories = TRUE;
++ break;
++
+ case OPTION_PUSH_STATE:
+ input_flags.pushed = xmemdup (&input_flags,
+ sizeof (input_flags),
+@@ -1559,6 +1576,10 @@ parse_args (unsigned argc, char **argv)
+ command_line.soname = NULL;
+ }
+
++ BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH");
++ if (BR_paranoid_env && strlen(BR_paranoid_env) > 0)
++ command_line.error_poison_system_directories = TRUE;
++
+ while (ingroup)
+ {
+ lang_leave_group ();
diff --git a/patches/gcc/6.2.0/100-uclibc-conf.patch b/patches/gcc/6.3.0/100-uclibc-conf.patch
index 73d1f0d..73d1f0d 100644
--- a/patches/gcc/6.2.0/100-uclibc-conf.patch
+++ b/patches/gcc/6.3.0/100-uclibc-conf.patch
diff --git a/patches/gcc/6.2.0/301-missing-execinfo_h.patch b/patches/gcc/6.3.0/301-missing-execinfo_h.patch
index 2d0e7ba..2d0e7ba 100644
--- a/patches/gcc/6.2.0/301-missing-execinfo_h.patch
+++ b/patches/gcc/6.3.0/301-missing-execinfo_h.patch
diff --git a/patches/gcc/6.2.0/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch b/patches/gcc/6.3.0/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch
index d8986d5..d8986d5 100644
--- a/patches/gcc/6.2.0/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch
+++ b/patches/gcc/6.3.0/370-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch
diff --git a/patches/gcc/6.2.0/380-gcc-plugin-POSIX-include-sys-select-h.patch b/patches/gcc/6.3.0/380-gcc-plugin-POSIX-include-sys-select-h.patch
index 12ef48e..12ef48e 100644
--- a/patches/gcc/6.2.0/380-gcc-plugin-POSIX-include-sys-select-h.patch
+++ b/patches/gcc/6.3.0/380-gcc-plugin-POSIX-include-sys-select-h.patch
diff --git a/patches/gcc/6.2.0/810-arm-softfloat-libgcc.patch b/patches/gcc/6.3.0/810-arm-softfloat-libgcc.patch
index 5efa7fd..5efa7fd 100644
--- a/patches/gcc/6.2.0/810-arm-softfloat-libgcc.patch
+++ b/patches/gcc/6.3.0/810-arm-softfloat-libgcc.patch
diff --git a/patches/gcc/6.2.0/830-arm_unbreak_armv4t.patch b/patches/gcc/6.3.0/830-arm_unbreak_armv4t.patch
index b730059..b730059 100644
--- a/patches/gcc/6.2.0/830-arm_unbreak_armv4t.patch
+++ b/patches/gcc/6.3.0/830-arm_unbreak_armv4t.patch
diff --git a/patches/gcc/6.2.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch b/patches/gcc/6.3.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch
index af9fb1d..af9fb1d 100644
--- a/patches/gcc/6.2.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch
+++ b/patches/gcc/6.3.0/831-ARM-PR-target-70473-Reduce-size-of-Cortex-A8-automat.patch
diff --git a/patches/gcc/6.2.0/860-cilk-wchar.patch b/patches/gcc/6.3.0/860-cilk-wchar.patch
index 1d9916f..1d9916f 100644
--- a/patches/gcc/6.2.0/860-cilk-wchar.patch
+++ b/patches/gcc/6.3.0/860-cilk-wchar.patch
diff --git a/patches/gcc/6.2.0/870-xtensa-don-t-use-unwind-dw2-fde-dip-with-elf-targets.patch b/patches/gcc/6.3.0/870-xtensa-don-t-use-unwind-dw2-fde-dip-with-elf-targets.patch
index 6e0ce6e..6e0ce6e 100644
--- a/patches/gcc/6.2.0/870-xtensa-don-t-use-unwind-dw2-fde-dip-with-elf-targets.patch
+++ b/patches/gcc/6.3.0/870-xtensa-don-t-use-unwind-dw2-fde-dip-with-elf-targets.patch
diff --git a/patches/gcc/6.2.0/871-xtensa-Fix-PR-target-78118.patch b/patches/gcc/6.3.0/871-xtensa-Fix-PR-target-78118.patch
index c6ae103..c6ae103 100644
--- a/patches/gcc/6.2.0/871-xtensa-Fix-PR-target-78118.patch
+++ b/patches/gcc/6.3.0/871-xtensa-Fix-PR-target-78118.patch
diff --git a/patches/gcc/6.2.0/872-xtensa-Fix-PR-target-78603.patch b/patches/gcc/6.3.0/872-xtensa-Fix-PR-target-78603.patch
index 669097c..669097c 100644
--- a/patches/gcc/6.2.0/872-xtensa-Fix-PR-target-78603.patch
+++ b/patches/gcc/6.3.0/872-xtensa-Fix-PR-target-78603.patch
diff --git a/patches/gcc/6.2.0/890-fix-m68k-compile.patch b/patches/gcc/6.3.0/890-fix-m68k-compile.patch
index 6e63de0..6e63de0 100644
--- a/patches/gcc/6.2.0/890-fix-m68k-compile.patch
+++ b/patches/gcc/6.3.0/890-fix-m68k-compile.patch
diff --git a/patches/gcc/6.2.0/891-fix-m68k-uclinux.patch b/patches/gcc/6.3.0/891-fix-m68k-uclinux.patch
index 4e186bd..4e186bd 100644
--- a/patches/gcc/6.2.0/891-fix-m68k-uclinux.patch
+++ b/patches/gcc/6.3.0/891-fix-m68k-uclinux.patch
diff --git a/patches/gcc/6.2.0/892-libgcc-mkmap-symver-support-skip_underscore.patch b/patches/gcc/6.3.0/892-libgcc-mkmap-symver-support-skip_underscore.patch
index 73ee6c5..73ee6c5 100644
--- a/patches/gcc/6.2.0/892-libgcc-mkmap-symver-support-skip_underscore.patch
+++ b/patches/gcc/6.3.0/892-libgcc-mkmap-symver-support-skip_underscore.patch
diff --git a/patches/gcc/6.2.0/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch b/patches/gcc/6.3.0/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch
index 454295d..454295d 100644
--- a/patches/gcc/6.2.0/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch
+++ b/patches/gcc/6.3.0/893-libgcc-config-bfin-use-the-generic-linker-version-in.patch
diff --git a/patches/gcc/6.2.0/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch b/patches/gcc/6.3.0/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch
index ce49de7..ce49de7 100644
--- a/patches/gcc/6.2.0/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch
+++ b/patches/gcc/6.3.0/894-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch
diff --git a/patches/gcc/6.2.0/895-bfin-define-REENTRANT.patch b/patches/gcc/6.3.0/895-bfin-define-REENTRANT.patch
index e2828a5..e2828a5 100644
--- a/patches/gcc/6.2.0/895-bfin-define-REENTRANT.patch
+++ b/patches/gcc/6.3.0/895-bfin-define-REENTRANT.patch
diff --git a/patches/gcc/6.2.0/910-nios2-bad-multilib-default.patch b/patches/gcc/6.3.0/910-nios2-bad-multilib-default.patch
index 61989e5..61989e5 100644
--- a/patches/gcc/6.2.0/910-nios2-bad-multilib-default.patch
+++ b/patches/gcc/6.3.0/910-nios2-bad-multilib-default.patch
diff --git a/patches/gcc/6.2.0/930-libgcc-disable-split-stack-nothreads.patch b/patches/gcc/6.3.0/930-libgcc-disable-split-stack-nothreads.patch
index 07f9a73..07f9a73 100644
--- a/patches/gcc/6.2.0/930-libgcc-disable-split-stack-nothreads.patch
+++ b/patches/gcc/6.3.0/930-libgcc-disable-split-stack-nothreads.patch
diff --git a/patches/gcc/6.2.0/940-uclinux-enable-threads.patch b/patches/gcc/6.3.0/940-uclinux-enable-threads.patch
index 490a55b..490a55b 100644
--- a/patches/gcc/6.2.0/940-uclinux-enable-threads.patch
+++ b/patches/gcc/6.3.0/940-uclinux-enable-threads.patch
diff --git a/scripts/addToolVersion.sh b/scripts/addToolVersion.sh
index 1976743..90eac2f 100755
--- a/scripts/addToolVersion.sh
+++ b/scripts/addToolVersion.sh
@@ -122,7 +122,9 @@ addToolVersion() {
ver_M=$(getVersionField "${version}" . 1)
ver_m=$(getVersionField "${version}" . 2)
ver_p=$(getVersionField "${version}" . 3)
- if [ ${ver_M} -eq 2 -a ${ver_m} -eq 26 ]; then
+ if [ ${ver_M} -eq 2 -a ${ver_m} -eq 27 ]; then
+ SedExpr1="${SedExpr1}\n select BINUTILS_2_27_or_later"
+ elif [ ${ver_M} -eq 2 -a ${ver_m} -eq 26 ]; then
SedExpr1="${SedExpr1}\n select BINUTILS_2_26_or_later"
elif [ ${ver_M} -eq 2 -a ${ver_m} -eq 25 -a ${ver_p} -eq 1 ]; then
SedExpr1="${SedExpr1}\n select BINUTILS_2_25_1_or_later"