From c4efcd7eaa5d7ba64b80dad06fe496de72ca8b96 Mon Sep 17 00:00:00 2001 From: spaun2002 Date: Wed, 28 Apr 2021 12:54:25 -0700 Subject: Initial commit for gcc11 Signed-off-by: Nik Konyuchenko --- ...003-gcc-plugin-POSIX-include-sys-select-h.patch | 14 ++++++++++ .../gcc/11.1.0/0004-arm-softfloat-libgcc.patch | 31 ++++++++++++++++++++++ ...0008-libgcc-disable-split-stack-nothreads.patch | 17 ++++++++++++ packages/gcc/11.1.0/chksum | 8 ++++++ packages/gcc/11.1.0/version.desc | 0 5 files changed, 70 insertions(+) create mode 100644 packages/gcc/11.1.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch create mode 100644 packages/gcc/11.1.0/0004-arm-softfloat-libgcc.patch create mode 100644 packages/gcc/11.1.0/0008-libgcc-disable-split-stack-nothreads.patch create mode 100644 packages/gcc/11.1.0/chksum create mode 100644 packages/gcc/11.1.0/version.desc (limited to 'packages/gcc') diff --git a/packages/gcc/11.1.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch b/packages/gcc/11.1.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch new file mode 100644 index 00000000..3040e23c --- /dev/null +++ b/packages/gcc/11.1.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch @@ -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 @@ along with GCC; see the file COPYING3. + #include + #include + #include ++#include + #include + #include + #include "marshall.hh" diff --git a/packages/gcc/11.1.0/0004-arm-softfloat-libgcc.patch b/packages/gcc/11.1.0/0004-arm-softfloat-libgcc.patch new file mode 100644 index 00000000..d9800365 --- /dev/null +++ b/packages/gcc/11.1.0/0004-arm-softfloat-libgcc.patch @@ -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. diff --git a/packages/gcc/11.1.0/0008-libgcc-disable-split-stack-nothreads.patch b/packages/gcc/11.1.0/0008-libgcc-disable-split-stack-nothreads.patch new file mode 100644 index 00000000..df91a9ff --- /dev/null +++ b/packages/gcc/11.1.0/0008-libgcc-disable-split-stack-nothreads.patch @@ -0,0 +1,17 @@ +disable split-stack for non-thread builds + +Signed-off-by: Waldemar Brodkorb + +--- + 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 diff --git a/packages/gcc/11.1.0/chksum b/packages/gcc/11.1.0/chksum new file mode 100644 index 00000000..27b11e32 --- /dev/null +++ b/packages/gcc/11.1.0/chksum @@ -0,0 +1,8 @@ +md5 gcc-11.1.0.tar.gz 333068a65c119e74c9d7bfcc75a8eeba +sha1 gcc-11.1.0.tar.gz 7a6652c4c4ae5676cccf5c2eab422f1eba87517f +sha256 gcc-11.1.0.tar.gz e7abb1b4cb58aaa67c5eb49d98e89d13363b8e258ac2b5b105c197b441c09f85 +sha512 gcc-11.1.0.tar.gz cb620f779c2707bf5a42b505faf59d6d766e652bd8ca5f1fa346ef609f7de8b89beffbd3e7dd57f2c6d3df4e3d77a56fc65ac8e8c18c2c7f81d8bc6571db0612 +md5 gcc-11.1.0.tar.xz 77f6252be0861ab918042acf42bc10ff +sha1 gcc-11.1.0.tar.xz 9db7917f4ce337026335430814de0a5e991ec6c1 +sha256 gcc-11.1.0.tar.xz 4c4a6fb8a8396059241c2e674b85b351c26a5d678274007f076957afa1cc9ddf +sha512 gcc-11.1.0.tar.xz fd6bba0f67ff48069d03073d1a9b5e896383b1cfc9dde008e868e60a9ec5014a837d56af0ecbf467b3fb9b37ec74a676e819a18b44393a0a3c4280175b5d7ad8 diff --git a/packages/gcc/11.1.0/version.desc b/packages/gcc/11.1.0/version.desc new file mode 100644 index 00000000..e69de29b -- cgit v1.2.3 From 37c61914ce16e5a9b175d493719b7f986bd00a84 Mon Sep 17 00:00:00 2001 From: spaun2002 Date: Wed, 28 Apr 2021 18:14:57 -0700 Subject: Pull patch for macOS from GCC 10.3.0 package. This should fix linkage error on MacOS. Signed-off-by: Nik Konyuchenko --- .../11.1.0/0000-libtool-leave-framework-alone.patch | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 packages/gcc/11.1.0/0000-libtool-leave-framework-alone.patch (limited to 'packages/gcc') diff --git a/packages/gcc/11.1.0/0000-libtool-leave-framework-alone.patch b/packages/gcc/11.1.0/0000-libtool-leave-framework-alone.patch new file mode 100644 index 00000000..b5804ea1 --- /dev/null +++ b/packages/gcc/11.1.0/0000-libtool-leave-framework-alone.patch @@ -0,0 +1,18 @@ +--- + libtool-ldflags | 5 +++++ + 1 file changed, 5 insertions(+) + +--- a/libtool-ldflags ++++ b/libtool-ldflags +@@ -36,6 +36,11 @@ prev_arg= + 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 -- cgit v1.2.3 From 6ca5f91fb59bb77a942e1287a6fcfec7811ffa36 Mon Sep 17 00:00:00 2001 From: spaun2002 Date: Wed, 28 Apr 2021 20:15:27 -0700 Subject: Disable -Werror for GLIBC for all ARCH for GCC11. This change replicates what GLIBC 2.23 has in the string/rawmemchr.c: // #if __GNUC_PREREQ (11, 0) // /* Likewise GCC 11, with a different warning option. */ // DIAG_IGNORE_NEEDS_COMMENT (11, "-Wstringop-overread"); // #endif With -Werror multiple platforms failing on the string/rawmemchr.c:40 line. Signed-off-by: Nik Konyuchenko --- config/libc/glibc.in | 5 +++-- packages/gcc/package.desc | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) (limited to 'packages/gcc') diff --git a/config/libc/glibc.in b/config/libc/glibc.in index 001cd2f1..e89ed8ce 100644 --- a/config/libc/glibc.in +++ b/config/libc/glibc.in @@ -403,8 +403,9 @@ config GLIBC_SSP # GCC8-related fixes were only available in glibc 2.27. config GLIBC_ENABLE_WERROR bool "Enable -Werror during the build" - depends on !(ARCH_POWERPC && ARCH_64 && GLIBC_V_2_32) - depends on !(ARCH_SPARC && GLIBC_V_2_32) + default n if GLIBC_2_32_or_later && ARCH_POWERPC && ARCH_64 + default n if GLIBC_2_32_or_later && ARCH_SPARC + default n if GLIBC_2_32_or_later && GCC_11_or_later default y if GCC_7_or_older default y if GCC_8_or_later && GLIBC_2_27_or_later help diff --git a/packages/gcc/package.desc b/packages/gcc/package.desc index a37f0c58..0ee344e2 100644 --- a/packages/gcc/package.desc +++ b/packages/gcc/package.desc @@ -2,5 +2,5 @@ repository='svn svn://gcc.gnu.org/svn/gcc' mirrors='$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})' relevantpattern='4.*|. *|.' origin='GNU' -milestones='4.8 4.9 5 6 7 8' +milestones='4.8 4.9 5 6 7 8 11' archive_formats='.tar.xz .tar.gz' -- cgit v1.2.3