diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2021-06-17 17:57:35 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2021-06-17 17:57:35 +0100 |
commit | 7932d472a02d4c016ff7dff4b7a5479ab9d1883d (patch) | |
tree | d07709230f82777cae6ba7dab35aee31896060fb /sys-libs | |
parent | d18bf1e01b65ee4bf0c804e2843b282d3d4e5d7c (diff) |
gentoo resync : 17.06.2021
Diffstat (limited to 'sys-libs')
-rw-r--r-- | sys-libs/Manifest.gz | bin | 14044 -> 14060 bytes | |||
-rw-r--r-- | sys-libs/compiler-rt-sanitizers/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.1_rc2.ebuild | 200 | ||||
-rw-r--r-- | sys-libs/compiler-rt/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/compiler-rt/compiler-rt-12.0.1_rc2.ebuild | 124 | ||||
-rw-r--r-- | sys-libs/glibc/Manifest | 4 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.33-r1.ebuild | 5 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-9999.ebuild | 5 | ||||
-rw-r--r-- | sys-libs/libcxx/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/libcxx/libcxx-12.0.1_rc2.ebuild | 211 | ||||
-rw-r--r-- | sys-libs/libcxxabi/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/libcxxabi/libcxxabi-12.0.1_rc2.ebuild | 122 | ||||
-rw-r--r-- | sys-libs/libomp/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/libomp/libomp-12.0.1_rc2.ebuild | 106 | ||||
-rw-r--r-- | sys-libs/libsmbios/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/libsmbios/metadata.xml | 4 | ||||
-rw-r--r-- | sys-libs/libxcrypt/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/libxcrypt/metadata.xml | 32 | ||||
-rw-r--r-- | sys-libs/llvm-libunwind/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/llvm-libunwind/llvm-libunwind-12.0.1_rc2.ebuild | 124 |
20 files changed, 933 insertions, 20 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz Binary files differindex 9d74ad5749ec..ca15b46f0f48 100644 --- a/sys-libs/Manifest.gz +++ b/sys-libs/Manifest.gz diff --git a/sys-libs/compiler-rt-sanitizers/Manifest b/sys-libs/compiler-rt-sanitizers/Manifest index 7c6ede9a0d6f..7e8b4ddf931f 100644 --- a/sys-libs/compiler-rt-sanitizers/Manifest +++ b/sys-libs/compiler-rt-sanitizers/Manifest @@ -6,10 +6,12 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3 DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1-rc1.tar.gz 134261735 BLAKE2B d29510495641c06e6d7a5ac165e6d34e0ba15d1a5b786534e186e341e3a0550cdd3d8a2b61deb3e2bf44c0b0ff8561224bf7f8cebc2ce9415639cb67ceae289e SHA512 4595a26df56eed7d5941240fe92116ad2f1c61639f0f464697c2c530a601347032fbad6802d1fa915ced8574c7b30ef05bc8c0be737784c844d3860892817e6e +DIST llvmorg-12.0.1-rc2.tar.gz 134274147 BLAKE2B 2d3f6ce8d5239cf2e5ea52f4b9020d6a8fedb8d6a4df02ca0d8e4398237f4eb967865e1e65570d16cd191865281b9619a63905c1e1c47b31183b881e97e49867 SHA512 cdebb954016dc92251cd9c6281804f7a36e7bc8c6f101a6817d96cc121aba4d361fb99501c259409a29c90d7749b224be670c41177fe43fa64b730ff294831b8 EBUILD compiler-rt-sanitizers-10.0.1-r1.ebuild 4513 BLAKE2B be188f8bef66099999a98b033ff18f132a1697beb8606f44a7bcaacabff7123439b09e4a34e03be51eebba4b4059461b5953888a99753fa7c58dab7ae3f89337 SHA512 97bb314099bdc4b4f237eca31da1d0ac5bf548c05a2691fa0c6c5308979fd654649ccf8e121cb1529b6261bd1045d55ca6e0bd851d3b8896d46f13f8becee821 EBUILD compiler-rt-sanitizers-11.1.0-r1.ebuild 6036 BLAKE2B 0b573d9345f36f750283574bd5f2efe8d60ced8448a700b3571a2303a26a79fa1240c6347d28ba810f7619afc58afcd3e369b2a7769b3a2ebc303919701eddbe SHA512 960d2f6ee96dcefbe3cb9b6637676cc1f16cbb2904bb6913b6d1807afae61229d7774bebe0d3e50fff62bf7fcf5c289ad8b7a5c614ae2589b9b3c891103606ef EBUILD compiler-rt-sanitizers-12.0.0.ebuild 6085 BLAKE2B 4571a815cf55d95ad179e22ae351163e4df99634db9b89217b1ba17281b4945521bb99f03934fc97385d2854902dcd606939c4219a633935f78673c2475cbe9c SHA512 650437aa5152276a2cedfe8dbb2e1a43405f134702670f94f0434f54ccd837a5ec062417c7536581e9778a12012724872f4eaa9fbae5d2e51645d8016d39d262 EBUILD compiler-rt-sanitizers-12.0.1.9999.ebuild 5885 BLAKE2B 7369edb9da3e3915eb72e684efa29e7a9b895211f400c8e2957495eff732afcf33d3b9a2d2a86fcfd973958eb7a9e5c49269b1221a7c30c5736d2dd284738445 SHA512 85df50370833bff9c73ebb6d11307349f6a437fd673aef608aa525fdf766f71debccc5ff0959253fc9f662050e727859625ce75cbee2e5084deaa07fcfe67d8a EBUILD compiler-rt-sanitizers-12.0.1_rc1.ebuild 5885 BLAKE2B 7369edb9da3e3915eb72e684efa29e7a9b895211f400c8e2957495eff732afcf33d3b9a2d2a86fcfd973958eb7a9e5c49269b1221a7c30c5736d2dd284738445 SHA512 85df50370833bff9c73ebb6d11307349f6a437fd673aef608aa525fdf766f71debccc5ff0959253fc9f662050e727859625ce75cbee2e5084deaa07fcfe67d8a +EBUILD compiler-rt-sanitizers-12.0.1_rc2.ebuild 5885 BLAKE2B 7369edb9da3e3915eb72e684efa29e7a9b895211f400c8e2957495eff732afcf33d3b9a2d2a86fcfd973958eb7a9e5c49269b1221a7c30c5736d2dd284738445 SHA512 85df50370833bff9c73ebb6d11307349f6a437fd673aef608aa525fdf766f71debccc5ff0959253fc9f662050e727859625ce75cbee2e5084deaa07fcfe67d8a EBUILD compiler-rt-sanitizers-13.0.0.9999.ebuild 5885 BLAKE2B 7369edb9da3e3915eb72e684efa29e7a9b895211f400c8e2957495eff732afcf33d3b9a2d2a86fcfd973958eb7a9e5c49269b1221a7c30c5736d2dd284738445 SHA512 85df50370833bff9c73ebb6d11307349f6a437fd673aef608aa525fdf766f71debccc5ff0959253fc9f662050e727859625ce75cbee2e5084deaa07fcfe67d8a MISC metadata.xml 1341 BLAKE2B 27ba2b57b7ba21538680b5535aec8b0e8e772a040b25ac8c9285765ed00a485a01ce6dd47c32686c7d162d072f4d6d7d2e1a790e9bd867b61a460b01ad79bade SHA512 909a922e1b0e9649534d88bb7692b1d1d7a9d3d539a4926054dac834d672da065cfea5b2aab02dd23f2a7b0dde0eb0b10ae453990c3ecf99ec20f6a2d2bdbac6 diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.1_rc2.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.1_rc2.ebuild new file mode 100644 index 000000000000..e96a02172283 --- /dev/null +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.1_rc2.ebuild @@ -0,0 +1,200 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..9} ) +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="$(ver_cut 1-3)" +KEYWORDS="" +IUSE="+clang test elibc_glibc" +# base targets +IUSE+=" +libfuzzer +memprof +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 profile xray ) + test? ( + cfi? ( ubsan ) + gwp-asan? ( scudo ) + )" +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 ) + elibc_glibc? ( net-libs/libtirpc ) + test? ( + !<sys-apps/sandbox-2.13 + $(python_gen_any_dep ">=dev-python/lit-5[\${PYTHON_USEDEP}]") + =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} + sys-libs/compiler-rt:${SLOT} + ) + ${PYTHON_DEPS}" + +LLVM_COMPONENTS=( compiler-rt ) +LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest ) +LLVM_PATCHSET=9999-1 +llvm.org_set_globals + +python_check_deps() { + use test || return 0 + has_version "dev-python/lit[${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_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 + + llvm.org_src_prepare +} + +src_configure() { + # 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/${SLOT}" + # 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/${SLOT}" + + -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_PROFILE=$(usex profile) + -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}" + -DCOMPILER_RT_BUILD_XRAY=$(usex xray) + + -DPython3_EXECUTABLE="${PYTHON}" + ) + if use test; then + mycmakeargs+=( + -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" + -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/${CLANG_SLOT}/bin/clang" + -DCOMPILER_RT_TEST_CXX_COMPILER="${BUILD_DIR}/lib/llvm/${CLANG_SLOT}/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/${CLANG_SLOT}/bin/clang \ + CXX=${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/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/${SLOT}/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/${CLANG_SLOT}/{bin,$(get_libdir)},clang/${SLOT}/include} || die + cp "${EPREFIX}"/usr/lib/llvm/${CLANG_SLOT}/bin/clang{,++} \ + "${BUILD_DIR}"/lib/llvm/${CLANG_SLOT}/bin/ || die + cp "${EPREFIX}"/usr/lib/clang/${SLOT}/include/*.h \ + "${BUILD_DIR}"/lib/clang/${SLOT}/include/ || die + cp "${sys_dir}"/*builtins*.a \ + "${BUILD_DIR}/lib/clang/${SLOT}/lib/${sys_dir##*/}/" || die + # we also need LLVMgold.so for gold-based tests + if [[ -f ${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/$(get_libdir)/LLVMgold.so ]]; then + ln -s "${EPREFIX}"/usr/lib/llvm/${CLANG_SLOT}/$(get_libdir)/LLVMgold.so \ + "${BUILD_DIR}"/lib/llvm/${CLANG_SLOT}/$(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/Manifest b/sys-libs/compiler-rt/Manifest index a88cfbf61460..d27adb555fe3 100644 --- a/sys-libs/compiler-rt/Manifest +++ b/sys-libs/compiler-rt/Manifest @@ -6,10 +6,12 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3 DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1-rc1.tar.gz 134261735 BLAKE2B d29510495641c06e6d7a5ac165e6d34e0ba15d1a5b786534e186e341e3a0550cdd3d8a2b61deb3e2bf44c0b0ff8561224bf7f8cebc2ce9415639cb67ceae289e SHA512 4595a26df56eed7d5941240fe92116ad2f1c61639f0f464697c2c530a601347032fbad6802d1fa915ced8574c7b30ef05bc8c0be737784c844d3860892817e6e +DIST llvmorg-12.0.1-rc2.tar.gz 134274147 BLAKE2B 2d3f6ce8d5239cf2e5ea52f4b9020d6a8fedb8d6a4df02ca0d8e4398237f4eb967865e1e65570d16cd191865281b9619a63905c1e1c47b31183b881e97e49867 SHA512 cdebb954016dc92251cd9c6281804f7a36e7bc8c6f101a6817d96cc121aba4d361fb99501c259409a29c90d7749b224be670c41177fe43fa64b730ff294831b8 EBUILD compiler-rt-10.0.1.ebuild 2782 BLAKE2B cdc7937f616e86c3394d1cc68eeea05f3eebdcac051ca48e477d3a2cb765be1d616159f72a2b77ac21a0c2a4ebf1cc79f9d9cd23a2a1c7b26a4a252142c3af21 SHA512 4380bb10112f745e0034d36be105a1b4df159f34adafdd2b24157dc3652881ab8792e7758555ce167f59e2c3360b5d36b5d4f8d456df44fa5ee754f3c310677a EBUILD compiler-rt-11.1.0.ebuild 3506 BLAKE2B fea54ca4aabe9bf35afc64a579ae18eb4491eeecb58ede43369ba9c294f624851214525f399cfa3adadee70ca66cbe64821376272b9965304266bcfc07b9f220 SHA512 f50906ee9f3b044a251ddd56db6ce10d3d2b632ffa7d3fd608cc5d7320e8d4b47b1ada26965b5fc9bb746e77c1b01ec61b5f719bc6bb2805720df035fca993da EBUILD compiler-rt-12.0.0.ebuild 3545 BLAKE2B 98aa5cd6f5ad6f5570d432811731dc96ed330f7d923628edbf5fd58a24f28f2c70c5e7ef912f5c367c0de6a38e4b06cca4bfc8f412f377d507e64df611757ffd SHA512 e4345c91a92b697641eeb621102a35d287c8c690eba039a160f98ef12f93f33bcf1d35f5f3c6341eb07be62678a601567152cc908786fb3d4f70995fe94ace58 EBUILD compiler-rt-12.0.1.9999.ebuild 3471 BLAKE2B d45d3843d7a644b4b9739c3b0db74b102235b2c418ceb7cf13410bef9fec17cebbdad0fec1563cb3b5122db96ccca520e13acd7967027b466a315f23147ed57a SHA512 bb3e2c1c852e5182f73b9a22a13fe5013adabaf34526be7e775412caaae078b6b81d9a66db38b3f0ccf61bed72b52f94ddca793f257d91de1a31e400a45fa23d EBUILD compiler-rt-12.0.1_rc1.ebuild 3471 BLAKE2B d45d3843d7a644b4b9739c3b0db74b102235b2c418ceb7cf13410bef9fec17cebbdad0fec1563cb3b5122db96ccca520e13acd7967027b466a315f23147ed57a SHA512 bb3e2c1c852e5182f73b9a22a13fe5013adabaf34526be7e775412caaae078b6b81d9a66db38b3f0ccf61bed72b52f94ddca793f257d91de1a31e400a45fa23d +EBUILD compiler-rt-12.0.1_rc2.ebuild 3471 BLAKE2B d45d3843d7a644b4b9739c3b0db74b102235b2c418ceb7cf13410bef9fec17cebbdad0fec1563cb3b5122db96ccca520e13acd7967027b466a315f23147ed57a SHA512 bb3e2c1c852e5182f73b9a22a13fe5013adabaf34526be7e775412caaae078b6b81d9a66db38b3f0ccf61bed72b52f94ddca793f257d91de1a31e400a45fa23d EBUILD compiler-rt-13.0.0.9999.ebuild 3471 BLAKE2B d45d3843d7a644b4b9739c3b0db74b102235b2c418ceb7cf13410bef9fec17cebbdad0fec1563cb3b5122db96ccca520e13acd7967027b466a315f23147ed57a SHA512 bb3e2c1c852e5182f73b9a22a13fe5013adabaf34526be7e775412caaae078b6b81d9a66db38b3f0ccf61bed72b52f94ddca793f257d91de1a31e400a45fa23d MISC metadata.xml 333 BLAKE2B fc411d2ccf9b848ed7ba71d6a1eb01c54237a38e3c612c22d39549f6b23ebc3179dd08c855852a72b9a4f4ae89418a078048702324df27b4fac11c36e80f846b SHA512 ca50c4e5ef7d52c167bca6a4ab2961a1f7f82d0e84722ec65b8ae44d0ff8a4a7db1dce630f6f18f7b526f77c432af7ebc9a29564659631bad1e3900b6f1df49b diff --git a/sys-libs/compiler-rt/compiler-rt-12.0.1_rc2.ebuild b/sys-libs/compiler-rt/compiler-rt-12.0.1_rc2.ebuild new file mode 100644 index 000000000000..caf0b9268efd --- /dev/null +++ b/sys-libs/compiler-rt/compiler-rt-12.0.1_rc2.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..9} ) +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="+clang 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-9.0.1[\${PYTHON_USEDEP}]") + =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} + ) + ${PYTHON_DEPS}" + +LLVM_COMPONENTS=( compiler-rt ) +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() { + # pre-set since we need to pass it to cmake + BUILD_DIR=${WORKDIR}/${P}_build + + local nolib_flags=( -nodefaultlibs -lc ) + if use clang; then + local -x CC=${CHOST}-clang + local -x CXX=${CHOST}-clang++ + strip-unsupported-flags + # ensure we can use clang before installing compiler-rt + local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" + elif ! test_compiler; then + if test_compiler "${nolib_flags[@]}"; then + 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/${SLOT}" + + -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) + -DCOMPILER_RT_BUILD_LIBFUZZER=OFF + -DCOMPILER_RT_BUILD_MEMPROF=OFF + -DCOMPILER_RT_BUILD_PROFILE=OFF + -DCOMPILER_RT_BUILD_SANITIZERS=OFF + -DCOMPILER_RT_BUILD_XRAY=OFF + + -DPython3_EXECUTABLE="${PYTHON}" + ) + + 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 +} diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index b25dac6e3499..ec48e97a7a13 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -32,7 +32,7 @@ EBUILD glibc-2.25-r11.ebuild 6071 BLAKE2B aed6cdc8141eb47e7f734ca59e98314d0c5340 EBUILD glibc-2.30-r9.ebuild 43403 BLAKE2B 039f1e866d0ecbe7e6805265694800ed4873a5643b5ccbaedd18c24ab42bdb2797bd4a597d3cb5321a527eb4feda555b31a143ce80f984774f2ae5498b57c45f SHA512 b9843ca092e6814b23ac1b9741bec02bd9d54a6d48df3caf451e65eae8db2068137a425c9d03d86daccdf67c856f8bf1c8200b8c95461fcbc7aa790599fdccd6 EBUILD glibc-2.31-r7.ebuild 44522 BLAKE2B 1adfba68c35d3af5ec8476b2fe5d3bebf13880eeacb5aaa8438b41b98f5b275f0816a0e654446f62ee2f34f412c5c6e72befcc0deb8988b6faec2c53a07601a9 SHA512 5247b1d75efa86b1a1c85a09219f54d402aae8aaecf0e377ca663a984daf7c69ea97b3072fe83a20002ec7d72661ec7737fbc72982122b58c26cb5bc89997548 EBUILD glibc-2.32-r8.ebuild 44853 BLAKE2B 724f95c0ed2cda18dc2edcaa03b0783a2bc603b72a67e1451535040ddc83be6d1a90ad4b30f9623140b5c0a329ecafb6f19793390137e629d43a3c26e202b28a SHA512 0973b86c266e40203e301cf0c6f8fddc4273c002ffb8fd6c16f6e78f2cfdfbea95fda04adfebb8ee84a14dc950763ba706eadadb2e83f7982b800bee636d5d8f -EBUILD glibc-2.33-r1.ebuild 45023 BLAKE2B 9e900bf100a7242efa2023ac31191bb3983600c93e933c1a41dff16cb0ebf0c7fb2bfd3e98e08cda854c475f1bc79c008f0f6fdc1835eb27332c29b60d8562a6 SHA512 cbfe1246fffa6f0789a09a5dd8bb1415d587b106aaf375280b65033ee3fe0bb8cf708d0ec56fee4c61a090288d9487f34bafcb7900457c484e1c990fc55db49f +EBUILD glibc-2.33-r1.ebuild 45214 BLAKE2B ea9dab58bfaf378357bb9a3dd7759926b0cf1489c9782263d2abc850f8bc71d755c400919ddc29801eea40d13ed96cf83404f0009cf7680e4c8733b829995dbf SHA512 d5846e7f146776ae4d687807593b6740fc34d01be29323d33584b6038d69fa3898830e421e3c3574df12d7abf9603758f6087eecf2b6aee64b56f164802b6fae EBUILD glibc-2.33.ebuild 43992 BLAKE2B b5fd1fa3b2e2b727574028241e7805cab448b37d3975502f12140e2cd6cf98784af36393a1116c13ebaa490db3f18b7b20a56bd53343015abc521201c193eb3f SHA512 911c152ce3ff50ff79db9d53b570ff0fcf837549a072656fef8ad429d02788f89d6ee1266605c539dcbcf273aa791cf075043e8b4895eb8d67404be531631086 -EBUILD glibc-9999.ebuild 45035 BLAKE2B 1868d9c2d762697c31de330955fbfc8a201e15e7f631e2e20fe99eda85716044709a3d1c353841cf2339f040e37bee542a46f95d2e2546bd66319ad7a8130822 SHA512 f8e2257dbffda00fba7c1caad84856944ee9c893ec53ec00cc2b4dbfe1ff2b3f7bc2e9a97c6df93c4b80e416ecdd9320026017e2c0354019ca179c5775662f4b +EBUILD glibc-9999.ebuild 45226 BLAKE2B fd577636a5b85c4d7610c79e18898ca13aad7643760c7a17f4625964f59b757bbe44eaba7f19c88a17fd1887d8b17fed996465c7ac93d9bbce68ab7ea90576b0 SHA512 38cec7e40c3b2406d86b7ab05f42e5cd9a4556f8444914c2410b589db96a1ec4fd739ceed7f0c550aac90aab4a3f1024100c55364d6eb7612926251b8483f32e MISC metadata.xml 1611 BLAKE2B 3bd777c160ea20cdbd86cca791d9fd4ff02f8d100344235ec74fff37d5cae1e7119e0ec26969707e75a983dcdb23e994559c8be128ef40fa0ec9ed655017466d SHA512 08be6d085ac47b140fff17a3be8cee77e066a4536cdce76fa44c77875dec2a9dc236ff67ff44301abf75cb196d1902feb2a139dda420220248b46dd9cdb16b9f diff --git a/sys-libs/glibc/glibc-2.33-r1.ebuild b/sys-libs/glibc/glibc-2.33-r1.ebuild index fc5b4b0474f9..5e971e697fef 100644 --- a/sys-libs/glibc/glibc-2.33-r1.ebuild +++ b/sys-libs/glibc/glibc-2.33-r1.ebuild @@ -940,6 +940,11 @@ glibc_do_configure() { # -march= option tricks build system to infer too # high ISA level: https://sourceware.org/PR27318 libc_cv_include_x86_isa_level=no + # Explicit override of https://sourceware.org/PR27991 + # exposes a bug in glibc's configure: + # https://sourceware.org/PR27991 + libc_cv_have_x86_lahf_sahf=no + libc_cv_have_x86_movbe=no ${EXTRA_ECONF} ) diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild index 112a714c393e..e2bc0dad8669 100644 --- a/sys-libs/glibc/glibc-9999.ebuild +++ b/sys-libs/glibc/glibc-9999.ebuild @@ -941,6 +941,11 @@ glibc_do_configure() { # -march= option tricks build system to infer too # high ISA level: https://sourceware.org/PR27318 libc_cv_include_x86_isa_level=no + # Explicit override of https://sourceware.org/PR27991 + # exposes a bug in glibc's configure: + # https://sourceware.org/PR27991 + libc_cv_have_x86_lahf_sahf=no + libc_cv_have_x86_movbe=no ${EXTRA_ECONF} ) diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest index bad1472d2164..4a87cc1e3f8b 100644 --- a/sys-libs/libcxx/Manifest +++ b/sys-libs/libcxx/Manifest @@ -6,10 +6,12 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3 DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1-rc1.tar.gz 134261735 BLAKE2B d29510495641c06e6d7a5ac165e6d34e0ba15d1a5b786534e186e341e3a0550cdd3d8a2b61deb3e2bf44c0b0ff8561224bf7f8cebc2ce9415639cb67ceae289e SHA512 4595a26df56eed7d5941240fe92116ad2f1c61639f0f464697c2c530a601347032fbad6802d1fa915ced8574c7b30ef05bc8c0be737784c844d3860892817e6e +DIST llvmorg-12.0.1-rc2.tar.gz 134274147 BLAKE2B 2d3f6ce8d5239cf2e5ea52f4b9020d6a8fedb8d6a4df02ca0d8e4398237f4eb967865e1e65570d16cd191865281b9619a63905c1e1c47b31183b881e97e49867 SHA512 cdebb954016dc92251cd9c6281804f7a36e7bc8c6f101a6817d96cc121aba4d361fb99501c259409a29c90d7749b224be670c41177fe43fa64b730ff294831b8 EBUILD libcxx-10.0.1.ebuild 5796 BLAKE2B c3c1e4d49ad96de1338998d35b0495ba2aa448db3558988bbbc9e5d4603d3d2ded354b1c04b186b0134be930edd72c931240ac3a068744e72e18087fc1550160 SHA512 7fbae29d2658305ddac7854a96e353ccf1901fcc6b1c15370d7a69a602f41b7d9f1afdd91018ea5be949955b3f8f1424903b5bac13d840e8f8c72ffcf7d7d34d EBUILD libcxx-11.1.0.ebuild 6661 BLAKE2B 93445de819484ea32a708d2ff616501d715e7fd3a3f4204f143e64c40bc89ebceb8e50c80215c6b54d7c8a3cce00fcecaac099298b41e010bf77655563d30a20 SHA512 ce56f24e7b4aed1405e682af6b3cb48bad6617d5b7e2ecf5b990fae4f7d6badc479a583ef24801e34b0155c12354a7b76a414402f89c31f228315eb92f279a62 EBUILD libcxx-12.0.0.ebuild 6914 BLAKE2B e06a7f82b838785de55c9c936cedd9d4bd3ca819812cf43a98ce533c5f7551d60dec4040f11820068850a23af1111d0a156d398ad8dafefbcc301ed41254855f SHA512 76afcac7759e44a70bc10adc1217446c7c1665f9f1264c2c49363732023e684683df2490d0bc4abd565a04ca1dbf355c8e1bc4d7b88bb2932e0fe35527e0e746 EBUILD libcxx-12.0.1.9999.ebuild 6622 BLAKE2B b525c9be28a7ac16ec07275c59e68fb003a7423512c94c297014f884d40323b6776313ced81e09f5e15cc1489e95e42b561f8e3e961bc461b37e58ab928edf62 SHA512 335d114c131ed3a6653f59f3a66bdb4115f277b2d8aacd3c2fbc78519b9fdaedaade3a2f53a66f36c18feb3cde8a6fb95fe8e34889626c17dd896bd6a8f8cfad EBUILD libcxx-12.0.1_rc1.ebuild 6622 BLAKE2B b525c9be28a7ac16ec07275c59e68fb003a7423512c94c297014f884d40323b6776313ced81e09f5e15cc1489e95e42b561f8e3e961bc461b37e58ab928edf62 SHA512 335d114c131ed3a6653f59f3a66bdb4115f277b2d8aacd3c2fbc78519b9fdaedaade3a2f53a66f36c18feb3cde8a6fb95fe8e34889626c17dd896bd6a8f8cfad +EBUILD libcxx-12.0.1_rc2.ebuild 6622 BLAKE2B b525c9be28a7ac16ec07275c59e68fb003a7423512c94c297014f884d40323b6776313ced81e09f5e15cc1489e95e42b561f8e3e961bc461b37e58ab928edf62 SHA512 335d114c131ed3a6653f59f3a66bdb4115f277b2d8aacd3c2fbc78519b9fdaedaade3a2f53a66f36c18feb3cde8a6fb95fe8e34889626c17dd896bd6a8f8cfad EBUILD libcxx-13.0.0.9999.ebuild 6622 BLAKE2B b525c9be28a7ac16ec07275c59e68fb003a7423512c94c297014f884d40323b6776313ced81e09f5e15cc1489e95e42b561f8e3e961bc461b37e58ab928edf62 SHA512 335d114c131ed3a6653f59f3a66bdb4115f277b2d8aacd3c2fbc78519b9fdaedaade3a2f53a66f36c18feb3cde8a6fb95fe8e34889626c17dd896bd6a8f8cfad MISC metadata.xml 621 BLAKE2B d8b68920ece0e3a700f1e425cf72a4ca7e75cf4b0b35e1ac6db9374d32020fc9f62b434da2108ad5b3538a46a2a7f4f5de7aa1640cd4b10046f2480ebb89450d SHA512 e1b0c874a6d229e098ffe7c0c2827502f2cdbf74fb7a0254687a0ca75dde74db06ef2bc79bfe8b526c413b13beac27b8261eab8d0b8df36011790dada3eae421 diff --git a/sys-libs/libcxx/libcxx-12.0.1_rc2.ebuild b/sys-libs/libcxx/libcxx-12.0.1_rc2.ebuild new file mode 100644 index 000000000000..1f529867fb7b --- /dev/null +++ b/sys-libs/libcxx/libcxx-12.0.1_rc2.ebuild @@ -0,0 +1,211 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_ECLASS=cmake +PYTHON_COMPAT=( python3_{7..9} ) +inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs + +DESCRIPTION="New implementation of the C++ standard library, targeting C++11" +HOMEPAGE="https://libcxx.llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="" +IUSE="elibc_glibc elibc_musl +libcxxabi +libunwind static-libs test" +REQUIRED_USE="libunwind? ( libcxxabi )" +RESTRICT="!test? ( test )" + +RDEPEND=" + libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] ) + !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )" +# llvm-6 for new lit options +# clang-3.9.0 installs necessary target symlinks unconditionally +# which removes the need for MULTILIB_USEDEP +DEPEND="${RDEPEND} + >=sys-devel/llvm-6" +BDEPEND=" + test? ( + >=dev-util/cmake-3.16 + >=sys-devel/clang-3.9.0 + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + )" + +DOCS=( CREDITS.TXT ) + +LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake/modules,utils/llvm-lit} ) +LLVM_PATCHSET=9999-1 +llvm.org_set_globals + +python_check_deps() { + has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +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 + use test && python-any-r1_pkg_setup + + if ! use libcxxabi && ! tc-is-gcc ; then + eerror "To build ${PN} against libsupc++, you have to use gcc. Other" + eerror "compilers are not supported. Please set CC=gcc and CXX=g++" + eerror "and try again." + die + fi +} + +test_compiler() { + $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \ + <<<'int main() { return 0; }' &>/dev/null +} + +src_configure() { + # note: we need to do this before multilib kicks in since it will + # alter the CHOST + local cxxabi cxxabi_incs + if use libcxxabi; then + cxxabi=libcxxabi + cxxabi_incs="${EPREFIX}/usr/include/libcxxabi" + else + local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)" + cxxabi=libsupc++ + cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}" + fi + + multilib-minimal_src_configure +} + +multilib_src_configure() { + # we want -lgcc_s for unwinder, and for compiler runtime when using + # gcc, clang with gcc runtime (or any unknown compiler) + local extra_libs=() want_gcc_s=ON want_compiler_rt=OFF + if use libunwind; then + # work-around missing -lunwind upstream + extra_libs+=( -lunwind ) + # if we're using libunwind and clang with compiler-rt, we want + # to link to compiler-rt instead of -lgcc_s + if tc-is-clang; then + local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \ + ${LDFLAGS} -print-libgcc-file-name) + if [[ ${compiler_rt} == *libclang_rt* ]]; then + want_gcc_s=OFF + want_compiler_rt=ON + extra_libs+=( "${compiler_rt}" ) + fi + fi + elif [[ ${CHOST} == *-darwin* ]] && tc-is-clang; then + # clang-based darwin prefix disables libunwind useflag during + # bootstrap, because libunwind is not in the prefix yet. + # override the default, though, because clang based libcxx + # should never use gcc_s on Darwin. + want_gcc_s=OFF + # compiler_rt is not available in EPREFIX during bootstrap, + # so we cannot link to it yet anyway, so keep the defaults + # of want_compiler_rt=OFF and extra_libs=() + fi + + # bootstrap: cmake is unhappy if compiler can't link to stdlib + local nolib_flags=( -nodefaultlibs -lc ) + if ! test_compiler; then + if test_compiler "${nolib_flags[@]}"; then + local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" + ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}" + fi + fi + + local libdir=$(get_libdir) + local mycmakeargs=( + -DLIBCXX_LIBDIR_SUFFIX=${libdir#lib} + -DLIBCXX_ENABLE_SHARED=ON + -DLIBCXX_ENABLE_STATIC=$(usex static-libs) + -DLIBCXX_CXX_ABI=${cxxabi} + -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs} + # we're using our own mechanism for generating linker scripts + -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF + -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) + -DLIBCXX_HAS_GCC_S_LIB=${want_gcc_s} + -DLIBCXX_INCLUDE_TESTS=$(usex test) + -DLIBCXX_USE_COMPILER_RT=${want_compiler_rt} + -DCMAKE_SHARED_LINKER_FLAGS="${extra_libs[*]} ${LDFLAGS}" + ) + + if use test; then + local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) + [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" + + mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" + -DPython3_EXECUTABLE="${PYTHON}" + ) + fi + cmake_src_configure +} + +multilib_src_test() { + local -x LIT_PRESERVES_TMP=1 + cmake_build check-cxx +} + +# Usage: deps +gen_ldscript() { + local output_format + output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p') + [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )" + + cat <<-END_LDSCRIPT +/* GNU ld script + Include missing dependencies +*/ +${output_format} +GROUP ( $@ ) +END_LDSCRIPT +} + +gen_static_ldscript() { + local libdir=$(get_libdir) + local cxxabi_lib=$(usex libcxxabi "libc++abi.a" "libsupc++.a") + + # Move it first. + mv "${ED}/usr/${libdir}/libc++.a" "${ED}/usr/${libdir}/libc++_static.a" || die + # Generate libc++.a ldscript for inclusion of its dependencies so that + # clang++ -stdlib=libc++ -static works out of the box. + local deps="libc++_static.a ${cxxabi_lib} $(usex libunwind libunwind.a libgcc_eh.a)" + # On Linux/glibc it does not link without libpthread or libdl. It is + # fine on FreeBSD. + use elibc_glibc && deps+=" libpthread.a libdl.a" + + gen_ldscript "${deps}" > "${ED}/usr/${libdir}/libc++.a" || die +} + +gen_shared_ldscript() { + local libdir=$(get_libdir) + # libsupc++ doesn't have a shared version + local cxxabi_lib=$(usex libcxxabi "libc++abi.so" "libsupc++.a") + + mv "${ED}/usr/${libdir}/libc++.so" "${ED}/usr/${libdir}/libc++_shared.so" || die + local deps="libc++_shared.so ${cxxabi_lib} $(usex libunwind libunwind.so libgcc_s.so)" + + gen_ldscript "${deps}" > "${ED}/usr/${libdir}/libc++.so" || die +} + +multilib_src_install() { + cmake_src_install + if [[ ${CHOST} != *-darwin* ]] ; then + gen_shared_ldscript + use static-libs && gen_static_ldscript + fi +} + +pkg_postinst() { + elog "This package (${PN}) is mainly intended as a replacement for the C++" + elog "standard library when using clang." + elog "To use it, instead of libstdc++, use:" + elog " clang++ -stdlib=libc++" + elog "to compile your C++ programs." +} diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest index be21b3d8a287..d757257f6a59 100644 --- a/sys-libs/libcxxabi/Manifest +++ b/sys-libs/libcxxabi/Manifest @@ -2,10 +2,12 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3 DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1-rc1.tar.gz 134261735 BLAKE2B d29510495641c06e6d7a5ac165e6d34e0ba15d1a5b786534e186e341e3a0550cdd3d8a2b61deb3e2bf44c0b0ff8561224bf7f8cebc2ce9415639cb67ceae289e SHA512 4595a26df56eed7d5941240fe92116ad2f1c61639f0f464697c2c530a601347032fbad6802d1fa915ced8574c7b30ef05bc8c0be737784c844d3860892817e6e +DIST llvmorg-12.0.1-rc2.tar.gz 134274147 BLAKE2B 2d3f6ce8d5239cf2e5ea52f4b9020d6a8fedb8d6a4df02ca0d8e4398237f4eb967865e1e65570d16cd191865281b9619a63905c1e1c47b31183b881e97e49867 SHA512 cdebb954016dc92251cd9c6281804f7a36e7bc8c6f101a6817d96cc121aba4d361fb99501c259409a29c90d7749b224be670c41177fe43fa64b730ff294831b8 EBUILD libcxxabi-10.0.1.ebuild 3237 BLAKE2B 828cabd1bccb0f7dc672648fd1143f1913df2b3f075194da3b053413ad8e0ff8f8669ce6263fa51ed0b02702e0bd611a77f4009e57a7d2659362db21c5665e4e SHA512 b9fef273fea1343aab604c3606fa4b9ed340e0e6f649e68f81f1285d96374f440ab787937b203ee5eba5b8e867a5926b48f63d8739c326fd1a646193635dd65e EBUILD libcxxabi-11.1.0.ebuild 3559 BLAKE2B dc74318b252f772fbc6833e413ee2dd9b682c01ae3bca88a78d2f7854aa374311474f7af9f19453e4b4fbb6db4149e8330db7632faf710a0aeb2e0d741119096 SHA512 18632637cb6fb86a3c003ba66f6a80aece299f50e356870599bb932fa100ba3e51293cee71576cc994a7e2b5f56f3b4ec8b4d3eae6202322d50a9bc0aa922ac3 EBUILD libcxxabi-12.0.0.ebuild 3546 BLAKE2B b6accd4747ac9a1b30161de15e961062819e527c39a4d8a6e755e58a75862b1b12162539bf9716db2be8739b9aa2fefe16cede125b504e9d5e2d60f291fe8e35 SHA512 2fb42faa0ac7d7e5d1651494264163857561eb746ea381030bf03495152c8c060cb0be0793ba96f1ec5c4c9e3ea88b48644f587b4f52979c7eadad6992809e0a EBUILD libcxxabi-12.0.1.9999.ebuild 3505 BLAKE2B fe4d762e646ab8a6daad3ca1da7d63c34ffb6735a6bb6657e03e724428422706d821057715369cd818ecc696453620d7f2473535ac031ec0cc0a5bc6f4ec2186 SHA512 40ce77407d30efc2ada70d0166bcadbc4140e33275ecf537dcbd7580e3e8fc9ff030a29ba6be4a67bcadc9835ee8b1a2cd3fef07085c57df4792c04b445b0d7b EBUILD libcxxabi-12.0.1_rc1.ebuild 3505 BLAKE2B fe4d762e646ab8a6daad3ca1da7d63c34ffb6735a6bb6657e03e724428422706d821057715369cd818ecc696453620d7f2473535ac031ec0cc0a5bc6f4ec2186 SHA512 40ce77407d30efc2ada70d0166bcadbc4140e33275ecf537dcbd7580e3e8fc9ff030a29ba6be4a67bcadc9835ee8b1a2cd3fef07085c57df4792c04b445b0d7b +EBUILD libcxxabi-12.0.1_rc2.ebuild 3505 BLAKE2B fe4d762e646ab8a6daad3ca1da7d63c34ffb6735a6bb6657e03e724428422706d821057715369cd818ecc696453620d7f2473535ac031ec0cc0a5bc6f4ec2186 SHA512 40ce77407d30efc2ada70d0166bcadbc4140e33275ecf537dcbd7580e3e8fc9ff030a29ba6be4a67bcadc9835ee8b1a2cd3fef07085c57df4792c04b445b0d7b EBUILD libcxxabi-13.0.0.9999.ebuild 3505 BLAKE2B fe4d762e646ab8a6daad3ca1da7d63c34ffb6735a6bb6657e03e724428422706d821057715369cd818ecc696453620d7f2473535ac031ec0cc0a5bc6f4ec2186 SHA512 40ce77407d30efc2ada70d0166bcadbc4140e33275ecf537dcbd7580e3e8fc9ff030a29ba6be4a67bcadc9835ee8b1a2cd3fef07085c57df4792c04b445b0d7b MISC metadata.xml 350 BLAKE2B 67b70b8d7292327882a845b76667ce24fee728cd84f27ed7e329bc7963631cba4c28bafce5e6a5fefb4ba1df5c7fd572b3b0d7a2b31ef649496f2f991b691bff SHA512 317dd7b59a711dd0461b5369f7e31ea196882b018e047e1dbae8077274d06cb68542c8762efb852cce0b8021bedea69c19aa0c124b9414a36cf1a9c00e0b9703 diff --git a/sys-libs/libcxxabi/libcxxabi-12.0.1_rc2.ebuild b/sys-libs/libcxxabi/libcxxabi-12.0.1_rc2.ebuild new file mode 100644 index 000000000000..8c24d9691115 --- /dev/null +++ b/sys-libs/libcxxabi/libcxxabi-12.0.1_rc2.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_ECLASS=cmake +PYTHON_COMPAT=( python3_{7..9} ) +inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs + +DESCRIPTION="Low level support for a standard C++ library" +HOMEPAGE="https://libcxxabi.llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="" +IUSE="+libunwind static-libs test elibc_musl" +RESTRICT="!test? ( test )" + +RDEPEND=" + libunwind? ( + || ( + >=sys-libs/libunwind-1.0.1-r1[static-libs?,${MULTILIB_USEDEP}] + >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}] + ) + )" +# llvm-6 for new lit options +DEPEND="${RDEPEND} + >=sys-devel/llvm-6" +BDEPEND=" + test? ( >=sys-devel/clang-3.9.0 + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + )" + +# libcxx is needed uncondtionally for the headers +LLVM_COMPONENTS=( libcxx{abi,} llvm/cmake/modules ) +llvm.org_set_globals + +python_check_deps() { + has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +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 + use test && python-any-r1_pkg_setup +} + +multilib_src_configure() { + # link against compiler-rt instead of libgcc if we are using clang with libunwind + local want_compiler_rt=OFF + if use libunwind && tc-is-clang; then + local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \ + ${LDFLAGS} -print-libgcc-file-name) + if [[ ${compiler_rt} == *libclang_rt* ]]; then + want_compiler_rt=ON + fi + fi + + local libdir=$(get_libdir) + local mycmakeargs=( + -DLIBCXXABI_LIBDIR_SUFFIX=${libdir#lib} + -DLIBCXXABI_ENABLE_SHARED=ON + -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs) + -DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind) + -DLIBCXXABI_INCLUDE_TESTS=$(usex test) + -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt} + + -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include + # upstream is omitting standard search path for this + # probably because gcc & clang are bundling their own unwind.h + -DLIBCXXABI_LIBUNWIND_INCLUDES="${EPREFIX}"/usr/include + ) + if use test; then + local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) + [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" + + mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" + -DPython3_EXECUTABLE="${PYTHON}" + ) + fi + cmake_src_configure +} + +build_libcxx() { + local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" + local CMAKE_USE_DIR=${WORKDIR}/libcxx + local BUILD_DIR=${BUILD_DIR}/libcxx + local mycmakeargs=( + -DLIBCXX_LIBDIR_SUFFIX= + -DLIBCXX_ENABLE_SHARED=OFF + -DLIBCXX_ENABLE_STATIC=ON + -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF + -DLIBCXX_CXX_ABI=libcxxabi + -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${S}"/include + -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF + -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) + -DLIBCXX_HAS_GCC_S_LIB=OFF + -DLIBCXX_INCLUDE_TESTS=OFF + ) + + cmake_src_configure + cmake_src_compile +} + +multilib_src_test() { + # build a local copy of libc++ for testing to avoid circular dep + build_libcxx + mv "${BUILD_DIR}"/libcxx/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die + + local -x LIT_PRESERVES_TMP=1 + cmake_build check-cxxabi +} + +multilib_src_install_all() { + insinto /usr/include/libcxxabi + doins -r include/. +} diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest index 792825390737..6c3a8eae469a 100644 --- a/sys-libs/libomp/Manifest +++ b/sys-libs/libomp/Manifest @@ -2,10 +2,12 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3 DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1-rc1.tar.gz 134261735 BLAKE2B d29510495641c06e6d7a5ac165e6d34e0ba15d1a5b786534e186e341e3a0550cdd3d8a2b61deb3e2bf44c0b0ff8561224bf7f8cebc2ce9415639cb67ceae289e SHA512 4595a26df56eed7d5941240fe92116ad2f1c61639f0f464697c2c530a601347032fbad6802d1fa915ced8574c7b30ef05bc8c0be737784c844d3860892817e6e +DIST llvmorg-12.0.1-rc2.tar.gz 134274147 BLAKE2B 2d3f6ce8d5239cf2e5ea52f4b9020d6a8fedb8d6a4df02ca0d8e4398237f4eb967865e1e65570d16cd191865281b9619a63905c1e1c47b31183b881e97e49867 SHA512 cdebb954016dc92251cd9c6281804f7a36e7bc8c6f101a6817d96cc121aba4d361fb99501c259409a29c90d7749b224be670c41177fe43fa64b730ff294831b8 EBUILD libomp-10.0.1.ebuild 2893 BLAKE2B 6085966e4e392ded8492c6b398d3a14ba5205aee8ecf3f63d0853e463f1bf007ff3b3c31555eb7cb566cc8c4bdc580e9d0ce38ca7cd58785820a7949e2969024 SHA512 e1b7b17dd0800908adbb06b29c7ef2d5bd73c66784104b554c59e5c5176c9c49c5432e0ecd72c6e3c00e71def839342cbedbd666f3886afa3ea92d8fc94ba591 EBUILD libomp-11.1.0.ebuild 2901 BLAKE2B e18155f24e5d0aa2de9a1976c818777e8d2d16092aa5e58b5c38197461a0b4ca5967ec161140b2a63835a0cfa601eb31fc08cbaa492088269808d6d803c7a47a SHA512 23a429ded341114ea3c4282b974520146ea0734e01b5863c837d119517b39365b537126091f5efcf752ca7860bccf0e0e2d763b507e903321532db87bcd42b79 EBUILD libomp-12.0.0.ebuild 2951 BLAKE2B 347b96e146742f7127314e3eb35ee13a3f040b3ab87aba7570a12cf1a2d44f918b110059d7a821b349224b7233d13be0ad110acf5cd2e4328762ed1e52bd665a SHA512 acb0a94b89b6f9f7a67a8cb20976e0cf0cfddc05d3e7fcd198d4cf3ab3742f5b80f88c4b39be71d3c89201010f936bf4981736ed2a21975b0a43e3898cc90693 EBUILD libomp-12.0.1.9999.ebuild 2885 BLAKE2B a4ae00d8e2500cc8c76999c17624a3a2ebe6107c34f9deb90cb12de77c4656dd110275e073ab9413332f0fa9c2a86d860a620c85a36555e5996d358c1e25e522 SHA512 ba72ef7a346ac74297526df15949395a18750625b048c26650a7cdec4212af72dcb2b9c8d68dc117abeb7bce9aba4f0b0de1134bcacd841d1a475f77f4a77157 EBUILD libomp-12.0.1_rc1.ebuild 2885 BLAKE2B a4ae00d8e2500cc8c76999c17624a3a2ebe6107c34f9deb90cb12de77c4656dd110275e073ab9413332f0fa9c2a86d860a620c85a36555e5996d358c1e25e522 SHA512 ba72ef7a346ac74297526df15949395a18750625b048c26650a7cdec4212af72dcb2b9c8d68dc117abeb7bce9aba4f0b0de1134bcacd841d1a475f77f4a77157 +EBUILD libomp-12.0.1_rc2.ebuild 2885 BLAKE2B a4ae00d8e2500cc8c76999c17624a3a2ebe6107c34f9deb90cb12de77c4656dd110275e073ab9413332f0fa9c2a86d860a620c85a36555e5996d358c1e25e522 SHA512 ba72ef7a346ac74297526df15949395a18750625b048c26650a7cdec4212af72dcb2b9c8d68dc117abeb7bce9aba4f0b0de1134bcacd841d1a475f77f4a77157 EBUILD libomp-13.0.0.9999.ebuild 2885 BLAKE2B a4ae00d8e2500cc8c76999c17624a3a2ebe6107c34f9deb90cb12de77c4656dd110275e073ab9413332f0fa9c2a86d860a620c85a36555e5996d358c1e25e522 SHA512 ba72ef7a346ac74297526df15949395a18750625b048c26650a7cdec4212af72dcb2b9c8d68dc117abeb7bce9aba4f0b0de1134bcacd841d1a475f77f4a77157 MISC metadata.xml 825 BLAKE2B 9c4afd81e02ecba9db7cac8487acf4e9dcbf772d62ee46c5c95510f1c624b52e0005786d06c119d4d7f0bf498fbd9cae2f9200a27ea427c9d6e83a5d74d45c1c SHA512 b2ba293ffb87f06c21172607234e8f69730d8ade0732fe98a5bc876353a01853dbef8cbe0ace0f6a556f2ae7217facee040349b460815dc2cf2f3b48cfd46762 diff --git a/sys-libs/libomp/libomp-12.0.1_rc2.ebuild b/sys-libs/libomp/libomp-12.0.1_rc2.ebuild new file mode 100644 index 000000000000..0fd7afe0ff42 --- /dev/null +++ b/sys-libs/libomp/libomp-12.0.1_rc2.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_ECLASS=cmake +PYTHON_COMPAT=( python3_{7..9} ) +inherit cmake-multilib linux-info llvm.org python-any-r1 + +DESCRIPTION="OpenMP runtime library for LLVM/clang compiler" +HOMEPAGE="https://openmp.llvm.org" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="" +IUSE="cuda hwloc kernel_linux offload ompt test" +# CUDA works only with the x86_64 ABI +REQUIRED_USE="offload? ( cuda? ( abi_x86_64 ) )" +RESTRICT="!test? ( test )" + +RDEPEND=" + hwloc? ( sys-apps/hwloc:0=[${MULTILIB_USEDEP}] ) + offload? ( + virtual/libelf:=[${MULTILIB_USEDEP}] + dev-libs/libffi:=[${MULTILIB_USEDEP}] + cuda? ( dev-util/nvidia-cuda-toolkit:= ) + )" +# tests: +# - dev-python/lit provides the test runner +# - sys-devel/llvm provide test utils (e.g. FileCheck) +# - sys-devel/clang provides the compiler to run tests +DEPEND="${RDEPEND}" +BDEPEND="dev-lang/perl + offload? ( virtual/pkgconfig ) + test? ( + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + >=sys-devel/clang-6 + )" + +LLVM_COMPONENTS=( openmp llvm/include ) +llvm.org_set_globals + +python_check_deps() { + has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +kernel_pds_check() { + if use kernel_linux && kernel_is -lt 4 15 && kernel_is -ge 4 13; then + local CONFIG_CHECK="~!SCHED_PDS" + local ERROR_SCHED_PDS="\ +PDS scheduler versions >= 0.98c < 0.98i (e.g. used in kernels >= 4.13-pf11 +< 4.14-pf9) do not implement sched_yield() call which may result in horrible +performance problems with libomp. If you are using one of the specified +kernel versions, you may want to disable the PDS scheduler." + + check_extra_config + fi +} + +pkg_pretend() { + kernel_pds_check +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +multilib_src_configure() { + local libdir="$(get_libdir)" + local mycmakeargs=( + -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}" + + -DLIBOMP_USE_HWLOC=$(usex hwloc) + -DLIBOMP_OMPT_SUPPORT=$(usex ompt) + + -DOPENMP_ENABLE_LIBOMPTARGET=$(usex offload) + + # do not install libgomp.so & libiomp5.so aliases + -DLIBOMP_INSTALL_ALIASES=OFF + # disable unnecessary hack copying stuff back to srcdir + -DLIBOMP_COPY_EXPORTS=OFF + ) + use offload && mycmakeargs+=( + # this is non-fatal and libomp checks for CUDA conditionally + # to ABI, so we can just ignore passing the wrong value + # on non-amd64 ABIs + -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda) + ) + use test && mycmakeargs+=( + # this project does not use standard LLVM cmake macros + -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit" + -DOPENMP_LIT_ARGS="$(get_lit_flags)" + + -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")" + -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")" + ) + addpredict /dev/nvidiactl + cmake_src_configure +} + +multilib_src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + + cmake_build check-libomp +} diff --git a/sys-libs/libsmbios/Manifest b/sys-libs/libsmbios/Manifest index 1fdcdd1c8723..b07c0873b4d3 100644 --- a/sys-libs/libsmbios/Manifest +++ b/sys-libs/libsmbios/Manifest @@ -2,4 +2,4 @@ AUX libsmbios-2.2.28-cppunit-tests.patch 350 BLAKE2B c735096c5fe0e33eec728e28009 AUX libsmbios-2.4.3-avoid_bashisms.patch 2909 BLAKE2B 426ca128f142307ea89cc5003c298518115805a518b348345f154094e34be932721aa6c880612fa7fe3473bc1156bf7c2dc1ce085dd9511ddeaf58e54d2464e1 SHA512 d2199481d87527ce7e90ca355cdfaf48a859982e67090e248034139b19ce2d61717e9887d246c7bd6b1e46f3f97cf6ec6bbdf04e3091c513221cb42d0f1431b3 DIST libsmbios-2.4.3.tar.gz 644140 BLAKE2B 684bff4f6cf755796f785e9a93d4ddbe2a1af52082cdebc27d203772a6a2a0259edb4b9d19921f90fc78b48d54700223fbc2628665b963ebcb601010ff4340ab SHA512 7f6fb36fa9653e123b416b275953fb5652025e76dac3b4ec5600168e193ea56f8ac3ea1a3b5db29d2770e73d88152d712a35bf77a9b3fc5596570fae885585ad EBUILD libsmbios-2.4.3.ebuild 1788 BLAKE2B e4872329f12b1529e54d562aa55d18b8ec0a8d6e45bdd6104eba316f7e79057cb1a7a1e98791603f9a9c2bee26e0513762bf6e94a2a95904e8efcecd838082b9 SHA512 4c207f4bdd39d352d28d3312fd2e72dac8b4e4b434c3dd5bb96d93ecf12e1f377d8c96e4e4bfdd80a10bc9043df83bc30e23915cc936d75ff73da0d08e8109e7 -MISC metadata.xml 564 BLAKE2B 9692567feec851f92126289afe0b4117d9e397615dcbd265b73cf8883417739899b26bd9ee2fb6621c61e3c18262858fa78b7975edf4f87f7032356ccdd4c875 SHA512 68273bacd56e8af3314737d8bda5e09c8ce9c089e5d942b4a2afd86187f702d3d5fa9419db5042f660aaa8ab12d0eeb69cfa14c7fc26589e1b4a638dde83b92a +MISC metadata.xml 682 BLAKE2B a40ca216545f32cafca19b9a7b10b496d4e05b9a36b99476e87b0149c4ac8b305d7ceed7069a242862517d5d0f5c5fec1a6563c9ad8d4e14bbee81bf079c8b58 SHA512 0270fc658002ff0bdd1b7edf7ba0d59c64ef9e03ac033a76bfe6aec498ccde74daec4b066bdab9598e49c2bc0c6d1d2fb054ed60556fd2ebf25b2240e998026d diff --git a/sys-libs/libsmbios/metadata.xml b/sys-libs/libsmbios/metadata.xml index 426debbdad90..842c57e6157a 100644 --- a/sys-libs/libsmbios/metadata.xml +++ b/sys-libs/libsmbios/metadata.xml @@ -5,6 +5,10 @@ <email>polynomial-c@gentoo.org</email> <name>Lars Wendler</name> </maintainer> + <maintainer type="person"> + <email>whissi@gentoo.org</email> + <name>Thomas Deutschmann</name> + </maintainer> <longdescription>The libsmbios project aims towards providing access to as much BIOS information as possible. It does this by providing a library of functions that can be used as well as sample binaries.</longdescription> diff --git a/sys-libs/libxcrypt/Manifest b/sys-libs/libxcrypt/Manifest index d96148e5b2a6..47a16f39b773 100644 --- a/sys-libs/libxcrypt/Manifest +++ b/sys-libs/libxcrypt/Manifest @@ -9,4 +9,4 @@ EBUILD libxcrypt-4.4.16.ebuild 4191 BLAKE2B 64921e9c8bb070e5810504344ebda777acd4 EBUILD libxcrypt-4.4.17.ebuild 4261 BLAKE2B 621c91e359a6d2c4d3e152b9c2590e676bfb2d5dee5d50ee7247418e37710e1a486a47b690fc015830f1464ed2eb83facec5385f3435b03359a83e38cb1f347b SHA512 f148a47f62ef9aff0fd3fde65d00df2f5819e28b44ea60fed5d04d0aa5efe7dab5eb71b9d1735fb9ce6647af12705dc6cb6a3eae06eece12874e5ba7844bc228 EBUILD libxcrypt-4.4.19.ebuild 4215 BLAKE2B 60b120aa9a9af60001c4180c2e7ba4bf9e0410b00a206aea3c4ce09e6c5af1c633b4a35e99d76a40435680e1be0a782dfed2c971a7d6d9d1b363d3f69a55e16a SHA512 0323090b8e5a909565000b7929174081a5a2fde35f08fc5b523a47c739375141c747b1d2d923f43fd80ef0913d02dc1d365eb23c8c082935560f87abfbc85acb EBUILD libxcrypt-4.4.20.ebuild 4215 BLAKE2B 60b120aa9a9af60001c4180c2e7ba4bf9e0410b00a206aea3c4ce09e6c5af1c633b4a35e99d76a40435680e1be0a782dfed2c971a7d6d9d1b363d3f69a55e16a SHA512 0323090b8e5a909565000b7929174081a5a2fde35f08fc5b523a47c739375141c747b1d2d923f43fd80ef0913d02dc1d365eb23c8c082935560f87abfbc85acb -MISC metadata.xml 856 BLAKE2B e9fea1aa08f5b3f0abdd4d490973da2f133ea90e3a366d4549361233f51e674cc646b2fb6b4b15bca72d5a4e3b36be9a06e55afd3a4cb8f439d3958f09f8af25 SHA512 862cf3201efbecfc23167ecd1f6798f6729ba4e76749c174d17baf8aa4887f21d36f40234f35bc1b896e4384d110033b3f2260f01930b926f759e0243039adf8 +MISC metadata.xml 830 BLAKE2B 21022e8e6a34737874590a560010f2a8fd1fb11275b4f675d195b66af70ebf8f28a2d881bab0a6653b0b1fbc09c14b99339f43d6f07fd8ffe282f951c64a4f96 SHA512 03dafb661b2273d25c7e282bb91ba01a371734446e12d140d5c5c469172e62f768de6d2a0f5bcdcdae7275f4ba0ad46de69c546b381c1f0bf338cdb487267773 diff --git a/sys-libs/libxcrypt/metadata.xml b/sys-libs/libxcrypt/metadata.xml index d84b73d6af1e..21bf25d8b116 100644 --- a/sys-libs/libxcrypt/metadata.xml +++ b/sys-libs/libxcrypt/metadata.xml @@ -1,20 +1,20 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="project"> - <email>hardened@gentoo.org</email> - <name>Gentoo Hardened</name> - </maintainer> - <longdescription> - Crypt library for DES, MD5, and blowfish. Libxcrypt is a replacement for - libcrypt, which comes with the GNU C Library. It supports DES crypt, - MD5, and passwords with blowfish encryption. - </longdescription> - <use> - <flag name="compat">Build with compatibility interfaces for other crypt implementations</flag> - <flag name="system">Install as system libcrypt.so rather than to an alternate directory (will collide with sys-libs/glibc's version)</flag> - </use> - <upstream> - <remote-id type="github">besser82/libxcrypt</remote-id> - </upstream> + <maintainer type="project"> + <email>toolchain@gentoo.org</email> + <name>Gentoo Toolchain Project</name> + </maintainer> + <longdescription> + Crypt library for DES, MD5, and blowfish. Libxcrypt is a replacement for + libcrypt, which comes with the GNU C Library. It supports DES crypt, + MD5, and passwords with blowfish encryption. + </longdescription> + <use> + <flag name="compat">Build with compatibility interfaces for other crypt implementations</flag> + <flag name="system">Install as system libcrypt.so rather than to an alternate directory (will collide with sys-libs/glibc's version)</flag> + </use> + <upstream> + <remote-id type="github">besser82/libxcrypt</remote-id> + </upstream> </pkgmetadata> diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest index 342c49026863..d5c1a06b9332 100644 --- a/sys-libs/llvm-libunwind/Manifest +++ b/sys-libs/llvm-libunwind/Manifest @@ -2,10 +2,12 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3 DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26 DIST llvmorg-12.0.1-rc1.tar.gz 134261735 BLAKE2B d29510495641c06e6d7a5ac165e6d34e0ba15d1a5b786534e186e341e3a0550cdd3d8a2b61deb3e2bf44c0b0ff8561224bf7f8cebc2ce9415639cb67ceae289e SHA512 4595a26df56eed7d5941240fe92116ad2f1c61639f0f464697c2c530a601347032fbad6802d1fa915ced8574c7b30ef05bc8c0be737784c844d3860892817e6e +DIST llvmorg-12.0.1-rc2.tar.gz 134274147 BLAKE2B 2d3f6ce8d5239cf2e5ea52f4b9020d6a8fedb8d6a4df02ca0d8e4398237f4eb967865e1e65570d16cd191865281b9619a63905c1e1c47b31183b881e97e49867 SHA512 cdebb954016dc92251cd9c6281804f7a36e7bc8c6f101a6817d96cc121aba4d361fb99501c259409a29c90d7749b224be670c41177fe43fa64b730ff294831b8 EBUILD llvm-libunwind-10.0.1.ebuild 3185 BLAKE2B 150bde0a85684ac2cbc01d20139e458f57377c2c9692037e7fec432019b16f073d6e14d772dfee190ab8a682e4b133f538dce51fce3ede54e8e20152575ac7c1 SHA512 4cdf4ce69be5ca630701d4e41bdcfead01eac10ced7edc39a9b20628e3225b65b33ac493d3010f8ac8cfe5cce73b70bb2d4988d1ea00f2766efdbe30c03aa6de EBUILD llvm-libunwind-11.1.0.ebuild 3223 BLAKE2B c39bdefd6bf0656db7d84f3cd868da01aa4b37f51c729951d1bcb73336f6ab1d8beb114a7d10d79c1441ce945b03aaf9444481e5e1b3e7dd7fdb9a7e971c451d SHA512 ad8cb081326e4dd6cd888882fabcc3fa1a152c37b28197c9565d46d8f8419f233a1a9f6cc9f3bcfe4ba1441cf97147dafb684e3eb60453020d2b64ccfb56d1c1 EBUILD llvm-libunwind-12.0.0.ebuild 3239 BLAKE2B 04a0b9de0107e28b22fbbe4e94e55969cdd7040710e3d76d8f2c57ef820d556463cb8bda5b450221383f48b989cd923ce3ec3fd63a1514d8e6b95f4a91d797cb SHA512 6ff67dcd84b49c8092a18e27b4e9db3a745c1e77035d86134b8ff1150010f1f3e3b993d99d04c60529594df6e5b2260c0d1c01746dac333ef7e70fea9c1e257a EBUILD llvm-libunwind-12.0.1.9999.ebuild 3191 BLAKE2B c6d413951aed1e093b629506afdb3f76f5887239dc4aedd1d9f7063549d2cad5b286d253df25aacb20116ad6ac6f85453d357eb96de02611d18d5f136d62ebc4 SHA512 99693bac2c943e756f4c7b586d78add1811f91c0bf9bad235bb9a9feb4df1edb779d1e01759ff86a484e48a8bca2ebd6740d5a4c4cdf9dbddab6ebc6a0bd8591 EBUILD llvm-libunwind-12.0.1_rc1.ebuild 3191 BLAKE2B c6d413951aed1e093b629506afdb3f76f5887239dc4aedd1d9f7063549d2cad5b286d253df25aacb20116ad6ac6f85453d357eb96de02611d18d5f136d62ebc4 SHA512 99693bac2c943e756f4c7b586d78add1811f91c0bf9bad235bb9a9feb4df1edb779d1e01759ff86a484e48a8bca2ebd6740d5a4c4cdf9dbddab6ebc6a0bd8591 +EBUILD llvm-libunwind-12.0.1_rc2.ebuild 3191 BLAKE2B c6d413951aed1e093b629506afdb3f76f5887239dc4aedd1d9f7063549d2cad5b286d253df25aacb20116ad6ac6f85453d357eb96de02611d18d5f136d62ebc4 SHA512 99693bac2c943e756f4c7b586d78add1811f91c0bf9bad235bb9a9feb4df1edb779d1e01759ff86a484e48a8bca2ebd6740d5a4c4cdf9dbddab6ebc6a0bd8591 EBUILD llvm-libunwind-13.0.0.9999.ebuild 3191 BLAKE2B c6d413951aed1e093b629506afdb3f76f5887239dc4aedd1d9f7063549d2cad5b286d253df25aacb20116ad6ac6f85453d357eb96de02611d18d5f136d62ebc4 SHA512 99693bac2c943e756f4c7b586d78add1811f91c0bf9bad235bb9a9feb4df1edb779d1e01759ff86a484e48a8bca2ebd6740d5a4c4cdf9dbddab6ebc6a0bd8591 MISC metadata.xml 302 BLAKE2B ef8858b3c26dfa1727e57685381dbf71eb74008e74127b06467aaff9eea2fd7f3fdcdb1819529b8e828d42720745855e948d608bbe3eb40778fe1e4e260118ad SHA512 d5e641d63402052ef7af157f98998868a816d5e5072424725b09ded5c2477b26aaafbb8874473367a860d3fc365e0f4f0db451315ec4be3df23cce4c1194f2d7 diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-12.0.1_rc2.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-12.0.1_rc2.ebuild new file mode 100644 index 000000000000..bf538b66689b --- /dev/null +++ b/sys-libs/llvm-libunwind/llvm-libunwind-12.0.1_rc2.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_ECLASS=cmake +PYTHON_COMPAT=( python3_{7..9} ) +inherit cmake-multilib llvm llvm.org python-any-r1 + +DESCRIPTION="C++ runtime stack unwinder from LLVM" +HOMEPAGE="https://github.com/llvm-mirror/libunwind" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="" +IUSE="debug static-libs test" +RESTRICT="!test? ( test )" + +RDEPEND="!sys-libs/libunwind" +# llvm-6 for new lit options +DEPEND=" + >=sys-devel/llvm-6" +BDEPEND=" + test? ( >=sys-devel/clang-3.9.0 + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + )" + +LLVM_COMPONENTS=( libunwind libcxx llvm/cmake/modules ) +LLVM_TEST_COMPONENTS=( libcxxabi ) +llvm.org_set_globals + +python_check_deps() { + has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +multilib_src_configure() { + local libdir=$(get_libdir) + + local mycmakeargs=( + -DLLVM_LIBDIR_SUFFIX=${libdir#lib} + -DLIBUNWIND_ENABLE_ASSERTIONS=$(usex debug) + -DLIBUNWIND_ENABLE_STATIC=$(usex static-libs) + -DLLVM_INCLUDE_TESTS=$(usex test) + + # support non-native unwinding; given it's small enough, + # enable it unconditionally + -DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON + ) + if use test; then + local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) + [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" + + mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" + -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}/libcxx" + ) + fi + + cmake_src_configure +} + +build_libcxxabi() { + local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" + local CMAKE_USE_DIR=${WORKDIR}/libcxxabi + local BUILD_DIR=${BUILD_DIR}/libcxxabi + local mycmakeargs=( + -DLIBCXXABI_LIBDIR_SUFFIX= + -DLIBCXXABI_ENABLE_SHARED=OFF + -DLIBCXXABI_ENABLE_STATIC=ONF + -DLIBCXXABI_USE_LLVM_UNWINDER=ON + -DLIBCXXABI_INCLUDE_TESTS=OFF + + -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include + -DLIBCXXABI_LIBUNWIND_INCLUDES="${S}"/include + ) + + cmake_src_configure + cmake_src_compile +} + +build_libcxx() { + local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/libcxxabi/lib -L${BUILD_DIR}/$(get_libdir)" + local CMAKE_USE_DIR=${WORKDIR}/libcxx + local BUILD_DIR=${BUILD_DIR}/libcxx + local mycmakeargs=( + -DLIBCXX_LIBDIR_SUFFIX= + -DLIBCXX_ENABLE_SHARED=OFF + -DLIBCXX_ENABLE_STATIC=ON + -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF + -DLIBCXXABI_USE_LLVM_UNWINDER=ON + -DLIBCXX_CXX_ABI=libcxxabi + -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${WORKDIR}"/libcxxabi/include + -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF + -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) + -DLIBCXX_HAS_GCC_S_LIB=OFF + -DLIBCXX_INCLUDE_TESTS=OFF + ) + + cmake_src_configure + cmake_src_compile +} + +multilib_src_test() { + # build local copies of libc++ & libc++abi for testing to avoid + # circular deps + build_libcxxabi + build_libcxx + mv "${BUILD_DIR}"/libcxx*/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die + + local -x LIT_PRESERVES_TMP=1 + cmake_build check-unwind +} + +multilib_src_install() { + cmake_src_install + + # install headers like sys-libs/libunwind + doheader "${S}"/include/*.h +} |