Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #958 from stilor/gcc8
Add GCC 8.1
- Loading branch information
Showing
20 changed files
with
1,375 additions
and
0 deletions.
There are no files selected for viewing
18 changes: 18 additions & 0 deletions
18
packages/gcc/8.1.0/0000-libtool-leave-framework-alone.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
--- | ||
libtool-ldflags | 5 +++++ | ||
1 file changed, 5 insertions(+) | ||
|
||
--- a/libtool-ldflags | ||
+++ b/libtool-ldflags | ||
@@ -36,6 +36,11 @@ | ||
for arg | ||
do | ||
case $arg in | ||
+ -framework) | ||
+ # libtool handles this option. It should not be prefixed with | ||
+ # -Xcompiler, as that would split it from the argument that | ||
+ # follows. | ||
+ ;; | ||
-f*|--*|-static-lib*|-shared-lib*|-B*) | ||
# Libtool does not ascribe any special meaning options | ||
# that begin with -f or with a double-dash. So, it will |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
--- | ||
contrib/regression/objs-gcc.sh | 4 ++++ | ||
1 file changed, 4 insertions(+) | ||
|
||
--- a/contrib/regression/objs-gcc.sh | ||
+++ b/contrib/regression/objs-gcc.sh | ||
@@ -106,6 +106,10 @@ | ||
then | ||
make all-gdb all-dejagnu all-ld || exit 1 | ||
make install-gdb install-dejagnu install-ld || exit 1 | ||
+elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ] | ||
+ then | ||
+ make all-gdb all-dejagnu all-ld || exit 1 | ||
+ make install-gdb install-dejagnu install-ld || exit 1 | ||
elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then | ||
make bootstrap || exit 1 | ||
make install || exit 1 |
163 changes: 163 additions & 0 deletions
163
packages/gcc/8.1.0/0002-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,163 @@ | ||
--- | ||
config/gcc-plugin.m4 | 18 +++++++++++++----- | ||
gcc/configure | 22 +++++++++++++++------- | ||
libcc1/configure | 22 +++++++++++++++------- | ||
3 files changed, 43 insertions(+), 19 deletions(-) | ||
|
||
--- a/config/gcc-plugin.m4 | ||
+++ b/config/gcc-plugin.m4 | ||
@@ -21,6 +21,9 @@ | ||
pluginlibs= | ||
plugin_check=yes | ||
|
||
+ PICFLAG="-fPIC" | ||
+ UNDEFINEDPREAMBLE="extern int X;" | ||
+ UNDEFINEDCODE="return X == 0;" | ||
case "${host}" in | ||
*-*-mingw*) | ||
# Since plugin support under MinGW is not as straightforward as on | ||
@@ -43,6 +46,11 @@ | ||
export_sym_check= | ||
fi | ||
;; | ||
+ *-*-mingw*|*-*-cygwin*|*-*-msys*) | ||
+ PICFLAG="" | ||
+ UNDEFINEDPREAMBLE="" | ||
+ UNDEFINEDCODE="" | ||
+ ;; | ||
*) | ||
if test x$build = x$host; then | ||
export_sym_check="objdump${exeext} -T" | ||
@@ -94,17 +102,17 @@ | ||
case "${host}" in | ||
*-*-darwin*) | ||
CFLAGS=`echo $CFLAGS | sed s/-mdynamic-no-pic//g` | ||
- CFLAGS="$CFLAGS -fPIC" | ||
+ CFLAGS="$CFLAGS ${PICFLAG}" | ||
LDFLAGS="$LDFLAGS -shared -undefined dynamic_lookup" | ||
;; | ||
*) | ||
- CFLAGS="$CFLAGS -fPIC" | ||
- LDFLAGS="$LDFLAGS -fPIC -shared" | ||
+ CFLAGS="$CFLAGS ${PICFLAG}" | ||
+ LDFLAGS="$LDFLAGS ${PICFLAG} -shared" | ||
;; | ||
esac | ||
- AC_MSG_CHECKING([for -fPIC -shared]) | ||
+ AC_MSG_CHECKING([for ${PICFLAG} -shared]) | ||
AC_TRY_LINK( | ||
- [extern int X;],[return X == 0;], | ||
+ [${UNDEFINEDPREAMBLE}],[${UNDEFINEDCODE}], | ||
[AC_MSG_RESULT([yes]); have_pic_shared=yes], | ||
[AC_MSG_RESULT([no]); have_pic_shared=no]) | ||
if test x"$have_pic_shared" != x"yes" -o x"$ac_cv_search_dlopen" = x"no"; then | ||
--- a/gcc/configure | ||
+++ b/gcc/configure | ||
@@ -29805,6 +29805,9 @@ | ||
pluginlibs= | ||
plugin_check=yes | ||
|
||
+ PICFLAG="-fPIC" | ||
+ UNDEFINEDPREAMBLE="extern int X;" | ||
+ UNDEFINEDCODE="return X == 0;" | ||
case "${host}" in | ||
*-*-mingw*) | ||
# Since plugin support under MinGW is not as straightforward as on | ||
@@ -29827,6 +29830,11 @@ | ||
export_sym_check= | ||
fi | ||
;; | ||
+ *-*-mingw*|*-*-cygwin*|*-*-msys*) | ||
+ PICFLAG="" | ||
+ UNDEFINEDPREAMBLE="" | ||
+ UNDEFINEDCODE="" | ||
+ ;; | ||
*) | ||
if test x$build = x$host; then | ||
export_sym_check="objdump${exeext} -T" | ||
@@ -29939,23 +29947,23 @@ | ||
case "${host}" in | ||
*-*-darwin*) | ||
CFLAGS=`echo $CFLAGS | sed s/-mdynamic-no-pic//g` | ||
- CFLAGS="$CFLAGS -fPIC" | ||
+ CFLAGS="$CFLAGS ${PICFLAG}" | ||
LDFLAGS="$LDFLAGS -shared -undefined dynamic_lookup" | ||
;; | ||
*) | ||
- CFLAGS="$CFLAGS -fPIC" | ||
- LDFLAGS="$LDFLAGS -fPIC -shared" | ||
+ CFLAGS="$CFLAGS ${PICFLAG}" | ||
+ LDFLAGS="$LDFLAGS ${PICFLAG} -shared" | ||
;; | ||
esac | ||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fPIC -shared" >&5 | ||
-$as_echo_n "checking for -fPIC -shared... " >&6; } | ||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${PICFLAG} -shared" >&5 | ||
+$as_echo_n "checking for ${PICFLAG} -shared... " >&6; } | ||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
/* end confdefs.h. */ | ||
-extern int X; | ||
+${UNDEFINEDPREAMBLE} | ||
int | ||
main () | ||
{ | ||
-return X == 0; | ||
+${UNDEFINEDCODE} | ||
; | ||
return 0; | ||
} | ||
--- a/libcc1/configure | ||
+++ b/libcc1/configure | ||
@@ -14554,6 +14554,9 @@ | ||
pluginlibs= | ||
plugin_check=yes | ||
|
||
+ PICFLAG="-fPIC" | ||
+ UNDEFINEDPREAMBLE="extern int X;" | ||
+ UNDEFINEDCODE="return X == 0;" | ||
case "${host}" in | ||
*-*-mingw*) | ||
# Since plugin support under MinGW is not as straightforward as on | ||
@@ -14576,6 +14579,11 @@ | ||
export_sym_check= | ||
fi | ||
;; | ||
+ *-*-mingw*|*-*-cygwin*|*-*-msys*) | ||
+ PICFLAG="" | ||
+ UNDEFINEDPREAMBLE="" | ||
+ UNDEFINEDCODE="" | ||
+ ;; | ||
*) | ||
if test x$build = x$host; then | ||
export_sym_check="objdump${exeext} -T" | ||
@@ -14688,23 +14696,23 @@ | ||
case "${host}" in | ||
*-*-darwin*) | ||
CFLAGS=`echo $CFLAGS | sed s/-mdynamic-no-pic//g` | ||
- CFLAGS="$CFLAGS -fPIC" | ||
+ CFLAGS="$CFLAGS ${PICFLAG}" | ||
LDFLAGS="$LDFLAGS -shared -undefined dynamic_lookup" | ||
;; | ||
*) | ||
- CFLAGS="$CFLAGS -fPIC" | ||
- LDFLAGS="$LDFLAGS -fPIC -shared" | ||
+ CFLAGS="$CFLAGS ${PICFLAG}" | ||
+ LDFLAGS="$LDFLAGS ${PICFLAG} -shared" | ||
;; | ||
esac | ||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fPIC -shared" >&5 | ||
-$as_echo_n "checking for -fPIC -shared... " >&6; } | ||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${PICFLAG} -shared" >&5 | ||
+$as_echo_n "checking for ${PICFLAG} -shared... " >&6; } | ||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||
/* end confdefs.h. */ | ||
-extern int X; | ||
+${UNDEFINEDPREAMBLE} | ||
int | ||
main () | ||
{ | ||
-return X == 0; | ||
+${UNDEFINEDCODE} | ||
; | ||
return 0; | ||
} |
14 changes: 14 additions & 0 deletions
14
packages/gcc/8.1.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
--- | ||
libcc1/connection.cc | 1 + | ||
1 file changed, 1 insertion(+) | ||
|
||
--- a/libcc1/connection.cc | ||
+++ b/libcc1/connection.cc | ||
@@ -21,6 +21,7 @@ | ||
#include <string> | ||
#include <unistd.h> | ||
#include <sys/types.h> | ||
+#include <sys/select.h> | ||
#include <string.h> | ||
#include <errno.h> | ||
#include "marshall.hh" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
--- | ||
gcc/config/arm/linux-elf.h | 2 +- | ||
libgcc/config/arm/t-linux | 7 ++++++- | ||
2 files changed, 7 insertions(+), 2 deletions(-) | ||
|
||
--- a/gcc/config/arm/linux-elf.h | ||
+++ b/gcc/config/arm/linux-elf.h | ||
@@ -58,7 +58,7 @@ | ||
%{shared:-lc} \ | ||
%{!shared:%{profile:-lc_p}%{!profile:-lc}}" | ||
|
||
-#define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc" | ||
+#define LIBGCC_SPEC "-lgcc" | ||
|
||
#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" | ||
|
||
--- a/libgcc/config/arm/t-linux | ||
+++ b/libgcc/config/arm/t-linux | ||
@@ -1,6 +1,11 @@ | ||
LIB1ASMSRC = arm/lib1funcs.S | ||
LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \ | ||
- _ctzsi2 _arm_addsubdf3 _arm_addsubsf3 | ||
+ _ctzsi2 _arm_addsubdf3 _arm_addsubsf3 \ | ||
+ _arm_addsubdf3 _arm_addsubsf3 \ | ||
+ _arm_negdf2 _arm_muldivdf3 _arm_cmpdf2 _arm_unorddf2 \ | ||
+ _arm_fixdfsi _arm_fixunsdfsi _arm_truncdfsf2 \ | ||
+ _arm_negsf2 _arm_muldivsf3 _arm_cmpsf2 _arm_unordsf2 \ | ||
+ _arm_fixsfsi _arm_fixunssfsi | ||
|
||
# Just for these, we omit the frame pointer since it makes such a big | ||
# difference. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
avoids internal compiler error while compiling linux-atomic.c | ||
See here: | ||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53833 | ||
|
||
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> | ||
|
||
--- | ||
libgcc/config.host | 2 +- | ||
1 file changed, 1 insertion(+), 1 deletion(-) | ||
|
||
--- a/libgcc/config.host | ||
+++ b/libgcc/config.host | ||
@@ -847,7 +847,7 @@ | ||
m68k*-*-openbsd*) | ||
;; | ||
m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux with uClibc | ||
- tmake_file="$tmake_file m68k/t-floatlib m68k/t-linux" | ||
+ tmake_file="$tmake_file m68k/t-floatlib" | ||
md_unwind_header=m68k/linux-unwind.h | ||
;; | ||
m68k-*-linux*) # Motorola m68k's running GNU/Linux |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
--- | ||
libgfortran/io/close.c | 1 + | ||
1 file changed, 1 insertion(+) | ||
|
||
--- a/libgfortran/io/close.c | ||
+++ b/libgfortran/io/close.c | ||
@@ -25,6 +25,7 @@ | ||
#include "io.h" | ||
#include "unix.h" | ||
#include <limits.h> | ||
+#include <stdlib.h> | ||
|
||
typedef enum | ||
{ CLOSE_DELETE, CLOSE_KEEP, CLOSE_UNSPECIFIED } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
--- | ||
gcc/config/nios2/nios2.h | 4 ++-- | ||
gcc/config/nios2/t-nios2 | 3 +-- | ||
2 files changed, 3 insertions(+), 4 deletions(-) | ||
|
||
--- a/gcc/config/nios2/nios2.h | ||
+++ b/gcc/config/nios2/nios2.h | ||
@@ -63,11 +63,11 @@ | ||
#if TARGET_ENDIAN_DEFAULT == 0 | ||
# define ASM_SPEC "%{!meb:-EL} %{meb:-EB} %{march=*:-march=%*}" | ||
# define LINK_SPEC_ENDIAN "%{!meb:-EL} %{meb:-EB}" | ||
-# define MULTILIB_DEFAULTS { "EL" } | ||
+# define MULTILIB_DEFAULTS { "mel" } | ||
#else | ||
# define ASM_SPEC "%{!mel:-EB} %{mel:-EL} %{march=*:-march=%*}" | ||
# define LINK_SPEC_ENDIAN "%{!mel:-EB} %{mel:-EL}" | ||
-# define MULTILIB_DEFAULTS { "EB" } | ||
+# define MULTILIB_DEFAULTS { "meb" } | ||
#endif | ||
|
||
#define LINK_SPEC LINK_SPEC_ENDIAN \ | ||
--- a/gcc/config/nios2/t-nios2 | ||
+++ b/gcc/config/nios2/t-nios2 | ||
@@ -22,6 +22,5 @@ | ||
# MULTILIB_DIRNAMES = nomul mulx fpu-60-1 fpu-60-2 | ||
# MULTILIB_EXCEPTIONS = | ||
|
||
-# MULTILIB_OPTIONS += EL/EB | ||
+# MULTILIB_OPTIONS += mel/meb | ||
# MULTILIB_DIRNAMES += le be | ||
-# MULTILIB_MATCHES += EL=mel EB=meb |
17 changes: 17 additions & 0 deletions
17
packages/gcc/8.1.0/0008-libgcc-disable-split-stack-nothreads.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
disable split-stack for non-thread builds | ||
|
||
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> | ||
|
||
--- | ||
libgcc/config/t-stack | 2 ++ | ||
1 file changed, 2 insertions(+) | ||
|
||
--- a/libgcc/config/t-stack | ||
+++ b/libgcc/config/t-stack | ||
@@ -1,4 +1,6 @@ | ||
# Makefile fragment to provide generic support for -fsplit-stack. | ||
# This should be used in config.host for any host which supports | ||
# -fsplit-stack. | ||
+ifeq ($(enable_threads),yes) | ||
LIB2ADD_ST += $(srcdir)/generic-morestack.c $(srcdir)/generic-morestack-thread.c | ||
+endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
commit d38d37bdfe24b7ce1bdcb55642fb6b904718e68f | ||
Author: Howard Chu <hyc@symas.com> | ||
Date: Tue Apr 25 19:02:18 2017 -0700 | ||
|
||
Fix ctype for newer NDK headers | ||
|
||
--- | ||
libstdc++-v3/config/os/bionic/ctype_base.h | 34 +++++++++++++++++++---------- | ||
1 file changed, 23 insertions(+), 11 deletions(-) | ||
|
||
--- a/libstdc++-v3/config/os/bionic/ctype_base.h | ||
+++ b/libstdc++-v3/config/os/bionic/ctype_base.h | ||
@@ -28,6 +28,18 @@ | ||
|
||
// Information as gleaned from /usr/include/ctype.h | ||
|
||
+// _CTYPE prefix was added in NDK r14 unified headers | ||
+#ifndef _CTYPE_U | ||
+#define _CTYPE_U _U | ||
+#define _CTYPE_L _L | ||
+#define _CTYPE_D _N | ||
+#define _CTYPE_S _S | ||
+#define _CTYPE_P _P | ||
+#define _CTYPE_C _C | ||
+#define _CTYPE_X _X | ||
+#define _CTYPE_B _B | ||
+#endif | ||
+ | ||
namespace std _GLIBCXX_VISIBILITY(default) | ||
{ | ||
_GLIBCXX_BEGIN_NAMESPACE_VERSION | ||
@@ -41,17 +53,17 @@ | ||
// NB: Offsets into ctype<char>::_M_table force a particular size | ||
// on the mask type. Because of this, we don't use an enum. | ||
typedef char mask; | ||
- static const mask upper = _U; | ||
- static const mask lower = _L; | ||
- static const mask alpha = _U | _L; | ||
- static const mask digit = _N; | ||
- static const mask xdigit = _X | _N; | ||
- static const mask space = _S; | ||
- static const mask print = _P | _U | _L | _N | _B; | ||
- static const mask graph = _P | _U | _L | _N; | ||
- static const mask cntrl = _C; | ||
- static const mask punct = _P; | ||
- static const mask alnum = _U | _L | _N; | ||
+ static const mask upper = _CTYPE_U; | ||
+ static const mask lower = _CTYPE_L; | ||
+ static const mask alpha = _CTYPE_U | _CTYPE_L; | ||
+ static const mask digit = _CTYPE_D; | ||
+ static const mask xdigit = _CTYPE_X | _CTYPE_D; | ||
+ static const mask space = _CTYPE_S; | ||
+ static const mask print = _CTYPE_P | _CTYPE_U | _CTYPE_L | _CTYPE_D | _CTYPE_B; | ||
+ static const mask graph = _CTYPE_P | _CTYPE_U | _CTYPE_L | _CTYPE_D; | ||
+ static const mask cntrl = _CTYPE_C; | ||
+ static const mask punct = _CTYPE_P; | ||
+ static const mask alnum = _CTYPE_U | _CTYPE_L | _CTYPE_D; | ||
#if __cplusplus >= 201103L | ||
static const mask blank = space; | ||
#endif |
Oops, something went wrong.