summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2024-02-28 21:08:49 +0100
committerMichał Górny <mgorny@gentoo.org>2024-02-28 21:40:16 +0100
commit7dfc474a318a7986b78403e32e890db0d7a20683 (patch)
tree2104860485909e29dede91e1532c6eab569d5193 /sys-libs/compiler-rt
parentsys-libs/compiler-rt-sanitizers: Remove old (diff)
downloadgentoo-7dfc474a318a7986b78403e32e890db0d7a20683.tar.gz
gentoo-7dfc474a318a7986b78403e32e890db0d7a20683.tar.bz2
gentoo-7dfc474a318a7986b78403e32e890db0d7a20683.zip
sys-libs/compiler-rt: Remove old
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'sys-libs/compiler-rt')
-rw-r--r--sys-libs/compiler-rt/Manifest4
-rw-r--r--sys-libs/compiler-rt/compiler-rt-18.1.0_rc2.ebuild171
-rw-r--r--sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240210.ebuild171
-rw-r--r--sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240218.ebuild171
4 files changed, 0 insertions, 517 deletions
diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest
index d8506dff4e10..a020fbed8461 100644
--- a/sys-libs/compiler-rt/Manifest
+++ b/sys-libs/compiler-rt/Manifest
@@ -7,12 +7,8 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659
DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
-DIST llvm-project-18.1.0rc2.src.tar.xz 131993176 BLAKE2B 8df1e34a54214975efe1b9a649753a2dc20c04e3c763bd8648000f48dd18f27ccfdc597ff6e68e0f408310493dfa92f48c7eee53376501e8ebc3b7c614809c15 SHA512 b595bb5d029723fee4e8f8edeaddd6fdcd48d668f66f4239e3208fd19d3a3622e8e4f90ae3fa4b1216fca1621d6c6b6ebf4d99dec7febff2457d0ceb79e8617a
-DIST llvm-project-18.1.0rc2.src.tar.xz.sig 566 BLAKE2B c765549386a92883bd348d9be25a3c92b1e66a1bac71385ef99978ec2af413a7616a2d9699c57554d927f95b80a3584572557d26e3df16b2ff6678359d5fd6b0 SHA512 83bb4c133f34faec8a0109689ed7aa18222c9a803ba8c95c571a18e854726024f106a1c8e3a820020255c426b7fa8bda26789ff1546972e233fbe3e3ab3a8e91
DIST llvm-project-18.1.0rc3.src.tar.xz 132011280 BLAKE2B 482a0e1b806292598bd646f225705140a463706ec391e4e42f203606b85673601a65fe55f2432d77f4c2f4c6584b35e53eeaded42e0b67aa6538c37d7cceb4ff SHA512 6c0adcf6e4057de8fb1dcd062845d14d725833d23d8e1362cbccab176931f55600a3971f01690179b795ff3feca0af9141b16dee4d4159755596cc9c904bf099
DIST llvm-project-18.1.0rc3.src.tar.xz.sig 566 BLAKE2B dac9c174e2eeda5e0af0153d78a2e9c8f145efe03250582a27df1bd6a89ba70afdcfa1ed6aa46adb1f7f21077cadb6e43963758358ff17122c36781ee4018c05 SHA512 91a2778f9b66bc80172172f36d6027fb2455f3ffd03b06ad0dd376471c4d4e2e34c8bee69c76cfe95003ae34f0d28c394c7d135fbbb75686ff89aee56b6c45c3
DIST llvm-project-18.1.0rc4.src.tar.xz 132041940 BLAKE2B 1379efd68f765a70e088ac356f69d792c210003c76b15f28b40273aa64825d7a7c7aa03d2d5016b2607626fd63f656ad88402506f23e836c72474be2032d3224 SHA512 3018a843f8e615ee0a4c742d5fafcc67eb6d6a40f81212ce045bdff7012b5acec006ee89c321baf59209daabe66b838709cdaed4e11a34c34b821cfdb77e8a61
DIST llvm-project-18.1.0rc4.src.tar.xz.sig 566 BLAKE2B cc089aadc50d874b575c23b8c22a5472c8507acd3352786d3ac2ee0ec06f07e99eee81b94c6b5bdca569ccffa8b867eb2265b57d5d07b8ec31e3cfce89bf8fc1 SHA512 2ce82201b7c673884815898069f18cf1e4ab13a0a9ed535339d9c4132b7b0edb6b748b03499e383f8f0268d904589e6aebb9a204ef95d14f56a3fb9dca24571c
-DIST llvm-project-3496927edcd0685807351ba88a7e2cfb006e1c0d.tar.gz 206227842 BLAKE2B cd27e9e9bca3622c2241bfa91c78eb8443df7465c1efcec57d5e701e2c61d3b2d3619483199e67b56deed9410f5382fc3164cdc7e864dcd77f4d12f3f9d2b159 SHA512 156d441074aff4d85af956b9abf89f9aefccccbe5b39e315c9c7c249ad01f95b42a303c23e9142292e7746f691c2ee704a7cd4a60916594ea1d468240c9b8152
DIST llvm-project-60a904b2ad9842b93cc5fa0ad5bda5e22c550b7e.tar.gz 206511075 BLAKE2B 501924562c3e49eb921adcf3175d55ce0a47992b3b6b8b512ad8f1cc7b7e5f7bc3e2e278b7817c5924fdf8328f97be2f9c5037b1b6414d49e3b525739ecec6da SHA512 b05fcb4600645befb07f2da1efba463389df3fd1d9a26cb0e6ff9ab51edc2d8c5f51a9d44fe4b7f5f29d67cd4dbd15382fdf97f51ddc2c209196533c40611078
-DIST llvm-project-8884ba43a8485bebef5c4d41e7ed457e3fa84f07.tar.gz 205853916 BLAKE2B 115809efbf062ced32ffe61b25e65e44a0b3c293f68bf40fc4d9e596cd077fc4781a059ad24c4dc7a139c6ec884a6a183ebac06535f2498116266695e19daf00 SHA512 cb496111ec72163a1872fa9a14f8963108d3185f4464a74cc45d26ccc5071bc36895618b81c29063cde0564a50017a0194da4dc559a046a12550d9ab0d9b8347
diff --git a/sys-libs/compiler-rt/compiler-rt-18.1.0_rc2.ebuild b/sys-libs/compiler-rt/compiler-rt-18.1.0_rc2.ebuild
deleted file mode 100644
index 75ff3c155c03..000000000000
--- a/sys-libs/compiler-rt/compiler-rt-18.1.0_rc2.ebuild
+++ /dev/null
@@ -1,171 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-inherit cmake crossdev flag-o-matic llvm.org llvm-utils python-any-r1
-inherit toolchain-funcs
-
-DESCRIPTION="Compiler runtime library for clang (built-in part)"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="${LLVM_MAJOR}"
-IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-DEPEND="
- sys-devel/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
- clang? ( sys-devel/clang )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =sys-devel/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
- if ! use clang && ! tc-is-clang; then
- ewarn "Building using a compiler other than clang may result in broken atomics"
- ewarn "library. Enable USE=clang unless you have a very good reason not to."
- fi
-}
-
-pkg_setup() {
- if target_is_not_host || tc-is-cross-compiler ; then
- # strips vars like CFLAGS="-march=x86_64-v3" for non-x86 architectures
- CHOST=${CTARGET} strip-unsupported-flags
- # overrides host docs otherwise
- DOCS=()
- fi
- python-any-r1_pkg_setup
-}
-
-test_compiler() {
- target_is_not_host && return
- $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \
- <<<'int main() { return 0; }' &>/dev/null
-}
-
-src_configure() {
- llvm_prepend_path "${LLVM_MAJOR}"
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- # pre-set since we need to pass it to cmake
- BUILD_DIR=${WORKDIR}/${P}_build
-
- if use clang && ! is_crosspkg; then
- # Only do this conditionally to allow overriding with
- # e.g. CC=clang-13 in case of breakage
- if ! tc-is-clang ; then
- local -x CC=${CHOST}-clang
- local -x CXX=${CHOST}-clang++
- fi
-
- strip-unsupported-flags
- fi
-
- if ! is_crosspkg && ! test_compiler ; then
- local nolib_flags=( -nodefaultlibs -lc )
-
- if test_compiler "${nolib_flags[@]}"; then
- local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
- ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
- elif test_compiler "${nolib_flags[@]}" -nostartfiles; then
- # Avoiding -nostartfiles earlier on for bug #862540,
- # and set available entry symbol for bug #862798.
- nolib_flags+=( -nostartfiles -emain )
-
- local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
- ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
- fi
- fi
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- -DCOMPILER_RT_BUILD_LIBFUZZER=OFF
- -DCOMPILER_RT_BUILD_MEMPROF=OFF
- -DCOMPILER_RT_BUILD_ORC=OFF
- -DCOMPILER_RT_BUILD_PROFILE=OFF
- -DCOMPILER_RT_BUILD_SANITIZERS=OFF
- -DCOMPILER_RT_BUILD_XRAY=OFF
-
- -DPython3_EXECUTABLE="${PYTHON}"
- )
-
- if use amd64 && ! target_is_not_host; then
- mycmakeargs+=(
- -DCAN_TARGET_i386=$(usex abi_x86_32)
- -DCAN_TARGET_x86_64=$(usex abi_x86_64)
- )
- fi
-
- if is_crosspkg; then
- # Needed to target built libc headers
- export CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include"
- mycmakeargs+=(
- # Without this, the compiler will compile a test program
- # and fail due to no builtins.
- -DCMAKE_C_COMPILER_WORKS=1
- -DCMAKE_CXX_COMPILER_WORKS=1
-
- # Without this, compiler-rt install location is not unique
- # to target triples, only to architecture.
- # Needed if you want to target multiple libcs for one arch.
- -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON
-
- -DCMAKE_ASM_COMPILER_TARGET="${CTARGET}"
- -DCMAKE_C_COMPILER_TARGET="${CTARGET}"
- -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON
- )
- fi
-
- if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then
- mycmakeargs+=(
- # setting -isysroot is disabled with compiler-rt-prefix-paths.patch
- # this allows adding arm64 support using SDK in EPREFIX
- -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk"
- # Set version based on the SDK in EPREFIX.
- # This disables i386 for SDK >= 10.15
- -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')"
- # Use our libtool instead of looking it up with xcrun
- -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool"
- )
- fi
-
- if use test; then
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags)"
-
- -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang"
- -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++"
- )
- fi
-
- cmake_src_configure
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake_build check-builtins
-}
diff --git a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240210.ebuild b/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240210.ebuild
deleted file mode 100644
index 75ff3c155c03..000000000000
--- a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240210.ebuild
+++ /dev/null
@@ -1,171 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-inherit cmake crossdev flag-o-matic llvm.org llvm-utils python-any-r1
-inherit toolchain-funcs
-
-DESCRIPTION="Compiler runtime library for clang (built-in part)"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="${LLVM_MAJOR}"
-IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-DEPEND="
- sys-devel/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
- clang? ( sys-devel/clang )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =sys-devel/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
- if ! use clang && ! tc-is-clang; then
- ewarn "Building using a compiler other than clang may result in broken atomics"
- ewarn "library. Enable USE=clang unless you have a very good reason not to."
- fi
-}
-
-pkg_setup() {
- if target_is_not_host || tc-is-cross-compiler ; then
- # strips vars like CFLAGS="-march=x86_64-v3" for non-x86 architectures
- CHOST=${CTARGET} strip-unsupported-flags
- # overrides host docs otherwise
- DOCS=()
- fi
- python-any-r1_pkg_setup
-}
-
-test_compiler() {
- target_is_not_host && return
- $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \
- <<<'int main() { return 0; }' &>/dev/null
-}
-
-src_configure() {
- llvm_prepend_path "${LLVM_MAJOR}"
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- # pre-set since we need to pass it to cmake
- BUILD_DIR=${WORKDIR}/${P}_build
-
- if use clang && ! is_crosspkg; then
- # Only do this conditionally to allow overriding with
- # e.g. CC=clang-13 in case of breakage
- if ! tc-is-clang ; then
- local -x CC=${CHOST}-clang
- local -x CXX=${CHOST}-clang++
- fi
-
- strip-unsupported-flags
- fi
-
- if ! is_crosspkg && ! test_compiler ; then
- local nolib_flags=( -nodefaultlibs -lc )
-
- if test_compiler "${nolib_flags[@]}"; then
- local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
- ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
- elif test_compiler "${nolib_flags[@]}" -nostartfiles; then
- # Avoiding -nostartfiles earlier on for bug #862540,
- # and set available entry symbol for bug #862798.
- nolib_flags+=( -nostartfiles -emain )
-
- local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
- ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
- fi
- fi
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- -DCOMPILER_RT_BUILD_LIBFUZZER=OFF
- -DCOMPILER_RT_BUILD_MEMPROF=OFF
- -DCOMPILER_RT_BUILD_ORC=OFF
- -DCOMPILER_RT_BUILD_PROFILE=OFF
- -DCOMPILER_RT_BUILD_SANITIZERS=OFF
- -DCOMPILER_RT_BUILD_XRAY=OFF
-
- -DPython3_EXECUTABLE="${PYTHON}"
- )
-
- if use amd64 && ! target_is_not_host; then
- mycmakeargs+=(
- -DCAN_TARGET_i386=$(usex abi_x86_32)
- -DCAN_TARGET_x86_64=$(usex abi_x86_64)
- )
- fi
-
- if is_crosspkg; then
- # Needed to target built libc headers
- export CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include"
- mycmakeargs+=(
- # Without this, the compiler will compile a test program
- # and fail due to no builtins.
- -DCMAKE_C_COMPILER_WORKS=1
- -DCMAKE_CXX_COMPILER_WORKS=1
-
- # Without this, compiler-rt install location is not unique
- # to target triples, only to architecture.
- # Needed if you want to target multiple libcs for one arch.
- -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON
-
- -DCMAKE_ASM_COMPILER_TARGET="${CTARGET}"
- -DCMAKE_C_COMPILER_TARGET="${CTARGET}"
- -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON
- )
- fi
-
- if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then
- mycmakeargs+=(
- # setting -isysroot is disabled with compiler-rt-prefix-paths.patch
- # this allows adding arm64 support using SDK in EPREFIX
- -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk"
- # Set version based on the SDK in EPREFIX.
- # This disables i386 for SDK >= 10.15
- -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')"
- # Use our libtool instead of looking it up with xcrun
- -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool"
- )
- fi
-
- if use test; then
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags)"
-
- -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang"
- -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++"
- )
- fi
-
- cmake_src_configure
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake_build check-builtins
-}
diff --git a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240218.ebuild b/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240218.ebuild
deleted file mode 100644
index 75ff3c155c03..000000000000
--- a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240218.ebuild
+++ /dev/null
@@ -1,171 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-inherit cmake crossdev flag-o-matic llvm.org llvm-utils python-any-r1
-inherit toolchain-funcs
-
-DESCRIPTION="Compiler runtime library for clang (built-in part)"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="${LLVM_MAJOR}"
-IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-DEPEND="
- sys-devel/llvm:${LLVM_MAJOR}
-"
-BDEPEND="
- clang? ( sys-devel/clang )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =sys-devel/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
- if ! use clang && ! tc-is-clang; then
- ewarn "Building using a compiler other than clang may result in broken atomics"
- ewarn "library. Enable USE=clang unless you have a very good reason not to."
- fi
-}
-
-pkg_setup() {
- if target_is_not_host || tc-is-cross-compiler ; then
- # strips vars like CFLAGS="-march=x86_64-v3" for non-x86 architectures
- CHOST=${CTARGET} strip-unsupported-flags
- # overrides host docs otherwise
- DOCS=()
- fi
- python-any-r1_pkg_setup
-}
-
-test_compiler() {
- target_is_not_host && return
- $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \
- <<<'int main() { return 0; }' &>/dev/null
-}
-
-src_configure() {
- llvm_prepend_path "${LLVM_MAJOR}"
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- # pre-set since we need to pass it to cmake
- BUILD_DIR=${WORKDIR}/${P}_build
-
- if use clang && ! is_crosspkg; then
- # Only do this conditionally to allow overriding with
- # e.g. CC=clang-13 in case of breakage
- if ! tc-is-clang ; then
- local -x CC=${CHOST}-clang
- local -x CXX=${CHOST}-clang++
- fi
-
- strip-unsupported-flags
- fi
-
- if ! is_crosspkg && ! test_compiler ; then
- local nolib_flags=( -nodefaultlibs -lc )
-
- if test_compiler "${nolib_flags[@]}"; then
- local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
- ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
- elif test_compiler "${nolib_flags[@]}" -nostartfiles; then
- # Avoiding -nostartfiles earlier on for bug #862540,
- # and set available entry symbol for bug #862798.
- nolib_flags+=( -nostartfiles -emain )
-
- local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
- ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
- fi
- fi
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- -DCOMPILER_RT_BUILD_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
-}