From 0488a3a8b5b8684cb9af6a02c77f9e6124889169 Mon Sep 17 00:00:00 2001 From: Oliver Smith Date: Mon, 13 Jul 2026 21:17:14 +0200 Subject: [PATCH] cross/gcc-*: upgrade to 15.2.0-r8 Signed-off-by: Oliver Smith Part-of: --- ...-up-build-against-latest-kernel-head.patch | 63 +++++++++++++++++++ cross/gcc-aarch64/APKBUILD | 6 +- ...-up-build-against-latest-kernel-head.patch | 63 +++++++++++++++++++ cross/gcc-armv7/APKBUILD | 6 +- ...-up-build-against-latest-kernel-head.patch | 63 +++++++++++++++++++ cross/gcc-loongarch64/APKBUILD | 6 +- ...-up-build-against-latest-kernel-head.patch | 63 +++++++++++++++++++ cross/gcc-ppc64le/APKBUILD | 6 +- ...-up-build-against-latest-kernel-head.patch | 63 +++++++++++++++++++ cross/gcc-riscv64/APKBUILD | 6 +- ...-up-build-against-latest-kernel-head.patch | 63 +++++++++++++++++++ cross/gcc-x86/APKBUILD | 6 +- ...-up-build-against-latest-kernel-head.patch | 63 +++++++++++++++++++ cross/gcc-x86_64/APKBUILD | 6 +- 14 files changed, 469 insertions(+), 14 deletions(-) create mode 100644 cross/gcc-aarch64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch create mode 100644 cross/gcc-armv7/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch create mode 100644 cross/gcc-loongarch64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch create mode 100644 cross/gcc-ppc64le/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch create mode 100644 cross/gcc-riscv64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch create mode 100644 cross/gcc-x86/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch create mode 100644 cross/gcc-x86_64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch diff --git a/cross/gcc-aarch64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch b/cross/gcc-aarch64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch new file mode 100644 index 000000000..48e98f662 --- /dev/null +++ b/cross/gcc-aarch64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch @@ -0,0 +1,63 @@ +From 259d5c6ef7ca0b7fb07acf97538fa7ba590c8e8b Mon Sep 17 00:00:00 2001 +From: Jakub Jelinek +Date: Wed, 29 Apr 2026 11:14:03 +0200 +Subject: [PATCH] libsanitizer: Fix up build against latest kernel headers + +The Linux kernel recently removed the linux/scc.h header, so gcc (both +16.1-rc2 and trunk) fails to build e.g. on Fedora rawhide now. + +The following patch cherry picks a recent upstream fix for this, the macros +defined in that header haven't been really used since 2013-ish. + +2026-04-29 Jakub Jelinek + + * sanitizer_common/sanitizer_platform_limits_posix.cpp: Cherry picked + from LLVM commit 3dc4fd6dd41100f051a63642f449b16324389c96. + +Reviewed-by: Richard Biener +--- + .../sanitizer_platform_limits_posix.cpp | 21 ++++++++----------- + 1 file changed, 9 insertions(+), 12 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +index 5872e3396f0..47eb1dc3267 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -152,16 +152,15 @@ typedef struct user_fpregs elf_fpregset_t; + #if defined(__mips64) + # include + #endif +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include + #endif // SANITIZER_ANDROID + + #include +@@ -534,8 +533,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned struct_kbsentry_sz = sizeof(struct kbsentry); + unsigned struct_mtconfiginfo_sz = sizeof(struct mtconfiginfo); + unsigned struct_nr_parms_struct_sz = sizeof(struct nr_parms_struct); +- unsigned struct_scc_modem_sz = sizeof(struct scc_modem); +- unsigned struct_scc_stat_sz = sizeof(struct scc_stat); + unsigned struct_serial_multiport_struct_sz + = sizeof(struct serial_multiport_struct); + unsigned struct_serial_struct_sz = sizeof(struct serial_struct); +-- +2.54.0 + diff --git a/cross/gcc-aarch64/APKBUILD b/cross/gcc-aarch64/APKBUILD index dbc7b600c..0cc402790 100644 --- a/cross/gcc-aarch64/APKBUILD +++ b/cross/gcc-aarch64/APKBUILD @@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}" [ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target="" pkgname=gcc-aarch64 -pkgrel=6 +pkgrel=8 pkgdesc="Stage2 cross-compiler for aarch64" url="https://gcc.gnu.org" arch="x86_64" @@ -181,7 +181,7 @@ esac $_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH" if $_libgcc; then depends="$depends libgcc-static$_target" - subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH" + subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic" fi $_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH" if $_libgomp; then @@ -287,6 +287,7 @@ source="https://gcc.gnu.org/pub/gcc/releases/gcc-$_pkgbase/gcc-$_pkgbase.tar.xz 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 0042-libsanitizer-struct_sock_fprog_sz.patch + 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch @@ -823,6 +824,7 @@ eecc77e2a9cf956fd752693ad7f8ff8253a7bb557e00564bb488bbc1deac895e63104cc1182a0bdd d166475e340c91bbb24cf257240aab37129b04f2609e5ce323b530ab83853a4c34c525e0072c15732717f1681db07e6b3b0a4d268720c31f460435ccf4c99b7f 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch c717764ef52c0226a23cbf434654cdefa6cbf38ec625648575d9143c5513b16d8914c25015db743033b8a46ac5b2c33ab75e1b67076128d67bb1319e5a83dd85 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 5dd452a80c496a587a8826b04a4917045e4028631606e85cabd8e87e0460642d188a2156c4e0cf37a5d88e66ebd08a08393d48a6065045178c69eaba2edd063e 0042-libsanitizer-struct_sock_fprog_sz.patch +aff3b00b6244b361a5936ca37823cfde3aa6824ab1845a9c5c8b69bbd93d4bffc9b581802d1f365dcf834d042688068551fa27a181bcf85fe3aeea92afd306af 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch c3b64b05332bd4dd7fad3fff3cacd4f9de0512943f1548c6f1205fab1a74c83622024f30471805f57d625198cc32f647b32172914528fd5605d0bf61cb0c3ff1 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch e91873055550eba051d9297bec5c6acd27abb9ee6ce8911cdd04b5faf37d77b6b2a7607ec588d2863f13f14b48af9398cb4ac42443d8567bfa5037dc6bd50404 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch " diff --git a/cross/gcc-armv7/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch b/cross/gcc-armv7/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch new file mode 100644 index 000000000..48e98f662 --- /dev/null +++ b/cross/gcc-armv7/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch @@ -0,0 +1,63 @@ +From 259d5c6ef7ca0b7fb07acf97538fa7ba590c8e8b Mon Sep 17 00:00:00 2001 +From: Jakub Jelinek +Date: Wed, 29 Apr 2026 11:14:03 +0200 +Subject: [PATCH] libsanitizer: Fix up build against latest kernel headers + +The Linux kernel recently removed the linux/scc.h header, so gcc (both +16.1-rc2 and trunk) fails to build e.g. on Fedora rawhide now. + +The following patch cherry picks a recent upstream fix for this, the macros +defined in that header haven't been really used since 2013-ish. + +2026-04-29 Jakub Jelinek + + * sanitizer_common/sanitizer_platform_limits_posix.cpp: Cherry picked + from LLVM commit 3dc4fd6dd41100f051a63642f449b16324389c96. + +Reviewed-by: Richard Biener +--- + .../sanitizer_platform_limits_posix.cpp | 21 ++++++++----------- + 1 file changed, 9 insertions(+), 12 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +index 5872e3396f0..47eb1dc3267 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -152,16 +152,15 @@ typedef struct user_fpregs elf_fpregset_t; + #if defined(__mips64) + # include + #endif +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include + #endif // SANITIZER_ANDROID + + #include +@@ -534,8 +533,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned struct_kbsentry_sz = sizeof(struct kbsentry); + unsigned struct_mtconfiginfo_sz = sizeof(struct mtconfiginfo); + unsigned struct_nr_parms_struct_sz = sizeof(struct nr_parms_struct); +- unsigned struct_scc_modem_sz = sizeof(struct scc_modem); +- unsigned struct_scc_stat_sz = sizeof(struct scc_stat); + unsigned struct_serial_multiport_struct_sz + = sizeof(struct serial_multiport_struct); + unsigned struct_serial_struct_sz = sizeof(struct serial_struct); +-- +2.54.0 + diff --git a/cross/gcc-armv7/APKBUILD b/cross/gcc-armv7/APKBUILD index 38321b60e..3b8951a6b 100644 --- a/cross/gcc-armv7/APKBUILD +++ b/cross/gcc-armv7/APKBUILD @@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}" [ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target="" pkgname=gcc-armv7 -pkgrel=6 +pkgrel=8 pkgdesc="Stage2 cross-compiler for armv7" url="https://gcc.gnu.org" arch="aarch64 x86_64" @@ -182,7 +182,7 @@ esac $_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH" if $_libgcc; then depends="$depends libgcc-static$_target" - subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH" + subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic" fi $_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH" if $_libgomp; then @@ -288,6 +288,7 @@ source="https://gcc.gnu.org/pub/gcc/releases/gcc-$_pkgbase/gcc-$_pkgbase.tar.xz 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 0042-libsanitizer-struct_sock_fprog_sz.patch + 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch @@ -825,6 +826,7 @@ eecc77e2a9cf956fd752693ad7f8ff8253a7bb557e00564bb488bbc1deac895e63104cc1182a0bdd d166475e340c91bbb24cf257240aab37129b04f2609e5ce323b530ab83853a4c34c525e0072c15732717f1681db07e6b3b0a4d268720c31f460435ccf4c99b7f 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch c717764ef52c0226a23cbf434654cdefa6cbf38ec625648575d9143c5513b16d8914c25015db743033b8a46ac5b2c33ab75e1b67076128d67bb1319e5a83dd85 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 5dd452a80c496a587a8826b04a4917045e4028631606e85cabd8e87e0460642d188a2156c4e0cf37a5d88e66ebd08a08393d48a6065045178c69eaba2edd063e 0042-libsanitizer-struct_sock_fprog_sz.patch +aff3b00b6244b361a5936ca37823cfde3aa6824ab1845a9c5c8b69bbd93d4bffc9b581802d1f365dcf834d042688068551fa27a181bcf85fe3aeea92afd306af 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch c3b64b05332bd4dd7fad3fff3cacd4f9de0512943f1548c6f1205fab1a74c83622024f30471805f57d625198cc32f647b32172914528fd5605d0bf61cb0c3ff1 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch e91873055550eba051d9297bec5c6acd27abb9ee6ce8911cdd04b5faf37d77b6b2a7607ec588d2863f13f14b48af9398cb4ac42443d8567bfa5037dc6bd50404 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch " diff --git a/cross/gcc-loongarch64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch b/cross/gcc-loongarch64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch new file mode 100644 index 000000000..48e98f662 --- /dev/null +++ b/cross/gcc-loongarch64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch @@ -0,0 +1,63 @@ +From 259d5c6ef7ca0b7fb07acf97538fa7ba590c8e8b Mon Sep 17 00:00:00 2001 +From: Jakub Jelinek +Date: Wed, 29 Apr 2026 11:14:03 +0200 +Subject: [PATCH] libsanitizer: Fix up build against latest kernel headers + +The Linux kernel recently removed the linux/scc.h header, so gcc (both +16.1-rc2 and trunk) fails to build e.g. on Fedora rawhide now. + +The following patch cherry picks a recent upstream fix for this, the macros +defined in that header haven't been really used since 2013-ish. + +2026-04-29 Jakub Jelinek + + * sanitizer_common/sanitizer_platform_limits_posix.cpp: Cherry picked + from LLVM commit 3dc4fd6dd41100f051a63642f449b16324389c96. + +Reviewed-by: Richard Biener +--- + .../sanitizer_platform_limits_posix.cpp | 21 ++++++++----------- + 1 file changed, 9 insertions(+), 12 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +index 5872e3396f0..47eb1dc3267 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -152,16 +152,15 @@ typedef struct user_fpregs elf_fpregset_t; + #if defined(__mips64) + # include + #endif +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include + #endif // SANITIZER_ANDROID + + #include +@@ -534,8 +533,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned struct_kbsentry_sz = sizeof(struct kbsentry); + unsigned struct_mtconfiginfo_sz = sizeof(struct mtconfiginfo); + unsigned struct_nr_parms_struct_sz = sizeof(struct nr_parms_struct); +- unsigned struct_scc_modem_sz = sizeof(struct scc_modem); +- unsigned struct_scc_stat_sz = sizeof(struct scc_stat); + unsigned struct_serial_multiport_struct_sz + = sizeof(struct serial_multiport_struct); + unsigned struct_serial_struct_sz = sizeof(struct serial_struct); +-- +2.54.0 + diff --git a/cross/gcc-loongarch64/APKBUILD b/cross/gcc-loongarch64/APKBUILD index b3a113ba3..569e1b9ac 100644 --- a/cross/gcc-loongarch64/APKBUILD +++ b/cross/gcc-loongarch64/APKBUILD @@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}" [ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target="" pkgname=gcc-loongarch64 -pkgrel=6 +pkgrel=8 pkgdesc="Stage2 cross-compiler for loongarch64" url="https://gcc.gnu.org" arch="aarch64 x86_64" @@ -182,7 +182,7 @@ esac $_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH" if $_libgcc; then depends="$depends libgcc-static$_target" - subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH" + subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic" fi $_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH" if $_libgomp; then @@ -288,6 +288,7 @@ source="https://gcc.gnu.org/pub/gcc/releases/gcc-$_pkgbase/gcc-$_pkgbase.tar.xz 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 0042-libsanitizer-struct_sock_fprog_sz.patch + 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch @@ -825,6 +826,7 @@ eecc77e2a9cf956fd752693ad7f8ff8253a7bb557e00564bb488bbc1deac895e63104cc1182a0bdd d166475e340c91bbb24cf257240aab37129b04f2609e5ce323b530ab83853a4c34c525e0072c15732717f1681db07e6b3b0a4d268720c31f460435ccf4c99b7f 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch c717764ef52c0226a23cbf434654cdefa6cbf38ec625648575d9143c5513b16d8914c25015db743033b8a46ac5b2c33ab75e1b67076128d67bb1319e5a83dd85 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 5dd452a80c496a587a8826b04a4917045e4028631606e85cabd8e87e0460642d188a2156c4e0cf37a5d88e66ebd08a08393d48a6065045178c69eaba2edd063e 0042-libsanitizer-struct_sock_fprog_sz.patch +aff3b00b6244b361a5936ca37823cfde3aa6824ab1845a9c5c8b69bbd93d4bffc9b581802d1f365dcf834d042688068551fa27a181bcf85fe3aeea92afd306af 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch c3b64b05332bd4dd7fad3fff3cacd4f9de0512943f1548c6f1205fab1a74c83622024f30471805f57d625198cc32f647b32172914528fd5605d0bf61cb0c3ff1 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch e91873055550eba051d9297bec5c6acd27abb9ee6ce8911cdd04b5faf37d77b6b2a7607ec588d2863f13f14b48af9398cb4ac42443d8567bfa5037dc6bd50404 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch " diff --git a/cross/gcc-ppc64le/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch b/cross/gcc-ppc64le/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch new file mode 100644 index 000000000..48e98f662 --- /dev/null +++ b/cross/gcc-ppc64le/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch @@ -0,0 +1,63 @@ +From 259d5c6ef7ca0b7fb07acf97538fa7ba590c8e8b Mon Sep 17 00:00:00 2001 +From: Jakub Jelinek +Date: Wed, 29 Apr 2026 11:14:03 +0200 +Subject: [PATCH] libsanitizer: Fix up build against latest kernel headers + +The Linux kernel recently removed the linux/scc.h header, so gcc (both +16.1-rc2 and trunk) fails to build e.g. on Fedora rawhide now. + +The following patch cherry picks a recent upstream fix for this, the macros +defined in that header haven't been really used since 2013-ish. + +2026-04-29 Jakub Jelinek + + * sanitizer_common/sanitizer_platform_limits_posix.cpp: Cherry picked + from LLVM commit 3dc4fd6dd41100f051a63642f449b16324389c96. + +Reviewed-by: Richard Biener +--- + .../sanitizer_platform_limits_posix.cpp | 21 ++++++++----------- + 1 file changed, 9 insertions(+), 12 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +index 5872e3396f0..47eb1dc3267 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -152,16 +152,15 @@ typedef struct user_fpregs elf_fpregset_t; + #if defined(__mips64) + # include + #endif +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include + #endif // SANITIZER_ANDROID + + #include +@@ -534,8 +533,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned struct_kbsentry_sz = sizeof(struct kbsentry); + unsigned struct_mtconfiginfo_sz = sizeof(struct mtconfiginfo); + unsigned struct_nr_parms_struct_sz = sizeof(struct nr_parms_struct); +- unsigned struct_scc_modem_sz = sizeof(struct scc_modem); +- unsigned struct_scc_stat_sz = sizeof(struct scc_stat); + unsigned struct_serial_multiport_struct_sz + = sizeof(struct serial_multiport_struct); + unsigned struct_serial_struct_sz = sizeof(struct serial_struct); +-- +2.54.0 + diff --git a/cross/gcc-ppc64le/APKBUILD b/cross/gcc-ppc64le/APKBUILD index 704c1e076..d5981d6ef 100644 --- a/cross/gcc-ppc64le/APKBUILD +++ b/cross/gcc-ppc64le/APKBUILD @@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}" [ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target="" pkgname=gcc-ppc64le -pkgrel=6 +pkgrel=8 pkgdesc="Stage2 cross-compiler for ppc64le" url="https://gcc.gnu.org" arch="aarch64 x86_64" @@ -182,7 +182,7 @@ esac $_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH" if $_libgcc; then depends="$depends libgcc-static$_target" - subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH" + subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic" fi $_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH" if $_libgomp; then @@ -288,6 +288,7 @@ source="https://gcc.gnu.org/pub/gcc/releases/gcc-$_pkgbase/gcc-$_pkgbase.tar.xz 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 0042-libsanitizer-struct_sock_fprog_sz.patch + 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch @@ -825,6 +826,7 @@ eecc77e2a9cf956fd752693ad7f8ff8253a7bb557e00564bb488bbc1deac895e63104cc1182a0bdd d166475e340c91bbb24cf257240aab37129b04f2609e5ce323b530ab83853a4c34c525e0072c15732717f1681db07e6b3b0a4d268720c31f460435ccf4c99b7f 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch c717764ef52c0226a23cbf434654cdefa6cbf38ec625648575d9143c5513b16d8914c25015db743033b8a46ac5b2c33ab75e1b67076128d67bb1319e5a83dd85 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 5dd452a80c496a587a8826b04a4917045e4028631606e85cabd8e87e0460642d188a2156c4e0cf37a5d88e66ebd08a08393d48a6065045178c69eaba2edd063e 0042-libsanitizer-struct_sock_fprog_sz.patch +aff3b00b6244b361a5936ca37823cfde3aa6824ab1845a9c5c8b69bbd93d4bffc9b581802d1f365dcf834d042688068551fa27a181bcf85fe3aeea92afd306af 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch c3b64b05332bd4dd7fad3fff3cacd4f9de0512943f1548c6f1205fab1a74c83622024f30471805f57d625198cc32f647b32172914528fd5605d0bf61cb0c3ff1 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch e91873055550eba051d9297bec5c6acd27abb9ee6ce8911cdd04b5faf37d77b6b2a7607ec588d2863f13f14b48af9398cb4ac42443d8567bfa5037dc6bd50404 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch " diff --git a/cross/gcc-riscv64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch b/cross/gcc-riscv64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch new file mode 100644 index 000000000..48e98f662 --- /dev/null +++ b/cross/gcc-riscv64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch @@ -0,0 +1,63 @@ +From 259d5c6ef7ca0b7fb07acf97538fa7ba590c8e8b Mon Sep 17 00:00:00 2001 +From: Jakub Jelinek +Date: Wed, 29 Apr 2026 11:14:03 +0200 +Subject: [PATCH] libsanitizer: Fix up build against latest kernel headers + +The Linux kernel recently removed the linux/scc.h header, so gcc (both +16.1-rc2 and trunk) fails to build e.g. on Fedora rawhide now. + +The following patch cherry picks a recent upstream fix for this, the macros +defined in that header haven't been really used since 2013-ish. + +2026-04-29 Jakub Jelinek + + * sanitizer_common/sanitizer_platform_limits_posix.cpp: Cherry picked + from LLVM commit 3dc4fd6dd41100f051a63642f449b16324389c96. + +Reviewed-by: Richard Biener +--- + .../sanitizer_platform_limits_posix.cpp | 21 ++++++++----------- + 1 file changed, 9 insertions(+), 12 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +index 5872e3396f0..47eb1dc3267 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -152,16 +152,15 @@ typedef struct user_fpregs elf_fpregset_t; + #if defined(__mips64) + # include + #endif +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include + #endif // SANITIZER_ANDROID + + #include +@@ -534,8 +533,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned struct_kbsentry_sz = sizeof(struct kbsentry); + unsigned struct_mtconfiginfo_sz = sizeof(struct mtconfiginfo); + unsigned struct_nr_parms_struct_sz = sizeof(struct nr_parms_struct); +- unsigned struct_scc_modem_sz = sizeof(struct scc_modem); +- unsigned struct_scc_stat_sz = sizeof(struct scc_stat); + unsigned struct_serial_multiport_struct_sz + = sizeof(struct serial_multiport_struct); + unsigned struct_serial_struct_sz = sizeof(struct serial_struct); +-- +2.54.0 + diff --git a/cross/gcc-riscv64/APKBUILD b/cross/gcc-riscv64/APKBUILD index 22675d0f6..bc7edaa10 100644 --- a/cross/gcc-riscv64/APKBUILD +++ b/cross/gcc-riscv64/APKBUILD @@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}" [ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target="" pkgname=gcc-riscv64 -pkgrel=6 +pkgrel=8 pkgdesc="Stage2 cross-compiler for riscv64" url="https://gcc.gnu.org" arch="aarch64 x86_64" @@ -182,7 +182,7 @@ esac $_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH" if $_libgcc; then depends="$depends libgcc-static$_target" - subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH" + subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic" fi $_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH" if $_libgomp; then @@ -288,6 +288,7 @@ source="https://gcc.gnu.org/pub/gcc/releases/gcc-$_pkgbase/gcc-$_pkgbase.tar.xz 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 0042-libsanitizer-struct_sock_fprog_sz.patch + 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch @@ -825,6 +826,7 @@ eecc77e2a9cf956fd752693ad7f8ff8253a7bb557e00564bb488bbc1deac895e63104cc1182a0bdd d166475e340c91bbb24cf257240aab37129b04f2609e5ce323b530ab83853a4c34c525e0072c15732717f1681db07e6b3b0a4d268720c31f460435ccf4c99b7f 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch c717764ef52c0226a23cbf434654cdefa6cbf38ec625648575d9143c5513b16d8914c25015db743033b8a46ac5b2c33ab75e1b67076128d67bb1319e5a83dd85 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 5dd452a80c496a587a8826b04a4917045e4028631606e85cabd8e87e0460642d188a2156c4e0cf37a5d88e66ebd08a08393d48a6065045178c69eaba2edd063e 0042-libsanitizer-struct_sock_fprog_sz.patch +aff3b00b6244b361a5936ca37823cfde3aa6824ab1845a9c5c8b69bbd93d4bffc9b581802d1f365dcf834d042688068551fa27a181bcf85fe3aeea92afd306af 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch c3b64b05332bd4dd7fad3fff3cacd4f9de0512943f1548c6f1205fab1a74c83622024f30471805f57d625198cc32f647b32172914528fd5605d0bf61cb0c3ff1 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch e91873055550eba051d9297bec5c6acd27abb9ee6ce8911cdd04b5faf37d77b6b2a7607ec588d2863f13f14b48af9398cb4ac42443d8567bfa5037dc6bd50404 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch " diff --git a/cross/gcc-x86/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch b/cross/gcc-x86/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch new file mode 100644 index 000000000..48e98f662 --- /dev/null +++ b/cross/gcc-x86/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch @@ -0,0 +1,63 @@ +From 259d5c6ef7ca0b7fb07acf97538fa7ba590c8e8b Mon Sep 17 00:00:00 2001 +From: Jakub Jelinek +Date: Wed, 29 Apr 2026 11:14:03 +0200 +Subject: [PATCH] libsanitizer: Fix up build against latest kernel headers + +The Linux kernel recently removed the linux/scc.h header, so gcc (both +16.1-rc2 and trunk) fails to build e.g. on Fedora rawhide now. + +The following patch cherry picks a recent upstream fix for this, the macros +defined in that header haven't been really used since 2013-ish. + +2026-04-29 Jakub Jelinek + + * sanitizer_common/sanitizer_platform_limits_posix.cpp: Cherry picked + from LLVM commit 3dc4fd6dd41100f051a63642f449b16324389c96. + +Reviewed-by: Richard Biener +--- + .../sanitizer_platform_limits_posix.cpp | 21 ++++++++----------- + 1 file changed, 9 insertions(+), 12 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +index 5872e3396f0..47eb1dc3267 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -152,16 +152,15 @@ typedef struct user_fpregs elf_fpregset_t; + #if defined(__mips64) + # include + #endif +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include + #endif // SANITIZER_ANDROID + + #include +@@ -534,8 +533,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned struct_kbsentry_sz = sizeof(struct kbsentry); + unsigned struct_mtconfiginfo_sz = sizeof(struct mtconfiginfo); + unsigned struct_nr_parms_struct_sz = sizeof(struct nr_parms_struct); +- unsigned struct_scc_modem_sz = sizeof(struct scc_modem); +- unsigned struct_scc_stat_sz = sizeof(struct scc_stat); + unsigned struct_serial_multiport_struct_sz + = sizeof(struct serial_multiport_struct); + unsigned struct_serial_struct_sz = sizeof(struct serial_struct); +-- +2.54.0 + diff --git a/cross/gcc-x86/APKBUILD b/cross/gcc-x86/APKBUILD index 3c709f69d..6ed2a0713 100644 --- a/cross/gcc-x86/APKBUILD +++ b/cross/gcc-x86/APKBUILD @@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}" [ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target="" pkgname=gcc-x86 -pkgrel=6 +pkgrel=8 pkgdesc="Stage2 cross-compiler for x86" url="https://gcc.gnu.org" arch="aarch64 x86_64" @@ -182,7 +182,7 @@ esac $_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH" if $_libgcc; then depends="$depends libgcc-static$_target" - subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH" + subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic" fi $_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH" if $_libgomp; then @@ -288,6 +288,7 @@ source="https://gcc.gnu.org/pub/gcc/releases/gcc-$_pkgbase/gcc-$_pkgbase.tar.xz 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 0042-libsanitizer-struct_sock_fprog_sz.patch + 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch @@ -825,6 +826,7 @@ eecc77e2a9cf956fd752693ad7f8ff8253a7bb557e00564bb488bbc1deac895e63104cc1182a0bdd d166475e340c91bbb24cf257240aab37129b04f2609e5ce323b530ab83853a4c34c525e0072c15732717f1681db07e6b3b0a4d268720c31f460435ccf4c99b7f 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch c717764ef52c0226a23cbf434654cdefa6cbf38ec625648575d9143c5513b16d8914c25015db743033b8a46ac5b2c33ab75e1b67076128d67bb1319e5a83dd85 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 5dd452a80c496a587a8826b04a4917045e4028631606e85cabd8e87e0460642d188a2156c4e0cf37a5d88e66ebd08a08393d48a6065045178c69eaba2edd063e 0042-libsanitizer-struct_sock_fprog_sz.patch +aff3b00b6244b361a5936ca37823cfde3aa6824ab1845a9c5c8b69bbd93d4bffc9b581802d1f365dcf834d042688068551fa27a181bcf85fe3aeea92afd306af 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch c3b64b05332bd4dd7fad3fff3cacd4f9de0512943f1548c6f1205fab1a74c83622024f30471805f57d625198cc32f647b32172914528fd5605d0bf61cb0c3ff1 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch e91873055550eba051d9297bec5c6acd27abb9ee6ce8911cdd04b5faf37d77b6b2a7607ec588d2863f13f14b48af9398cb4ac42443d8567bfa5037dc6bd50404 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch " diff --git a/cross/gcc-x86_64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch b/cross/gcc-x86_64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch new file mode 100644 index 000000000..48e98f662 --- /dev/null +++ b/cross/gcc-x86_64/0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch @@ -0,0 +1,63 @@ +From 259d5c6ef7ca0b7fb07acf97538fa7ba590c8e8b Mon Sep 17 00:00:00 2001 +From: Jakub Jelinek +Date: Wed, 29 Apr 2026 11:14:03 +0200 +Subject: [PATCH] libsanitizer: Fix up build against latest kernel headers + +The Linux kernel recently removed the linux/scc.h header, so gcc (both +16.1-rc2 and trunk) fails to build e.g. on Fedora rawhide now. + +The following patch cherry picks a recent upstream fix for this, the macros +defined in that header haven't been really used since 2013-ish. + +2026-04-29 Jakub Jelinek + + * sanitizer_common/sanitizer_platform_limits_posix.cpp: Cherry picked + from LLVM commit 3dc4fd6dd41100f051a63642f449b16324389c96. + +Reviewed-by: Richard Biener +--- + .../sanitizer_platform_limits_posix.cpp | 21 ++++++++----------- + 1 file changed, 9 insertions(+), 12 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +index 5872e3396f0..47eb1dc3267 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -152,16 +152,15 @@ typedef struct user_fpregs elf_fpregset_t; + #if defined(__mips64) + # include + #endif +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include +-#include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include ++# include + #endif // SANITIZER_ANDROID + + #include +@@ -534,8 +533,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned struct_kbsentry_sz = sizeof(struct kbsentry); + unsigned struct_mtconfiginfo_sz = sizeof(struct mtconfiginfo); + unsigned struct_nr_parms_struct_sz = sizeof(struct nr_parms_struct); +- unsigned struct_scc_modem_sz = sizeof(struct scc_modem); +- unsigned struct_scc_stat_sz = sizeof(struct scc_stat); + unsigned struct_serial_multiport_struct_sz + = sizeof(struct serial_multiport_struct); + unsigned struct_serial_struct_sz = sizeof(struct serial_struct); +-- +2.54.0 + diff --git a/cross/gcc-x86_64/APKBUILD b/cross/gcc-x86_64/APKBUILD index 399e3e201..bae8a8deb 100644 --- a/cross/gcc-x86_64/APKBUILD +++ b/cross/gcc-x86_64/APKBUILD @@ -34,7 +34,7 @@ _pkgsnap="${pkgver##*_git}" [ "$CHOST" != "$CTARGET" ] && _target="-$CTARGET_ARCH" || _target="" pkgname=gcc-x86_64 -pkgrel=6 +pkgrel=8 pkgdesc="Stage2 cross-compiler for x86_64" url="https://gcc.gnu.org" arch="aarch64" @@ -181,7 +181,7 @@ esac $_libatomic && subpackages="$subpackages libatomic::$CTARGET_ARCH" if $_libgcc; then depends="$depends libgcc-static$_target" - subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic:$CTARGET_ARCH" + subpackages="$subpackages libgcc::$CTARGET_ARCH libgcc-static$_target:libgccstatic" fi $_libquadmath && subpackages="$subpackages libquadmath::$CTARGET_ARCH" if $_libgomp; then @@ -287,6 +287,7 @@ source="https://gcc.gnu.org/pub/gcc/releases/gcc-$_pkgbase/gcc-$_pkgbase.tar.xz 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 0042-libsanitizer-struct_sock_fprog_sz.patch + 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch @@ -823,6 +824,7 @@ eecc77e2a9cf956fd752693ad7f8ff8253a7bb557e00564bb488bbc1deac895e63104cc1182a0bdd d166475e340c91bbb24cf257240aab37129b04f2609e5ce323b530ab83853a4c34c525e0072c15732717f1681db07e6b3b0a4d268720c31f460435ccf4c99b7f 0040-ada-libgnat-use-stub-symbolic-module-name-functions.patch c717764ef52c0226a23cbf434654cdefa6cbf38ec625648575d9143c5513b16d8914c25015db743033b8a46ac5b2c33ab75e1b67076128d67bb1319e5a83dd85 0041-ada-libgnat-recognize-linux-musleabi-and-linux-muslg.patch 5dd452a80c496a587a8826b04a4917045e4028631606e85cabd8e87e0460642d188a2156c4e0cf37a5d88e66ebd08a08393d48a6065045178c69eaba2edd063e 0042-libsanitizer-struct_sock_fprog_sz.patch +aff3b00b6244b361a5936ca37823cfde3aa6824ab1845a9c5c8b69bbd93d4bffc9b581802d1f365dcf834d042688068551fa27a181bcf85fe3aeea92afd306af 0043-libsanitizer-Fix-up-build-against-latest-kernel-head.patch c3b64b05332bd4dd7fad3fff3cacd4f9de0512943f1548c6f1205fab1a74c83622024f30471805f57d625198cc32f647b32172914528fd5605d0bf61cb0c3ff1 0001-tree-object-size.cc-Fix-assert-constant-offset-in-ch.patch e91873055550eba051d9297bec5c6acd27abb9ee6ce8911cdd04b5faf37d77b6b2a7607ec588d2863f13f14b48af9398cb4ac42443d8567bfa5037dc6bd50404 0001-LoongArch-Only-allow-valid-binary-op-when-optimize-c.patch "