commit:     936a69e939463600f26da1467afd825ab5a7a390
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 23 20:04:11 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Dec 23 20:07:11 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=936a69e9

llvm-runtimes/libcxx: Remove old

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 llvm-runtimes/libcxx/Manifest                      |   8 -
 llvm-runtimes/libcxx/libcxx-21.1.5.ebuild          | 254 --------------------
 llvm-runtimes/libcxx/libcxx-21.1.6.ebuild          | 254 --------------------
 llvm-runtimes/libcxx/libcxx-21.1.7.ebuild          | 254 --------------------
 .../libcxx/libcxx-22.0.0_pre20251108.ebuild        | 260 ---------------------
 .../libcxx/libcxx-22.0.0_pre20251120.ebuild        | 260 ---------------------
 6 files changed, 1290 deletions(-)

diff --git a/llvm-runtimes/libcxx/Manifest b/llvm-runtimes/libcxx/Manifest
index 67a5fd1d5e84..3efa8a13593d 100644
--- a/llvm-runtimes/libcxx/Manifest
+++ b/llvm-runtimes/libcxx/Manifest
@@ -1,6 +1,5 @@
 DIST llvm-gentoo-patchset-15.0.7-r8.tar.xz 27904 BLAKE2B 
1fc5df0dc44484ea0225438f3d861ab23739773df58eaf2b531966baeeb5e717b2a3c03f62b1cfb8bb5e316393e8b295d4fbd8be3246381723f905304f005e12
 SHA512 
7f0ba8ef4291de87cc3220e63ad0ac088a81491d4a46b1053dd51d9725ca6c87d3d7720c2440908b10b1ace406f7ed1c523ca28b199a7a29ed06d0973a0829a2
 DIST llvm-gentoo-patchset-16.0.6-r6.tar.xz 21672 BLAKE2B 
b52c29a7c19b60ccd076c01014e374e35aa5da061917cdc6a9d321f9386ce4e9286d5a7cccfffc23e0f6737c6eeb32ef4ab030b9d3165f528d1c657b53b6ab17
 SHA512 
f8a6cdaded545219107505c57b194b3f4df8ee7a2f1f0756b8e8884633e389ad7462445e1522414615210c0a4407a0358c84882366a475441f681a2ba75dc985
-DIST llvm-project-0875755f5275dc7a84b1aeb526b7822b47a733c9.tar.gz 254111698 
BLAKE2B 
16bd787e9af46837e6e2962d2f9bdd2a1d13b1ab6f4dcb1a428914cc2502b6430f79ee163b0d8ad5b6a9124162f262fa394265f8c52950100b543b7027df310c
 SHA512 
de107dd50b078d9f7e0f838b3e439e2012d6e4e14fcdd2438de344a11dd6b2542ee1efd029067fddf05b8eb9d97786f214ff199d1b6aabfd2e3459f9840bc497
 DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B 
f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5
 SHA512 
4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52
 DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 
47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df
 SHA512 
fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
 DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 
95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d
 SHA512 
89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
@@ -13,14 +12,7 @@ DIST llvm-project-19.1.7.src.tar.xz 141249332 BLAKE2B 
1259ed7f9aca7b35e89d818bef
 DIST llvm-project-19.1.7.src.tar.xz.sig 438 BLAKE2B 
4015140f4ba77de45039bdbdfbaf6f30e75705123d067ea97175d91d7a5b6a75008df01d99ae7aa16aaa3b101f3f41e38d01f04158f95a261d617b3ede0254cd
 SHA512 
195797b06ac80a742e0ccbc03a50dc06dd2e04377d783d5474e3e72c5a75203b60292b047929312a411d22b137a239943fba414a4d136a2be14cbff978eb6bda
 DIST llvm-project-20.1.8.src.tar.xz 147242952 BLAKE2B 
7657ac0b26acc5affb1bfc91b912ade3191c5d77f3979d5a80d5f6ce52f56a7d1c448bd257398390bf10838f02faa6f3ece37a7327cced69d165ec2e2e699316
 SHA512 
f330e72e6a1da468569049437cc0ba7a41abb816ccece7367189344f7ebfef730f4788ac7af2bef0aa8a49341c15ab1d31e941ffa782f264d11fe0dc05470773
 DIST llvm-project-20.1.8.src.tar.xz.sig 566 BLAKE2B 
85beedfcff1195a974fab2c667b9efd4b715b3480c1b44b1b887fe32c69f72aca0d3b8fb276c03b6cc5a866622f669047aeee5ccb976640b4008ccd31dce77a4
 SHA512 
