aboutsummaryrefslogtreecommitdiff
path: root/packages/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'packages/gcc')
-rw-r--r--packages/gcc/10.3.0/0023-powerpc-Fix-asm-machine-directive-for-some-CPUs.patch59
-rw-r--r--packages/gcc/10.3.0/chksum8
-rw-r--r--packages/gcc/10.4.0/0000-libtool-leave-framework-alone.patch (renamed from packages/gcc/10.3.0/0000-libtool-leave-framework-alone.patch)0
-rw-r--r--packages/gcc/10.4.0/0001-uclibc-conf.patch (renamed from packages/gcc/10.3.0/0001-uclibc-conf.patch)0
-rw-r--r--packages/gcc/10.4.0/0002-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch (renamed from packages/gcc/10.3.0/0002-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch)6
-rw-r--r--packages/gcc/10.4.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch (renamed from packages/gcc/10.3.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch)0
-rw-r--r--packages/gcc/10.4.0/0004-arm-softfloat-libgcc.patch (renamed from packages/gcc/10.3.0/0004-arm-softfloat-libgcc.patch)0
-rw-r--r--packages/gcc/10.4.0/0005-fix-m68k-uclinux.patch (renamed from packages/gcc/10.3.0/0005-fix-m68k-uclinux.patch)2
-rw-r--r--packages/gcc/10.4.0/0006-libgfortran-missing-include.patch (renamed from packages/gcc/10.3.0/0006-libgfortran-missing-include.patch)0
-rw-r--r--packages/gcc/10.4.0/0007-nios2-bad-multilib-default.patch (renamed from packages/gcc/10.3.0/0007-nios2-bad-multilib-default.patch)0
-rw-r--r--packages/gcc/10.4.0/0008-libgcc-disable-split-stack-nothreads.patch (renamed from packages/gcc/10.3.0/0008-libgcc-disable-split-stack-nothreads.patch)0
-rw-r--r--packages/gcc/10.4.0/0009-bionic-ndk.patch (renamed from packages/gcc/10.3.0/0009-bionic-ndk.patch)0
-rw-r--r--packages/gcc/10.4.0/0010-crystax.patch (renamed from packages/gcc/10.3.0/0010-crystax.patch)4
-rw-r--r--packages/gcc/10.4.0/0010-fixinc-don-t-fix-machine-names-in-__has_include-.PR.patch123
-rw-r--r--packages/gcc/10.4.0/0011-crystax.patch (renamed from packages/gcc/10.3.0/0011-crystax.patch)0
-rw-r--r--packages/gcc/10.4.0/0012-crystax.patch (renamed from packages/gcc/10.3.0/0012-crystax.patch)10
-rw-r--r--packages/gcc/10.4.0/0013-crystax.patch (renamed from packages/gcc/10.3.0/0013-crystax.patch)2
-rw-r--r--packages/gcc/10.4.0/0014-crystax.patch (renamed from packages/gcc/10.3.0/0014-crystax.patch)0
-rw-r--r--packages/gcc/10.4.0/0015-crystax.patch (renamed from packages/gcc/10.3.0/0015-crystax.patch)2
-rw-r--r--packages/gcc/10.4.0/0016-crystax.patch (renamed from packages/gcc/10.3.0/0016-crystax.patch)0
-rw-r--r--packages/gcc/10.4.0/0017-crystax.patch (renamed from packages/gcc/10.3.0/0017-crystax.patch)0
-rw-r--r--packages/gcc/10.4.0/0018-isl-0.20.patch (renamed from packages/gcc/10.3.0/0018-isl-0.20.patch)0
-rw-r--r--packages/gcc/10.4.0/0019-AArch64-Fix-build-issue-with-aarch64-builtins.c-on-M.patch (renamed from packages/gcc/10.3.0/0019-AArch64-Fix-build-issue-with-aarch64-builtins.c-on-M.patch)0
-rw-r--r--packages/gcc/10.4.0/0020-libstdcxx-pure-stdio.patch (renamed from packages/gcc/10.3.0/0020-libstdcxx-pure-stdio.patch)0
-rw-r--r--packages/gcc/10.4.0/0021-Darwin-Arm64-Initial-support-for-the-self-host-drive.patch (renamed from packages/gcc/10.3.0/0021-Darwin-Arm64-Initial-support-for-the-self-host-drive.patch)0
-rw-r--r--packages/gcc/10.4.0/0022-Remove-use-of-include_next-from-c-headers.patch (renamed from packages/gcc/10.3.0/0022-Remove-use-of-include_next-from-c-headers.patch)0
-rw-r--r--packages/gcc/10.4.0/chksum8
-rw-r--r--packages/gcc/10.4.0/version.desc (renamed from packages/gcc/10.3.0/version.desc)0
-rw-r--r--packages/gcc/11.3.0/0010-fixinc-don-t-fix-machine-names-in-__has_include-.PR.patch123
-rw-r--r--packages/gcc/11.3.0/0010-libsanitizer-mips64-Set-struct_kernel_stat_sz-to-mat.patch31
-rw-r--r--packages/gcc/12.1.0/chksum8
-rw-r--r--packages/gcc/12.2.0/0000-libtool-leave-framework-alone.patch (renamed from packages/gcc/12.1.0/0000-libtool-leave-framework-alone.patch)0
-rw-r--r--packages/gcc/12.2.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch (renamed from packages/gcc/12.1.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch)0
-rw-r--r--packages/gcc/12.2.0/0002-arm-softfloat-libgcc.patch (renamed from packages/gcc/12.1.0/0002-arm-softfloat-libgcc.patch)0
-rw-r--r--packages/gcc/12.2.0/0003-libgcc-disable-split-stack-nothreads.patch (renamed from packages/gcc/12.1.0/0003-libgcc-disable-split-stack-nothreads.patch)0
-rw-r--r--packages/gcc/12.2.0/0004-Remove-use-of-include_next-from-c-headers.patch (renamed from packages/gcc/12.1.0/0004-Remove-use-of-include_next-from-c-headers.patch)0
-rw-r--r--packages/gcc/12.2.0/chksum8
-rw-r--r--packages/gcc/12.2.0/version.desc (renamed from packages/gcc/12.1.0/version.desc)0
38 files changed, 275 insertions, 119 deletions
diff --git a/packages/gcc/10.3.0/0023-powerpc-Fix-asm-machine-directive-for-some-CPUs.patch b/packages/gcc/10.3.0/0023-powerpc-Fix-asm-machine-directive-for-some-CPUs.patch
deleted file mode 100644
index 3ad38f1e..00000000
--- a/packages/gcc/10.3.0/0023-powerpc-Fix-asm-machine-directive-for-some-CPUs.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From d568abb25fc799123168aac840372b28bb81f85d Mon Sep 17 00:00:00 2001
-From: Sebastian Huber <sebastian.huber@embedded-brains.de>
-Date: Tue, 18 Jan 2022 12:44:53 +0100
-Subject: [PATCH] powerpc: Fix asm machine directive for some CPUs
-
-For some CPUs, the assembler machine directive cannot be determined by ISA
-flags.
-
-gcc/
-
- PR target/104090
- * config/rs6000/rs6000.c (rs6000_machine_from_flags): Use also
- rs6000_cpu.
----
- gcc/config/rs6000/rs6000.c | 28 ++++++++++++++++++++++++++++
- 1 file changed, 28 insertions(+)
-
-diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
-index 4b473e00be39..5404fb187556 100644
---- a/gcc/config/rs6000/rs6000.c
-+++ b/gcc/config/rs6000/rs6000.c
-@@ -5547,6 +5547,34 @@ const char *rs6000_machine;
- const char *
- rs6000_machine_from_flags (void)
- {
-+ /* For some CPUs, the machine cannot be determined by ISA flags. We have to
-+ check them first. */
-+ switch (rs6000_cpu)
-+ {
-+ case PROCESSOR_PPC8540:
-+ case PROCESSOR_PPC8548:
-+ return "e500";
-+
-+ case PROCESSOR_PPCE300C2:
-+ case PROCESSOR_PPCE300C3:
-+ return "e300";
-+
-+ case PROCESSOR_PPCE500MC:
-+ return "e500mc";
-+
-+ case PROCESSOR_PPCE500MC64:
-+ return "e500mc64";
-+
-+ case PROCESSOR_PPCE5500:
-+ return "e5500";
-+
-+ case PROCESSOR_PPCE6500:
-+ return "e6500";
-+
-+ default:
-+ break;
-+ }
-+
- HOST_WIDE_INT flags = rs6000_isa_flags;
-
- /* Disable the flags that should never influence the .machine selection. */
---
-2.35.1
-
diff --git a/packages/gcc/10.3.0/chksum b/packages/gcc/10.3.0/chksum
deleted file mode 100644
index 892d0580..00000000
--- a/packages/gcc/10.3.0/chksum
+++ /dev/null
@@ -1,8 +0,0 @@
-md5 gcc-10.3.0.tar.xz 443c15b92614a3ce8f22e3b24ca2226a
-sha1 gcc-10.3.0.tar.xz fb51ed1660c065898c75951fb38e1ebad7d49feb
-sha256 gcc-10.3.0.tar.xz 64f404c1a650f27fc33da242e1f2df54952e3963a49e06e73f6940f3223ac344
-sha512 gcc-10.3.0.tar.xz 2b2dd7453d48a398c29eaebd1422b70341001b8c90a62aee51e83344e7fdd8a8e45f82a4a9165bd7edc76dada912c932f4b6632c5636760fec4c5d7e402b3f86
-md5 gcc-10.3.0.tar.gz 87910940d70e845f2bf1a57997b6220c
-sha1 gcc-10.3.0.tar.gz f53af25982d6a270d58e9aff0b91ee2b57cd6709
-sha256 gcc-10.3.0.tar.gz 8fcf994811ad4e5c7ac908e8cf62af2c1982319e5551f62ae72016064dacdf16
-sha512 gcc-10.3.0.tar.gz 759672f1cf740fa39b34904d3e6fb5b506a978711d5c75c2c108c1f11ff8d25adba35daad287a1c9d6721383d85eaa9cd77f569eae442015fdccb621643fbe49
diff --git a/packages/gcc/10.3.0/0000-libtool-leave-framework-alone.patch b/packages/gcc/10.4.0/0000-libtool-leave-framework-alone.patch
index 1a86e415..1a86e415 100644
--- a/packages/gcc/10.3.0/0000-libtool-leave-framework-alone.patch
+++ b/packages/gcc/10.4.0/0000-libtool-leave-framework-alone.patch
diff --git a/packages/gcc/10.3.0/0001-uclibc-conf.patch b/packages/gcc/10.4.0/0001-uclibc-conf.patch
index aef750af..aef750af 100644
--- a/packages/gcc/10.3.0/0001-uclibc-conf.patch
+++ b/packages/gcc/10.4.0/0001-uclibc-conf.patch
diff --git a/packages/gcc/10.3.0/0002-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch b/packages/gcc/10.4.0/0002-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch
index ca9b8baf..b797cb86 100644
--- a/packages/gcc/10.3.0/0002-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch
+++ b/packages/gcc/10.4.0/0002-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch
@@ -53,7 +53,7 @@
if test x"$have_pic_shared" != x"yes" -o x"$ac_cv_search_dlopen" = x"no"; then
--- a/gcc/configure
+++ b/gcc/configure
-@@ -30385,6 +30385,9 @@
+@@ -30610,6 +30610,9 @@
pluginlibs=
plugin_check=yes
@@ -63,7 +63,7 @@
case "${host}" in
*-*-mingw*)
# Since plugin support under MinGW is not as straightforward as on
-@@ -30407,6 +30410,11 @@
+@@ -30632,6 +30635,11 @@
export_sym_check=
fi
;;
@@ -75,7 +75,7 @@
*)
if test x$build = x$host; then
export_sym_check="objdump${exeext} -T"
-@@ -30519,23 +30527,23 @@
+@@ -30744,23 +30752,23 @@
case "${host}" in
*-*-darwin*)
CFLAGS=`echo $CFLAGS | sed s/-mdynamic-no-pic//g`
diff --git a/packages/gcc/10.3.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch b/packages/gcc/10.4.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch
index 5f9a07a2..5f9a07a2 100644
--- a/packages/gcc/10.3.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch
+++ b/packages/gcc/10.4.0/0003-gcc-plugin-POSIX-include-sys-select-h.patch
diff --git a/packages/gcc/10.3.0/0004-arm-softfloat-libgcc.patch b/packages/gcc/10.4.0/0004-arm-softfloat-libgcc.patch
index d9800365..d9800365 100644
--- a/packages/gcc/10.3.0/0004-arm-softfloat-libgcc.patch
+++ b/packages/gcc/10.4.0/0004-arm-softfloat-libgcc.patch
diff --git a/packages/gcc/10.3.0/0005-fix-m68k-uclinux.patch b/packages/gcc/10.4.0/0005-fix-m68k-uclinux.patch
index 452a4bb2..fed816a1 100644
--- a/packages/gcc/10.3.0/0005-fix-m68k-uclinux.patch
+++ b/packages/gcc/10.4.0/0005-fix-m68k-uclinux.patch
@@ -10,7 +10,7 @@ Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
--- a/libgcc/config.host
+++ b/libgcc/config.host
-@@ -949,7 +949,7 @@
+@@ -959,7 +959,7 @@
m68k*-*-openbsd*)
;;
m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux with uClibc
diff --git a/packages/gcc/10.3.0/0006-libgfortran-missing-include.patch b/packages/gcc/10.4.0/0006-libgfortran-missing-include.patch
index d4917eed..d4917eed 100644
--- a/packages/gcc/10.3.0/0006-libgfortran-missing-include.patch
+++ b/packages/gcc/10.4.0/0006-libgfortran-missing-include.patch
diff --git a/packages/gcc/10.3.0/0007-nios2-bad-multilib-default.patch b/packages/gcc/10.4.0/0007-nios2-bad-multilib-default.patch
index 4acc4918..4acc4918 100644
--- a/packages/gcc/10.3.0/0007-nios2-bad-multilib-default.patch
+++ b/packages/gcc/10.4.0/0007-nios2-bad-multilib-default.patch
diff --git a/packages/gcc/10.3.0/0008-libgcc-disable-split-stack-nothreads.patch b/packages/gcc/10.4.0/0008-libgcc-disable-split-stack-nothreads.patch
index df91a9ff..df91a9ff 100644
--- a/packages/gcc/10.3.0/0008-libgcc-disable-split-stack-nothreads.patch
+++ b/packages/gcc/10.4.0/0008-libgcc-disable-split-stack-nothreads.patch
diff --git a/packages/gcc/10.3.0/0009-bionic-ndk.patch b/packages/gcc/10.4.0/0009-bionic-ndk.patch
index 474dd8c0..474dd8c0 100644
--- a/packages/gcc/10.3.0/0009-bionic-ndk.patch
+++ b/packages/gcc/10.4.0/0009-bionic-ndk.patch
diff --git a/packages/gcc/10.3.0/0010-crystax.patch b/packages/gcc/10.4.0/0010-crystax.patch
index 5b15ffb8..4b2a3614 100644
--- a/packages/gcc/10.3.0/0010-crystax.patch
+++ b/packages/gcc/10.4.0/0010-crystax.patch
@@ -174,7 +174,7 @@ Date: Wed Jul 29 11:28:29 2015 +0300
: min >= -256 && max < 256 \
--- a/gcc/config/arm/arm.md
+++ b/gcc/config/arm/arm.md
-@@ -9346,7 +9346,7 @@
+@@ -9356,7 +9356,7 @@
(match_operand:SI 2 "const_int_operand") ; total range
(match_operand:SI 3 "" "") ; table label
(match_operand:SI 4 "" "")] ; Out of range label
@@ -185,7 +185,7 @@ Date: Wed Jul 29 11:28:29 2015 +0300
enum insn_code code;
--- a/gcc/config/arm/arm.opt
+++ b/gcc/config/arm/arm.opt
-@@ -202,6 +202,10 @@
+@@ -208,6 +208,10 @@
Target Report Mask(INTERWORK)
Support calls between Thumb and ARM instruction sets.
diff --git a/packages/gcc/10.4.0/0010-fixinc-don-t-fix-machine-names-in-__has_include-.PR.patch b/packages/gcc/10.4.0/0010-fixinc-don-t-fix-machine-names-in-__has_include-.PR.patch
new file mode 100644
index 00000000..2f8ad877
--- /dev/null
+++ b/packages/gcc/10.4.0/0010-fixinc-don-t-fix-machine-names-in-__has_include-.PR.patch
@@ -0,0 +1,123 @@
+From a6eedb593ca068d0ad8655dbb97fcd6371cba682 Mon Sep 17 00:00:00 2001
+From: Xi Ruoyao <xry111@mengyan1223.wang>
+Date: Mon, 28 Jun 2021 13:54:58 +0800
+Subject: [PATCH] fixinc: don't "fix" machine names in __has_include(...)
+ [PR91085]
+
+fixincludes/
+
+ PR other/91085
+ * fixfixes.c (check_has_inc): New static function.
+ (machine_name_fix): Don't replace header names in
+ __has_include(...).
+ * inclhack.def (machine_name): Adjust test.
+ * tests/base/testing.h: Update.
+
+Upstream: 6bf383c37e6131a8e247e8a0997d55d65c830b6d
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
+---
+ fixincludes/fixfixes.c | 45 ++++++++++++++++++++++++++++++--
+ fixincludes/inclhack.def | 3 ++-
+ fixincludes/tests/base/testing.h | 2 +-
+ 3 files changed, 46 insertions(+), 4 deletions(-)
+
+diff --git a/fixincludes/fixfixes.c b/fixincludes/fixfixes.c
+index 034e15d9985..3ff87812036 100644
+--- a/fixincludes/fixfixes.c
++++ b/fixincludes/fixfixes.c
+@@ -477,6 +477,39 @@ FIX_PROC_HEAD( char_macro_def_fix )
+ fputs (text, stdout);
+ }
+
++/* Check if the pattern at pos is actually in a "__has_include(...)"
++ directive. Return the pointer to the ')' of this
++ "__has_include(...)" if it is, NULL otherwise. */
++static const char *
++check_has_inc (const char *begin, const char *pos, const char *end)
++{
++ static const char has_inc[] = "__has_include";
++ const size_t has_inc_len = sizeof (has_inc) - 1;
++ const char *p;
++
++ for (p = memmem (begin, pos - begin, has_inc, has_inc_len);
++ p != NULL;
++ p = memmem (p, pos - p, has_inc, has_inc_len))
++ {
++ p += has_inc_len;
++ while (p < end && ISSPACE (*p))
++ p++;
++
++ /* "__has_include" may appear as "defined(__has_include)",
++ search for the next appearance then. */
++ if (*p != '(')
++ continue;
++
++ /* To avoid too much complexity, just hope there is never a
++ ')' in a header name. */
++ p = memchr (p, ')', end - p);
++ if (p == NULL || p > pos)
++ return p;
++ }
++
++ return NULL;
++}
++
+ /* Fix for machine name #ifdefs that are not in the namespace reserved
+ by the C standard. They won't be defined if compiling with -ansi,
+ and the headers will break. We go to some trouble to only change
+@@ -524,7 +557,7 @@ FIX_PROC_HEAD( machine_name_fix )
+ /* If the 'name_pat' matches in between base and limit, we have
+ a bogon. It is not worth the hassle of excluding comments
+ because comments on #if/#ifdef lines are rare, and strings on
+- such lines are illegal.
++ such lines are only legal in a "__has_include" directive.
+
+ REG_NOTBOL means 'base' is not at the beginning of a line, which
+ shouldn't matter since the name_re has no ^ anchor, but let's
+@@ -544,8 +577,16 @@ FIX_PROC_HEAD( machine_name_fix )
+ break;
+
+ p = base + match[0].rm_so;
+- base += match[0].rm_eo;
+
++ /* Check if the match is in __has_include(...) (PR 91085). */
++ q = check_has_inc (base, p, limit);
++ if (q)
++ {
++ base = q + 1;
++ goto again;
++ }
++
++ base += match[0].rm_eo;
+ /* One more test: if on the same line we have the same string
+ with the appropriate underscores, then leave it alone.
+ We want exactly two leading and trailing underscores. */
+diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def
+index f58e7771e1c..71bd717c233 100644
+--- a/fixincludes/inclhack.def
++++ b/fixincludes/inclhack.def
+@@ -3114,7 +3114,8 @@ fix = {
+ c_fix = machine_name;
+
+ test_text = "/* MACH_DIFF: */\n"
+- "#if defined( i386 ) || defined( sparc ) || defined( vax )"
++ "#if defined( i386 ) || defined( sparc ) || defined( vax ) || "
++ "defined( linux ) || __has_include ( <linux.h> )"
+ "\n/* no uniform test, so be careful :-) */";
+ };
+
+diff --git a/fixincludes/tests/base/testing.h b/fixincludes/tests/base/testing.h
+index cf95321fb86..8b3accaf04e 100644
+--- a/fixincludes/tests/base/testing.h
++++ b/fixincludes/tests/base/testing.h
+@@ -64,7 +64,7 @@ BSD43__IOWR('T', 1) /* Some are multi-line */
+
+ #if defined( MACHINE_NAME_CHECK )
+ /* MACH_DIFF: */
+-#if defined( i386 ) || defined( sparc ) || defined( vax )
++#if defined( i386 ) || defined( sparc ) || defined( vax ) || defined( linux ) || __has_include ( <linux.h> )
+ /* no uniform test, so be careful :-) */
+ #endif /* MACHINE_NAME_CHECK */
+
+--
+2.37.3
diff --git a/packages/gcc/10.3.0/0011-crystax.patch b/packages/gcc/10.4.0/0011-crystax.patch
index f1f9eb12..f1f9eb12 100644
--- a/packages/gcc/10.3.0/0011-crystax.patch
+++ b/packages/gcc/10.4.0/0011-crystax.patch
diff --git a/packages/gcc/10.3.0/0012-crystax.patch b/packages/gcc/10.4.0/0012-crystax.patch
index a61ec095..4af4f5ba 100644
--- a/packages/gcc/10.3.0/0012-crystax.patch
+++ b/packages/gcc/10.4.0/0012-crystax.patch
@@ -25,7 +25,7 @@ Date: Mon Apr 14 15:59:47 2014 -0700
--- a/gcc/config.in
+++ b/gcc/config.in
-@@ -2266,6 +2266,12 @@
+@@ -2285,6 +2285,12 @@
#endif
@@ -111,7 +111,7 @@ Date: Mon Apr 14 15:59:47 2014 -0700
--- a/gcc/configure
+++ b/gcc/configure
-@@ -1000,6 +1000,7 @@
+@@ -999,6 +999,7 @@
enable_fix_cortex_a53_843419
with_glibc_version
enable_gnu_unique_object
@@ -119,7 +119,7 @@ Date: Mon Apr 14 15:59:47 2014 -0700
enable_linker_build_id
enable_libssp
enable_default_ssp
-@@ -1754,6 +1755,9 @@
+@@ -1753,6 +1754,9 @@
--enable-gnu-unique-object
enable the use of the @gnu_unique_object ELF
extension on glibc systems
@@ -129,7 +129,7 @@ Date: Mon Apr 14 15:59:47 2014 -0700
--enable-linker-build-id
compiler will always pass --build-id to linker
--enable-libssp enable linking against libssp
-@@ -28843,6 +28847,38 @@
+@@ -28974,6 +28978,38 @@
$as_echo "#define HAVE_LD_EH_FRAME_HDR 1" >>confdefs.h
@@ -170,7 +170,7 @@ Date: Mon Apr 14 15:59:47 2014 -0700
$as_echo "$gcc_cv_ld_eh_frame_hdr" >&6; }
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
-@@ -5376,6 +5376,35 @@
+@@ -5427,6 +5427,35 @@
if test x"$gcc_cv_ld_eh_frame_hdr" = xyes; then
AC_DEFINE(HAVE_LD_EH_FRAME_HDR, 1,
[Define if your linker supports .eh_frame_hdr.])
diff --git a/packages/gcc/10.3.0/0013-crystax.patch b/packages/gcc/10.4.0/0013-crystax.patch
index bf1bc1ce..a9ef42a7 100644
--- a/packages/gcc/10.3.0/0013-crystax.patch
+++ b/packages/gcc/10.4.0/0013-crystax.patch
@@ -12,7 +12,7 @@ Date: Thu Aug 20 19:11:07 2015 +0300
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
-@@ -10340,6 +10340,7 @@
+@@ -10353,6 +10353,7 @@
else if (!SYMBOL_REF_FAR_ADDR_P (op0)
&& (SYMBOL_REF_LOCAL_P (op0)
|| (HAVE_LD_PIE_COPYRELOC
diff --git a/packages/gcc/10.3.0/0014-crystax.patch b/packages/gcc/10.4.0/0014-crystax.patch
index 8f2eb438..8f2eb438 100644
--- a/packages/gcc/10.3.0/0014-crystax.patch
+++ b/packages/gcc/10.4.0/0014-crystax.patch
diff --git a/packages/gcc/10.3.0/0015-crystax.patch b/packages/gcc/10.4.0/0015-crystax.patch
index 4f1c28ee..6c558916 100644
--- a/packages/gcc/10.3.0/0015-crystax.patch
+++ b/packages/gcc/10.4.0/0015-crystax.patch
@@ -15,7 +15,7 @@ Date: Mon Apr 14 21:05:51 2014 -0700
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
-@@ -24131,9 +24131,13 @@
+@@ -24179,9 +24179,13 @@
memsize = MEM_SIZE (x);
/* Only certain alignment specifiers are supported by the hardware. */
diff --git a/packages/gcc/10.3.0/0016-crystax.patch b/packages/gcc/10.4.0/0016-crystax.patch
index 8c21a1cc..8c21a1cc 100644
--- a/packages/gcc/10.3.0/0016-crystax.patch
+++ b/packages/gcc/10.4.0/0016-crystax.patch
diff --git a/packages/gcc/10.3.0/0017-crystax.patch b/packages/gcc/10.4.0/0017-crystax.patch
index 28284ff4..28284ff4 100644
--- a/packages/gcc/10.3.0/0017-crystax.patch
+++ b/packages/gcc/10.4.0/0017-crystax.patch
diff --git a/packages/gcc/10.3.0/0018-isl-0.20.patch b/packages/gcc/10.4.0/0018-isl-0.20.patch
index 3e14966d..3e14966d 100644
--- a/packages/gcc/10.3.0/0018-isl-0.20.patch
+++ b/packages/gcc/10.4.0/0018-isl-0.20.patch
diff --git a/packages/gcc/10.3.0/0019-AArch64-Fix-build-issue-with-aarch64-builtins.c-on-M.patch b/packages/gcc/10.4.0/0019-AArch64-Fix-build-issue-with-aarch64-builtins.c-on-M.patch
index 00011692..00011692 100644
--- a/packages/gcc/10.3.0/0019-AArch64-Fix-build-issue-with-aarch64-builtins.c-on-M.patch
+++ b/packages/gcc/10.4.0/0019-AArch64-Fix-build-issue-with-aarch64-builtins.c-on-M.patch
diff --git a/packages/gcc/10.3.0/0020-libstdcxx-pure-stdio.patch b/packages/gcc/10.4.0/0020-libstdcxx-pure-stdio.patch
index 7e3e6e65..7e3e6e65 100644
--- a/packages/gcc/10.3.0/0020-libstdcxx-pure-stdio.patch
+++ b/packages/gcc/10.4.0/0020-libstdcxx-pure-stdio.patch
diff --git a/packages/gcc/10.3.0/0021-Darwin-Arm64-Initial-support-for-the-self-host-drive.patch b/packages/gcc/10.4.0/0021-Darwin-Arm64-Initial-support-for-the-self-host-drive.patch
index dc63fe5d..dc63fe5d 100644
--- a/packages/gcc/10.3.0/0021-Darwin-Arm64-Initial-support-for-the-self-host-drive.patch
+++ b/packages/gcc/10.4.0/0021-Darwin-Arm64-Initial-support-for-the-self-host-drive.patch
diff --git a/packages/gcc/10.3.0/0022-Remove-use-of-include_next-from-c-headers.patch b/packages/gcc/10.4.0/0022-Remove-use-of-include_next-from-c-headers.patch
index b32fe559..b32fe559 100644
--- a/packages/gcc/10.3.0/0022-Remove-use-of-include_next-from-c-headers.patch
+++ b/packages/gcc/10.4.0/0022-Remove-use-of-include_next-from-c-headers.patch
diff --git a/packages/gcc/10.4.0/chksum b/packages/gcc/10.4.0/chksum
new file mode 100644
index 00000000..1f582bce
--- /dev/null
+++ b/packages/gcc/10.4.0/chksum
@@ -0,0 +1,8 @@
+md5 gcc-10.4.0.tar.xz d307b8748a74939359a5843f859a4dec
+sha1 gcc-10.4.0.tar.xz 352ec04a356ce6ab36975f7a4a5a38464ee98004
+sha256 gcc-10.4.0.tar.xz c9297d5bcd7cb43f3dfc2fed5389e948c9312fd962ef6a4ce455cff963ebe4f1
+sha512 gcc-10.4.0.tar.xz 440c08ca746da450d9a1b35e8fd2305cb27e7e6987cd9d0f7d375f3b1fc9e4b0bd7acb3cd7bf795e72fcbead59cdef5b6c152862f5d35cd9fbfe6902101ce648
+md5 gcc-10.4.0.tar.gz 854262f3582222f5dc8f093ca556e910
+sha1 gcc-10.4.0.tar.gz 0dadb589fd3f5ade1c9ad7cf05ae5032715e74e6
+sha256 gcc-10.4.0.tar.gz ab1974017834430de27fd803ade4389602a7d6ca1362496c57bef384b2a4cb07
+sha512 gcc-10.4.0.tar.gz 462c1d022751277e0933ce1f71d7550cd65f6e36e3e2c7e0b19d5ef074f826f5a53746af6aba8e359c8e906128c4973b18be0b4ddf722b276dd87a21ad5761de
diff --git a/packages/gcc/10.3.0/version.desc b/packages/gcc/10.4.0/version.desc
index e69de29b..e69de29b 100644
--- a/packages/gcc/10.3.0/version.desc
+++ b/packages/gcc/10.4.0/version.desc
diff --git a/packages/gcc/11.3.0/0010-fixinc-don-t-fix-machine-names-in-__has_include-.PR.patch b/packages/gcc/11.3.0/0010-fixinc-don-t-fix-machine-names-in-__has_include-.PR.patch
new file mode 100644
index 00000000..5e657bd2
--- /dev/null
+++ b/packages/gcc/11.3.0/0010-fixinc-don-t-fix-machine-names-in-__has_include-.PR.patch
@@ -0,0 +1,123 @@
+From de3f4ee9a5bd2adcb5ff2e1690db2567fda1473c Mon Sep 17 00:00:00 2001
+From: Xi Ruoyao <xry111@mengyan1223.wang>
+Date: Mon, 28 Jun 2021 13:54:58 +0800
+Subject: [PATCH] fixinc: don't "fix" machine names in __has_include(...)
+ [PR91085]
+
+fixincludes/
+
+ PR other/91085
+ * fixfixes.c (check_has_inc): New static function.
+ (machine_name_fix): Don't replace header names in
+ __has_include(...).
+ * inclhack.def (machine_name): Adjust test.
+ * tests/base/testing.h: Update.
+
+Upstream: 6bf383c37e6131a8e247e8a0997d55d65c830b6d
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
+---
+ fixincludes/fixfixes.c | 45 ++++++++++++++++++++++++++++++--
+ fixincludes/inclhack.def | 3 ++-
+ fixincludes/tests/base/testing.h | 2 +-
+ 3 files changed, 46 insertions(+), 4 deletions(-)
+
+diff --git a/fixincludes/fixfixes.c b/fixincludes/fixfixes.c
+index 5b23a8b640d..404b420f302 100644
+--- a/fixincludes/fixfixes.c
++++ b/fixincludes/fixfixes.c
+@@ -477,6 +477,39 @@ FIX_PROC_HEAD( char_macro_def_fix )
+ fputs (text, stdout);
+ }
+
++/* Check if the pattern at pos is actually in a "__has_include(...)"
++ directive. Return the pointer to the ')' of this
++ "__has_include(...)" if it is, NULL otherwise. */
++static const char *
++check_has_inc (const char *begin, const char *pos, const char *end)
++{
++ static const char has_inc[] = "__has_include";
++ const size_t has_inc_len = sizeof (has_inc) - 1;
++ const char *p;
++
++ for (p = memmem (begin, pos - begin, has_inc, has_inc_len);
++ p != NULL;
++ p = memmem (p, pos - p, has_inc, has_inc_len))
++ {
++ p += has_inc_len;
++ while (p < end && ISSPACE (*p))
++ p++;
++
++ /* "__has_include" may appear as "defined(__has_include)",
++ search for the next appearance then. */
++ if (*p != '(')
++ continue;
++
++ /* To avoid too much complexity, just hope there is never a
++ ')' in a header name. */
++ p = memchr (p, ')', end - p);
++ if (p == NULL || p > pos)
++ return p;
++ }
++
++ return NULL;
++}
++
+ /* Fix for machine name #ifdefs that are not in the namespace reserved
+ by the C standard. They won't be defined if compiling with -ansi,
+ and the headers will break. We go to some trouble to only change
+@@ -524,7 +557,7 @@ FIX_PROC_HEAD( machine_name_fix )
+ /* If the 'name_pat' matches in between base and limit, we have
+ a bogon. It is not worth the hassle of excluding comments
+ because comments on #if/#ifdef lines are rare, and strings on
+- such lines are illegal.
++ such lines are only legal in a "__has_include" directive.
+
+ REG_NOTBOL means 'base' is not at the beginning of a line, which
+ shouldn't matter since the name_re has no ^ anchor, but let's
+@@ -544,8 +577,16 @@ FIX_PROC_HEAD( machine_name_fix )
+ break;
+
+ p = base + match[0].rm_so;
+- base += match[0].rm_eo;
+
++ /* Check if the match is in __has_include(...) (PR 91085). */
++ q = check_has_inc (base, p, limit);
++ if (q)
++ {
++ base = q + 1;
++ goto again;
++ }
++
++ base += match[0].rm_eo;
+ /* One more test: if on the same line we have the same string
+ with the appropriate underscores, then leave it alone.
+ We want exactly two leading and trailing underscores. */
+diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def
+index 066bef99162..b7ad6982e96 100644
+--- a/fixincludes/inclhack.def
++++ b/fixincludes/inclhack.def
+@@ -3154,7 +3154,8 @@ fix = {
+ c_fix = machine_name;
+
+ test_text = "/* MACH_DIFF: */\n"
+- "#if defined( i386 ) || defined( sparc ) || defined( vax )"
++ "#if defined( i386 ) || defined( sparc ) || defined( vax ) || "
++ "defined( linux ) || __has_include ( <linux.h> )"
+ "\n/* no uniform test, so be careful :-) */";
+ };
+
+diff --git a/fixincludes/tests/base/testing.h b/fixincludes/tests/base/testing.h
+index cf95321fb86..8b3accaf04e 100644
+--- a/fixincludes/tests/base/testing.h
++++ b/fixincludes/tests/base/testing.h
+@@ -64,7 +64,7 @@ BSD43__IOWR('T', 1) /* Some are multi-line */
+
+ #if defined( MACHINE_NAME_CHECK )
+ /* MACH_DIFF: */
+-#if defined( i386 ) || defined( sparc ) || defined( vax )
++#if defined( i386 ) || defined( sparc ) || defined( vax ) || defined( linux ) || __has_include ( <linux.h> )
+ /* no uniform test, so be careful :-) */
+ #endif /* MACHINE_NAME_CHECK */
+
+--
+2.37.3
diff --git a/packages/gcc/11.3.0/0010-libsanitizer-mips64-Set-struct_kernel_stat_sz-to-mat.patch b/packages/gcc/11.3.0/0010-libsanitizer-mips64-Set-struct_kernel_stat_sz-to-mat.patch
deleted file mode 100644
index 8d05ca65..00000000
--- a/packages/gcc/11.3.0/0010-libsanitizer-mips64-Set-struct_kernel_stat_sz-to-mat.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From ac6e15a2776e8fffdbd108213e8690c9f30a7380 Mon Sep 17 00:00:00 2001
-From: Chris Packham <chris.packham@alliedtelesis.co.nz>
-Date: Mon, 16 May 2022 20:55:36 +1200
-Subject: [PATCH] libsanitizer: mips64: Set struct_kernel_stat_sz to match the
- kernel
-
-The kernel's struct stat is 104 bytes when compiling for
-_MIPS_SIM_ABI64. Set struct_kernel_stat_sz to match.
-
-Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
-Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105614
----
- libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
-index 83861105a509..326419a5d613 100644
---- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
-+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
-@@ -83,7 +83,7 @@ const unsigned struct_kernel_stat64_sz = 104;
- #elif defined(__mips__)
- const unsigned struct_kernel_stat_sz = SANITIZER_ANDROID
- ? FIRST_32_SECOND_64(104, 128)
-- : FIRST_32_SECOND_64(144, 216);
-+ : FIRST_32_SECOND_64(144, 104);
- const unsigned struct_kernel_stat64_sz = 104;
- #elif defined(__s390__) && !defined(__s390x__)
- const unsigned struct_kernel_stat_sz = 64;
---
-2.36.1
-
diff --git a/packages/gcc/12.1.0/chksum b/packages/gcc/12.1.0/chksum
deleted file mode 100644
index 9ceca4ae..00000000
--- a/packages/gcc/12.1.0/chksum
+++ /dev/null
@@ -1,8 +0,0 @@
-md5 gcc-12.1.0.tar.xz ed45b55ee859ada4b25a1e76e0c4d966
-sha1 gcc-12.1.0.tar.xz 81614dacd8625a3896a57df375b695dba0c75f36
-sha256 gcc-12.1.0.tar.xz 62fd634889f31c02b64af2c468f064b47ad1ca78411c45abe6ac4b5f8dd19c7b
-sha512 gcc-12.1.0.tar.xz 2121d295292814a6761edf1fba08c5f633ebe16f52b80e7b73a91050e71e1d2ed98bf17eebad263e191879561c02b48906c53faa4c4670c486a26fc75df23900
-md5 gcc-12.1.0.tar.gz 7854cdccc3a7988aa37fb0d0038b8096
-sha1 gcc-12.1.0.tar.gz 7e79c695a0380ac838fa7c876a121cd28a73a9f5
-sha256 gcc-12.1.0.tar.gz e88a004a14697bbbaba311f38a938c716d9a652fd151aaaa4cf1b5b99b90e2de
-sha512 gcc-12.1.0.tar.gz 32da0e69478b6848e187c3a37579b76d0176b34cdb94726bf3ce7fdda7764965adbb5d2013de5a9b254adad9eb1cfaff90f4ba8da54cfe56e46b9cbfe8882a3b
diff --git a/packages/gcc/12.1.0/0000-libtool-leave-framework-alone.patch b/packages/gcc/12.2.0/0000-libtool-leave-framework-alone.patch
index 1a86e415..1a86e415 100644
--- a/packages/gcc/12.1.0/0000-libtool-leave-framework-alone.patch
+++ b/packages/gcc/12.2.0/0000-libtool-leave-framework-alone.patch
diff --git a/packages/gcc/12.1.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch b/packages/gcc/12.2.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch
index 5f9a07a2..5f9a07a2 100644
--- a/packages/gcc/12.1.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch
+++ b/packages/gcc/12.2.0/0001-gcc-plugin-POSIX-include-sys-select-h.patch
diff --git a/packages/gcc/12.1.0/0002-arm-softfloat-libgcc.patch b/packages/gcc/12.2.0/0002-arm-softfloat-libgcc.patch
index d9800365..d9800365 100644
--- a/packages/gcc/12.1.0/0002-arm-softfloat-libgcc.patch
+++ b/packages/gcc/12.2.0/0002-arm-softfloat-libgcc.patch
diff --git a/packages/gcc/12.1.0/0003-libgcc-disable-split-stack-nothreads.patch b/packages/gcc/12.2.0/0003-libgcc-disable-split-stack-nothreads.patch
index df91a9ff..df91a9ff 100644
--- a/packages/gcc/12.1.0/0003-libgcc-disable-split-stack-nothreads.patch
+++ b/packages/gcc/12.2.0/0003-libgcc-disable-split-stack-nothreads.patch
diff --git a/packages/gcc/12.1.0/0004-Remove-use-of-include_next-from-c-headers.patch b/packages/gcc/12.2.0/0004-Remove-use-of-include_next-from-c-headers.patch
index 920e64da..920e64da 100644
--- a/packages/gcc/12.1.0/0004-Remove-use-of-include_next-from-c-headers.patch
+++ b/packages/gcc/12.2.0/0004-Remove-use-of-include_next-from-c-headers.patch
diff --git a/packages/gcc/12.2.0/chksum b/packages/gcc/12.2.0/chksum
new file mode 100644
index 00000000..52e3b629
--- /dev/null
+++ b/packages/gcc/12.2.0/chksum
@@ -0,0 +1,8 @@
+md5 gcc-12.2.0.tar.xz 73bafd0af874439dcdb9fc063b6fb069
+sha1 gcc-12.2.0.tar.xz 5dce6dc0091b8049b530d1587513a07201691760
+sha256 gcc-12.2.0.tar.xz e549cf9cf3594a00e27b6589d4322d70e0720cdd213f39beb4181e06926230ff
+sha512 gcc-12.2.0.tar.xz e9e857bd81bf7a370307d6848c81b2f5403db8c7b5207f54bce3f3faac3bde63445684092c2bc1a2427cddb6f7746496d9fbbef05fbbd77f2810b2998f1f9173
+md5 gcc-12.2.0.tar.gz d7644b494246450468464ffc2c2b19c3
+sha1 gcc-12.2.0.tar.gz 528e27c3c4a0bb9b13ee2a4c53bb1cf048fc1fe4
+sha256 gcc-12.2.0.tar.gz ac6b317eb4d25444d87cf29c0d141dedc1323a1833ec9995211b13e1a851261c
+sha512 gcc-12.2.0.tar.gz 36ab2267540f205b148037763b3806558e796d564ca7831799c88abcf03393c6dc2cdc9d53e8f094f6dc1245e47a406e1782604eb9d119410d406032f59c1544
diff --git a/packages/gcc/12.1.0/version.desc b/packages/gcc/12.2.0/version.desc
index e69de29b..e69de29b 100644
--- a/packages/gcc/12.1.0/version.desc
+++ b/packages/gcc/12.2.0/version.desc