commit:     d54bb0c0d861e7dc903bf40d1da958558ef0c8d1
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 20 01:14:02 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Aug 20 01:14:02 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d54bb0c0

sys-devel/gcc: revert C++ change and update TLS patch in 16.0.0_p20250817-r1

Revert the C++ change causing issues w/ shadowed variables. Also, update
the TLS miscompilation patch.

Bug: https://gcc.gnu.org/PR121553
Closes: https://bugs.gentoo.org/961749
Closes: https://bugs.gentoo.org/961727
Closes: https://bugs.gentoo.org/961753
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-devel/gcc/Manifest                       |  1 +
 sys-devel/gcc/gcc-16.0.0_p20250817-r1.ebuild | 56 ++++++++++++++++++++++++++++
 2 files changed, 57 insertions(+)

diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
index 506d67ced27e..a7d66d45656b 100644
--- a/sys-devel/gcc/Manifest
+++ b/sys-devel/gcc/Manifest
@@ -39,6 +39,7 @@ DIST gcc-16-20250810.tar.xz 95341000 BLAKE2B 
6ccc5cac9a3c396c2b96658325186adf786
 DIST gcc-16-20250817.tar.xz 95454224 BLAKE2B 
bee169637249ecf98f68e31d66b48601bfbe4ab6f41c1ed068cefc7ced54462513ebabe2b064a93f62f617fe7cea398b10a03e0fef08307b6dd8ae7aaea3de52
 SHA512 
d5c519e1e0e3a4d3e2102633ce26bdb435eb62eb50c96559662f4523c2d8cee04f38e907a48f1aa780b63e1c7f7712485675a950d1a34b9d5959184c247e7d7d
 DIST gcc-16.0.0-musl-patches-1.tar.xz 3040 BLAKE2B 
18b16357699780eb470cf44a10710281955140103198e0bd55b75e1efe3dbec233689edb11e1b9a62f782f3d97293af4906c18c2c41613b422eda085ee819467
 SHA512 
5ba580c7c7bb9e62935a5162d44d357cc31185a113acff7498ed7b1ac43fd0a35de7c3de0c87f02fe0be46b5e55b49bb35d1f5cd470058d21a9ea4096a37e13d
 DIST gcc-16.0.0-patches-10.tar.xz 22444 BLAKE2B 
7f2c0e610f4190ea4a1852278ff1f4cbd22505dcb44e645a2fde80c96bf16e3ab58728ec5fee82aa9fb51a5fbdf8d70de182f75b1e3b0d1d42838344d317e5c6
 SHA512 
893590e59ab85acf6419941e5801b0d2f96e5ddcd793157489e774b8e0b5dc088b537be96f3a1d16066b8a5bb7a76aed062833a05b934a52376a1783f444a9c6
+DIST gcc-16.0.0-patches-11.tar.xz 31964 BLAKE2B 
095e6524ab47573d29f3b828c08acb7b2a84117be78e67b3872eea33b0fb266f7ed923addc13714fc29fe95b0edb49a5bb7d28778cb3a0174a243926da4df318
 SHA512 
7bc469a05e62bb974b1f08d51ebdeb54974f78ce51fe4743452ae5e13d6f7619a2c9f748a9d735fb92e765c190762f12117ab0d0951d51104686204583e1805c
 DIST gcc-16.0.0-patches-9.tar.xz 18504 BLAKE2B 
b51c4547a12c04db2f37f26cf5c9cf1d6fa003fe4dde657c179e13e4b0e52b8e847efbaf139b1a418687259321dc350c98f01ba17501a1330f0dc3b68516b3f8
 SHA512 
67e4fadca36d0562586aac4c86673c918072642c7e7589c7b47643f35336bcc3e2adaea40b332cddd24821d1d1876c6a902763827dbb62e8d9b08161c3dbe49a
 DIST gcc-8.5.0-patches-5.tar.xz 20188 BLAKE2B 
45b29161105edc6344bb48f5bdf17e1aad6e8d9edb4d9434816425996c1b12c10f1303963776adad9db866d845f864d80d198a30e35ee6c204ca3659cf7a1401
 SHA512 
f22ab5d8e3116e2e896a5dcbbf5cef67dc5090182af364ef64fc22d2b28c029da5ed39f126f446721e388e7b6848239d01f5fc0346e49b96d5c04068b557f8f8
 DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B 
aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12
 SHA512 
92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8

diff --git a/sys-devel/gcc/gcc-16.0.0_p20250817-r1.ebuild 
b/sys-devel/gcc/gcc-16.0.0_p20250817-r1.ebuild
new file mode 100644
index 000000000000..31b9e6c606d0
--- /dev/null
+++ b/sys-devel/gcc/gcc-16.0.0_p20250817-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maintenance notes and explanations of GCC handling are on the wiki:
+# https://wiki.gentoo.org/wiki/Project:Toolchain/sys-devel/gcc
+
+TOOLCHAIN_PATCH_DEV="sam"
+TOOLCHAIN_HAS_TESTS=1
+PATCH_GCC_VER="16.0.0"
+PATCH_VER="11"
+MUSL_VER="1"
+MUSL_GCC_VER="16.0.0"
+PYTHON_COMPAT=( python3_{11..14} )
+
+if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
+       # Cheesy hack for RCs
+       MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 
1)))-RC-$(ver_cut 5)
+       MY_P=${PN}-${MY_PV}
+       GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
+       TOOLCHAIN_SET_S=no
+       S="${WORKDIR}"/${MY_P}
+fi
+
+inherit toolchain
+
+if tc_is_live ; then
+       # Needs to be after inherit (for now?), bug #830908
+       EGIT_BRANCH=master
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+       # Don't keyword live ebuilds
+       #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc 
~ppc64 ~riscv ~s390 ~sparc ~x86"
+       :;
+fi
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+       # Technically only if USE=hardened *too* right now, but no point in 
complicating it further.
+       # If GCC is enabling CET by default, we need glibc to be built with 
support for it.
+       # bug #830454
+       RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
+       DEPEND="${RDEPEND}"
+fi
+
+src_prepare() {
+       local p upstreamed_patches=(
+               # add them here
+       )
+       for p in "${upstreamed_patches[@]}"; do
+               rm -v "${WORKDIR}/patch/${p}" || die
+       done
+
+       toolchain_src_prepare
+       eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
+       eapply_user
+}

Reply via email to