d74369bdb4d1b82775161ea53c9c5f3a23ce810f4df5ff617123023f9d8ce720e7d6ecc9e17f8ebd39fd9e7a9de79560abdf2ffe73bcb907a43148d43665d619
-DIST llvm-project-21.1.5.src.tar.xz 158957032 BLAKE2B 
c056049214b18a17a3fd2dc86ae82121a821841002b8386b1fe35fc34f1f0faeb681f39880814e4a47f976b2744bfd2c4f1316156469c6b6a79c013d200dab30
 SHA512 
865ad44575c9288f06da8c48acbb60779f6c38aaf2ee85eac2002452f83892b704263f2ef51d3596abf06dccc1559f1d9dcdc89120363efd8ce1b1239ae83f6b
-DIST llvm-project-21.1.5.src.tar.xz.sig 119 BLAKE2B 
abf014908e981ea358ee38f6d1ef6c745ebbe51011fa7e83a514672bbad152fac92c95dd32a7b52a8d9c2a2a9ea1b44e447bb0bc5953f0f7bbd9ced34aa3c0cc
 SHA512 
4e327c7d60525526ff3ac6ca58f1e753a57f841b88078a9bfe2a2ce91e4a5e17bcc52fd2f27f75801540610c1a56d57a3070243f13ad583e3526901b1f7be4a5
-DIST llvm-project-21.1.6.src.tar.xz 158947864 BLAKE2B 
eeda7b9903ef59319ad22e5e3a8b66a339cbbb7445ccb75fa09db6823371a22e9b66cb44c084fdeb16054f2e62a149f6e069d9726f269f667dbd6a631cb658c3
 SHA512 
f9e6c84828e40cb0a7894258b07240468a9d555c11496a1725bf959444362277a90ea822eeb8c9b51b3b7fecd4dd0b213a28a2f2effefbf43efdd21084d10afc
-DIST llvm-project-21.1.6.src.tar.xz.sig 119 BLAKE2B 
2e3de87f4adb181740cfc8a5f8de3e6f4090f50d2f0dfa2670b27c0a6dde296b399ee017b5f6220aa80581a16c81afb5c96454d69dac8ce246713570470956b8
 SHA512 
637cc9f778f8303e80985469c3102573a9cf6264093b1a83fb494e34b5cb444f76cbb7d6d497d44b05250d56e25ec27dd9df685e0b78b23bb71e4bcd05a8facf
-DIST llvm-project-21.1.7.src.tar.xz 158956584 BLAKE2B 
dc9738fdde764d520f0e6d615295133a96833935b38239ea2ec6dffe72558d01332905fa265a55eb105ab4c4f88f37d5b3427126b1f7c788dc266add581cdf25
 SHA512 
ae30a53ed929df979849f7433bf705bc3d540aa9e12a02a175eb2483d1a56f9ca1203c9b67795f6e84cf2407c28d46d5d5351b290d8735adb5206103fee6f379
-DIST llvm-project-21.1.7.src.tar.xz.sig 438 BLAKE2B 
be4808a0888b088df0be4edaa7d49361dee717508d4438ad09c18b00752cd7a14ef56f5f18e3e4306a9ace95d9da7ed6904c998eb8a386577f21049bf5b6c0ce
 SHA512 
d02b09c77abd537eb24d6d43470f962c80a9ec6ccc03ac0efc950d90dbdec5b94dd6abad18143890ff85cee2bdeb7bcf1dac2a576ffcab8ef053d8526417bdcc
 DIST llvm-project-21.1.8.src.tar.xz 158958576 BLAKE2B 
0d3d4ee920f8e5db50e98152616f16004c74df0e7313cc86d893428fb7b1c875109988a5e40ea6f2e5d0fef53c7bfe2fc2b69e84807f6eb440b03afa1b228a36
 SHA512 
cae4c44e7bf678071723da63ad5839491d717a7233e7f4791aa408207f3ea42f52de939ad15189b112c02a0770f1bb8d59bae6ad31ef53417a6eea7770fe52ab
 DIST llvm-project-21.1.8.src.tar.xz.sig 119 BLAKE2B 
cffc1825f5778a3e3c128ec3e856ff6ee50687319d621cdf42e895abf67e05cc51cb7493308e2b506ab60dbdbaca7aa75eb9f78d91d42c81f9682a36f4042e9d
 SHA512 
10f58eff58ed6e701d0f123b15e68c82ab8cbdf99b1c86c0d83e3b8553e90ea51055e30327e8e442ded57c8f503e2a2de9ee075e9c28b5ba815a0f8922f8671c
-DIST llvm-project-21c4c1502e3383988ba77eac75b13da7b9426957.tar.gz 254650569 
BLAKE2B 
aaa8fffbe3b8ddcffa232c6cd078d33efc0f23453fd79b2ae71a0760b35da2ad17ffaed95d99c2548904468767d9f95af2ca4a59245e1ddf51a6612bda61cda4
 SHA512 
