summaryrefslogtreecommitdiff
path: root/sys-libs
diff options
context:
space:
mode:
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/Manifest.gzbin14549 -> 14569 bytes
-rw-r--r--sys-libs/compiler-rt-sanitizers/Manifest2
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240608.ebuild220
-rw-r--r--sys-libs/compiler-rt/Manifest2
-rw-r--r--sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240608.ebuild172
-rw-r--r--sys-libs/libcxx/Manifest2
-rw-r--r--sys-libs/libcxx/libcxx-19.0.0_pre20240608.ebuild210
-rw-r--r--sys-libs/libcxxabi/Manifest2
-rw-r--r--sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240608.ebuild110
-rw-r--r--sys-libs/libomp/Manifest2
-rw-r--r--sys-libs/libomp/libomp-19.0.0_pre20240608.ebuild88
-rw-r--r--sys-libs/llvm-libunwind/Manifest2
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240608.ebuild128
13 files changed, 940 insertions, 0 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz
index c6be687056dd..dd9b543d5c2a 100644
--- a/sys-libs/Manifest.gz
+++ b/sys-libs/Manifest.gz
Binary files differ
diff --git a/sys-libs/compiler-rt-sanitizers/Manifest b/sys-libs/compiler-rt-sanitizers/Manifest
index c987b3c0ac90..da6a45d2a9e6 100644
--- a/sys-libs/compiler-rt-sanitizers/Manifest
+++ b/sys-libs/compiler-rt-sanitizers/Manifest
@@ -9,6 +9,7 @@ DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c6
DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
DIST llvm-project-18.1.7.src.tar.xz 132063384 BLAKE2B b8c37bd131fb5f3131bfab4fbad7aa811079ca10723faa14779253bc62b1ee08d4e04650e1da883297ed88a62d518b868a1f13cf57d03233254fd01209da5c02 SHA512 0f67818267803aca9d2bc9eb89335ee6dc56269e8066a0f8a48c4a959e8805dbf6bc839b9f96a92f86ee50d72e7cc326ffe18febb5eb06751ab54a217c0221c8
DIST llvm-project-18.1.7.src.tar.xz.sig 566 BLAKE2B 9ae6d80eba5309ce3d5cba580df57c28dbcf429266b2ced622465e34ab2a7ae0f100d1e89c73a44abccd95a3367979344450fd53fb6a2baa029b929d3f13eee3 SHA512 7e5601e35f4fcaa4ed042638ae5a4fb90714c9dce58aa3f98e965568660b88294185621a4eb5547de262dca8a96f620db3f94932bb1776661e345dbe1266315c
+DIST llvm-project-5aabbf0602c48b67bb89fd37f95bf97c95ded488.tar.gz 212582616 BLAKE2B 78522148bb4993bd26b16f1e3f44c2baf617705667c7fb104edc844c4330017166c783adae2f0215ca7463c05d1eef30fdf02b13241a9497aaede36bb8580a26 SHA512 104e0b5b4f34102f2da03cd54fe9bf5f7fb6efb3a9745d8ec85caa5f92189fde4a5c02c327243d87ff5c7d24b3790fcabdf0ef7144e79e15765785ca72dd3841
DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
DIST llvm-project-7dc2f6602212bf0a0433c157b70e4fc0d70bb730.tar.gz 211903416 BLAKE2B 4a2f12e0aa234d507d2fc2136a1d98a7624147ce6e401831743e640abcaceb5152c80ba2dc312f9256e4a04be2ad065d1a57dbe5dc24f2d3edc9d65888986710 SHA512 c9eb99f666fc15b29f01a1b2a4b3c6edd3a726033533111e60763c6313a4af8c9dba3396856d6650ac5e666d00941efcc944fac85a4483748bbbea9475e6daf8
EBUILD compiler-rt-sanitizers-15.0.7.ebuild 6648 BLAKE2B 89d90e750bc9c3c35e8a42a259fd84bc147ed9b7ed66168435f0010ef8adaf35e04e2cd43c1acc144668e04f5c229ca3cfd99aeb01b4ba2e46f10dd4615e131d SHA512 4f290993d65b7a17280c5ea9a9d19e13cefdde3aebc2236271e02bb1517655895e8eb3adc2047a849ce11dbacf8d7eddec715ab14523122089d856c21ae123a0
@@ -19,4 +20,5 @@ EBUILD compiler-rt-sanitizers-18.1.7.ebuild 6358 BLAKE2B 1a191c1e493b3a596a68314
EBUILD compiler-rt-sanitizers-19.0.0.9999.ebuild 6366 BLAKE2B 4e6459ee51444413b05b661deedbe0f3543f71f6e05349a3a7f4a6352897ee7ea8a62a8ec4a26c5c31a4ba21e68b045b3e37d9e2530ad51519a9f7d2a455342c SHA512 c7ec9377a079c30b3460a7201482b5183ab35755824a7d1c81d90dc2c519a6e2410c0f51fdb4719b8239ee841c162b20ad1cf191068a27a8f13664cad4aa1ca9
EBUILD compiler-rt-sanitizers-19.0.0_pre20240518.ebuild 6366 BLAKE2B 1be7b5b920c35f8922f29640e074a2d5603114ccc0120b51edab59a4160bf88c0f6fc06b5cee1f99f11f2eaf82dd1b8c1bcd91d3f135012c5a965f0cf5f1bb6e SHA512 793f8d3642034024acabc720772d0f38dcfe775766765ab83cd000e230bf30d7a00bee29e23202e4706c28f2265938ba1ec3cd3c1589f4153252e73208e3072e
EBUILD compiler-rt-sanitizers-19.0.0_pre20240525.ebuild 6366 BLAKE2B 4e6459ee51444413b05b661deedbe0f3543f71f6e05349a3a7f4a6352897ee7ea8a62a8ec4a26c5c31a4ba21e68b045b3e37d9e2530ad51519a9f7d2a455342c SHA512 c7ec9377a079c30b3460a7201482b5183ab35755824a7d1c81d90dc2c519a6e2410c0f51fdb4719b8239ee841c162b20ad1cf191068a27a8f13664cad4aa1ca9
+EBUILD compiler-rt-sanitizers-19.0.0_pre20240608.ebuild 6366 BLAKE2B 4e6459ee51444413b05b661deedbe0f3543f71f6e05349a3a7f4a6352897ee7ea8a62a8ec4a26c5c31a4ba21e68b045b3e37d9e2530ad51519a9f7d2a455342c SHA512 c7ec9377a079c30b3460a7201482b5183ab35755824a7d1c81d90dc2c519a6e2410c0f51fdb4719b8239ee841c162b20ad1cf191068a27a8f13664cad4aa1ca9
MISC metadata.xml 1475 BLAKE2B f7ea99e3103e42a2c79fe6c86ad174297e56bcffa7b164ac3ab0a239ba5adf2265b7fc458ce8b22c9c3bd647bb03d674abf842443cb32bf8d88c683746650a19 SHA512 8e52479d3b040718a3fdaa811030bc45ef33ce74daae3e365281074cdf6d586ba11ae5f14d87dbb456f00fe4b9ae6057f3bf30eb0973cc16cbdcc3eba01ff9f8
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240608.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240608.ebuild
new file mode 100644
index 000000000000..d395b7fd5a11
--- /dev/null
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240608.ebuild
@@ -0,0 +1,220 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit check-reqs cmake flag-o-matic llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="Compiler runtime libraries for clang (sanitizers & xray)"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
+SLOT="${LLVM_MAJOR}"
+IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
+# base targets
+IUSE+=" +ctx-profile +libfuzzer +memprof +orc +profile +xray"
+# sanitizer targets, keep in sync with config-ix.cmake
+# NB: ubsan, scudo deliberately match two entries
+SANITIZER_FLAGS=(
+ asan dfsan lsan msan hwasan tsan ubsan safestack cfi scudo
+ shadowcallstack gwp-asan
+)
+IUSE+=" ${SANITIZER_FLAGS[@]/#/+}"
+REQUIRED_USE="
+ || ( ${SANITIZER_FLAGS[*]} libfuzzer orc profile xray )
+ test? (
+ cfi? ( ubsan )
+ gwp-asan? ( scudo )
+ )
+"
+RESTRICT="
+ !clang? ( test )
+ !test? ( test )
+"
+
+DEPEND="
+ sys-devel/llvm:${LLVM_MAJOR}
+ virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?]
+"
+BDEPEND="
+ clang? ( sys-devel/clang )
+ elibc_glibc? ( net-libs/libtirpc )
+ test? (
+ $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
+ =sys-devel/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
+ sys-libs/compiler-rt:${LLVM_MAJOR}
+ )
+ !test? (
+ ${PYTHON_DEPS}
+ )
+"
+
+LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
+LLVM_TEST_COMPONENTS=(
+ llvm/include/llvm/ProfileData llvm/lib/Testing/Support third-party
+)
+llvm.org_set_globals
+
+python_check_deps() {
+ use test || return 0
+ python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
+}
+
+check_space() {
+ if use test; then
+ local CHECKREQS_DISK_BUILD=11G
+ check-reqs_pkg_pretend
+ fi
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ sed -i -e 's:-Werror::' lib/tsan/go/buildgo.sh || die
+
+ local flag
+ for flag in "${SANITIZER_FLAGS[@]}"; do
+ if ! use "${flag}"; then
+ local cmake_flag=${flag/-/_}
+ sed -i -e "/COMPILER_RT_HAS_${cmake_flag^^}/s:TRUE:FALSE:" \
+ cmake/config-ix.cmake || die
+ fi
+ done
+
+ # TODO: fix these tests to be skipped upstream
+ if use asan && ! use profile; then
+ rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die
+ fi
+ if use ubsan && ! use cfi; then
+ > test/cfi/CMakeLists.txt || die
+ fi
+ # hangs, sigh
+ rm test/tsan/getline_nohang.cpp || die
+
+ llvm.org_src_prepare
+}
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+ # pre-set since we need to pass it to cmake
+ BUILD_DIR=${WORKDIR}/compiler-rt_build
+
+ if use clang; then
+ local -x CC=${CHOST}-clang
+ local -x CXX=${CHOST}-clang++
+ strip-unsupported-flags
+ fi
+
+ local flag want_sanitizer=OFF
+ for flag in "${SANITIZER_FLAGS[@]}"; do
+ if use "${flag}"; then
+ want_sanitizer=ON
+ break
+ fi
+ done
+
+ local mycmakeargs=(
+ -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
+ # use a build dir structure consistent with install
+ # this makes it possible to easily deploy test-friendly clang
+ -DCOMPILER_RT_OUTPUT_DIR="${BUILD_DIR}/lib/clang/${LLVM_MAJOR}"
+
+ -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
+ # builtins & crt installed by sys-libs/compiler-rt
+ -DCOMPILER_RT_BUILD_BUILTINS=OFF
+ -DCOMPILER_RT_BUILD_CRT=OFF
+ -DCOMPILER_RT_BUILD_CTX_PROFILE=$(usex ctx-profile)
+ -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
+ -DCOMPILER_RT_BUILD_MEMPROF=$(usex memprof)
+ -DCOMPILER_RT_BUILD_ORC=$(usex orc)
+ -DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
+ -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}"
+ -DCOMPILER_RT_BUILD_XRAY=$(usex xray)
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+ )
+
+ if use amd64; then
+ mycmakeargs+=(
+ -DCAN_TARGET_i386=$(usex abi_x86_32)
+ -DCAN_TARGET_x86_64=$(usex abi_x86_64)
+ )
+ fi
+
+ if use test; then
+ mycmakeargs+=(
+ -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+
+ # they are created during src_test()
+ -DCOMPILER_RT_TEST_COMPILER="${BUILD_DIR}/lib/llvm/${LLVM_MAJOR}/bin/clang"
+ -DCOMPILER_RT_TEST_CXX_COMPILER="${BUILD_DIR}/lib/llvm/${LLVM_MAJOR}/bin/clang++"
+ )
+
+ # same flags are passed for build & tests, so we need to strip
+ # them down to a subset supported by clang
+ CC=${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang \
+ CXX=${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++ \
+ strip-unsupported-flags
+ fi
+
+ if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then
+ mycmakeargs+=(
+ # setting -isysroot is disabled with compiler-rt-prefix-paths.patch
+ # this allows adding arm64 support using SDK in EPREFIX
+ -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk"
+ # Set version based on the SDK in EPREFIX
+ # This disables i386 for SDK >= 10.15
+ # Will error if has_use tsan and SDK < 10.12
+ -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')"
+ # Use our libtool instead of looking it up with xcrun
+ -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool"
+ )
+ fi
+
+ cmake_src_configure
+
+ if use test; then
+ local sys_dir=( "${EPREFIX}"/usr/lib/clang/${LLVM_MAJOR}/lib/* )
+ [[ -e ${sys_dir} ]] || die "Unable to find ${sys_dir}"
+ [[ ${#sys_dir[@]} -eq 1 ]] || die "Non-deterministic compiler-rt install: ${sys_dir[*]}"
+
+ # copy clang over since resource_dir is located relatively to binary
+ # therefore, we can put our new libraries in it
+ mkdir -p "${BUILD_DIR}"/lib/{llvm/${LLVM_MAJOR}/{bin,$(get_libdir)},clang/${LLVM_MAJOR}/include} || die
+ cp "${EPREFIX}"/usr/lib/llvm/${LLVM_MAJOR}/bin/clang{,++} \
+ "${BUILD_DIR}"/lib/llvm/${LLVM_MAJOR}/bin/ || die
+ cp "${EPREFIX}"/usr/lib/clang/${LLVM_MAJOR}/include/*.h \
+ "${BUILD_DIR}"/lib/clang/${LLVM_MAJOR}/include/ || die
+ cp "${sys_dir}"/*builtins*.a \
+ "${BUILD_DIR}/lib/clang/${LLVM_MAJOR}/lib/${sys_dir##*/}/" || die
+ # we also need LLVMgold.so for gold-based tests
+ if [[ -f ${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/LLVMgold.so ]]; then
+ ln -s "${EPREFIX}"/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/LLVMgold.so \
+ "${BUILD_DIR}"/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/ || die
+ fi
+ fi
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ # disable sandbox to have it stop clobbering LD_PRELOAD
+ local -x SANDBOX_ON=0
+ # wipe LD_PRELOAD to make ASAN happy
+ local -x LD_PRELOAD=
+
+ cmake_build check-all
+}
diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest
index 66bec4392df5..ff5a9bcb6029 100644
--- a/sys-libs/compiler-rt/Manifest
+++ b/sys-libs/compiler-rt/Manifest
@@ -11,6 +11,7 @@ DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c6
DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
DIST llvm-project-18.1.7.src.tar.xz 132063384 BLAKE2B b8c37bd131fb5f3131bfab4fbad7aa811079ca10723faa14779253bc62b1ee08d4e04650e1da883297ed88a62d518b868a1f13cf57d03233254fd01209da5c02 SHA512 0f67818267803aca9d2bc9eb89335ee6dc56269e8066a0f8a48c4a959e8805dbf6bc839b9f96a92f86ee50d72e7cc326ffe18febb5eb06751ab54a217c0221c8
DIST llvm-project-18.1.7.src.tar.xz.sig 566 BLAKE2B 9ae6d80eba5309ce3d5cba580df57c28dbcf429266b2ced622465e34ab2a7ae0f100d1e89c73a44abccd95a3367979344450fd53fb6a2baa029b929d3f13eee3 SHA512 7e5601e35f4fcaa4ed042638ae5a4fb90714c9dce58aa3f98e965568660b88294185621a4eb5547de262dca8a96f620db3f94932bb1776661e345dbe1266315c
+DIST llvm-project-5aabbf0602c48b67bb89fd37f95bf97c95ded488.tar.gz 212582616 BLAKE2B 78522148bb4993bd26b16f1e3f44c2baf617705667c7fb104edc844c4330017166c783adae2f0215ca7463c05d1eef30fdf02b13241a9497aaede36bb8580a26 SHA512 104e0b5b4f34102f2da03cd54fe9bf5f7fb6efb3a9745d8ec85caa5f92189fde4a5c02c327243d87ff5c7d24b3790fcabdf0ef7144e79e15765785ca72dd3841
DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
DIST llvm-project-7dc2f6602212bf0a0433c157b70e4fc0d70bb730.tar.gz 211903416 BLAKE2B 4a2f12e0aa234d507d2fc2136a1d98a7624147ce6e401831743e640abcaceb5152c80ba2dc312f9256e4a04be2ad065d1a57dbe5dc24f2d3edc9d65888986710 SHA512 c9eb99f666fc15b29f01a1b2a4b3c6edd3a726033533111e60763c6313a4af8c9dba3396856d6650ac5e666d00941efcc944fac85a4483748bbbea9475e6daf8
EBUILD compiler-rt-15.0.7.ebuild 4238 BLAKE2B 22d56dbe24c92400bf58942390b06af70fddba89d8fecc9b85162dd7a41c6ee592eaaf883f5ad483f65f74fabccc28f94528688410ee36e2d5279efcc6066de0 SHA512 ca49d23def580d4dcfc4058768eeb9deb6e59ea44575da272d1c142fffe0bf4e3d3c7c9fa6182ab348a3aab11879af116a549cb1a3a03b27b4bf4151cf892aaa
@@ -22,4 +23,5 @@ EBUILD compiler-rt-18.1.7.ebuild 4972 BLAKE2B 3bd56ca93ddb3f21007b16c794140281e9
EBUILD compiler-rt-19.0.0.9999.ebuild 4907 BLAKE2B 0fa9438438d1c499cf382315f9da67ab920037c22e6413180f50f509347aa82e76d2f8223cf725902523f8358a8b95bd063f184aac70951192029c857de5260a SHA512 c5782efd4cc5239a9c40339338128e3122df12319857c46ab0fb4a869e81438d84daedd934aae446b0156695ce1ee5779d20f12ff9b63fd79a5d22f67ae72bb9
EBUILD compiler-rt-19.0.0_pre20240518.ebuild 4907 BLAKE2B fc7c7f546021b87d3ddfc7ece44df1b743df77044c5537f73530f612f17ee0db1281733066c22510c5fe7caba2d493d6ec2753ab7256875068f412f7eca586c4 SHA512 5bba47a9926a8cc5efa7e1d82573feed2b8d97c15e1dd0064bb85398723011f173352e89af88176aa6eab81cbef2d4d7dca54dc64afd1a4673a4b233775299a2
EBUILD compiler-rt-19.0.0_pre20240525.ebuild 4907 BLAKE2B 0fa9438438d1c499cf382315f9da67ab920037c22e6413180f50f509347aa82e76d2f8223cf725902523f8358a8b95bd063f184aac70951192029c857de5260a SHA512 c5782efd4cc5239a9c40339338128e3122df12319857c46ab0fb4a869e81438d84daedd934aae446b0156695ce1ee5779d20f12ff9b63fd79a5d22f67ae72bb9
+EBUILD compiler-rt-19.0.0_pre20240608.ebuild 4907 BLAKE2B 0fa9438438d1c499cf382315f9da67ab920037c22e6413180f50f509347aa82e76d2f8223cf725902523f8358a8b95bd063f184aac70951192029c857de5260a SHA512 c5782efd4cc5239a9c40339338128e3122df12319857c46ab0fb4a869e81438d84daedd934aae446b0156695ce1ee5779d20f12ff9b63fd79a5d22f67ae72bb9
MISC metadata.xml 416 BLAKE2B 79a58249c94b605ba57f346c4e05b43853cf6cfb8bb65a4f4e3c44039cccfdb83dd31bfaaaf398bcbdc393efabdfc7ed186fe775976c46227e74decf2c8f4fb2 SHA512 ce30c79a575e5933effb1fec36f9a4ef02d9f97f312feb39c55a88cbda9a1bae1d7af2ec4ad5f66212cbb2cdbfb26f1a436689f16f410153c9d65eb010264c48
diff --git a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240608.ebuild b/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240608.ebuild
new file mode 100644
index 000000000000..4679822780fc
--- /dev/null
+++ b/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240608.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit cmake crossdev flag-o-matic llvm.org llvm-utils python-any-r1
+inherit toolchain-funcs
+
+DESCRIPTION="Compiler runtime library for clang (built-in part)"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
+SLOT="${LLVM_MAJOR}"
+IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
+RESTRICT="!test? ( test ) !clang? ( test )"
+
+DEPEND="
+ sys-devel/llvm:${LLVM_MAJOR}
+"
+BDEPEND="
+ clang? ( sys-devel/clang )
+ test? (
+ $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
+ =sys-devel/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
+ )
+ !test? (
+ ${PYTHON_DEPS}
+ )
+"
+
+LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
+llvm.org_set_globals
+
+python_check_deps() {
+ use test || return 0
+ python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+ if ! use clang && ! tc-is-clang; then
+ ewarn "Building using a compiler other than clang may result in broken atomics"
+ ewarn "library. Enable USE=clang unless you have a very good reason not to."
+ fi
+}
+
+pkg_setup() {
+ if target_is_not_host || tc-is-cross-compiler ; then
+ # strips vars like CFLAGS="-march=x86_64-v3" for non-x86 architectures
+ CHOST=${CTARGET} strip-unsupported-flags
+ # overrides host docs otherwise
+ DOCS=()
+ fi
+ python-any-r1_pkg_setup
+}
+
+test_compiler() {
+ target_is_not_host && return
+ $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \
+ <<<'int main() { return 0; }' &>/dev/null
+}
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+ # pre-set since we need to pass it to cmake
+ BUILD_DIR=${WORKDIR}/${P}_build
+
+ if use clang && ! is_crosspkg; then
+ # Only do this conditionally to allow overriding with
+ # e.g. CC=clang-13 in case of breakage
+ if ! tc-is-clang ; then
+ local -x CC=${CHOST}-clang
+ local -x CXX=${CHOST}-clang++
+ fi
+
+ strip-unsupported-flags
+ fi
+
+ if ! is_crosspkg && ! test_compiler ; then
+ local nolib_flags=( -nodefaultlibs -lc )
+
+ if test_compiler "${nolib_flags[@]}"; then
+ local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
+ ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
+ elif test_compiler "${nolib_flags[@]}" -nostartfiles; then
+ # Avoiding -nostartfiles earlier on for bug #862540,
+ # and set available entry symbol for bug #862798.
+ nolib_flags+=( -nostartfiles -e main )
+
+ local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
+ ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
+ fi
+ fi
+
+ local mycmakeargs=(
+ -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
+
+ -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
+ -DCOMPILER_RT_BUILD_CTX_PROFILE=OFF
+ -DCOMPILER_RT_BUILD_LIBFUZZER=OFF
+ -DCOMPILER_RT_BUILD_MEMPROF=OFF
+ -DCOMPILER_RT_BUILD_ORC=OFF
+ -DCOMPILER_RT_BUILD_PROFILE=OFF
+ -DCOMPILER_RT_BUILD_SANITIZERS=OFF
+ -DCOMPILER_RT_BUILD_XRAY=OFF
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+ )
+
+ if use amd64 && ! target_is_not_host; then
+ mycmakeargs+=(
+ -DCAN_TARGET_i386=$(usex abi_x86_32)
+ -DCAN_TARGET_x86_64=$(usex abi_x86_64)
+ )
+ fi
+
+ if is_crosspkg; then
+ # Needed to target built libc headers
+ export CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include"
+ mycmakeargs+=(
+ # Without this, the compiler will compile a test program
+ # and fail due to no builtins.
+ -DCMAKE_C_COMPILER_WORKS=1
+ -DCMAKE_CXX_COMPILER_WORKS=1
+
+ # Without this, compiler-rt install location is not unique
+ # to target triples, only to architecture.
+ # Needed if you want to target multiple libcs for one arch.
+ -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON
+
+ -DCMAKE_ASM_COMPILER_TARGET="${CTARGET}"
+ -DCMAKE_C_COMPILER_TARGET="${CTARGET}"
+ -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON
+ )
+ fi
+
+ if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then
+ mycmakeargs+=(
+ # setting -isysroot is disabled with compiler-rt-prefix-paths.patch
+ # this allows adding arm64 support using SDK in EPREFIX
+ -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk"
+ # Set version based on the SDK in EPREFIX.
+ # This disables i386 for SDK >= 10.15
+ -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')"
+ # Use our libtool instead of looking it up with xcrun
+ -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool"
+ )
+ fi
+
+ if use test; then
+ mycmakeargs+=(
+ -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+
+ -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang"
+ -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++"
+ )
+ fi
+
+ cmake_src_configure
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+
+ cmake_build check-builtins
+}
diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest
index 6139296f8e0d..13fea845a597 100644
--- a/sys-libs/libcxx/Manifest
+++ b/sys-libs/libcxx/Manifest
@@ -10,6 +10,7 @@ DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c6
DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
DIST llvm-project-18.1.7.src.tar.xz 132063384 BLAKE2B b8c37bd131fb5f3131bfab4fbad7aa811079ca10723faa14779253bc62b1ee08d4e04650e1da883297ed88a62d518b868a1f13cf57d03233254fd01209da5c02 SHA512 0f67818267803aca9d2bc9eb89335ee6dc56269e8066a0f8a48c4a959e8805dbf6bc839b9f96a92f86ee50d72e7cc326ffe18febb5eb06751ab54a217c0221c8
DIST llvm-project-18.1.7.src.tar.xz.sig 566 BLAKE2B 9ae6d80eba5309ce3d5cba580df57c28dbcf429266b2ced622465e34ab2a7ae0f100d1e89c73a44abccd95a3367979344450fd53fb6a2baa029b929d3f13eee3 SHA512 7e5601e35f4fcaa4ed042638ae5a4fb90714c9dce58aa3f98e965568660b88294185621a4eb5547de262dca8a96f620db3f94932bb1776661e345dbe1266315c
+DIST llvm-project-5aabbf0602c48b67bb89fd37f95bf97c95ded488.tar.gz 212582616 BLAKE2B 78522148bb4993bd26b16f1e3f44c2baf617705667c7fb104edc844c4330017166c783adae2f0215ca7463c05d1eef30fdf02b13241a9497aaede36bb8580a26 SHA512 104e0b5b4f34102f2da03cd54fe9bf5f7fb6efb3a9745d8ec85caa5f92189fde4a5c02c327243d87ff5c7d24b3790fcabdf0ef7144e79e15765785ca72dd3841
DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
DIST llvm-project-7dc2f6602212bf0a0433c157b70e4fc0d70bb730.tar.gz 211903416 BLAKE2B 4a2f12e0aa234d507d2fc2136a1d98a7624147ce6e401831743e640abcaceb5152c80ba2dc312f9256e4a04be2ad065d1a57dbe5dc24f2d3edc9d65888986710 SHA512 c9eb99f666fc15b29f01a1b2a4b3c6edd3a726033533111e60763c6313a4af8c9dba3396856d6650ac5e666d00941efcc944fac85a4483748bbbea9475e6daf8
EBUILD libcxx-15.0.7-r1.ebuild 5283 BLAKE2B 4380fc5b851054a5ec226ee4c92a2b79511d73ac9b3f8bccc977211601eca36113fc0ae605854da53898507021f24a8b319197605c556244d84253bede7b84f4 SHA512 0a5859269422e794deb43ed960651a1dea830af28b5e395f32e28de8e67a1f399507340230af1c84248853f554e751709a60a9a78aeb0eb42804cb41907dbfce
@@ -20,4 +21,5 @@ EBUILD libcxx-18.1.7.ebuild 5447 BLAKE2B 262f4dd0ccb046dcdf7f6970350381a9a48530f
EBUILD libcxx-19.0.0.9999.ebuild 5397 BLAKE2B 21d3fc915eaa8b5f3d9821b527aeaf79a70e1037e556e7cf39c8dc8c8df6bd6e115510c0a89436edcd9a7aefacc698f7043abeb330402a60f591af68c8fb0a33 SHA512 4b5467000c57558e191d26ba94aad76b56b1d502a552727e148a82859977f47471d16a19dbdd1327cf915c8151339dac9af96d0d06d8e0ab0c021717ecb931ea
EBUILD libcxx-19.0.0_pre20240518.ebuild 5397 BLAKE2B 800024bbb9b69c7c159d05bf481db08bfb4c89b93a517410a892cd80a0a0bbf07119d0babcc952283bfc4dff51dd4ea4253a63cbc3f301db6e281074e4a2061a SHA512 61a3676d06d6e5f44e5a6f0de8f05c0af5384c3e940b2f504bddbe6b9a806ae5c5ff8311f6986a284338761e554894ddb1bec7f5e1b324a6e211b1d60f0eb635
EBUILD libcxx-19.0.0_pre20240525.ebuild 5397 BLAKE2B 800024bbb9b69c7c159d05bf481db08bfb4c89b93a517410a892cd80a0a0bbf07119d0babcc952283bfc4dff51dd4ea4253a63cbc3f301db6e281074e4a2061a SHA512 61a3676d06d6e5f44e5a6f0de8f05c0af5384c3e940b2f504bddbe6b9a806ae5c5ff8311f6986a284338761e554894ddb1bec7f5e1b324a6e211b1d60f0eb635
+EBUILD libcxx-19.0.0_pre20240608.ebuild 5397 BLAKE2B 21d3fc915eaa8b5f3d9821b527aeaf79a70e1037e556e7cf39c8dc8c8df6bd6e115510c0a89436edcd9a7aefacc698f7043abeb330402a60f591af68c8fb0a33 SHA512 4b5467000c57558e191d26ba94aad76b56b1d502a552727e148a82859977f47471d16a19dbdd1327cf915c8151339dac9af96d0d06d8e0ab0c021717ecb931ea
MISC metadata.xml 598 BLAKE2B b7a60449e0d8e4e7605ec203dfaa45b17a265b024e21a3bcfe05a3aeb6c3d19a1d2a218cb1f9ac9ed52296f0d6e723fed251f364341fb70cbd91b747962db580 SHA512 a23f912efff52c4687767023da826ace8c6e5dcd5e69ece86aabbea99da89e48ba81cdc292f03193e2e8a05743e62ebf4d4735d038e0cc4b42714fa277569335
diff --git a/sys-libs/libcxx/libcxx-19.0.0_pre20240608.ebuild b/sys-libs/libcxx/libcxx-19.0.0_pre20240608.ebuild
new file mode 100644
index 000000000000..8713b12c69fb
--- /dev/null
+++ b/sys-libs/libcxx/libcxx-19.0.0_pre20240608.ebuild
@@ -0,0 +1,210 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit cmake-multilib flag-o-matic llvm.org llvm-utils python-any-r1
+inherit toolchain-funcs
+
+DESCRIPTION="New implementation of the C++ standard library, targeting C++11"
+HOMEPAGE="https://libcxx.llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
+SLOT="0"
+IUSE="+clang +libcxxabi +static-libs test"
+REQUIRED_USE="test? ( clang )"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ libcxxabi? (
+ ~sys-libs/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}]
+ )
+ !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )
+"
+DEPEND="
+ ${RDEPEND}
+ sys-devel/llvm:${LLVM_MAJOR}
+"
+BDEPEND="
+ clang? (
+ sys-devel/clang:${LLVM_MAJOR}
+ )
+ !test? (
+ ${PYTHON_DEPS}
+ )
+ test? (
+ dev-debug/gdb[python]
+ $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
+ )
+"
+
+LLVM_COMPONENTS=( runtimes libcxx{,abi} llvm/{cmake,utils/llvm-lit} cmake )
+llvm.org_set_globals
+
+python_check_deps() {
+ use test || return 0
+ python_has_version "dev-python/lit[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+
+ if ! use libcxxabi && ! tc-is-gcc ; then
+ eerror "To build ${PN} against libsupc++, you have to use gcc. Other"
+ eerror "compilers are not supported. Please set CC=gcc and CXX=g++"
+ eerror "and try again."
+ die
+ fi
+}
+
+src_prepare() {
+ # hanging tests
+ # https://github.com/llvm/llvm-project/issues/73791
+ rm ../libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/fetch_* || die
+ rm ../libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/operator.*_equals* || die
+
+ cmake_src_prepare
+}
+
+test_compiler() {
+ $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
+ <<<'int main() { return 0; }' &>/dev/null
+}
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ # note: we need to do this before multilib kicks in since it will
+ # alter the CHOST
+ local cxxabi cxxabi_incs
+ if use libcxxabi; then
+ cxxabi=system-libcxxabi
+ cxxabi_incs="${EPREFIX}/usr/include/c++/v1"
+ else
+ local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)"
+ cxxabi=libsupc++
+ cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}"
+ fi
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ if use clang; then
+ local -x CC=${CHOST}-clang
+ local -x CXX=${CHOST}-clang++
+ strip-unsupported-flags
+ fi
+
+ # link to compiler-rt
+ local use_compiler_rt=OFF
+ [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
+
+ # bootstrap: cmake is unhappy if compiler can't link to stdlib
+ local nolib_flags=( -nodefaultlibs -lc )
+ if ! test_compiler; then
+ if test_compiler "${nolib_flags[@]}"; then
+ local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
+ ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}"
+ fi
+ fi
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DCMAKE_CXX_COMPILER_TARGET="${CHOST}"
+ -DPython3_EXECUTABLE="${PYTHON}"
+ -DLLVM_ENABLE_RUNTIMES=libcxx
+ -DLLVM_INCLUDE_TESTS=OFF
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DLIBCXX_ENABLE_SHARED=ON
+ -DLIBCXX_ENABLE_STATIC=$(usex static-libs)
+ -DLIBCXX_CXX_ABI=${cxxabi}
+ -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs}
+ # we're using our own mechanism for generating linker scripts
+ -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF
+ -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl)
+ -DLIBCXX_INCLUDE_BENCHMARKS=OFF
+ -DLIBCXX_INCLUDE_TESTS=$(usex test)
+ -DLIBCXX_INSTALL_MODULES=ON
+ -DLIBCXX_USE_COMPILER_RT=${use_compiler_rt}
+ # this is broken with standalone builds, and also meaningless
+ -DLIBCXXABI_USE_LLVM_UNWINDER=OFF
+ )
+
+ if use test; then
+ mycmakeargs+=(
+ -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ -DPython3_EXECUTABLE="${PYTHON}"
+ )
+ fi
+ cmake_src_configure
+}
+
+multilib_src_compile() {
+ cmake_src_compile
+ if [[ ${CHOST} != *-darwin* ]] ; then
+ gen_shared_ldscript
+ use static-libs && gen_static_ldscript
+ fi
+}
+
+multilib_src_test() {
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-cxx
+}
+
+multilib_src_install() {
+ cmake_src_install
+ # since we've replaced libc++.{a,so} with ldscripts, now we have to
+ # install the extra symlinks
+ if [[ ${CHOST} != *-darwin* ]] ; then
+ dolib.so lib/libc++_shared.so
+ use static-libs && dolib.a lib/libc++_static.a
+ fi
+}
+
+# Usage: deps
+gen_ldscript() {
+ local output_format
+ output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')
+ [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"
+
+ cat <<-END_LDSCRIPT
+/* GNU ld script
+ Include missing dependencies
+*/
+${output_format}
+GROUP ( $@ )
+END_LDSCRIPT
+}
+
+gen_static_ldscript() {
+ # Move it first.
+ mv lib/libc++{,_static}.a || die
+ # Generate libc++.a ldscript for inclusion of its dependencies so that
+ # clang++ -stdlib=libc++ -static works out of the box.
+ local deps=(
+ libc++_static.a
+ $(usex libcxxabi libc++abi.a libsupc++.a)
+ )
+ # On Linux/glibc it does not link without libpthread or libdl. It is
+ # fine on FreeBSD.
+ use elibc_glibc && deps+=( libpthread.a libdl.a )
+
+ gen_ldscript "${deps[*]}" > lib/libc++.a || die
+}
+
+gen_shared_ldscript() {
+ # Move it first.
+ mv lib/libc++{,_shared}.so || die
+ local deps=(
+ libc++_shared.so
+ # libsupc++ doesn't have a shared version
+ $(usex libcxxabi libc++abi.so libsupc++.a)
+ )
+
+ gen_ldscript "${deps[*]}" > lib/libc++.so || die
+}
diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest
index 2142a876c078..0c3eb08de60d 100644
--- a/sys-libs/libcxxabi/Manifest
+++ b/sys-libs/libcxxabi/Manifest
@@ -8,6 +8,7 @@ DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c6
DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
DIST llvm-project-18.1.7.src.tar.xz 132063384 BLAKE2B b8c37bd131fb5f3131bfab4fbad7aa811079ca10723faa14779253bc62b1ee08d4e04650e1da883297ed88a62d518b868a1f13cf57d03233254fd01209da5c02 SHA512 0f67818267803aca9d2bc9eb89335ee6dc56269e8066a0f8a48c4a959e8805dbf6bc839b9f96a92f86ee50d72e7cc326ffe18febb5eb06751ab54a217c0221c8
DIST llvm-project-18.1.7.src.tar.xz.sig 566 BLAKE2B 9ae6d80eba5309ce3d5cba580df57c28dbcf429266b2ced622465e34ab2a7ae0f100d1e89c73a44abccd95a3367979344450fd53fb6a2baa029b929d3f13eee3 SHA512 7e5601e35f4fcaa4ed042638ae5a4fb90714c9dce58aa3f98e965568660b88294185621a4eb5547de262dca8a96f620db3f94932bb1776661e345dbe1266315c
+DIST llvm-project-5aabbf0602c48b67bb89fd37f95bf97c95ded488.tar.gz 212582616 BLAKE2B 78522148bb4993bd26b16f1e3f44c2baf617705667c7fb104edc844c4330017166c783adae2f0215ca7463c05d1eef30fdf02b13241a9497aaede36bb8580a26 SHA512 104e0b5b4f34102f2da03cd54fe9bf5f7fb6efb3a9745d8ec85caa5f92189fde4a5c02c327243d87ff5c7d24b3790fcabdf0ef7144e79e15765785ca72dd3841
DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
DIST llvm-project-7dc2f6602212bf0a0433c157b70e4fc0d70bb730.tar.gz 211903416 BLAKE2B 4a2f12e0aa234d507d2fc2136a1d98a7624147ce6e401831743e640abcaceb5152c80ba2dc312f9256e4a04be2ad065d1a57dbe5dc24f2d3edc9d65888986710 SHA512 c9eb99f666fc15b29f01a1b2a4b3c6edd3a726033533111e60763c6313a4af8c9dba3396856d6650ac5e666d00941efcc944fac85a4483748bbbea9475e6daf8
EBUILD libcxxabi-15.0.7.ebuild 2911 BLAKE2B 5f2004d2f68fe4eddb0b22be82d28fcca7954d0e3ad9a5510744adc4d0dfd7a1ab9fd928404adcd3eeecc58703f51117d0a80e5895b53e0ae7b71621ad5a435c SHA512 5b8e2c6abdec785649aa41b7f05ab86ecab30ff0631d6078c9b1052b406c320c5847b8f16ffa6d9e62ba4a6bca5959b18770810924d6e6da264fb08d6ff738d0
@@ -18,4 +19,5 @@ EBUILD libcxxabi-18.1.7.ebuild 2764 BLAKE2B 1d716983ec2cf1f3ad73b9a3947feb5deddd
EBUILD libcxxabi-19.0.0.9999.ebuild 2684 BLAKE2B db3cdfc7962bc9b9a40f6783b813bb64a26a2d9cff7bcab99fb2b8ff6221789a8799c077837492280b543cd32bf6853638e0a9b3f07b36d0f9683e7b41601c8b SHA512 b0eb6cbd9ff0ccb5f08fefeb7c00e2eb08574137a0f38b52e4df9ea462b2c1c521d4fa8628f407bcbb26aedb77406b4eabbe1ef9c7939fed2b9be5fc0ce1ca34
EBUILD libcxxabi-19.0.0_pre20240518.ebuild 2684 BLAKE2B d72cf1584537afd3d13263975a4f903819f6844cac728daab626b269f460865cac59c3199d38ced179ce041294db940b31f07ca74eeabd452f8e2f775e3e206d SHA512 ac7f20fa097c17349959154cce8c75a2083b04d4fb1241d6917c0fd14348a848f9158d050b9791754fc02ec4cd1bc2d82a8ef678a7b025e15524e5af945c9bc1
EBUILD libcxxabi-19.0.0_pre20240525.ebuild 2684 BLAKE2B d72cf1584537afd3d13263975a4f903819f6844cac728daab626b269f460865cac59c3199d38ced179ce041294db940b31f07ca74eeabd452f8e2f775e3e206d SHA512 ac7f20fa097c17349959154cce8c75a2083b04d4fb1241d6917c0fd14348a848f9158d050b9791754fc02ec4cd1bc2d82a8ef678a7b025e15524e5af945c9bc1
+EBUILD libcxxabi-19.0.0_pre20240608.ebuild 2684 BLAKE2B db3cdfc7962bc9b9a40f6783b813bb64a26a2d9cff7bcab99fb2b8ff6221789a8799c077837492280b543cd32bf6853638e0a9b3f07b36d0f9683e7b41601c8b SHA512 b0eb6cbd9ff0ccb5f08fefeb7c00e2eb08574137a0f38b52e4df9ea462b2c1c521d4fa8628f407bcbb26aedb77406b4eabbe1ef9c7939fed2b9be5fc0ce1ca34
MISC metadata.xml 438 BLAKE2B 0a830a06a53a6cdaf138ad7620fe366fae05c1c1451267d6a58caf7da5ce8f5a26d302fab53b9460920074ab5a65991d3bd24fde087809e8dc12188dd94c7676 SHA512 d53e13c497569636fb453a159c5ca5ddfabf8e5debd5f92e5149c52d54c876753842ab73293d6d08e2d9b279363b4f0c743eed3a5027a61246c6b60496be8e87
diff --git a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240608.ebuild b/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240608.ebuild
new file mode 100644
index 000000000000..903f8e866cb6
--- /dev/null
+++ b/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240608.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit cmake-multilib flag-o-matic llvm.org llvm-utils python-any-r1
+inherit toolchain-funcs
+
+DESCRIPTION="Low level support for a standard C++ library"
+HOMEPAGE="https://libcxxabi.llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
+SLOT="0"
+IUSE="+clang +static-libs test"
+REQUIRED_USE="test? ( clang )"
+RESTRICT="!test? ( test )"
+
+# in 15.x, cxxabi.h is moving from libcxx to libcxxabi
+RDEPEND+="
+ !<sys-libs/libcxx-15
+"
+DEPEND="
+ ${RDEPEND}
+ sys-devel/llvm:${LLVM_MAJOR}
+"
+BDEPEND="
+ clang? (
+ sys-devel/clang:${LLVM_MAJOR}
+ )
+ !test? (
+ ${PYTHON_DEPS}
+ )
+ test? (
+ $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
+ )
+"
+
+LLVM_COMPONENTS=( runtimes libcxx{abi,} llvm/cmake cmake )
+LLVM_TEST_COMPONENTS=( llvm/utils/llvm-lit )
+llvm.org_set_globals
+
+python_check_deps() {
+ use test || return 0
+ python_has_version "dev-python/lit[${PYTHON_USEDEP}]"
+}
+
+multilib_src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ if use clang; then
+ local -x CC=${CHOST}-clang
+ local -x CXX=${CHOST}-clang++
+ strip-unsupported-flags
+ fi
+
+ # link to compiler-rt
+ local use_compiler_rt=OFF
+ [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DCMAKE_CXX_COMPILER_TARGET="${CHOST}"
+ -DPython3_EXECUTABLE="${PYTHON}"
+ -DLLVM_ENABLE_RUNTIMES="libcxxabi;libcxx"
+ -DLLVM_INCLUDE_TESTS=OFF
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+ -DLIBCXXABI_ENABLE_SHARED=ON
+ -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs)
+ -DLIBCXXABI_INCLUDE_TESTS=$(usex test)
+ -DLIBCXXABI_USE_COMPILER_RT=${use_compiler_rt}
+
+ # upstream is omitting standard search path for this
+ # probably because gcc & clang are bundling their own unwind.h
+ -DLIBCXXABI_LIBUNWIND_INCLUDES="${EPREFIX}"/usr/include
+ # this is broken with standalone builds, and also meaningless
+ -DLIBCXXABI_USE_LLVM_UNWINDER=OFF
+
+ -DLIBCXX_LIBDIR_SUFFIX=
+ -DLIBCXX_ENABLE_SHARED=ON
+ -DLIBCXX_ENABLE_STATIC=OFF
+ -DLIBCXX_CXX_ABI=libcxxabi
+ -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF
+ -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl)
+ -DLIBCXX_HAS_GCC_S_LIB=OFF
+ -DLIBCXX_INCLUDE_BENCHMARKS=OFF
+ -DLIBCXX_INCLUDE_TESTS=OFF
+ )
+ if use test; then
+ mycmakeargs+=(
+ -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ -DPython3_EXECUTABLE="${PYTHON}"
+ )
+ fi
+ cmake_src_configure
+}
+
+multilib_src_compile() {
+ cmake_build cxxabi
+}
+
+multilib_src_test() {
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-cxxabi
+}
+
+multilib_src_install() {
+ DESTDIR="${D}" cmake_build install-cxxabi
+}
diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest
index 7bd31489a50a..a32b6a842948 100644
--- a/sys-libs/libomp/Manifest
+++ b/sys-libs/libomp/Manifest
@@ -9,6 +9,7 @@ DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c6
DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
DIST llvm-project-18.1.7.src.tar.xz 132063384 BLAKE2B b8c37bd131fb5f3131bfab4fbad7aa811079ca10723faa14779253bc62b1ee08d4e04650e1da883297ed88a62d518b868a1f13cf57d03233254fd01209da5c02 SHA512 0f67818267803aca9d2bc9eb89335ee6dc56269e8066a0f8a48c4a959e8805dbf6bc839b9f96a92f86ee50d72e7cc326ffe18febb5eb06751ab54a217c0221c8
DIST llvm-project-18.1.7.src.tar.xz.sig 566 BLAKE2B 9ae6d80eba5309ce3d5cba580df57c28dbcf429266b2ced622465e34ab2a7ae0f100d1e89c73a44abccd95a3367979344450fd53fb6a2baa029b929d3f13eee3 SHA512 7e5601e35f4fcaa4ed042638ae5a4fb90714c9dce58aa3f98e965568660b88294185621a4eb5547de262dca8a96f620db3f94932bb1776661e345dbe1266315c
+DIST llvm-project-5aabbf0602c48b67bb89fd37f95bf97c95ded488.tar.gz 212582616 BLAKE2B 78522148bb4993bd26b16f1e3f44c2baf617705667c7fb104edc844c4330017166c783adae2f0215ca7463c05d1eef30fdf02b13241a9497aaede36bb8580a26 SHA512 104e0b5b4f34102f2da03cd54fe9bf5f7fb6efb3a9745d8ec85caa5f92189fde4a5c02c327243d87ff5c7d24b3790fcabdf0ef7144e79e15765785ca72dd3841
DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
DIST llvm-project-7dc2f6602212bf0a0433c157b70e4fc0d70bb730.tar.gz 211903416 BLAKE2B 4a2f12e0aa234d507d2fc2136a1d98a7624147ce6e401831743e640abcaceb5152c80ba2dc312f9256e4a04be2ad065d1a57dbe5dc24f2d3edc9d65888986710 SHA512 c9eb99f666fc15b29f01a1b2a4b3c6edd3a726033533111e60763c6313a4af8c9dba3396856d6650ac5e666d00941efcc944fac85a4483748bbbea9475e6daf8
EBUILD libomp-15.0.7-r6.ebuild 3470 BLAKE2B 9f76ca5b080ccf01617d7dcbfe3eb424c525adbcf72f2b5f09dc7bead1e28df1a0ffdf5ef47bcc7f8cac130f1d22e804e29938cda6df0ee58359ac5ff88aea86 SHA512 1a0a4b10f9a67634ea265e6df3c3f9993ed5ee3818eba2cbb6b65d8f5c3a0d2d266134f3e276985e87eca18b47a44d6de61e4c9c3496fd36c6c338dcf79b9850
@@ -19,4 +20,5 @@ EBUILD libomp-18.1.7.ebuild 4287 BLAKE2B 65c6e04062bbf04d9655f226a97ecb10af4f249
EBUILD libomp-19.0.0.9999.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
EBUILD libomp-19.0.0_pre20240518.ebuild 2163 BLAKE2B 960f66b989ba1836b8cecd5d0a5680effc30f14da1c815f6f068aa4c1612468800c6c5d4bc4f7c90cc331688ef4317b612ea796f6d5a950fb212775b5a1a4ef7 SHA512 dd57f8a2741d1ba492eaec6e993ea390e5883f2053bc50af64e850b8a327af5799c1b9f74512d4417b3d6012dcb07937dab17588db537872639fc0184b75f952
EBUILD libomp-19.0.0_pre20240525.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
+EBUILD libomp-19.0.0_pre20240608.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
MISC metadata.xml 883 BLAKE2B 127e896b82a49633a6866b33ca776ebe2dd149a5d04da4484a53186f219a85db0ab9d826bc1cc61d4df9fa54c9bcc546be070a0b28985174925fd947aa09cca2 SHA512 dc32cae01401feb93eede6506b3955c766ff19b44976fcc67277559b23ac151993377daeed9ba83b2dd71dbdeea330cd1208dcb0c9c5f56be270883b31f9b15f
diff --git a/sys-libs/libomp/libomp-19.0.0_pre20240608.ebuild b/sys-libs/libomp/libomp-19.0.0_pre20240608.ebuild
new file mode 100644
index 000000000000..32b91b3699c4
--- /dev/null
+++ b/sys-libs/libomp/libomp-19.0.0_pre20240608.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit flag-o-matic cmake-multilib linux-info llvm.org python-single-r1
+
+DESCRIPTION="OpenMP runtime library for LLVM/clang compiler"
+HOMEPAGE="https://openmp.llvm.org"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
+SLOT="0/${LLVM_SOABI}"
+IUSE="+debug gdb-plugin hwloc ompt test"
+REQUIRED_USE="
+ gdb-plugin? ( ${PYTHON_REQUIRED_USE} )
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ gdb-plugin? ( ${PYTHON_DEPS} )
+ hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] )
+"
+# tests:
+# - dev-python/lit provides the test runner
+# - sys-devel/llvm provide test utils (e.g. FileCheck)
+# - sys-devel/clang provides the compiler to run tests
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ dev-lang/perl
+ test? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/lit[${PYTHON_USEDEP}]
+ ')
+ sys-devel/clang
+ )
+"
+
+LLVM_COMPONENTS=( openmp cmake llvm/include )
+llvm.org_set_globals
+
+pkg_setup() {
+ if use gdb-plugin || use test; then
+ python-single-r1_pkg_setup
+ fi
+}
+
+multilib_src_configure() {
+ # LTO causes issues in other packages building, #870127
+ filter-lto
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+ local libdir="$(get_libdir)"
+ local mycmakeargs=(
+ -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}"
+
+ -DLIBOMP_USE_HWLOC=$(usex hwloc)
+ -DLIBOMP_OMPD_GDB_SUPPORT=$(multilib_native_usex gdb-plugin)
+ -DLIBOMP_OMPT_SUPPORT=$(usex ompt)
+
+ # do not install libgomp.so & libiomp5.so aliases
+ -DLIBOMP_INSTALL_ALIASES=OFF
+ # disable unnecessary hack copying stuff back to srcdir
+ -DLIBOMP_COPY_EXPORTS=OFF
+ )
+
+ use test && mycmakeargs+=(
+ # this project does not use standard LLVM cmake macros
+ -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit"
+ -DOPENMP_LIT_ARGS="$(get_lit_flags)"
+
+ -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")"
+ -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")"
+ )
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+
+ cmake_build check-libomp
+}
diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest
index 062a84302b82..069dd778e729 100644
--- a/sys-libs/llvm-libunwind/Manifest
+++ b/sys-libs/llvm-libunwind/Manifest
@@ -8,6 +8,7 @@ DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c6
DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
DIST llvm-project-18.1.7.src.tar.xz 132063384 BLAKE2B b8c37bd131fb5f3131bfab4fbad7aa811079ca10723faa14779253bc62b1ee08d4e04650e1da883297ed88a62d518b868a1f13cf57d03233254fd01209da5c02 SHA512 0f67818267803aca9d2bc9eb89335ee6dc56269e8066a0f8a48c4a959e8805dbf6bc839b9f96a92f86ee50d72e7cc326ffe18febb5eb06751ab54a217c0221c8
DIST llvm-project-18.1.7.src.tar.xz.sig 566 BLAKE2B 9ae6d80eba5309ce3d5cba580df57c28dbcf429266b2ced622465e34ab2a7ae0f100d1e89c73a44abccd95a3367979344450fd53fb6a2baa029b929d3f13eee3 SHA512 7e5601e35f4fcaa4ed042638ae5a4fb90714c9dce58aa3f98e965568660b88294185621a4eb5547de262dca8a96f620db3f94932bb1776661e345dbe1266315c
+DIST llvm-project-5aabbf0602c48b67bb89fd37f95bf97c95ded488.tar.gz 212582616 BLAKE2B 78522148bb4993bd26b16f1e3f44c2baf617705667c7fb104edc844c4330017166c783adae2f0215ca7463c05d1eef30fdf02b13241a9497aaede36bb8580a26 SHA512 104e0b5b4f34102f2da03cd54fe9bf5f7fb6efb3a9745d8ec85caa5f92189fde4a5c02c327243d87ff5c7d24b3790fcabdf0ef7144e79e15765785ca72dd3841
DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
DIST llvm-project-7dc2f6602212bf0a0433c157b70e4fc0d70bb730.tar.gz 211903416 BLAKE2B 4a2f12e0aa234d507d2fc2136a1d98a7624147ce6e401831743e640abcaceb5152c80ba2dc312f9256e4a04be2ad065d1a57dbe5dc24f2d3edc9d65888986710 SHA512 c9eb99f666fc15b29f01a1b2a4b3c6edd3a726033533111e60763c6313a4af8c9dba3396856d6650ac5e666d00941efcc944fac85a4483748bbbea9475e6daf8
EBUILD llvm-libunwind-15.0.7.ebuild 3032 BLAKE2B 9b47e894db1a764f3eca3135f4caba68261953f4433af017b7bb53181e345ad26c570733f997022c53c9ef49a0a3b823188d92cfcc16a2113825d767b1ffab2a SHA512 0b68480fb2a8e5a351574e81fbcff824cd324754ed40378f06fec12fedbba94a921043d72db6ecc37f8b0680b7f518bbbd8d63f69ce8d84f86ca522653d293fb
@@ -18,4 +19,5 @@ EBUILD llvm-libunwind-18.1.7.ebuild 3413 BLAKE2B 9a59c656e7ee118568d2c81e4af2e2c
EBUILD llvm-libunwind-19.0.0.9999.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a
EBUILD llvm-libunwind-19.0.0_pre20240518.ebuild 3316 BLAKE2B 013ff60e8fa1fa480e1e56c6c8c1d5a657d946264a279a8fad53e3047fcde1f439e10b25e151af0d9c3f7f6fe014c2cf3372d311f3963c78e633e986b28a33e5 SHA512 4aaa97553c0e3e5421fe5864b81fdcd0e8a1167e37bec37e8706d3b9b939b5220a171576f800bdc6ae25f2bbfd60b063c84934d1daa0bdfd6989a80d08044301
EBUILD llvm-libunwind-19.0.0_pre20240525.ebuild 3316 BLAKE2B 013ff60e8fa1fa480e1e56c6c8c1d5a657d946264a279a8fad53e3047fcde1f439e10b25e151af0d9c3f7f6fe014c2cf3372d311f3963c78e633e986b28a33e5 SHA512 4aaa97553c0e3e5421fe5864b81fdcd0e8a1167e37bec37e8706d3b9b939b5220a171576f800bdc6ae25f2bbfd60b063c84934d1daa0bdfd6989a80d08044301
+EBUILD llvm-libunwind-19.0.0_pre20240608.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a
MISC metadata.xml 438 BLAKE2B 2a36fbbc59e137056029c62aef6d167d9c82531c2582d7bad5cb13cc36e5c4c9518ffe8c56d06bbcfd97ad22eda71a8b776f3984195f53d06cf45659b438dc00 SHA512 4f18b054072d00e5440faa31a59f9ef587d035b5f25e30913f0b1449debee967fa794fae2548e87db3fb2177ce853ab075e1f11f3cc763f5d7fdf06147108845
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240608.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240608.ebuild
new file mode 100644
index 000000000000..e4c76c15ebc8
--- /dev/null
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240608.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit cmake-multilib flag-o-matic llvm.org llvm-utils python-any-r1
+inherit toolchain-funcs
+
+DESCRIPTION="C++ runtime stack unwinder from LLVM"
+HOMEPAGE="https://llvm.org/docs/ExceptionHandling.html"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
+SLOT="0"
+IUSE="+clang +debug static-libs test"
+REQUIRED_USE="test? ( clang )"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ !sys-libs/libunwind
+"
+DEPEND="
+ sys-devel/llvm:${LLVM_MAJOR}
+"
+BDEPEND="
+ clang? (
+ sys-devel/clang:${LLVM_MAJOR}
+ )
+ !test? (
+ ${PYTHON_DEPS}
+ )
+ test? (
+ $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
+ )
+"
+
+LLVM_COMPONENTS=( runtimes libunwind libcxx llvm/cmake cmake )
+LLVM_TEST_COMPONENTS=( libcxxabi llvm/utils/llvm-lit )
+llvm.org_set_globals
+
+python_check_deps() {
+ use test || return 0
+ python_has_version "dev-python/lit[${PYTHON_USEDEP}]"
+}
+
+multilib_src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+
+ # https://github.com/llvm/llvm-project/issues/56825
+ # also separately bug #863917
+ filter-lto
+
+ if use clang; then
+ local -x CC=${CHOST}-clang
+ local -x CXX=${CHOST}-clang++
+ strip-unsupported-flags
+ fi
+
+ # link to compiler-rt
+ # https://github.com/gentoo/gentoo/pull/21516
+ local use_compiler_rt=OFF
+ [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
+
+ # Respect upstream build type assumptions (bug #910436) where they do:
+ # -DLIBUNWIND_ENABLE_ASSERTIONS=ON =>
+ # -DCMAKE_BUILD_TYPE=DEBUG => -UNDEBUG
+ # -DCMAKE_BUILD_TYPE!=debug => -DNDEBUG
+ # -DLIBUNWIND_ENABLE_ASSERTIONS=OFF =>
+ # -UNDEBUG
+ # See also https://github.com/llvm/llvm-project/issues/86#issuecomment-1649668826.
+ use debug || append-cppflags -DNDEBUG
+
+ local mycmakeargs=(
+ -DCMAKE_CXX_COMPILER_TARGET="${CHOST}"
+ -DPython3_EXECUTABLE="${PYTHON}"
+ -DLLVM_ENABLE_RUNTIMES="libunwind"
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+ -DLLVM_INCLUDE_TESTS=OFF
+ -DLIBUNWIND_ENABLE_ASSERTIONS=$(usex debug)
+ -DLIBUNWIND_ENABLE_STATIC=$(usex static-libs)
+ -DLIBUNWIND_INCLUDE_TESTS=$(usex test)
+ -DLIBUNWIND_INSTALL_HEADERS=ON
+
+ # support non-native unwinding; given it's small enough,
+ # enable it unconditionally
+ -DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON
+
+ # avoid dependency on libgcc_s if compiler-rt is used
+ -DLIBUNWIND_USE_COMPILER_RT=${use_compiler_rt}
+ )
+ if use test; then
+ mycmakeargs+=(
+ -DLLVM_ENABLE_RUNTIMES="libunwind;libcxxabi;libcxx"
+ -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}/libcxx"
+
+ -DLIBCXXABI_LIBDIR_SUFFIX=
+ -DLIBCXXABI_ENABLE_SHARED=OFF
+ -DLIBCXXABI_ENABLE_STATIC=ON
+ -DLIBCXXABI_USE_LLVM_UNWINDER=ON
+ -DLIBCXXABI_INCLUDE_TESTS=OFF
+
+ -DLIBCXX_LIBDIR_SUFFIX=
+ -DLIBCXX_ENABLE_SHARED=OFF
+ -DLIBCXX_ENABLE_STATIC=ON
+ -DLIBCXX_CXX_ABI=libcxxabi
+ -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF
+ -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl)
+ -DLIBCXX_HAS_GCC_S_LIB=OFF
+ -DLIBCXX_INCLUDE_TESTS=OFF
+ -DLIBCXX_INCLUDE_BENCHMARKS=OFF
+ )
+ fi
+
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-unwind
+}
+
+multilib_src_install() {
+ DESTDIR=${D} cmake_build install-unwind
+}