llvm-runtimes/libcxxabi: Add 21.0.0_pre20250510 snapshot

Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
Michał Górny
2025-05-10 15:01:02 +02:00
parent 1cc0cfa9ad
commit f2c8d428b4
2 changed files with 110 additions and 0 deletions

View File

@@ -15,3 +15,4 @@ DIST llvm-project-20.1.4.src.tar.xz.sig 566 BLAKE2B 1f0f057dedf938190554ca1a51d9
DIST llvm-project-ac8fc09688e10e983b99224b5dc5cbbeeedb1879.tar.gz 231567089 BLAKE2B f7878f114c908b21d179854bc693716b34b963612c6b5172789a37cd21fa316720d4e9498bc7679058db3e822ed240bfdafd85bfd00154914d747d0c0ed1cb48 SHA512 4c39db8b22fa087ca96c3b4541ec77ba8a826a126b4e93b0650e59b3622b22b329f60fa3780dd4572fdece409fd5833eda473046d7547f6ee3ac8aadb8f2fc34
DIST llvm-project-b9e32749d273a957e60170d6e7ef205fd1fb1834.tar.gz 232146799 BLAKE2B f7c02bf1e6b9958114f07827ff00264774a7ad54b51c6867d7e66d7c9a94a36fb84f371d7d30c2f094a0d539b565fb651786ed9e0641f2bea8d982073f1a8ac0 SHA512 2d81ead79c606e00549d5205584f1bd272e4d7adf4b376fdba19e7fb719710e80b00b22ee3500ab2b990178fa044ca9fcf45bd2063e62e6a217b11775bb3b163
DIST llvm-project-d1e38eab95b07b422194427474521623916bbf29.tar.gz 232705423 BLAKE2B bf5200c2223d8cdf7c34c84876d8cfeb9429cb6535ced226b1bf9ab468b6401fe3da8759f0fc1ab3112927304c5f74db29b18be60fa961ce99471caa2c6a1f33 SHA512 8fae137725ad4eb0f5bab73895c65b34d1e36ea039c9fb3978c908ecc6023094d84919b97dc405b86e2dd32f585d87b29cee02293c8156d10a8371b516ca5e7a
DIST llvm-project-fcb4bda9dcfcdb64d8b069e8416c75d7a1a62e52.tar.gz 233149231 BLAKE2B 95a7a012a1e747afcf83ace3785c8ef6a3e10f6075e59eb1c5b077cc9edae244b648f341bc0ac6a45b2afc8f7ffe130a90a741a04465523f30f8322566386703 SHA512 b46f0c90a1c56750cada24183ca382b267a2d2faa0db7d77a8bdd4e94e6303e57d565cf85447b3c0e0efdd3750efef1e10e8ce6f1fe8f1ae10ee31d25ddf3fb7

View File

@@ -0,0 +1,109 @@
# Copyright 1999-2025 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+="
!<llvm-runtimes/libcxx-15
"
DEPEND="
${RDEPEND}
llvm-core/llvm:${LLVM_MAJOR}
"
BDEPEND="
clang? (
llvm-core/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=( libc 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_ENABLE_SHARED=ON
-DLIBCXX_ENABLE_STATIC=OFF
-DLIBCXX_CXX_ABI=libcxxabi
-DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF
-DLIBCXX_HAS_MUSL_LIBC=$(llvm_cmake_use_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
}