40a97c53cf7825b5c1e6867df74fa22e3b786a2ec9bcb478e1af0e6a165c582316c3c75b12f4704227b8e95cce91ab110acb10f2d8f30bc82319d6af4d201956
 DIST llvm-project-8401a8d0be7671fb5089f850a34dc92ad4a2eb12.tar.gz 254694831 
BLAKE2B 
edac68e2b57124504262d68d1fabbb2161af023c2b9f96f304ce220e3d84249e2a2c1137c83bcfb15f6f082b68ef24a775150e5f435ec14d0f471c51ec438346
 SHA512 
a35f918fc3363df20fecac5820595060acd9fa0bce2cc3f696603192100a63ff4d31f6ba6ac98ad13f62b01c0789f3cce2ecbe4b9c0095d2bf02d2b24971d973
 DIST llvm-project-a3c8b090c37fb10e8c3aa6cd2e5644033cc8a0e4.tar.gz 256214859 
BLAKE2B 
9b0b94d84ce14b35bd90e1e7c4cb1c6acace5156d10345f56bb35945b8db28747c196eeec43011a98eaca008595950eefbe8a1ebda2871fd6d0bc3bd3012818a
 SHA512 
b26e7b5b1654f2004e6afa7e452f2e9b5623021ec97406f4c5d42ed26fa4532c5d904d276e5665c758a9310859ee274e06a6d6eb4371d7ccba99ce86b04264ea

