commit: 267f9cd2256e527eb09e2d1fb184fda029a1810e Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Mon May 5 14:45:03 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Mon May 5 14:45:47 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=267f9cd2
sys-devel/gcc: revert switch conversion patches in 16.0.0_pre20250504 Revert switch conversion patches which break building LLVM and workarounds aren't feasible (PR120115, PR120116). Bug: https://gcc.gnu.org/PR120080 Bug: https://gcc.gnu.org/PR120115 Bug: https://gcc.gnu.org/PR120116 Signed-off-by: Sam James <sam <AT> gentoo.org> sys-devel/gcc/Manifest | 2 + sys-devel/gcc/gcc-16.0.0_p20250504-r1.ebuild | 56 ++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index e7b102904124..d6df111d0a66 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -39,6 +39,8 @@ DIST gcc-15.0.0-patches-55.tar.xz 19028 BLAKE2B f01935ebcf814b34c0319e6b92cb3fc8 DIST gcc-15.1.0.tar.xz 98268344 BLAKE2B a902ce99db4e93615879e435bcd0b96d5a16ea0af42598ca0e6d12913b2ce3651a98574c3264b2717b848e6b5a823b403ccca0adde463938d5b41aa3f1da0d34 SHA512 ddd35ca6c653dffa88f7c7ef9ee4cd806e156e0f3b30f4d63e75a8363361285cd566ee73127734cde6a934611de815bee3e32e24bfd2e0ab9f7ff35c929821c1 DIST gcc-16-20250427.tar.xz 92158556 BLAKE2B a993e398989cd1548e4bcd399faccf381a82e5648e4638b1a8144637794d4f188232fecc658b3f2a5be58e085931c3abbb9033984c3cab54adac144abb9817f6 SHA512 a64224705eae17147cd2944cf2b24c6542ef77ab6c3d4dfe598b6abcee5c178a3e2cfdbde729b23c22ed4803ddab49d636652f452f382d8cfee0d2be43a227b1 DIST gcc-16-20250504.tar.xz 92144212 BLAKE2B 6b9390e5cbc44332926f79fdcbb46678b46cded8502a493ba950ced72b74ba47f5ad40de30c2e86e06d3e41b6e51b15ed16802b05b3ad4ed9a93e6987848a299 SHA512 b47468969129288408b09cf5dee79cac0243e6a83321b2622d6681f1cd67e93b9211d6033f307404cf7ecf72b8f2c2e67537ceab9fbc9a13e34d800a42ba677c +DIST gcc-16.0.0-musl-patches-1.tar.xz 3040 BLAKE2B 18b16357699780eb470cf44a10710281955140103198e0bd55b75e1efe3dbec233689edb11e1b9a62f782f3d97293af4906c18c2c41613b422eda085ee819467 SHA512 5ba580c7c7bb9e62935a5162d44d357cc31185a113acff7498ed7b1ac43fd0a35de7c3de0c87f02fe0be46b5e55b49bb35d1f5cd470058d21a9ea4096a37e13d +DIST gcc-16.0.0-patches-1.tar.xz 21916 BLAKE2B 3f067ec7598931a4c277572be2a2783a888da4659150cdb0ca892f4936c16d3c9e0868a249e1820b2cad160bee47ec7b29876e00712b075d8579baae336b91b4 SHA512 8beeeefd8a9b78aaee6470e7b6ae2d3b033fa980d44d441f11361ef14cc602d7c05481f390ae035c5d4c848f301f0526949344327ab169a5f37601ab83d1a675 DIST gcc-8.5.0-patches-4.tar.xz 18616 BLAKE2B 7594cbaea5daecf1a0b3d526c06aeba0a84c6da66aee2e105a51fda6be8d30a37ccc3814281b284a4582d892a1d556bca063551584edfc2525bed8ea5b6888e7 SHA512 1aa5742c361186637e7855f06feb1a4547e7d4d5de6e51f3d049e0ef3c19e2eff179465f52781739f59422035b7f8e4c0efa3844849f920f3c96acfdc37ca6a6 DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8 DIST gcc-9.5.0-patches-2.tar.xz 14324 BLAKE2B 1d3bf3e673108ad2fcdcb86daefb4603d1c9f6aa815e34d1591054d466b76d6f50cce124ab4760528c4951ea16eb00888a3e6485417f81ebf250548732df4a8e SHA512 a6d6f650aaf0bd193a17ac279649f0544a282cea295824384c59341c3000eac4b574b60e00dd427585d928f9768166abf85168b47772132790ad98854acacbbf diff --git a/sys-devel/gcc/gcc-16.0.0_p20250504-r1.ebuild b/sys-devel/gcc/gcc-16.0.0_p20250504-r1.ebuild new file mode 100644 index 000000000000..6729303ce6ed --- /dev/null +++ b/sys-devel/gcc/gcc-16.0.0_p20250504-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="1" +MUSL_VER="1" +MUSL_GCC_VER="16.0.0" +PYTHON_COMPAT=( python3_{10..13} ) + +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 +}
