diff options
| author | Sam James <sam@gentoo.org> | 2025-07-08 19:43:45 +0100 |
|---|---|---|
| committer | Sam James <sam@gentoo.org> | 2025-07-08 19:44:36 +0100 |
| commit | cdcd99a6abad0a6c524d2edb73aecdfc5e62244c (patch) | |
| tree | a3ae4d3bfbea7c81eec758b6d2116a4bd44ae153 | |
| parent | da5884453ed61142be545b852b79b3d507c89569 (diff) | |
| download | gentoo-cdcd99a6abad0a6c524d2edb73aecdfc5e62244c.tar.gz gentoo-cdcd99a6abad0a6c524d2edb73aecdfc5e62244c.tar.bz2 gentoo-cdcd99a6abad0a6c524d2edb73aecdfc5e62244c.zip | |
sys-devel/gcc: fix Qt miscompilation in 15
Fix Qt vs PTA (bug #956308, PR120358). Thanks to Kacper Słomiński,
Alexander Monakov, and Holger Hoffstätte for their help on this.
Bug: https://bugs.gentoo.org/956308
Bug: https://gcc.gnu.org/PR120358
Signed-off-by: Sam James <sam@gentoo.org>
| -rw-r--r-- | sys-devel/gcc/Manifest | 1 | ||||
| -rw-r--r-- | sys-devel/gcc/gcc-15.1.1_p20250705-r1.ebuild | 56 |
2 files changed, 57 insertions, 0 deletions
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index d9c483ede0c4..8ed7a7b68a6b 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -51,6 +51,7 @@ DIST gcc-15-20250628.tar.xz 92108604 BLAKE2B 45801afeb773ea1249441041d268b03477d DIST gcc-15-20250705.tar.xz 92140172 BLAKE2B ac66bdda7beccab8b5b5565852e7f9743ba6f1cdeaa8ca7d15b14369251a0b592f92714c8c12e05df7d52d296a15843fe3301906e7e3c3574483be1e5485ffce SHA512 4a7304ed4ada55f5d37c191627de9f62e86c0a374987a3cdf43695ef436ab3eeeb7a143e5a11c3e5cac01c8c23c035f126d0c0a10dfd7686c8ec537dde61b9eb DIST gcc-15.1.0-musl-patches-1.tar.xz 3036 BLAKE2B f7e8b794feb3c30252dd3e35b990c8a134d337e285a2778ad5575b04667cf01040bf4187252151cd57097cd6d440851843156c9631736f4f065ca8b7ce2f0678 SHA512 4d3f1660d89484f63ad6c238884415673cdfdabb8833cce2fe114193b52f11b3518b034881024527f6553de93936d15ed707d4d2b1e8221908a08ec67810464b DIST gcc-15.1.0-patches-1.tar.xz 18628 BLAKE2B ee5fc9d6a06374ccc8d85cd1e269514fde8fed9b1810867a199ac747c09fc166e11e54ba531d42ee2ffbab3ca80277f9ad3c873fbaa3530ff60e5f2bc25c41ba SHA512 72992f0698f632c98abd6d8c7a7a38a109b2f064775a0c5029e44dc29cd88ae061cddd603d47eabced5af5f8571e0b73c9778080873c69dd4dc4766c60339b28 +DIST gcc-15.1.0-patches-2.tar.xz 19340 BLAKE2B ea8be3f2a79cfbc69583dd7b96590ebfb74a3ccb90a5f36700c66369c44b349d69f5e9903d83e1db1807dcbe77e6fd46221964c52fd0a594e6853c6e01d638f0 SHA512 954ddca48ebe44e1e93bf938b493d347592a4a0cb255a980a893cf5ff5378c6ac333389f0fcdff6fa4cefbd40212f0a32c64cdefc9e9874df44a2db904fdc5f6 DIST gcc-15.1.0.tar.xz 98268344 BLAKE2B a902ce99db4e93615879e435bcd0b96d5a16ea0af42598ca0e6d12913b2ce3651a98574c3264b2717b848e6b5a823b403ccca0adde463938d5b41aa3f1da0d34 SHA512 ddd35ca6c653dffa88f7c7ef9ee4cd806e156e0f3b30f4d63e75a8363361285cd566ee73127734cde6a934611de815bee3e32e24bfd2e0ab9f7ff35c929821c1 DIST gcc-16-20250615.tar.xz 94008204 BLAKE2B 31c303929d60423cb2355c35f9b3d7e37108ed7ec3b66b411463e3681ddbc088c7556cc7a1639b83bc470ae833987158b206d8044c2f2a22c40661e79bcae252 SHA512 e69a6eea38b75aab569ff7cbabae06da27198fb07d7009dee44b8d81cbeceb4b9e6bd07b9db6a1b347d9ea286353b5a9619ee800f243ac02ec13126c1d4183f3 DIST gcc-16-20250622.tar.xz 94019404 BLAKE2B 0f4adc77b90c864efbb07e5a132642ade9ffb1b57920afcc0695bf170f33d979c7bac465038f5e4e7f0e06c54aaca32be947f2b4ec912cf7a504e560df768ea4 SHA512 9e35a51a369e7ff362fe0f9d4b8200f1d9330ec4e0cff4d8d61343e6ae5030c178469cb1af0c11768ba78f496ba521aca2b68b6e940db48f0496b829d288fbc4 diff --git a/sys-devel/gcc/gcc-15.1.1_p20250705-r1.ebuild b/sys-devel/gcc/gcc-15.1.1_p20250705-r1.ebuild new file mode 100644 index 000000000000..948c511d1d77 --- /dev/null +++ b/sys-devel/gcc/gcc-15.1.1_p20250705-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="15.1.0" +PATCH_VER="2" +MUSL_VER="1" +MUSL_GCC_VER="15.1.0" +PYTHON_COMPAT=( python3_{10..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 ~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 +} |