diff --git a/llvm-runtimes/libcxx/libcxx-21.1.5.ebuild 
b/llvm-runtimes/libcxx/libcxx-21.1.5.ebuild
deleted file mode 100644
index 618ec03322e9..000000000000
--- a/llvm-runtimes/libcxx/libcxx-21.1.5.ebuild
+++ /dev/null
@@ -1,254 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{11..14} )
-inherit cmake-multilib crossdev flag-o-matic llvm.org llvm-utils
-inherit python-any-r1 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"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
-IUSE="+clang +libcxxabi +static-libs test"
-REQUIRED_USE="test? ( clang )"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-       libcxxabi? (
-               ~llvm-runtimes/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}]
-       )
-       !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )
-"
-DEPEND="
-       ${RDEPEND}
-       llvm-core/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
-       clang? (
-               llvm-core/clang:${LLVM_MAJOR}
-               llvm-core/clang-linker-config:${LLVM_MAJOR}
-               llvm-runtimes/clang-rtlib-config:${LLVM_MAJOR}
-               llvm-runtimes/clang-unwindlib-config:${LLVM_MAJOR}
-       )
-       !test? (
-               ${PYTHON_DEPS}
-       )
-       test? (
-               dev-debug/gdb[python]
-               $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
-       )
-"
-
-LLVM_COMPONENTS=(
-       runtimes libcxx{,abi} libc 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
-}
-
-test_compiler() {
-       $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
-               <<<'int main() { return 0; }' &>/dev/null
-}
-
-src_configure() {
-       local install_prefix=${EPREFIX}
-       is_crosspkg && install_prefix+=/usr/${CTARGET}
-
-       # 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="${install_prefix}/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() {
-       # Workaround for bgo #961153.
-       # TODO: Fix the multilib.eclass, so it sets CTARGET properly.
-       if ! is_crosspkg; then
-               export CTARGET=${CHOST}
-       fi
-
-       if use clang; then
-               llvm_prepend_path -b "${LLVM_MAJOR}"
-               local -x CC=${CTARGET}-clang-${LLVM_MAJOR}
-               local -x CXX=${CTARGET}-clang++-${LLVM_MAJOR}
-               strip-unsupported-flags
-
-               # The full clang configuration might not be ready yet. Use the 
partial
-               # configuration of components that libunwind depends on.
-               local flags=(
-                       
--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-{rtlib,unwindlib,linker}.cfg
-               )
-               local -x CFLAGS="${CFLAGS} ${flags[@]}"
-               local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
-               local -x LDFLAGS="${LDFLAGS} ${flags[@]}"
-       fi
-
-       # link to compiler-rt
-       local use_compiler_rt=OFF
-       [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
-
-       local nostdlib_flags=( -nostdlib++ )
-       if ! test_compiler && test_compiler "${nostdlib_flags[@]}"; then
-               local -x LDFLAGS="${LDFLAGS} ${nostdlib_flags[*]}"
-               ewarn "${CXX} seems to lack runtime, trying with 
${nostdlib_flags[*]}"
-       fi
-
-       local libdir=$(get_libdir)
-       local mycmakeargs=(
-               -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
-
-               -DCMAKE_CXX_COMPILER_TARGET="${CTARGET}"
-               -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=$(llvm_cmake_use_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 is_crosspkg; then
-               # Needed to target built libc headers
-               local -x CFLAGS="${CFLAGS} -isystem 
${ESYSROOT}/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
-                       # Install inside the cross sysroot.
-                       -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/${CTARGET}/usr"
-               )
-       fi
-       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 install-cxx-test-suite-prefix
-       cp 
"${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_shared.so 
|| die
-       if use static-libs; then
-               cp 
"${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_static.a || 
die
-       fi
-       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
-               is_crosspkg && into /usr/${CTARGET}
-               dolib.so lib/libc++_shared.so
-               use static-libs && dolib.a lib/libc++_static.a
-       fi
-
-       local install_prefix=
-       is_crosspkg && install_prefix=/usr/${CTARGET}
-       insinto "${install_prefix}/usr/share/libc++/gdb"
-       doins ../libcxx/utils/gdb/libcxx/printers.py
-
-       local lib_version=$(sed -n -e 's/^LIBCXX_LIBRARY_VERSION:STRING=//p' 
CMakeCache.txt || die)
-       [[ -n ${lib_version} ]] || die "Could not determine 
LIBCXX_LIBRARY_VERSION from CMakeCache.txt"
-
-       insinto "${install_prefix}/usr/share/gdb/auto-load/usr/$(get_libdir)"
-       newins - "libc++.so.${lib_version}-gdb.py" <<-EOF
-               __import__("sys").path.insert(0, 
"${EPREFIX}/usr/share/libc++/gdb")
-               __import__("printers").register_libcxx_printer_loader()
-       EOF
-}
-
-# 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/llvm-runtimes/libcxx/libcxx-21.1.6.ebuild 
b/llvm-runtimes/libcxx/libcxx-21.1.6.ebuild
deleted file mode 100644
index 618ec03322e9..000000000000
--- a/llvm-runtimes/libcxx/libcxx-21.1.6.ebuild
+++ /dev/null
@@ -1,254 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{11..14} )
-inherit cmake-multilib crossdev flag-o-matic llvm.org llvm-utils
-inherit python-any-r1 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"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
-IUSE="+clang +libcxxabi +static-libs test"
-REQUIRED_USE="test? ( clang )"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-       libcxxabi? (
-               ~llvm-runtimes/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}]
-       )
-       !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )
-"
-DEPEND="
-       ${RDEPEND}
-       llvm-core/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
-       clang? (
-               llvm-core/clang:${LLVM_MAJOR}
-               llvm-core/clang-linker-config:${LLVM_MAJOR}
-               llvm-runtimes/clang-rtlib-config:${LLVM_MAJOR}
-               llvm-runtimes/clang-unwindlib-config:${LLVM_MAJOR}
-       )
-       !test? (
-               ${PYTHON_DEPS}
-       )
-       test? (
-               dev-debug/gdb[python]
-               $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
-       )
-"
-
-LLVM_COMPONENTS=(
-       runtimes libcxx{,abi} libc 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
-}
-
-test_compiler() {
-       $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
-               <<<'int main() { return 0; }' &>/dev/null
-}
-
-src_configure() {
-       local install_prefix=${EPREFIX}
-       is_crosspkg && install_prefix+=/usr/${CTARGET}
-
-       # 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="${install_prefix}/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() {
-       # Workaround for bgo #961153.
-       # TODO: Fix the multilib.eclass, so it sets CTARGET properly.
-       if ! is_crosspkg; then
-               export CTARGET=${CHOST}
-       fi
-
-       if use clang; then
-               llvm_prepend_path -b "${LLVM_MAJOR}"
-               local -x CC=${CTARGET}-clang-${LLVM_MAJOR}
-               local -x CXX=${CTARGET}-clang++-${LLVM_MAJOR}
-               strip-unsupported-flags
-
-               # The full clang configuration might not be ready yet. Use the 
partial
-               # configuration of components that libunwind depends on.
-               local flags=(
-                       
--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-{rtlib,unwindlib,linker}.cfg
-               )
-               local -x CFLAGS="${CFLAGS} ${flags[@]}"
-               local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
-               local -x LDFLAGS="${LDFLAGS} ${flags[@]}"
-       fi
-
-       # link to compiler-rt
-       local use_compiler_rt=OFF
-       [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
-
-       local nostdlib_flags=( -nostdlib++ )
-       if ! test_compiler && test_compiler "${nostdlib_flags[@]}"; then
-               local -x LDFLAGS="${LDFLAGS} ${nostdlib_flags[*]}"
-               ewarn "${CXX} seems to lack runtime, trying with 
${nostdlib_flags[*]}"
-       fi
-
-       local libdir=$(get_libdir)
-       local mycmakeargs=(
-               -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
-
-               -DCMAKE_CXX_COMPILER_TARGET="${CTARGET}"
-               -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=$(llvm_cmake_use_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 is_crosspkg; then
-               # Needed to target built libc headers
-               local -x CFLAGS="${CFLAGS} -isystem 
${ESYSROOT}/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
-                       # Install inside the cross sysroot.
-                       -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/${CTARGET}/usr"
-               )
-       fi
-       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 install-cxx-test-suite-prefix
-       cp 
"${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_shared.so 
|| die
-       if use static-libs; then
-               cp 
"${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_static.a || 
die
-       fi
-       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
-               is_crosspkg && into /usr/${CTARGET}
-               dolib.so lib/libc++_shared.so
-               use static-libs && dolib.a lib/libc++_static.a
-       fi
-
-       local install_prefix=
-       is_crosspkg && install_prefix=/usr/${CTARGET}
-       insinto "${install_prefix}/usr/share/libc++/gdb"
-       doins ../libcxx/utils/gdb/libcxx/printers.py
-
-       local lib_version=$(sed -n -e 's/^LIBCXX_LIBRARY_VERSION:STRING=//p' 
CMakeCache.txt || die)
-       [[ -n ${lib_version} ]] || die "Could not determine 
LIBCXX_LIBRARY_VERSION from CMakeCache.txt"
-
-       insinto "${install_prefix}/usr/share/gdb/auto-load/usr/$(get_libdir)"
-       newins - "libc++.so.${lib_version}-gdb.py" <<-EOF
-               __import__("sys").path.insert(0, 
"${EPREFIX}/usr/share/libc++/gdb")
-               __import__("printers").register_libcxx_printer_loader()
-       EOF
-}
-
-# 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/llvm-runtimes/libcxx/libcxx-21.1.7.ebuild 
b/llvm-runtimes/libcxx/libcxx-21.1.7.ebuild
deleted file mode 100644
index 618ec03322e9..000000000000
--- a/llvm-runtimes/libcxx/libcxx-21.1.7.ebuild
+++ /dev/null
@@ -1,254 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{11..14} )
-inherit cmake-multilib crossdev flag-o-matic llvm.org llvm-utils
-inherit python-any-r1 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"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
-IUSE="+clang +libcxxabi +static-libs test"
-REQUIRED_USE="test? ( clang )"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-       libcxxabi? (
-               ~llvm-runtimes/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}]
-       )
-       !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )
-"
-DEPEND="
-       ${RDEPEND}
-       llvm-core/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
-       clang? (
-               llvm-core/clang:${LLVM_MAJOR}
-               llvm-core/clang-linker-config:${LLVM_MAJOR}
-               llvm-runtimes/clang-rtlib-config:${LLVM_MAJOR}
-               llvm-runtimes/clang-unwindlib-config:${LLVM_MAJOR}
-       )
-       !test? (
-               ${PYTHON_DEPS}
-       )
-       test? (
-               dev-debug/gdb[python]
-               $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
-       )
-"
-
-LLVM_COMPONENTS=(
-       runtimes libcxx{,abi} libc 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
-}
-
-test_compiler() {
-       $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
-               <<<'int main() { return 0; }' &>/dev/null
-}
-
-src_configure() {
-       local install_prefix=${EPREFIX}
-       is_crosspkg && install_prefix+=/usr/${CTARGET}
-
-       # 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="${install_prefix}/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() {
-       # Workaround for bgo #961153.
-       # TODO: Fix the multilib.eclass, so it sets CTARGET properly.
-       if ! is_crosspkg; then
-               export CTARGET=${CHOST}
-       fi
-
-       if use clang; then
-               llvm_prepend_path -b "${LLVM_MAJOR}"
-               local -x CC=${CTARGET}-clang-${LLVM_MAJOR}
-               local -x CXX=${CTARGET}-clang++-${LLVM_MAJOR}
-               strip-unsupported-flags
-
-               # The full clang configuration might not be ready yet. Use the 
partial
-               # configuration of components that libunwind depends on.
-               local flags=(
-                       
--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-{rtlib,unwindlib,linker}.cfg
-               )
-               local -x CFLAGS="${CFLAGS} ${flags[@]}"
-               local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
-               local -x LDFLAGS="${LDFLAGS} ${flags[@]}"
-       fi
-
-       # link to compiler-rt
-       local use_compiler_rt=OFF
-       [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
-
-       local nostdlib_flags=( -nostdlib++ )
-       if ! test_compiler && test_compiler "${nostdlib_flags[@]}"; then
-               local -x LDFLAGS="${LDFLAGS} ${nostdlib_flags[*]}"
-               ewarn "${CXX} seems to lack runtime, trying with 
${nostdlib_flags[*]}"
-       fi
-
-       local libdir=$(get_libdir)
-       local mycmakeargs=(
-               -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
-
-               -DCMAKE_CXX_COMPILER_TARGET="${CTARGET}"
-               -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=$(llvm_cmake_use_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 is_crosspkg; then
-               # Needed to target built libc headers
-               local -x CFLAGS="${CFLAGS} -isystem 
${ESYSROOT}/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
-                       # Install inside the cross sysroot.
-                       -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/${CTARGET}/usr"
-               )
-       fi
-       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 install-cxx-test-suite-prefix
-       cp 
"${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_shared.so 
|| die
-       if use static-libs; then
-               cp 
"${BUILD_DIR}"/{lib,libcxx/test-suite-install/$(get_libdir)}/libc++_static.a || 
die
-       fi
-       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
-               is_crosspkg && into /usr/${CTARGET}
-               dolib.so lib/libc++_shared.so
-               use static-libs && dolib.a lib/libc++_static.a
-       fi
-
-       local install_prefix=
-       is_crosspkg && install_prefix=/usr/${CTARGET}
-       insinto "${install_prefix}/usr/share/libc++/gdb"
-       doins ../libcxx/utils/gdb/libcxx/printers.py
-
-       local lib_version=$(sed -n -e 's/^LIBCXX_LIBRARY_VERSION:STRING=//p' 
CMakeCache.txt || die)
-       [[ -n ${lib_version} ]] || die "Could not determine 
LIBCXX_LIBRARY_VERSION from CMakeCache.txt"
-
-       insinto "${install_prefix}/usr/share/gdb/auto-load/usr/$(get_libdir)"
-       newins - "libc++.so.${lib_version}-gdb.py" <<-EOF
-               __import__("sys").path.insert(0, 
"${EPREFIX}/usr/share/libc++/gdb")
-               __import__("printers").register_libcxx_printer_loader()
-       EOF
-}
-
-# 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/llvm-runtimes/libcxx/libcxx-22.0.0_pre20251108.ebuild 
b/llvm-runtimes/libcxx/libcxx-22.0.0_pre20251108.ebuild
deleted file mode 100644
index 9825200fd784..000000000000
--- a/llvm-runtimes/libcxx/libcxx-22.0.0_pre20251108.ebuild
+++ /dev/null
@@ -1,260 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{11..14} )
-inherit cmake-multilib crossdev flag-o-matic llvm.org llvm-utils
-inherit python-any-r1 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? (
-               ~llvm-runtimes/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}]
-       )
-       !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )
-"
-DEPEND="
-       ${RDEPEND}
-       llvm-core/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
-       clang? (
-               llvm-core/clang:${LLVM_MAJOR}
-               llvm-core/clang-linker-config:${LLVM_MAJOR}
-               llvm-runtimes/clang-rtlib-config:${LLVM_MAJOR}
-               llvm-runtimes/clang-unwindlib-config:${LLVM_MAJOR}
-       )
-       !test? (
-               ${PYTHON_DEPS}
-       )
-       test? (
-               dev-debug/gdb[python]
-               $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
-       )
-"
-
-LLVM_COMPONENTS=(
-       runtimes libcxx{,abi} libc 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
-}
-
-test_compiler() {
-       $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
-               <<<'int main() { return 0; }' &>/dev/null
-}
-
-src_configure() {
-       local install_prefix=${EPREFIX}
-       is_crosspkg && install_prefix+=/usr/${CTARGET}
-
-       # 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="${install_prefix}/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() {
-       # Workaround for bgo #961153.
-       # TODO: Fix the multilib.eclass, so it sets CTARGET properly.
-       if ! is_crosspkg; then
-               export CTARGET=${CHOST}
-       fi
-
-       if use clang; then
-               llvm_prepend_path -b "${LLVM_MAJOR}"
-               local -x CC=${CTARGET}-clang-${LLVM_MAJOR}
-               local -x CXX=${CTARGET}-clang++-${LLVM_MAJOR}
-               strip-unsupported-flags
-
-               # The full clang configuration might not be ready yet. Use the 
partial
-               # configuration of components that libunwind depends on.
-               local flags=(
-                       
--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-{rtlib,unwindlib,linker}.cfg
-               )
-               local -x CFLAGS="${CFLAGS} ${flags[@]}"
-               local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
-               local -x LDFLAGS="${LDFLAGS} ${flags[@]}"
-       fi
-
-       # link to compiler-rt
-       local use_compiler_rt=OFF
-       [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
-
-       local nostdlib_flags=( -nostdlib++ )
-       if ! test_compiler && test_compiler "${nostdlib_flags[@]}"; then
-               local -x LDFLAGS="${LDFLAGS} ${nort_flags[*]}"
-               ewarn "${CXX} seems to lack runtime, trying with 
${nort_flags[*]}"
-       fi
-
-       local libdir=$(get_libdir)
-       local mycmakeargs=(
-               -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
-
-               -DCMAKE_CXX_COMPILER_TARGET="${CTARGET}"
-               -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=$(llvm_cmake_use_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 is_crosspkg; then
-               # Needed to target built libc headers
-               local -x CFLAGS="${CFLAGS} -isystem 
${ESYSROOT}/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
-                       # Install inside the cross sysroot.
-                       -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/${CTARGET}/usr"
-               )
-       fi
-       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
-               local libdir=$(get_libdir)
-               gen_shared_ldscript
-               use static-libs && gen_static_ldscript
-       fi
-}
-
-multilib_src_test() {
-       local -x LIT_PRESERVES_TMP=1
-       # https://github.com/llvm/llvm-project/issues/153940
-       local -x LIT_XFAIL="libcxx/gdb/gdb_pretty_printer_test.sh.cpp"
-       cmake_build install-cxx-test-suite-prefix
-       if [[ ${CHOST} != *-darwin* ]] ; then
-               local libdir=$(get_libdir)
-               cp 
"${BUILD_DIR}"/{,libcxx/test-suite-install/}"${libdir}"/libc++_shared.so || die
-               if use static-libs; then
-                       cp 
"${BUILD_DIR}"/{,libcxx/test-suite-install/}"${libdir}"/libc++_static.a || die
-               fi
-       fi
-       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
-               local libdir=$(get_libdir)
-               is_crosspkg && into /usr/${CTARGET}
-               dolib.so "${libdir}"/libc++_shared.so
-               use static-libs && dolib.a "${libdir}"/libc++_static.a
-       fi
-
-       local install_prefix=
-       is_crosspkg && install_prefix=/usr/${CTARGET}
-       insinto "${install_prefix}/usr/share/libc++/gdb"
-       doins ../libcxx/utils/gdb/libcxx/printers.py
-
-       local lib_version=$(sed -n -e 's/^LIBCXX_LIBRARY_VERSION:STRING=//p' 
CMakeCache.txt || die)
-       [[ -n ${lib_version} ]] || die "Could not determine 
LIBCXX_LIBRARY_VERSION from CMakeCache.txt"
-
-       insinto "${install_prefix}/usr/share/gdb/auto-load/usr/$(get_libdir)"
-       newins - "libc++.so.${lib_version}-gdb.py" <<-EOF
-               __import__("sys").path.insert(0, 
"${EPREFIX}/usr/share/libc++/gdb")
-               __import__("printers").register_libcxx_printer_loader()
-       EOF
-}
-
-# 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 "${libdir}"/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[*]}" > "${libdir}"/libc++.a || die
-}
-
-gen_shared_ldscript() {
-       # Move it first.
-       mv "${libdir}"/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[*]}" > "${libdir}"/libc++.so || die
-}

