summaryrefslogtreecommitdiff
path: root/sys-libs/compiler-rt
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-08-06 02:09:04 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-08-06 02:09:04 +0100
commit51f0d16e058c162dbce0f93d871ba45683b0ab3a (patch)
tree8dd3bc53a0d23549a8f210ce4bfdf74b36b9319f /sys-libs/compiler-rt
parent35bf81c760d4e362615c32e69329ef61a01281f7 (diff)
gentoo auto-resync : 06:08:2022 - 02:09:04
Diffstat (limited to 'sys-libs/compiler-rt')
-rw-r--r--sys-libs/compiler-rt/Manifest1
-rw-r--r--sys-libs/compiler-rt/compiler-rt-16.0.0.9999.ebuild138
2 files changed, 139 insertions, 0 deletions
diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest
index cbc5c6b86ab9..39849eba65c7 100644
--- a/sys-libs/compiler-rt/Manifest
+++ b/sys-libs/compiler-rt/Manifest
@@ -8,4 +8,5 @@ EBUILD compiler-rt-13.0.1.ebuild 3868 BLAKE2B b2b643b850023513b69076bc791b22b74a
EBUILD compiler-rt-14.0.6-r1.ebuild 4179 BLAKE2B 1fe649044872b312da697df9a88217c323ced9dff0283932f6a0210b3e97a86cce59a37a1e678f45ff16c93f5647d6150ffb963303a3390a6eeb372fcd587a3d SHA512 2182681a27d944378e39cc5283d46c4a94da3b8b3a9fc18d5c38c6f00e92a1b1dc7cc945bd3dc71b6471b24a1ce769d6f17f84a5452e0f4b2bf1c7c670cbaa1c
EBUILD compiler-rt-14.0.6.ebuild 4019 BLAKE2B f97793688c6e2dd3f2874217813ee9759bb896e192e146a2bc17e97daa0d9f8d8708938c68ab1270ef9dc49eb52bb7c29b4edd94382993e8de0a73f006238d23 SHA512 73a150cb917587e1e9a0adc499ae6cb1d473e455400b1b19777b30dea72846f01114bc52018dda7ff7090ea43b365793ad5a3515e4601dbd9ba4226c62322c77
EBUILD compiler-rt-15.0.0.9999.ebuild 3725 BLAKE2B e599809889557255e7f9f5017ef685d85e3894477db00681f35ef285af9f97043160b08dc99f4f972519109366ebfd1fed34bfe8b452d3ca96a12d57aaf5e948 SHA512 881f8d4a464e19425a265cdb18d99ce85357d4aa206f3e9cfdf26536a05537146e1232199ae35da7f9f95382a175ca89fe48a59351ca3706a82f537159284d29
+EBUILD compiler-rt-16.0.0.9999.ebuild 3725 BLAKE2B e599809889557255e7f9f5017ef685d85e3894477db00681f35ef285af9f97043160b08dc99f4f972519109366ebfd1fed34bfe8b452d3ca96a12d57aaf5e948 SHA512 881f8d4a464e19425a265cdb18d99ce85357d4aa206f3e9cfdf26536a05537146e1232199ae35da7f9f95382a175ca89fe48a59351ca3706a82f537159284d29
MISC metadata.xml 416 BLAKE2B 79a58249c94b605ba57f346c4e05b43853cf6cfb8bb65a4f4e3c44039cccfdb83dd31bfaaaf398bcbdc393efabdfc7ed186fe775976c46227e74decf2c8f4fb2 SHA512 ce30c79a575e5933effb1fec36f9a4ef02d9f97f312feb39c55a88cbda9a1bae1d7af2ec4ad5f66212cbb2cdbfb26f1a436689f16f410153c9d65eb010264c48
diff --git a/sys-libs/compiler-rt/compiler-rt-16.0.0.9999.ebuild b/sys-libs/compiler-rt/compiler-rt-16.0.0.9999.ebuild
new file mode 100644
index 000000000000..8ef4aebf481d
--- /dev/null
+++ b/sys-libs/compiler-rt/compiler-rt-16.0.0.9999.ebuild
@@ -0,0 +1,138 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..11} )
+inherit cmake flag-o-matic llvm llvm.org python-any-r1 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="$(ver_cut 1-3)"
+KEYWORDS=""
+IUSE="+abi_x86_32 abi_x86_64 +clang debug test"
+RESTRICT="!test? ( test ) !clang? ( test )"
+
+CLANG_SLOT=${SLOT%%.*}
+# llvm-6 for new lit options
+DEPEND="
+ >=sys-devel/llvm-6
+"
+BDEPEND="
+ >=dev-util/cmake-3.16
+ clang? ( sys-devel/clang )
+ test? (
+ $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
+ =sys-devel/clang-${PV%_*}*:${CLANG_SLOT}
+ )
+ !test? (
+ ${PYTHON_DEPS}
+ )
+"
+
+LLVM_COMPONENTS=( runtimes compiler-rt cmake llvm/cmake )
+LLVM_PATCHSET=9999-1
+llvm.org_set_globals
+
+python_check_deps() {
+ use test || return 0
+ has_version "dev-python/lit[${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() {
+ # Darwin Prefix builds do not have llvm installed yet, so rely on
+ # bootstrap-prefix to set the appropriate path vars to LLVM instead
+ # of using llvm_pkg_setup.
+ if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then
+ llvm_pkg_setup
+ fi
+ python-any-r1_pkg_setup
+}
+
+test_compiler() {
+ $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \
+ <<<'int main() { return 0; }' &>/dev/null
+}
+
+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}/${P}_build
+
+ if use clang; 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
+
+ local mycmakeargs=(
+ -DLLVM_ENABLE_RUNTIMES=compiler-rt
+ # this only adds unnecessary req on llvm-lit directory
+ -DLLVM_INCLUDE_TESTS=OFF
+
+ -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${SLOT}"
+ -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; then
+ mycmakeargs+=(
+ -DCAN_TARGET_i386=$(usex abi_x86_32)
+ -DCAN_TARGET_x86_64=$(usex abi_x86_64)
+ )
+ 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/${CLANG_SLOT}/bin/clang"
+ -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang++"
+ )
+ fi
+
+ cmake_src_configure
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+
+ cmake_build check-builtins
+}