summaryrefslogtreecommitdiff
path: root/sys-libs/compiler-rt-sanitizers
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-01-13 01:09:33 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-01-13 01:09:33 +0000
commit58523314abd7b5740c06e3bbcd41ada404e7c612 (patch)
tree2ec4372c4b63bd8679af9b4c591c2743e421b1b9 /sys-libs/compiler-rt-sanitizers
parent4fc30e4e13ecfbe29fbef3b5caf96218eab30b68 (diff)
gentoo auto-resync : 13:01:2024 - 01:09:33
Diffstat (limited to 'sys-libs/compiler-rt-sanitizers')
-rw-r--r--sys-libs/compiler-rt-sanitizers/Manifest6
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231215.ebuild217
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231222.ebuild217
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231228.ebuild217
4 files changed, 0 insertions, 657 deletions
diff --git a/sys-libs/compiler-rt-sanitizers/Manifest b/sys-libs/compiler-rt-sanitizers/Manifest
index 6f0d9fad77f3..c8c68ba56709 100644
--- a/sys-libs/compiler-rt-sanitizers/Manifest
+++ b/sys-libs/compiler-rt-sanitizers/Manifest
@@ -5,16 +5,10 @@ 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-17858ce6f3d24f994f6ad8c899bfa4eed39f739d.tar.gz 204267841 BLAKE2B 05232178574de9f7e6d4c2e5eb59cabc70670d14b5f92010a42aa3ab6087abd992672044857e6f8d21cd9d2c3d8129b47420f5e3ec746b50e82a3cac5352e824 SHA512 e7836fc56d7121d762cd714a4cd5e28c8b068ff375928d3b5cd32d7e4488b5cf59b21e16250b4f12a973ada3f73ce246af2cc3cd83efca17dc9c3da5b458196d
DIST llvm-project-a085402ef54379758e6c996dbaedfcb92ad222b5.tar.gz 204569231 BLAKE2B 75403225fbe54f0921b279b237a90f1922b16997d1538fa5f225e04451fa2fc4a28e886efb7460ef0c26a3a964f0c57084e331b0736fa223926259c76d873200 SHA512 b8c6b0c7c0a4c369ecfa7ac71cf96549a19853e14bdf061b6b54429ce7ed998b236bb9ed3adbd6bf1c70c7e975508f751ebd0031ac2ff474d32216048a1c5f2d
-DIST llvm-project-a700298b3d538452915703268ca18f7f8f7537e6.tar.gz 204307149 BLAKE2B 70c7bdf9694343145d12fe494bceb7e4c4325136a4d8eecaec0a53cb6193d42a6ce47e048569f4fe3bc1754e6a114cbc97225344f9cfc4f39935323d4cb64f68 SHA512 76b2c621a97ec3fffe504f4e7c9c5af4db1ee63556291078d302c2c88596b7d07d07d607226361d4272f7757cd8246faff64f4ad36b86cde141ded65fd0b7a62
-DIST llvm-project-d37ced88809cb4d2df57ec80887b3f8801ca719b.tar.gz 203826420 BLAKE2B 58448df837f2119720a36b837d0e4f2b2fc00da5658706b193b9d2d180cf0f6c5eb79a9cc0fa9d94310996a95210115a5a46371bd8537f16e105adea14a72399 SHA512 1348e5bf736acaeebf0ae0f613973e6c2d439d360c2272bb4ab112e579b12c297970bb765fd774c768aa55a922c93048b1d8ae6bfd636b241fa86f9427cc2069
EBUILD compiler-rt-sanitizers-15.0.7.ebuild 6578 BLAKE2B 79b9477f9f426c7e5ffc07fe9e2abc86ee568d8e081ac5e5e3da3e3e169920fe8c0ce34f9a8ac03a4389f27ecb0b0ff7f5cf91622d614e03300f17ea97d20859 SHA512 9d23f6974edbe69e5d9fa53a3885e8e44741b5e5d90b0e72c6d191b70827d1e590a7c5a3373bc4fb4945a50db0eea5e119baeaeea956c6d92bb087410ce919b0
EBUILD compiler-rt-sanitizers-16.0.6.ebuild 6546 BLAKE2B a57ff221344f88afa92722a883c5c5eec064b2a9691f2262e633914a75df013c295352b1b1fad83b7fc7579c7d59d6e0f04bc63e1f27556e950438f5f2e72fe7 SHA512 32641d64f2a370bd4b907ff05ebf975d3e149e9bc6372cd60e46ef04463f374984a62002cab76e58acee31f4fcbd0138749bab5c5aa1afd29a8713083b90a402
EBUILD compiler-rt-sanitizers-17.0.6.ebuild 6381 BLAKE2B 51a2104a09d0bdfe951dc13dce0118794621ee551263913408a84902cdb78ba3421e9ce03e5f64bd13f543a883d8d1333527ac5ea2e04df3e3e8b1708c4a7c55 SHA512 95eef5563015c176f48337ee0aa44c73da095498c6d0583569ef25f1f3e662f495036de227b1a3ae217aba0603da2d55ff7922dbb6e270a2e1ccaa95dc4865d1
EBUILD compiler-rt-sanitizers-18.0.0.9999.ebuild 6293 BLAKE2B 27ba05686e239e9b490d1a1cad3a19509f8f61201133c3070b7f320c9fd8e1ead0b136988b815e7cff2e9d42226fca227b4a39dbaa3973d2d364ab3439519879 SHA512 25af556f5e8c6b08ab7dc6910454836d19f2c0651556ffb6d4c0983b73f1f4a66b97d1b4e0f5dd597e29b6d367b7376daf41bc09fe094b8327feebf1eaab719f
-EBUILD compiler-rt-sanitizers-18.0.0_pre20231215.ebuild 6293 BLAKE2B 27ba05686e239e9b490d1a1cad3a19509f8f61201133c3070b7f320c9fd8e1ead0b136988b815e7cff2e9d42226fca227b4a39dbaa3973d2d364ab3439519879 SHA512 25af556f5e8c6b08ab7dc6910454836d19f2c0651556ffb6d4c0983b73f1f4a66b97d1b4e0f5dd597e29b6d367b7376daf41bc09fe094b8327feebf1eaab719f
-EBUILD compiler-rt-sanitizers-18.0.0_pre20231222.ebuild 6293 BLAKE2B 27ba05686e239e9b490d1a1cad3a19509f8f61201133c3070b7f320c9fd8e1ead0b136988b815e7cff2e9d42226fca227b4a39dbaa3973d2d364ab3439519879 SHA512 25af556f5e8c6b08ab7dc6910454836d19f2c0651556ffb6d4c0983b73f1f4a66b97d1b4e0f5dd597e29b6d367b7376daf41bc09fe094b8327feebf1eaab719f
-EBUILD compiler-rt-sanitizers-18.0.0_pre20231228.ebuild 6293 BLAKE2B 27ba05686e239e9b490d1a1cad3a19509f8f61201133c3070b7f320c9fd8e1ead0b136988b815e7cff2e9d42226fca227b4a39dbaa3973d2d364ab3439519879 SHA512 25af556f5e8c6b08ab7dc6910454836d19f2c0651556ffb6d4c0983b73f1f4a66b97d1b4e0f5dd597e29b6d367b7376daf41bc09fe094b8327feebf1eaab719f
EBUILD compiler-rt-sanitizers-18.0.0_pre20240106.ebuild 6293 BLAKE2B d6eaa6df85b17a59aac2b4a30ad312a6f6993addbdc513684fa528bda6ab8a143f33d8a54ea31a0f321193912af61d28df110ce5bf8a350ef135f9b95138539b SHA512 3cab0c357e94ebcd2eb53fdb98c43f8f6b534546b3cb49d7f594811e902b0a2c760bc312267a3c6bc492d4009b94da2cea99f5a8720b7707e3bfb0b8204bc733
MISC metadata.xml 1412 BLAKE2B 75675507000fa6a6b8182e6b45a08a2716ae7fb9a7e3428dc8420464e4c1d1bdb5bea62cc2f553c579de5a4faa752b35cb3529d980fb07a055ff4ddf6e752707 SHA512 f05ea5168b923db72f4f5b53e9b748ebbcdae9eff09d86323313055933b47fc0089e1b2d73cd997d73dcfb2dca032344955816425fbddc09d27ca751463aadbb
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231215.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231215.ebuild
deleted file mode 100644
index 9b46a98372e8..000000000000
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231215.ebuild
+++ /dev/null
@@ -1,217 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1
-
-DESCRIPTION="Compiler runtime libraries for clang (sanitizers & xray)"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="${LLVM_MAJOR}"
-IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
-# base targets
-IUSE+=" +libfuzzer +memprof +orc +profile +xray"
-# sanitizer targets, keep in sync with config-ix.cmake
-# NB: ubsan, scudo deliberately match two entries
-SANITIZER_FLAGS=(
- asan dfsan lsan msan hwasan tsan ubsan safestack cfi scudo
- shadowcallstack gwp-asan
-)
-IUSE+=" ${SANITIZER_FLAGS[@]/#/+}"
-REQUIRED_USE="
- || ( ${SANITIZER_FLAGS[*]} libfuzzer orc profile xray )
- test? (
- cfi? ( ubsan )
- gwp-asan? ( scudo )
- )
-"
-RESTRICT="
- !clang? ( test )
- !test? ( test )
-"
-
-DEPEND="
- sys-devel/llvm:${LLVM_MAJOR}
- virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?]
-"
-BDEPEND="
- >=dev-util/cmake-3.16
- clang? ( sys-devel/clang )
- elibc_glibc? ( net-libs/libtirpc )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =sys-devel/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- sys-libs/compiler-rt:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
-LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support third-party )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-check_space() {
- if use test; then
- local CHECKREQS_DISK_BUILD=11G
- check-reqs_pkg_pretend
- fi
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- sed -i -e 's:-Werror::' lib/tsan/go/buildgo.sh || die
-
- local flag
- for flag in "${SANITIZER_FLAGS[@]}"; do
- if ! use "${flag}"; then
- local cmake_flag=${flag/-/_}
- sed -i -e "/COMPILER_RT_HAS_${cmake_flag^^}/s:TRUE:FALSE:" \
- cmake/config-ix.cmake || die
- fi
- done
-
- # TODO: fix these tests to be skipped upstream
- if use asan && ! use profile; then
- rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die
- fi
- if use ubsan && ! use cfi; then
- > test/cfi/CMakeLists.txt || die
- fi
- # hangs, sigh
- rm test/tsan/getline_nohang.cpp || die
-
- llvm.org_src_prepare
-}
-
-src_configure() {
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- # pre-set since we need to pass it to cmake
- BUILD_DIR=${WORKDIR}/compiler-rt_build
-
- if use clang; then
- local -x CC=${CHOST}-clang
- local -x CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- local flag want_sanitizer=OFF
- for flag in "${SANITIZER_FLAGS[@]}"; do
- if use "${flag}"; then
- want_sanitizer=ON
- break
- fi
- done
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
- # use a build dir structure consistent with install
- # this makes it possible to easily deploy test-friendly clang
- -DCOMPILER_RT_OUTPUT_DIR="${BUILD_DIR}/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- # builtins & crt installed by sys-libs/compiler-rt
- -DCOMPILER_RT_BUILD_BUILTINS=OFF
- -DCOMPILER_RT_BUILD_CRT=OFF
- -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
- -DCOMPILER_RT_BUILD_MEMPROF=$(usex memprof)
- -DCOMPILER_RT_BUILD_ORC=$(usex orc)
- -DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
- -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}"
- -DCOMPILER_RT_BUILD_XRAY=$(usex xray)
-
- -DPython3_EXECUTABLE="${PYTHON}"
- )
-
- if use amd64; then
- mycmakeargs+=(
- -DCAN_TARGET_i386=$(usex abi_x86_32)
- -DCAN_TARGET_x86_64=$(usex abi_x86_64)
- )
- fi
-
- if use test; then
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags)"
-
- # they are created during src_test()
- -DCOMPILER_RT_TEST_COMPILER="${BUILD_DIR}/lib/llvm/${LLVM_MAJOR}/bin/clang"
- -DCOMPILER_RT_TEST_CXX_COMPILER="${BUILD_DIR}/lib/llvm/${LLVM_MAJOR}/bin/clang++"
- )
-
- # same flags are passed for build & tests, so we need to strip
- # them down to a subset supported by clang
- CC=${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang \
- CXX=${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++ \
- strip-unsupported-flags
- fi
-
- if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then
- mycmakeargs+=(
- # setting -isysroot is disabled with compiler-rt-prefix-paths.patch
- # this allows adding arm64 support using SDK in EPREFIX
- -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk"
- # Set version based on the SDK in EPREFIX
- # This disables i386 for SDK >= 10.15
- # Will error if has_use tsan and SDK < 10.12
- -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')"
- # Use our libtool instead of looking it up with xcrun
- -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool"
- )
- fi
-
- cmake_src_configure
-
- if use test; then
- local sys_dir=( "${EPREFIX}"/usr/lib/clang/${LLVM_MAJOR}/lib/* )
- [[ -e ${sys_dir} ]] || die "Unable to find ${sys_dir}"
- [[ ${#sys_dir[@]} -eq 1 ]] || die "Non-deterministic compiler-rt install: ${sys_dir[*]}"
-
- # copy clang over since resource_dir is located relatively to binary
- # therefore, we can put our new libraries in it
- mkdir -p "${BUILD_DIR}"/lib/{llvm/${LLVM_MAJOR}/{bin,$(get_libdir)},clang/${LLVM_MAJOR}/include} || die
- cp "${EPREFIX}"/usr/lib/llvm/${LLVM_MAJOR}/bin/clang{,++} \
- "${BUILD_DIR}"/lib/llvm/${LLVM_MAJOR}/bin/ || die
- cp "${EPREFIX}"/usr/lib/clang/${LLVM_MAJOR}/include/*.h \
- "${BUILD_DIR}"/lib/clang/${LLVM_MAJOR}/include/ || die
- cp "${sys_dir}"/*builtins*.a \
- "${BUILD_DIR}/lib/clang/${LLVM_MAJOR}/lib/${sys_dir##*/}/" || die
- # we also need LLVMgold.so for gold-based tests
- if [[ -f ${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/LLVMgold.so ]]; then
- ln -s "${EPREFIX}"/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/LLVMgold.so \
- "${BUILD_DIR}"/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/ || die
- fi
- fi
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
- # disable sandbox to have it stop clobbering LD_PRELOAD
- local -x SANDBOX_ON=0
- # wipe LD_PRELOAD to make ASAN happy
- local -x LD_PRELOAD=
-
- cmake_build check-all
-}
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231222.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231222.ebuild
deleted file mode 100644
index 9b46a98372e8..000000000000
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231222.ebuild
+++ /dev/null
@@ -1,217 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1
-
-DESCRIPTION="Compiler runtime libraries for clang (sanitizers & xray)"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="${LLVM_MAJOR}"
-IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
-# base targets
-IUSE+=" +libfuzzer +memprof +orc +profile +xray"
-# sanitizer targets, keep in sync with config-ix.cmake
-# NB: ubsan, scudo deliberately match two entries
-SANITIZER_FLAGS=(
- asan dfsan lsan msan hwasan tsan ubsan safestack cfi scudo
- shadowcallstack gwp-asan
-)
-IUSE+=" ${SANITIZER_FLAGS[@]/#/+}"
-REQUIRED_USE="
- || ( ${SANITIZER_FLAGS[*]} libfuzzer orc profile xray )
- test? (
- cfi? ( ubsan )
- gwp-asan? ( scudo )
- )
-"
-RESTRICT="
- !clang? ( test )
- !test? ( test )
-"
-
-DEPEND="
- sys-devel/llvm:${LLVM_MAJOR}
- virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?]
-"
-BDEPEND="
- >=dev-util/cmake-3.16
- clang? ( sys-devel/clang )
- elibc_glibc? ( net-libs/libtirpc )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =sys-devel/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- sys-libs/compiler-rt:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
-LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support third-party )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-check_space() {
- if use test; then
- local CHECKREQS_DISK_BUILD=11G
- check-reqs_pkg_pretend
- fi
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- sed -i -e 's:-Werror::' lib/tsan/go/buildgo.sh || die
-
- local flag
- for flag in "${SANITIZER_FLAGS[@]}"; do
- if ! use "${flag}"; then
- local cmake_flag=${flag/-/_}
- sed -i -e "/COMPILER_RT_HAS_${cmake_flag^^}/s:TRUE:FALSE:" \
- cmake/config-ix.cmake || die
- fi
- done
-
- # TODO: fix these tests to be skipped upstream
- if use asan && ! use profile; then
- rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die
- fi
- if use ubsan && ! use cfi; then
- > test/cfi/CMakeLists.txt || die
- fi
- # hangs, sigh
- rm test/tsan/getline_nohang.cpp || die
-
- llvm.org_src_prepare
-}
-
-src_configure() {
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- # pre-set since we need to pass it to cmake
- BUILD_DIR=${WORKDIR}/compiler-rt_build
-
- if use clang; then
- local -x CC=${CHOST}-clang
- local -x CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- local flag want_sanitizer=OFF
- for flag in "${SANITIZER_FLAGS[@]}"; do
- if use "${flag}"; then
- want_sanitizer=ON
- break
- fi
- done
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
- # use a build dir structure consistent with install
- # this makes it possible to easily deploy test-friendly clang
- -DCOMPILER_RT_OUTPUT_DIR="${BUILD_DIR}/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- # builtins & crt installed by sys-libs/compiler-rt
- -DCOMPILER_RT_BUILD_BUILTINS=OFF
- -DCOMPILER_RT_BUILD_CRT=OFF
- -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
- -DCOMPILER_RT_BUILD_MEMPROF=$(usex memprof)
- -DCOMPILER_RT_BUILD_ORC=$(usex orc)
- -DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
- -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}"
- -DCOMPILER_RT_BUILD_XRAY=$(usex xray)
-
- -DPython3_EXECUTABLE="${PYTHON}"
- )
-
- if use amd64; then
- mycmakeargs+=(
- -DCAN_TARGET_i386=$(usex abi_x86_32)
- -DCAN_TARGET_x86_64=$(usex abi_x86_64)
- )
- fi
-
- if use test; then
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags)"
-
- # they are created during src_test()
- -DCOMPILER_RT_TEST_COMPILER="${BUILD_DIR}/lib/llvm/${LLVM_MAJOR}/bin/clang"
- -DCOMPILER_RT_TEST_CXX_COMPILER="${BUILD_DIR}/lib/llvm/${LLVM_MAJOR}/bin/clang++"
- )
-
- # same flags are passed for build & tests, so we need to strip
- # them down to a subset supported by clang
- CC=${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang \
- CXX=${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++ \
- strip-unsupported-flags
- fi
-
- if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then
- mycmakeargs+=(
- # setting -isysroot is disabled with compiler-rt-prefix-paths.patch
- # this allows adding arm64 support using SDK in EPREFIX
- -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk"
- # Set version based on the SDK in EPREFIX
- # This disables i386 for SDK >= 10.15
- # Will error if has_use tsan and SDK < 10.12
- -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')"
- # Use our libtool instead of looking it up with xcrun
- -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool"
- )
- fi
-
- cmake_src_configure
-
- if use test; then
- local sys_dir=( "${EPREFIX}"/usr/lib/clang/${LLVM_MAJOR}/lib/* )
- [[ -e ${sys_dir} ]] || die "Unable to find ${sys_dir}"
- [[ ${#sys_dir[@]} -eq 1 ]] || die "Non-deterministic compiler-rt install: ${sys_dir[*]}"
-
- # copy clang over since resource_dir is located relatively to binary
- # therefore, we can put our new libraries in it
- mkdir -p "${BUILD_DIR}"/lib/{llvm/${LLVM_MAJOR}/{bin,$(get_libdir)},clang/${LLVM_MAJOR}/include} || die
- cp "${EPREFIX}"/usr/lib/llvm/${LLVM_MAJOR}/bin/clang{,++} \
- "${BUILD_DIR}"/lib/llvm/${LLVM_MAJOR}/bin/ || die
- cp "${EPREFIX}"/usr/lib/clang/${LLVM_MAJOR}/include/*.h \
- "${BUILD_DIR}"/lib/clang/${LLVM_MAJOR}/include/ || die
- cp "${sys_dir}"/*builtins*.a \
- "${BUILD_DIR}/lib/clang/${LLVM_MAJOR}/lib/${sys_dir##*/}/" || die
- # we also need LLVMgold.so for gold-based tests
- if [[ -f ${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/LLVMgold.so ]]; then
- ln -s "${EPREFIX}"/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/LLVMgold.so \
- "${BUILD_DIR}"/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/ || die
- fi
- fi
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
- # disable sandbox to have it stop clobbering LD_PRELOAD
- local -x SANDBOX_ON=0
- # wipe LD_PRELOAD to make ASAN happy
- local -x LD_PRELOAD=
-
- cmake_build check-all
-}
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231228.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231228.ebuild
deleted file mode 100644
index 9b46a98372e8..000000000000
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.0.0_pre20231228.ebuild
+++ /dev/null
@@ -1,217 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1
-
-DESCRIPTION="Compiler runtime libraries for clang (sanitizers & xray)"
-HOMEPAGE="https://llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="${LLVM_MAJOR}"
-IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
-# base targets
-IUSE+=" +libfuzzer +memprof +orc +profile +xray"
-# sanitizer targets, keep in sync with config-ix.cmake
-# NB: ubsan, scudo deliberately match two entries
-SANITIZER_FLAGS=(
- asan dfsan lsan msan hwasan tsan ubsan safestack cfi scudo
- shadowcallstack gwp-asan
-)
-IUSE+=" ${SANITIZER_FLAGS[@]/#/+}"
-REQUIRED_USE="
- || ( ${SANITIZER_FLAGS[*]} libfuzzer orc profile xray )
- test? (
- cfi? ( ubsan )
- gwp-asan? ( scudo )
- )
-"
-RESTRICT="
- !clang? ( test )
- !test? ( test )
-"
-
-DEPEND="
- sys-devel/llvm:${LLVM_MAJOR}
- virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?]
-"
-BDEPEND="
- >=dev-util/cmake-3.16
- clang? ( sys-devel/clang )
- elibc_glibc? ( net-libs/libtirpc )
- test? (
- $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
- =sys-devel/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
- sys-libs/compiler-rt:${LLVM_MAJOR}
- )
- !test? (
- ${PYTHON_DEPS}
- )
-"
-
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
-LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support third-party )
-llvm.org_set_globals
-
-python_check_deps() {
- use test || return 0
- python_has_version ">=dev-python/lit-15[${PYTHON_USEDEP}]"
-}
-
-check_space() {
- if use test; then
- local CHECKREQS_DISK_BUILD=11G
- check-reqs_pkg_pretend
- fi
-}
-
-pkg_pretend() {
- check_space
-}
-
-pkg_setup() {
- check_space
- LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- sed -i -e 's:-Werror::' lib/tsan/go/buildgo.sh || die
-
- local flag
- for flag in "${SANITIZER_FLAGS[@]}"; do
- if ! use "${flag}"; then
- local cmake_flag=${flag/-/_}
- sed -i -e "/COMPILER_RT_HAS_${cmake_flag^^}/s:TRUE:FALSE:" \
- cmake/config-ix.cmake || die
- fi
- done
-
- # TODO: fix these tests to be skipped upstream
- if use asan && ! use profile; then
- rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die
- fi
- if use ubsan && ! use cfi; then
- > test/cfi/CMakeLists.txt || die
- fi
- # hangs, sigh
- rm test/tsan/getline_nohang.cpp || die
-
- llvm.org_src_prepare
-}
-
-src_configure() {
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- # pre-set since we need to pass it to cmake
- BUILD_DIR=${WORKDIR}/compiler-rt_build
-
- if use clang; then
- local -x CC=${CHOST}-clang
- local -x CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- local flag want_sanitizer=OFF
- for flag in "${SANITIZER_FLAGS[@]}"; do
- if use "${flag}"; then
- want_sanitizer=ON
- break
- fi
- done
-
- local mycmakeargs=(
- -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
- # use a build dir structure consistent with install
- # this makes it possible to easily deploy test-friendly clang
- -DCOMPILER_RT_OUTPUT_DIR="${BUILD_DIR}/lib/clang/${LLVM_MAJOR}"
-
- -DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
- # builtins & crt installed by sys-libs/compiler-rt
- -DCOMPILER_RT_BUILD_BUILTINS=OFF
- -DCOMPILER_RT_BUILD_CRT=OFF
- -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
- -DCOMPILER_RT_BUILD_MEMPROF=$(usex memprof)
- -DCOMPILER_RT_BUILD_ORC=$(usex orc)
- -DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
- -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}"
- -DCOMPILER_RT_BUILD_XRAY=$(usex xray)
-
- -DPython3_EXECUTABLE="${PYTHON}"
- )
-
- if use amd64; then
- mycmakeargs+=(
- -DCAN_TARGET_i386=$(usex abi_x86_32)
- -DCAN_TARGET_x86_64=$(usex abi_x86_64)
- )
- fi
-
- if use test; then
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags)"
-
- # they are created during src_test()
- -DCOMPILER_RT_TEST_COMPILER="${BUILD_DIR}/lib/llvm/${LLVM_MAJOR}/bin/clang"
- -DCOMPILER_RT_TEST_CXX_COMPILER="${BUILD_DIR}/lib/llvm/${LLVM_MAJOR}/bin/clang++"
- )
-
- # same flags are passed for build & tests, so we need to strip
- # them down to a subset supported by clang
- CC=${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang \
- CXX=${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/bin/clang++ \
- strip-unsupported-flags
- fi
-
- if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then
- mycmakeargs+=(
- # setting -isysroot is disabled with compiler-rt-prefix-paths.patch
- # this allows adding arm64 support using SDK in EPREFIX
- -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk"
- # Set version based on the SDK in EPREFIX
- # This disables i386 for SDK >= 10.15
- # Will error if has_use tsan and SDK < 10.12
- -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')"
- # Use our libtool instead of looking it up with xcrun
- -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool"
- )
- fi
-
- cmake_src_configure
-
- if use test; then
- local sys_dir=( "${EPREFIX}"/usr/lib/clang/${LLVM_MAJOR}/lib/* )
- [[ -e ${sys_dir} ]] || die "Unable to find ${sys_dir}"
- [[ ${#sys_dir[@]} -eq 1 ]] || die "Non-deterministic compiler-rt install: ${sys_dir[*]}"
-
- # copy clang over since resource_dir is located relatively to binary
- # therefore, we can put our new libraries in it
- mkdir -p "${BUILD_DIR}"/lib/{llvm/${LLVM_MAJOR}/{bin,$(get_libdir)},clang/${LLVM_MAJOR}/include} || die
- cp "${EPREFIX}"/usr/lib/llvm/${LLVM_MAJOR}/bin/clang{,++} \
- "${BUILD_DIR}"/lib/llvm/${LLVM_MAJOR}/bin/ || die
- cp "${EPREFIX}"/usr/lib/clang/${LLVM_MAJOR}/include/*.h \
- "${BUILD_DIR}"/lib/clang/${LLVM_MAJOR}/include/ || die
- cp "${sys_dir}"/*builtins*.a \
- "${BUILD_DIR}/lib/clang/${LLVM_MAJOR}/lib/${sys_dir##*/}/" || die
- # we also need LLVMgold.so for gold-based tests
- if [[ -f ${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/LLVMgold.so ]]; then
- ln -s "${EPREFIX}"/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/LLVMgold.so \
- "${BUILD_DIR}"/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/ || die
- fi
- fi
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
- # disable sandbox to have it stop clobbering LD_PRELOAD
- local -x SANDBOX_ON=0
- # wipe LD_PRELOAD to make ASAN happy
- local -x LD_PRELOAD=
-
- cmake_build check-all
-}