diff --git a/llvm-runtimes/libcxx/libcxx-22.0.0_pre20251120.ebuild 
b/llvm-runtimes/libcxx/libcxx-22.0.0_pre20251120.ebuild
deleted file mode 100644
index 9825200fd784..000000000000
--- a/llvm-runtimes/libcxx/libcxx-22.0.0_pre20251120.ebuild
+++ /dev/null
@@ -1,260 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{11..14} )
-inherit cmake-multilib crossdev flag-o-matic llvm.org llvm-utils
-inherit python-any-r1 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? (
-               ~llvm-runtimes/libcxxabi-${PV}[static-libs?,${MULTILIB_USEDEP}]
-       )
-       !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )
-"
-DEPEND="
-       ${RDEPEND}
-       llvm-core/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
-       clang? (
-               llvm-core/clang:${LLVM_MAJOR}
-               llvm-core/clang-linker-config:${LLVM_MAJOR}
-               llvm-runtimes/clang-rtlib-config:${LLVM_MAJOR}
-               llvm-runtimes/clang-unwindlib-config:${LLVM_MAJOR}
-       )
-       !test? (
-               ${PYTHON_DEPS}
-       )
-       test? (
-               dev-debug/gdb[python]
-               $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
-       )
-"
-
-LLVM_COMPONENTS=(
-       runtimes libcxx{,abi} libc 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
-}
-
-test_compiler() {
-       $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
-               <<<'int main() { return 0; }' &>/dev/null
-}
-
-src_configure() {
-       local install_prefix=${EPREFIX}
-       is_crosspkg && install_prefix+=/usr/${CTARGET}
-
-       # 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="${install_prefix}/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() {
-       # Workaround for bgo #961153.
-       # TODO: Fix the multilib.eclass, so it sets CTARGET properly.
-       if ! is_crosspkg; then
-               export CTARGET=${CHOST}
-       fi
-
-       if use clang; then
-               llvm_prepend_path -b "${LLVM_MAJOR}"
-               local -x CC=${CTARGET}-clang-${LLVM_MAJOR}
-               local -x CXX=${CTARGET}-clang++-${LLVM_MAJOR}
-               strip-unsupported-flags
-
-               # The full clang configuration might not be ready yet. Use the 
partial
-               # configuration of components that libunwind depends on.
-               local flags=(
-                       
--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-{rtlib,unwindlib,linker}.cfg
-               )
-               local -x CFLAGS="${CFLAGS} ${flags[@]}"
-               local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
-               local -x LDFLAGS="${LDFLAGS} ${flags[@]}"
-       fi
-
-       # link to compiler-rt
-       local use_compiler_rt=OFF
-       [[ $(tc-get-c-rtlib) == compiler-rt ]] && use_compiler_rt=ON
-
-       local nostdlib_flags=( -nostdlib++ )
-       if ! test_compiler && test_compiler "${nostdlib_flags[@]}"; then
-               local -x LDFLAGS="${LDFLAGS} ${nort_flags[*]}"
-               ewarn "${CXX} seems to lack runtime, trying with 
${nort_flags[*]}"
-       fi
-
-       local libdir=$(get_libdir)
-       local mycmakeargs=(
-               -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
-
-               -DCMAKE_CXX_COMPILER_TARGET="${CTARGET}"
-               -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=$(llvm_cmake_use_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 is_crosspkg; then
-               # Needed to target built libc headers
-               local -x CFLAGS="${CFLAGS} -isystem 
${ESYSROOT}/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
-                       # Install inside the cross sysroot.
-                       -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/${CTARGET}/usr"
-               )
-       fi
-       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
-               local libdir=$(get_libdir)
-               gen_shared_ldscript
-               use static-libs && gen_static_ldscript
-       fi
-}
-
-multilib_src_test() {
-       local -x LIT_PRESERVES_TMP=1
-       # https://github.com/llvm/llvm-project/issues/153940
-       local -x LIT_XFAIL="libcxx/gdb/gdb_pretty_printer_test.sh.cpp"
-       cmake_build install-cxx-test-suite-prefix
-       if [[ ${CHOST} != *-darwin* ]] ; then
-               local libdir=$(get_libdir)
-               cp 
"${BUILD_DIR}"/{,libcxx/test-suite-install/}"${libdir}"/libc++_shared.so || die
-               if use static-libs; then
-                       cp 
"${BUILD_DIR}"/{,libcxx/test-suite-install/}"${libdir}"/libc++_static.a || die
-               fi
-       fi
-       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
-               local libdir=$(get_libdir)
-               is_crosspkg && into /usr/${CTARGET}
-               dolib.so "${libdir}"/libc++_shared.so
-               use static-libs && dolib.a "${libdir}"/libc++_static.a
-       fi
-
-       local install_prefix=
-       is_crosspkg && install_prefix=/usr/${CTARGET}
-       insinto "${install_prefix}/usr/share/libc++/gdb"
-       doins ../libcxx/utils/gdb/libcxx/printers.py
-
-       local lib_version=$(sed -n -e 's/^LIBCXX_LIBRARY_VERSION:STRING=//p' 
CMakeCache.txt || die)
-       [[ -n ${lib_version} ]] || die "Could not determine 
LIBCXX_LIBRARY_VERSION from CMakeCache.txt"
-
-       insinto "${install_prefix}/usr/share/gdb/auto-load/usr/$(get_libdir)"
-       newins - "libc++.so.${lib_version}-gdb.py" <<-EOF
-               __import__("sys").path.insert(0, 
"${EPREFIX}/usr/share/libc++/gdb")
-               __import__("printers").register_libcxx_printer_loader()
-       EOF
-}
-
-# 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 "${libdir}"/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[*]}" > "${libdir}"/libc++.a || die
-}
-
-gen_shared_ldscript() {
-       # Move it first.
-       mv "${libdir}"/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[*]}" > "${libdir}"/libc++.so || die
-}


Reply via email to