summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRepository mirror & CI <repomirrorci@gentoo.org>2023-06-24 23:02:05 +0000
committerRepository mirror & CI <repomirrorci@gentoo.org>2023-06-24 23:02:05 +0000
commit9ad092c261e06ec2b1899cf0aa7cd67d13f9a8fd (patch)
tree77375dcf06816932bbd0950003abd6579bd9192c
parent2023-06-24 22:46:56 UTC (diff)
parentcmake.eclass: Set CMAKE_SYSROOT when building with SYSROOT= (diff)
downloadgentoo-9ad092c261e06ec2b1899cf0aa7cd67d13f9a8fd.tar.gz
gentoo-9ad092c261e06ec2b1899cf0aa7cd67d13f9a8fd.tar.bz2
gentoo-9ad092c261e06ec2b1899cf0aa7cd67d13f9a8fd.zip
Merge updates from master
-rw-r--r--eclass/cmake.eclass20
-rw-r--r--sys-devel/gcc/Manifest1
-rw-r--r--sys-devel/gcc/gcc-13.1.1_p20230624.ebuild65
3 files changed, 76 insertions, 10 deletions
diff --git a/eclass/cmake.eclass b/eclass/cmake.eclass
index 24787f1c2a49..1cdbc123a243 100644
--- a/eclass/cmake.eclass
+++ b/eclass/cmake.eclass
@@ -484,17 +484,17 @@ cmake_src_configure() {
cat >> "${toolchain_file}" <<- _EOF_ || die
set(CMAKE_SYSTEM_NAME "${sysname}")
_EOF_
+ fi
- if [ "${SYSROOT:-/}" != "/" ] ; then
- # When cross-compiling with a sysroot (e.g. with crossdev's emerge wrappers)
- # we need to tell cmake to use libs/headers from the sysroot but programs from / only.
- cat >> "${toolchain_file}" <<- _EOF_ || die
- set(CMAKE_SYSROOT "${ESYSROOT}")
- set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
- set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
- set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
- _EOF_
- fi
+ if [[ ${SYSROOT:-/} != / ]] ; then
+ # When building with a sysroot (e.g. with crossdev's emerge wrappers)
+ # we need to tell cmake to use libs/headers from the sysroot but programs from / only.
+ cat >> "${toolchain_file}" <<- _EOF_ || die
+ set(CMAKE_SYSROOT "${ESYSROOT}")
+ set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
+ set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
+ set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
+ _EOF_
fi
if use prefix-guest; then
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
index 957a649573be..f60add606de6 100644
--- a/sys-devel/gcc/Manifest
+++ b/sys-devel/gcc/Manifest
@@ -24,6 +24,7 @@ DIST gcc-13-20230527.tar.xz 83956360 BLAKE2B 86a2131b88144817673a6300c73b29c2dbb
DIST gcc-13-20230603.tar.xz 83954444 BLAKE2B 4be067c2159ae2a8ef3d699acab981cb911668bb0af84693b0226f58688146b0f93324296c584c6dca6df839ba344cff927cc82d20fce8c6b2282b256d745141 SHA512 ca1b41df7bf18c65189116099afcb43f65e13b17e57bf52049e739af223d51c3b825e2f80e239a3ddceec07693c991a85ec58ab6855255802d8bd413ff4324cf
DIST gcc-13-20230610.tar.xz 83983712 BLAKE2B 2584a5b6bfb8304c3065b256f432e578aef8fd7a4e3e9dc4cdbfb6d0a90ad8cb9d0b0f65ad67fad417878875160abb289314c1f27c775abc97c45c2b7ff7958a SHA512 a2e00bb5d816d37ea38de7662bb26616603b14cf08bc3452f39300fc8efed3fad372f7603deb36e0e6dd06f082c815997ba22c2b7438e379e782682e6333578d
DIST gcc-13-20230617.tar.xz 83971924 BLAKE2B 3e50ff5e54d9a4c6a5f81fb6111837df9efc105484cfb67423a0a4a1ef72c229fabdabccfdc14098be49ade9a13117a843890dcf16c3d3a43abe3332e8fbbf21 SHA512 e1d31883518a2fd040e9ea2b022c0cddca9ce1026317613db4dfbfa0aa704f3229c6b5a39d50ed920f242524b937d40a113edf9b89ad7f04a5b4af32835271ea
+DIST gcc-13-20230624.tar.xz 83969940 BLAKE2B 8a145ade87b38226d25161a0494b781e3cba1cfda229ffa367ed570aa97cdd3c38a520ae14e9ed9050fe844b229ac7bd8c2ef37544c472d39b8d75f7b9ecc3af SHA512 98e5fe2e780646f67f6d8ed2e9f8338a9be27ade40c2cfa78b7fa3f9c9a0a74771292b3eb81c5713f230f90bdec46104fa655ca4286bb9e6065432ae10122f54
DIST gcc-13.2.0-musl-patches-2.tar.xz 5292 BLAKE2B c057d6574d03c05854edaa9f3fd40e9149662b04f3ac7a7db3eb078d73a7b535726d1bf52e5b12736dedb2f9898ad731f2e48a6421fcfbf7b90f929dee072fcb SHA512 a691da0c87c443a5e9d23731f4005f27871c5b12bc9102873ffa24d374aa7b9fbd187c4f5635d23fa9ffb17e351e76173c2d3fdf40646e355c4cb314b538de69
DIST gcc-13.2.0-patches-3.tar.xz 30956 BLAKE2B 29ce043b46645640ca1e983397af3e158588ad87575f0bc59451ea4a7dd5e3bb5b190ed031de6a22cd790d423ba111e95d222187dd09985dceb12db9f0a2d907 SHA512 4ffecae7be320124ad0c4e71e39e142b7aa8db0e70b5f486f491d7a33ea31efc6464c6abeea77df02a8bd5cf81f08225d625c8af5c27f9afa32c0d7d989f7a3c
DIST gcc-14-20230529.tar.xz 84197648 BLAKE2B 1b8b812866294bafd7bf53c823b3d55288d5a30c54e921495d19286b9d04a1bf7c5228b052941200ecc61a516355d977229fc9e60cfe4353154811c1261054ab SHA512 bba930dc4b6b6a45bb5f33e4b46dc16d1d581b266078c5492833e2b4e64a93d2d19389a436c64dc2159240b07134f4f7242bef3cf35f303d34e10bf493fe70ba
diff --git a/sys-devel/gcc/gcc-13.1.1_p20230624.ebuild b/sys-devel/gcc/gcc-13.1.1_p20230624.ebuild
new file mode 100644
index 000000000000..994717045fb5
--- /dev/null
+++ b/sys-devel/gcc/gcc-13.1.1_p20230624.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2023 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="3"
+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 ~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
+}