commit:     63a4a4e9017679322693300861f1a5365aa7c025
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 17 01:09:09 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jan 17 01:09:51 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=63a4a4e9

sys-devel/gcc: add 13.2.1_p20240113-r1 (w/ libstdc++ aligned_alloc (steam) 
patch)

This helps some Steam games.

Bug: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7367
Bug: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8133
Bug: https://github.com/ValveSoftware/csgo-osx-linux/issues/2659
Bug: https://gcc.gnu.org/PR113258
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-devel/gcc/Manifest                       |  1 +
 sys-devel/gcc/gcc-13.2.1_p20240113-r1.ebuild | 65 ++++++++++++++++++++++++++++
 2 files changed, 66 insertions(+)

diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
index 5970a3a43105..485b86c45b07 100644
--- a/sys-devel/gcc/Manifest
+++ b/sys-devel/gcc/Manifest
@@ -26,6 +26,7 @@ DIST gcc-13-20240106.tar.xz 84368432 BLAKE2B 
e352f3994ff4e5626a8f278d488098b8718
 DIST gcc-13-20240113.tar.xz 84356052 BLAKE2B 
1fbfffc9f2afe443158e3f26182c8bdc3f3b599c5582762117831ecb6e6d3c1c69e8d2e5932f45eb7d534c3967e08a9f7b1bcec31aa5d7ac608bebff9f35120c
 SHA512 
a59886f707cf18f684295031d4d9fc5b03396face1705e61852d7de98729c53ac4cf209e951d00c232f14e9dc48eee40dd92487db7cb6ad0e80f2339d6d9503a
 DIST gcc-13.2.0-musl-patches-2.tar.xz 5292 BLAKE2B 
c057d6574d03c05854edaa9f3fd40e9149662b04f3ac7a7db3eb078d73a7b535726d1bf52e5b12736dedb2f9898ad731f2e48a6421fcfbf7b90f929dee072fcb
 SHA512 
a691da0c87c443a5e9d23731f4005f27871c5b12bc9102873ffa24d374aa7b9fbd187c4f5635d23fa9ffb17e351e76173c2d3fdf40646e355c4cb314b538de69
 DIST gcc-13.2.0-patches-11.tar.xz 46340 BLAKE2B 
c9f12ccbe7bb7ba3a2afec16695e69b062429779d544f5614e1ef0617751e54d77eb9bb6e19dc8c6132c57e630f0e77e2cc20cf2c77e0e79d03a6e57b9ba53c6
 SHA512 
a09801ecefccc66830607986a622bbcc5f217ba08da4ac9f68436e422b5a19042c60c7d5fcb75d4fe9ad9008ab06278382c9798b319ed9630c2e97fa09c3a344
+DIST gcc-13.2.0-patches-12.tar.xz 47404 BLAKE2B 
ed018bcd7429d1c7aace746cbfc4e59dae409fc0a35231320c1b44c96fff0d912eba5c72109c2deb883f5368159df02148b2d4373396b34da882164c61fe4387
 SHA512 
b7872a03870bce7b633e4af4329b24fe8f3d50d6d9173f63549f606ce062787748af7f79e7ec4afeb768968d6e8462a849bd1b94316ea6bb284551f99e811617
 DIST gcc-13.2.0-patches-7.tar.xz 37064 BLAKE2B 
4a8700a8d44bfaa84926f8bfd0da4c5b0c0377f47fc0679456e909f7c9029b9cf1b72c0ba0bc505d9035d5c38e27f7e5b029727eaf2bc7aca417a6be966b2f43
 SHA512 
f440c97e6782ecb8581d41608e31a648ac426e2d870bc1d171da7794cdeff2fd0546cae0c7214e72fd3a00ead8a5c66f3f633b670b74553a2f3a40378b51f20c
 DIST gcc-14-20231217.tar.xz 86943032 BLAKE2B 
8d5ab21fedffad0d4d4e02201c74f3b90cfabe5c2c1abbc048b6c4d179cbf3977cffc6bfc1b7b679d0276b66f86d58ef5c0b8451a4fcb75b88b7240fd7baf41c
 SHA512 
23d8e6dd76aff0a5d7687ce8753aba7bdc374d3330553314da378af84ad629e67dbb532ba416816ce81812857c4c54e31cc5460d3f86619d7a9fb368328ff11d
 DIST gcc-14-20231224.tar.xz 87027056 BLAKE2B 
412a0e8c82063f3aac828620648e5a57942dc2028408904290f7051b5756fe1f78d81fea8d1fba607db57e1905104ed236f86fc7d07b0bb35f407ce6c91f6e4a
 SHA512 
c05eaa660732cbe57e7390afa9218eb99253dd58a00f376287dfd4765ed43acc4672635031439226b2e068899796a20ef14e5ac610f32ca31e285a4cdfa2f65e

diff --git a/sys-devel/gcc/gcc-13.2.1_p20240113-r1.ebuild 
b/sys-devel/gcc/gcc-13.2.1_p20240113-r1.ebuild
new file mode 100644
index 000000000000..71eb3b2b9651
--- /dev/null
+++ b/sys-devel/gcc/gcc-13.2.1_p20240113-r1.ebuild
@@ -0,0 +1,65 @@
+# 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="13.2.0"
+PATCH_VER="12"
+MUSL_VER="2"
+MUSL_GCC_VER="13.2.0"
+
+if [[ ${PV} == *.9999 ]] ; then
+       MY_PV_2=$(ver_cut 2)
+       MY_PV_3=1
+       if [[ ${MY_PV_2} == 0 ]] ; then
+               MY_PV_2=0
+               MY_PV_3=0
+       else
+               MY_PV_2=$((${MY_PV_2} - 1))
+       fi
+
+       # e.g. 12.2.9999 -> 12.1.1
+       TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3}
+elif [[ -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=releases/gcc-$(ver_cut 1)
+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=">=${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 "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch
+       eapply_user
+}

Reply via email to