commit:     c2008ea136797b1e7ffedd73c0989ed73b4f805b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 12 04:44:42 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov 12 04:45:57 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c2008ea1

sys-devel/gcc: add 16.0.0_p20251109-r1 for firefox lto fix

This shows up with firefox-145.0. Thank you to juippis for coordinating
this nicely!

Bug: https://gcc.gnu.org/PR122620
Signed-off-by: Sam James <sam <AT> gentoo.org>

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

diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
index 8e7dd0c12b13..1be4fd5be458 100644
--- a/sys-devel/gcc/Manifest
+++ b/sys-devel/gcc/Manifest
@@ -67,6 +67,7 @@ DIST gcc-16.0.0-patches-18.tar.xz 22516 BLAKE2B 
762ab67e7cef43cd2f1fff0e499ab128
 DIST gcc-16.0.0-patches-19.tar.xz 22492 BLAKE2B 
e2ef628b2ebb283b4ff109d168c3a0319cd5b1ffa5c3741bf9843386207d89aaf03328b0a2f75b17fc7c36fc74485465eec32124702c300044b69eddc77cc435
 SHA512 
1bd76904028cd31880c831a96562488a7a10d1e7fac8190efe931fbbc6669ff0dfeee30a0efc1dc036fad86daba8c33be8f958e05c387099f9e2e848e2fdf174
 DIST gcc-16.0.0-patches-20.tar.xz 24928 BLAKE2B 
0d7eb8b21801fb2f03faf4f810959ac8abd37080228dcbe4b4b576a53d541b40356a27c95499990a56911984ee269d6d0b7e4cfe33da63d788b4626d24d2f191
 SHA512 
7afbce0c084ff28a651b1e4aea24e060749ae965f28fbe3b9ff3dd72322f80b5c0fab4204e0dcc0df8812247904b659c5059334c10dca5aa484f0ff8b425c0d9
 DIST gcc-16.0.0-patches-21.tar.xz 19472 BLAKE2B 
e58e52aa68568e85b38405f9def175ebd6fbabe01eb3e3aac40b2228800f055ea0023c8bf485088192335eff2061dffa604d5fc4c63a31527a10a6638ea4b642
 SHA512 
0ab86ea9f2b724bbfbc0f2cba643534528c9ca13d8825b224ab49de756de277af3ebfdb770f220295e0af43dbdc092a08b84adddc8e1cdaa38a199de3a7dabbc
+DIST gcc-16.0.0-patches-22.tar.xz 20656 BLAKE2B 
aecd57181a92381aa959211ed3ceb1475ae114c481fa8f77af916b68475de46336db789defedfc4a0d7c3d8d749e78b94e07270c094aa6663b35f24482d0dec3
 SHA512 
f0a3693059c9bab8c8d742bcde9ca7406612364112cc7d2626bb201cfe3824931c17dbacd607af1681a9d39ef44f0f0c197252f4c6de915590291b08dacc3357
 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
 DIST gcc-9.5.0-patches-3.tar.xz 17888 BLAKE2B 
f2be05f32f4ecca41ebf4f402bf8fb3c11a36a8b7bd912ee9fe6baea980929774b629e12df7afb3405f1f5d044766a437b3eca5433f4af6c757f4a9dbb2e77eb
 SHA512 
d31bb1964cdb2376572e4981b22c7ffa6fa695259c27af5d0d12aebc334cd1122c2f75739033f25f1e672300adeab2b3772622cb16099d002f3f8c5a8fe694f9

diff --git a/sys-devel/gcc/gcc-16.0.0_p20251109-r1.ebuild 
b/sys-devel/gcc/gcc-16.0.0_p20251109-r1.ebuild
new file mode 100644
index 000000000000..211c68d739af
--- /dev/null
+++ b/sys-devel/gcc/gcc-16.0.0_p20251109-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="22"
+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