commit:     8b165bc3b9bfc3976fc97f95e20da59fa924440c
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 19 00:05:08 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb 19 00:06:59 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8b165bc3

sys-devel/gcc: add 14.0.1_pre202402

This has a workaround for bug #924237. bugs #924709, bug #924758, and
bug #924769 may be the same.

Bug: https://bugs.gentoo.org/924709
Bug: https://bugs.gentoo.org/924758
Bug: https://bugs.gentoo.org/924769
Closes: https://bugs.gentoo.org/924237
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-devel/gcc/Manifest                      |  2 +
 sys-devel/gcc/gcc-14.0.1_pre20240218.ebuild | 64 +++++++++++++++++++++++++++++
 2 files changed, 66 insertions(+)

diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
index 0aecd076658b..6d04d4342d4f 100644
--- a/sys-devel/gcc/Manifest
+++ b/sys-devel/gcc/Manifest
@@ -40,6 +40,7 @@ DIST gcc-14-20240121.tar.xz 87469416 BLAKE2B 
a146f6f62775d2ad82f93dba0581b3aee16
 DIST gcc-14-20240128.tar.xz 87528304 BLAKE2B 
d3a3cce5da54b7342a11a3dceb97bfa5f1203327ea5ee5c9ab02d2b5cae2d0c2ba72feaf2da578d74fba05e10fa0f69433ee49501b5e5ef9a5f95f7284446adc
 SHA512 
8ad32c896765a4013e2e812ab26b7dc5d3c13db27cbe40222090f072b2c26c12808175a12484cd4e0d815bc3f9389d5210a9270de9c3b796c6fa2726d0e2ef44
 DIST gcc-14-20240204.tar.xz 87563056 BLAKE2B 
6723206f6cebf347df8a5645f64f05d16c257457cafc915694756af87d71e3265e411659978588591839b36744f045fd5400525434281dbdb3885a8a510c64d1
 SHA512 
d6c245c45bd95d34a41039ee1bb97b817781f5f137e80f88e61e9f2b4109e4cd7aaac67a528030325f96c83272664292b31d58c24153825c98bfc2270224b868
 DIST gcc-14-20240211.tar.xz 87577300 BLAKE2B 
cfee2b4cdb52e96cd5fe752c67c9606b92449c082d31b738f0503bca9d58e9c8da488540aa9bf116fdf6e19fb29f58104340de6314734e135df1112c93846baa
 SHA512 
a315c8e06e3e35b6046e5ae74c6758bd51ca89ad33cb7d7628091ef393a227bb8e2771000d2624377c80145ce69c3f781f9f08166e5e0ac7b0fc7539ceaa023f
+DIST gcc-14-20240218.tar.xz 87636252 BLAKE2B 
c7680c6e704f8a50d13126f397f672be8ccf4e6ebd05cb2530d7b7a37084bdc2a77e7971b20a4aac65ec6c913874e30a2cf0b90cef94420227a65f1f363f1611
 SHA512 
2938fcf17d94c82bcbef8269661414cbd489dc2db4024a4407c529f8d80363b2667058c3bd39b32641dc9e067591b24fa5e0f693759ccd259ad0d3dab1d9bc53
 DIST gcc-14.0.0-musl-patches-1.tar.xz 3576 BLAKE2B 
692baee8a7709905d53aeb150d73a3721c4ba47ee5f397cfb1b5be905cf003ca02b60c94ee294d90ac39645cd5cdf186c7a3aa950c47d8cf680c128ed705b807
 SHA512 
0592ab98a7142e404623a6511c67dff61e9ade32c3fb2c0e75b456306e0af3799ad13252b50b3d2fdd31e5815d7f0b16b0ad63ab8386fe4d78729fc9c182d617
 DIST gcc-14.0.0-patches-11.tar.xz 11272 BLAKE2B 
81c63b8aebcfd5b33b698ef4ef8f2d12b94ea2753ecec2b160cf9fab534dccd12875bcb16cfac2aa81211f8d9ff530cfc18f486567721beac487e08daa62363e
 SHA512 
0f51352cbc6815cd1dbc8b73e9c83842a58242220ba712291cc76c08c19b3a612c88a3221b2da437a9c7ecb410a83c2e538aa1984b733f444843bdf79d314a71
 DIST gcc-14.0.0-patches-16.tar.xz 11884 BLAKE2B 
bb47024c766f59222b50c5ff19ed6b763c9867508352cbcfc069d028d323a3b6fb3bbcbb2c08be7830f1ba266f54410842a17c9448c2bd9f101aa876ffb8f6ee
 SHA512 
890a0b63485558eb2f1e9fea6a274e251442d129bcb67fd2ee11715916a6f8ea15bed0b59c72ed055fff5d6d90e2bfc3140ddee4e057af117d86fd6b7615fcbc
@@ -48,6 +49,7 @@ DIST gcc-14.0.0-patches-19.tar.xz 13348 BLAKE2B 
c006eff626131ff839330cab265c0183
 DIST gcc-14.0.0-patches-20.tar.xz 18184 BLAKE2B 
7f17ca61ed2d7e131b6a742569dafb59058028ba3062e54a235cddccd76c77b9e36fc42efc4ca30e30b6112e08c8435b10d7acfef8191f1e089eb8d0c8b5c9d5
 SHA512 
dbfcab8ca728483d2f291339c22226f8f64cd56df96660cce963e3f86b267c42098e3f41c9b9758ad4d85e954466aecfdff8e68073145f52d31a387ef941f611
 DIST gcc-14.0.0-patches-21.tar.xz 13292 BLAKE2B 
8a6c0354a94cc4cd46fc5fe8c3eca0ff6378ab44009bea2457f275e119b0129bd14d3d4a1a37113eea6ed0a44641bdf4bb5c1740ea9a5e0d4c01af1012456966
 SHA512 
bd6c594c17b30f7bc47b48e75c89187e198c9a6a547b69e05e095c1e428400cea702ea01de124ab94bd80451fe762193a8f9047272a130106d4516258cdb08a7
 DIST gcc-14.0.0-patches-22.tar.xz 14380 BLAKE2B 
32d280358c56f446de795428c2e7b64ca4110177f4fdcacb0a636f71593afa91c6d0db00df73df32bd0508347f1ecead1516ca9a31a13c9667603eb57db79472
 SHA512 
4f241702eb364ccff2ba06d4fd884c79d497428e2516c9f53cdc66169b069fd445e42564128b47ffff7599bd07a07515bc2c4f7852d51b71164ec36f215b4eba
+DIST gcc-14.0.0-patches-23.tar.xz 13796 BLAKE2B 
bac16d3131c79dfd5655fc591db7342d4a3d00b863599626ca5805b6a49e9ffab347dc9a3339745ee16b2efefd0874e2ca3acfc3bce66ff0cedbcf712dc0bd72
 SHA512 
f9a0dd3dfe4dd5e55ac6ae93f5816af38f518110a968597dc55b446406011c3631e33e217533501966f665b9a8bda117ae8d19c62577d4267ddbbd90f4066afc
 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-14.0.1_pre20240218.ebuild 
b/sys-devel/gcc/gcc-14.0.1_pre20240218.ebuild
new file mode 100644
index 000000000000..07ffb3cbdbe1
--- /dev/null
+++ b/sys-devel/gcc/gcc-14.0.1_pre20240218.ebuild
@@ -0,0 +1,64 @@
+# 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="14.0.0"
+PATCH_VER="23"
+MUSL_VER="1"
+MUSL_GCC_VER="14.0.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=master
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+       # Don't keyword live ebuilds
+       #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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_user
+}

Reply via email to