commit: 15f4b665489bd4c68528f0cabfe38142a91c3ce8
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 23 20:04:14 2025 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Dec 23 20:07:13 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=15f4b665
llvm-runtimes/compiler-rt: Remove old
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
llvm-runtimes/compiler-rt/Manifest | 8 -
.../compiler-rt/compiler-rt-21.1.5.ebuild | 191 ---------------------
.../compiler-rt/compiler-rt-21.1.6.ebuild | 191 ---------------------
.../compiler-rt/compiler-rt-21.1.7.ebuild | 191 ---------------------
.../compiler-rt-22.0.0_pre20251108.ebuild | 190 --------------------
.../compiler-rt-22.0.0_pre20251120.ebuild | 190 --------------------
6 files changed, 961 deletions(-)
diff --git a/llvm-runtimes/compiler-rt/Manifest
b/llvm-runtimes/compiler-rt/Manifest
index 37114828535a..60fb0f681f5b 100644
--- a/llvm-runtimes/compiler-rt/Manifest
+++ b/llvm-runtimes/compiler-rt/Manifest
@@ -1,7 +1,6 @@
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-gentoo-patchset-17.0.6-r4.tar.xz 6636 BLAKE2B
7b53f4b19e19b3493878ae9db925bfd07e81564e2ef01b10e6d7aa774a64928fd8d991a734ae5eca6a984489e18c288240187d2fe94f3b855643553e5fdaf024
SHA512
feffdd99b80f53c562ff2664b9b8a886132e400f1bc378e52d5f4559ee6a4139c5e7c4faee4fe015ce93ed4cff3a4b03844321254f3102b1f70f066ea84f7c10
-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
@@ -14,14 +13,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/compiler-rt/compiler-rt-21.1.5.ebuild
b/llvm-runtimes/compiler-rt/compiler-rt-21.1.5.ebuild
deleted file mode 100644
index d865769f1edc..000000000000
--- a/llvm-runtimes/compiler-rt/compiler-rt-21.1.5.ebuild
+++ /dev/null
@@ -1,191 +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 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}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86 ~arm64-macos
~x64-macos"
-IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang debug test"
-REQUIRED_USE="atomic-builtins? ( clang )"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-DEPEND="
- llvm-core/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
- clang? (
- llvm-core/clang:${LLVM_MAJOR}
- llvm-core/clang-linker-config:${LLVM_MAJOR}
- )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake third-party/siphash )
-LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
-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() {
- if use clang || use test; then
- llvm_prepend_path -b "${LLVM_MAJOR}"
- fi
-
- # 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-${LLVM_MAJOR}
- local -x CXX=${CHOST}-clang++-${LLVM_MAJOR}
- fi
-
- strip-unsupported-flags
-
- # The full clang configuration might not be ready yet. Given
that compiler-rt
- # require runtime, use only the linker configuration.
- local flags=(
-
--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-linker.cfg
- )
- local -x CFLAGS="${CFLAGS} ${flags[@]}"
- local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
- local -x LDFLAGS="${LDFLAGS} ${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}"
- -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_EXCLUDE_ATOMIC_BUILTIN=$(usex !atomic-builtins)
- -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/llvm-runtimes/compiler-rt/compiler-rt-21.1.6.ebuild
b/llvm-runtimes/compiler-rt/compiler-rt-21.1.6.ebuild
deleted file mode 100644
index d865769f1edc..000000000000
--- a/llvm-runtimes/compiler-rt/compiler-rt-21.1.6.ebuild
+++ /dev/null
@@ -1,191 +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 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}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86 ~arm64-macos
~x64-macos"
-IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang debug test"
-REQUIRED_USE="atomic-builtins? ( clang )"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-DEPEND="
- llvm-core/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
- clang? (
- llvm-core/clang:${LLVM_MAJOR}
- llvm-core/clang-linker-config:${LLVM_MAJOR}
- )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake third-party/siphash )
-LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
-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() {
- if use clang || use test; then
- llvm_prepend_path -b "${LLVM_MAJOR}"
- fi
-
- # 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-${LLVM_MAJOR}
- local -x CXX=${CHOST}-clang++-${LLVM_MAJOR}
- fi
-
- strip-unsupported-flags
-
- # The full clang configuration might not be ready yet. Given
that compiler-rt
- # require runtime, use only the linker configuration.
- local flags=(
-
--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-linker.cfg
- )
- local -x CFLAGS="${CFLAGS} ${flags[@]}"
- local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
- local -x LDFLAGS="${LDFLAGS} ${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}"
- -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_EXCLUDE_ATOMIC_BUILTIN=$(usex !atomic-builtins)
- -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/llvm-runtimes/compiler-rt/compiler-rt-21.1.7.ebuild
b/llvm-runtimes/compiler-rt/compiler-rt-21.1.7.ebuild
deleted file mode 100644
index d865769f1edc..000000000000
--- a/llvm-runtimes/compiler-rt/compiler-rt-21.1.7.ebuild
+++ /dev/null
@@ -1,191 +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 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}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86 ~arm64-macos
~x64-macos"
-IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang debug test"
-REQUIRED_USE="atomic-builtins? ( clang )"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-DEPEND="
- llvm-core/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
- clang? (
- llvm-core/clang:${LLVM_MAJOR}
- llvm-core/clang-linker-config:${LLVM_MAJOR}
- )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake third-party/siphash )
-LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
-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() {
- if use clang || use test; then
- llvm_prepend_path -b "${LLVM_MAJOR}"
- fi
-
- # 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-${LLVM_MAJOR}
- local -x CXX=${CHOST}-clang++-${LLVM_MAJOR}
- fi
-
- strip-unsupported-flags
-
- # The full clang configuration might not be ready yet. Given
that compiler-rt
- # require runtime, use only the linker configuration.
- local flags=(
-
--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-linker.cfg
- )
- local -x CFLAGS="${CFLAGS} ${flags[@]}"
- local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
- local -x LDFLAGS="${LDFLAGS} ${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}"
- -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_EXCLUDE_ATOMIC_BUILTIN=$(usex !atomic-builtins)
- -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/llvm-runtimes/compiler-rt/compiler-rt-22.0.0_pre20251108.ebuild
b/llvm-runtimes/compiler-rt/compiler-rt-22.0.0_pre20251108.ebuild
deleted file mode 100644
index 86fe125a08cd..000000000000
--- a/llvm-runtimes/compiler-rt/compiler-rt-22.0.0_pre20251108.ebuild
+++ /dev/null
@@ -1,190 +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 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 +atomic-builtins +clang +debug test"
-REQUIRED_USE="atomic-builtins? ( clang )"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-DEPEND="
- llvm-core/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
- clang? (
- llvm-core/clang:${LLVM_MAJOR}
- llvm-core/clang-linker-config:${LLVM_MAJOR}
- )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake third-party/siphash )
-LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
-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() {
- if use clang || use test; then
- llvm_prepend_path -b "${LLVM_MAJOR}"
- fi
-
- # 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-${LLVM_MAJOR}
- local -x CXX=${CHOST}-clang++-${LLVM_MAJOR}
- fi
-
- strip-unsupported-flags
-
- # The full clang configuration might not be ready yet. Given
that compiler-rt
- # require runtime, use only the linker configuration.
- local flags=(
-
--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-linker.cfg
- )
- local -x CFLAGS="${CFLAGS} ${flags[@]}"
- local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
- local -x LDFLAGS="${LDFLAGS} ${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}"
- -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_EXCLUDE_ATOMIC_BUILTIN=$(usex !atomic-builtins)
- -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/llvm-runtimes/compiler-rt/compiler-rt-22.0.0_pre20251120.ebuild
b/llvm-runtimes/compiler-rt/compiler-rt-22.0.0_pre20251120.ebuild
deleted file mode 100644
index 86fe125a08cd..000000000000
--- a/llvm-runtimes/compiler-rt/compiler-rt-22.0.0_pre20251120.ebuild
+++ /dev/null
@@ -1,190 +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 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 +atomic-builtins +clang +debug test"
-REQUIRED_USE="atomic-builtins? ( clang )"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-DEPEND="
- llvm-core/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
- clang? (
- llvm-core/clang:${LLVM_MAJOR}
- llvm-core/clang-linker-config:${LLVM_MAJOR}
- )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake third-party/siphash )
-LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
-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() {
- if use clang || use test; then
- llvm_prepend_path -b "${LLVM_MAJOR}"
- fi
-
- # 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-${LLVM_MAJOR}
- local -x CXX=${CHOST}-clang++-${LLVM_MAJOR}
- fi
-
- strip-unsupported-flags
-
- # The full clang configuration might not be ready yet. Given
that compiler-rt
- # require runtime, use only the linker configuration.
- local flags=(
-
--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-linker.cfg
- )
- local -x CFLAGS="${CFLAGS} ${flags[@]}"
- local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
- local -x LDFLAGS="${LDFLAGS} ${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}"
- -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_EXCLUDE_ATOMIC_BUILTIN=$(usex !atomic-builtins)
- -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
-}