diff options
author | Sam James <sam@gentoo.org> | 2024-06-10 18:27:25 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-06-10 18:53:14 +0100 |
commit | 7000929e1aa30f3b1b4c4cc282b9a2849952d76a (patch) | |
tree | 30f51a4248f2473f1732d044a891dff329b37f4f /sys-devel | |
parent | dev-ml/ocaml-compiler-libs: add 0.17.0 (diff) | |
download | gentoo-7000929e1aa30f3b1b4c4cc282b9a2849952d76a.tar.gz gentoo-7000929e1aa30f3b1b4c4cc282b9a2849952d76a.tar.bz2 gentoo-7000929e1aa30f3b1b4c4cc282b9a2849952d76a.zip |
sys-devel/gcc: backport two fixes for 15
A severe miscompilation and a severe ICE fix.
Bug: https://gcc.gnu.org/PR115387
Bug: https://gcc.gnu.org/PR115395
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-devel')
-rw-r--r-- | sys-devel/gcc/Manifest | 1 | ||||
-rw-r--r-- | sys-devel/gcc/gcc-15.0.0_pre20240609-r1.ebuild | 53 |
2 files changed, 54 insertions, 0 deletions
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index 273159a9a464..9d23ded17d72 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -42,6 +42,7 @@ DIST gcc-15-20240609.tar.xz 88288628 BLAKE2B 25ee6b2071fd189d5099160a1b9594cd0cd DIST gcc-15.0.0-musl-patches-1.tar.xz 3596 BLAKE2B 48fddc723ec8282cc2704c795a50fb37a46738a555151e0430180dda61d039fe96b29a6c3e8a543386d69690302bf46dfc89aad572082b7e47c928c0ccefdeb0 SHA512 e43284d02e25b77b911ce90d57520897751e86c631bdd6beb7d2e4429000156801b8c11bd9a737ec11bc966812f13ae44b88c1893645f8e6c6f8dfddc636ec39 DIST gcc-15.0.0-patches-1.tar.xz 11588 BLAKE2B 0623914dcf3ee0d44c729776cebbecfe92b256039a48c91e3fc16a27254a9c40436a1b6ea7fa9285914b153af861ea98ab845515169af204eeea0243c890a652 SHA512 7d3bcb1adcfa79c1672737125539fc0583f9c74eb8da0301ea0e441c68afeb7e1dbcbdffbf18e03b2515b4f23822a39e339298cf88ea94b93f5fc22b497cd545 DIST gcc-15.0.0-patches-2.tar.xz 11404 BLAKE2B e7caba8101e55ed59b8e18a6f062c699081eb764bab40c39dcc70c058002773b36d551ef8d5b1c35bf68bfe2f5b6917b0fc4b7d647a6fcf0d6b321cec7ac0185 SHA512 41d900ded125702cefdb0ec6688137b63209db7f26bb812207df987c26de64dd1f63d6513632b33ef60ae1e3b0349512611218eff2f80f9a5ac88fcff3e29354 +DIST gcc-15.0.0-patches-3.tar.xz 15668 BLAKE2B 99c332c7302bba0a790192bfcd81b8a273002884a2a89fc03f61d46ef669d9ba49496806400f86131c127b960862b97296148b6a0956946cc98470397c02579e SHA512 f0effdadff0fc553835c13f0dedb903374f021d172a20f01e6e3e0a39495ead96229665ba1a82f0aa1e9b49c6ff367f5c6e2c3e336a84ca02efb96f1a373f18a 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-15.0.0_pre20240609-r1.ebuild b/sys-devel/gcc/gcc-15.0.0_pre20240609-r1.ebuild new file mode 100644 index 000000000000..13151f81a816 --- /dev/null +++ b/sys-devel/gcc/gcc-15.0.0_pre20240609-r1.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_GCC_VER="15.0.0" +PATCH_VER="3" +MUSL_VER="1" +MUSL_GCC_VER="15.0.0" +PYTHON_COMPAT=( python3_{10..12} ) + +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 ~ia64 ~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}" + BDEPEND="amd64? ( >=${CATEGORY}/binutils-2.30[cet(-)?] )" +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_user +} |