summaryrefslogtreecommitdiff
path: root/sys-libs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-12-25 23:06:25 +0000
committerV3n3RiX <venerix@redcorelinux.org>2020-12-25 23:06:25 +0000
commit441d1370330332b7d78f238d2f5e13f7aed5e4e0 (patch)
tree6a5171dd615dfeee62a45044144c66e864738fb0 /sys-libs
parentab3da91fb6c91a9df52fff8f991570f456fd3c7a (diff)
gentoo christmass resync : 25.12.2020
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/Manifest.gzbin14759 -> 14409 bytes
-rw-r--r--sys-libs/binutils-libs/Manifest2
-rw-r--r--sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild2
-rw-r--r--sys-libs/compiler-rt-sanitizers/Manifest8
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1.9999.ebuild41
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1_rc2.ebuild190
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.0.9999.ebuild41
-rw-r--r--sys-libs/compiler-rt-sanitizers/metadata.xml15
-rw-r--r--sys-libs/compiler-rt/Manifest2
-rw-r--r--sys-libs/compiler-rt/compiler-rt-11.0.1_rc2.ebuild111
-rw-r--r--sys-libs/cygwin-crypt/Manifest2
-rw-r--r--sys-libs/cygwin-crypt/cygwin-crypt-1.4.ebuild4
-rw-r--r--sys-libs/darwin-libc-headers/Manifest38
-rw-r--r--sys-libs/darwin-libc-headers/darwin-libc-headers-1158.50.2-r4.ebuild156
-rw-r--r--sys-libs/darwin-libc-headers/darwin-libc-headers-1244.50.9-r4.ebuild156
-rw-r--r--sys-libs/darwin-libc-headers/darwin-libc-headers-1272.250.1-r4.ebuild155
-rw-r--r--sys-libs/darwin-libc-headers/metadata.xml15
-rw-r--r--sys-libs/gdbm/Manifest2
-rw-r--r--sys-libs/gdbm/gdbm-1.19.ebuild52
-rw-r--r--sys-libs/glibc/Manifest4
-rw-r--r--sys-libs/glibc/glibc-2.32-r3.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.32-r6.ebuild1513
-rw-r--r--sys-libs/libcxx/Manifest2
-rw-r--r--sys-libs/libcxx/libcxx-11.0.1_rc2.ebuild202
-rw-r--r--sys-libs/libcxxabi/Manifest2
-rw-r--r--sys-libs/libcxxabi/libcxxabi-11.0.1_rc2.ebuild118
-rw-r--r--sys-libs/libkudzu/Manifest5
-rw-r--r--sys-libs/libkudzu/files/kudzu-1.2.57.1-sbusfix.patch72
-rw-r--r--sys-libs/libkudzu/files/kudzu-1.2.57.1-sparc-keyboard.patch195
-rw-r--r--sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild63
-rw-r--r--sys-libs/libkudzu/metadata.xml8
-rw-r--r--sys-libs/libomp/Manifest2
-rw-r--r--sys-libs/libomp/libomp-11.0.1_rc2.ebuild105
-rw-r--r--sys-libs/libunwind/Manifest4
-rw-r--r--sys-libs/libunwind/libunwind-1.4.0.ebuild102
-rw-r--r--sys-libs/libunwind/libunwind-1.5.0.ebuild2
-rw-r--r--sys-libs/llvm-libunwind/Manifest2
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-11.0.1_rc2.ebuild124
-rw-r--r--sys-libs/newlib/Manifest2
-rw-r--r--sys-libs/newlib/newlib-4.1.0.ebuild154
-rw-r--r--sys-libs/readline/Manifest21
-rw-r--r--sys-libs/readline/files/readline-6.3-fix-long-prompt-vi-search.patch26
-rw-r--r--sys-libs/readline/files/readline-6.3-read-eof.patch54
-rw-r--r--sys-libs/readline/files/readline-7.0-mingw.patch152
-rw-r--r--sys-libs/readline/files/readline-7.0-missing-echo-proto.patch14
-rw-r--r--sys-libs/readline/readline-6.3_p8-r3.ebuild163
-rw-r--r--sys-libs/readline/readline-7.0_p5-r1.ebuild174
47 files changed, 2688 insertions, 1591 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz
index fa974b2da3b9..3d2777ba46aa 100644
--- a/sys-libs/Manifest.gz
+++ b/sys-libs/Manifest.gz
Binary files differ
diff --git a/sys-libs/binutils-libs/Manifest b/sys-libs/binutils-libs/Manifest
index d0e1867e05cd..5c36691839a7 100644
--- a/sys-libs/binutils-libs/Manifest
+++ b/sys-libs/binutils-libs/Manifest
@@ -6,7 +6,7 @@ DIST binutils-2.35.1-patches-1.tar.xz 10088 BLAKE2B fa4b0c417b6452757f90243921c6
DIST binutils-2.35.1-patches-2.tar.xz 72236 BLAKE2B 584cb3edbda28c69171ed64e941535f992150d86f25201cadd07b63daaa36bf76b07dc0aa8a4837da17d1672feb47a7b15f83efdeec5409e695965a10142147a SHA512 b704ebe82c4402f058f9c96991a89256a6b369d28f844bf020ed2c77766894d9a2ca0596cd609de7b389fa8cd52bfab674b6deb10ea2096e50aa57921be2083e
DIST binutils-2.35.1.tar.xz 22031720 BLAKE2B d3468da90b75e9b5fa7fbd64d3fdb0a4bc445e4cb7da5ae058f73a1e9d948b3e9438bc9f1b5b351db369b76a25960c9c1f58f828fd2c7646f555de45fa3c052b SHA512 94ff72708403413b70b247f3af4099ebaa882b6659249869f1ed9941a0f1912e313f08357d470f9fd2359e7f5e5b0eb86285e5eaf883fa8187789d6b1bd304eb
EBUILD binutils-libs-2.33.1-r1.ebuild 3549 BLAKE2B 931ae3c38edbeed8cca61909b5e0897bc37f3855820ac49ed97955c611a2c8a58c50df2e87d4f13674ea7de511638205f49932663f25afd9f2b96970803dd91c SHA512 9e17954c198e39f725603fd9b6d1c3c24e39c99ee823a3e15b3d5c4838ae507787cb23aaf36e5dbfb9052656955b114a95b2cb3f8b0fc96ecfb0b5ed970053d0
-EBUILD binutils-libs-2.34-r2.ebuild 3565 BLAKE2B 1e1d24e6320777201a19b9a8949ad83954190cf13bb48c06b3c0277fe4544ff6bd9112b9a45f6e01c45023be8af2505f4c9cb70230b76c44bf6f077812fb10e2 SHA512 8cc6f9c2519c63a8c1d98fe43476fd5fadc67c2a27f18f9a3d1ed9c9adc065a7e50e1524972f3e4e694ba3f8231212cb433f5b8dd21a6c11c6918b1f90f0009f
+EBUILD binutils-libs-2.34-r2.ebuild 3563 BLAKE2B e615163666ae95731737c72cb871579e4fc0a53394d0cb3aaeaaf924e1ad3e2193d18366894b48f51d7c9bc1dd25aa44022f3cc349ed24fd59f1acdb2ddc5158 SHA512 f9d0f860bb21bf4fc42d3fd3ccf7fbd5a52f1da31e805e03dd005da0cd2af74243b26355d82cac4712df2540f363343185601697b92194ed6f81e29d7f7d7bbc
EBUILD binutils-libs-2.35.1-r1.ebuild 3756 BLAKE2B 386ccb1dd2e0c1c735b359fb3453e4d09ab741e15730cb92c793dadc870ad2bea793087b1a3016ff7bda22a796f8beb4acd045b9ee27c8a7a9c761f87d24a7a5 SHA512 d22287f772a3c80c6de499b0437c8e66c3ef0001d62182d6adcf2797829ca3510ecf76702b6e599f6d068293df546bf69e2e4366d4663203bd88ed735fd1c9d9
EBUILD binutils-libs-2.35.1.ebuild 3572 BLAKE2B c81c435b987840387a3d0d45aa9b3f8256f1f9f8495f203229e8186b1db299151a38adb8f4bffa098fa04bddc45cde52626febb38145f924a859b72a34e61692 SHA512 96eef2876f54bebab53db22b48d5f86dba4464aa700896640a6d942cbeebfa4f6c68b534b553149c0861f72fe753023cdd6fbcff2ba248f7c96da61165308fc1
MISC metadata.xml 524 BLAKE2B 6f00793b2dc155b19d816b8acfd49e6bfc2ae35418ecc97fbbd3f9d0ed08b5f95a299b28fe6edad1a66f4d64abe99dc8a62a974fd70e28b535cd366239bf1cca SHA512 9db7c7a3082ee848ec4963831da06cced596d543e53660747fb56ac33998c219e1d7252892ffc32132d7db3c99ce9746fb6d9e85f866c3cba97552c31948342c
diff --git a/sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild b/sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild
index dfcf868d436a..1158cebbca70 100644
--- a/sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild
+++ b/sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild
@@ -21,7 +21,7 @@ SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz
LICENSE="|| ( GPL-3 LGPL-3 )"
SLOT="0/${PV}"
IUSE="64-bit-bfd multitarget nls static-libs"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 sparc x86 ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
BDEPEND="nls? ( sys-devel/gettext )"
DEPEND="sys-libs/zlib[${MULTILIB_USEDEP}]"
diff --git a/sys-libs/compiler-rt-sanitizers/Manifest b/sys-libs/compiler-rt-sanitizers/Manifest
index 400130daec47..1a130e7f9cae 100644
--- a/sys-libs/compiler-rt-sanitizers/Manifest
+++ b/sys-libs/compiler-rt-sanitizers/Manifest
@@ -1,11 +1,13 @@
DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151
DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2
DIST llvmorg-11.0.1-rc1.tar.gz 122777435 BLAKE2B 23b520d33cf4b641027ee52bb10c6171d60356c9167d5b94012929e6e547c526cda1a6177c295ed19592dfb83b020f63b2cef4cabc70ce9a2a8e098fe654a3cd SHA512 605c7bbff1610f335be8ea4f1204df797fed21185a54c77565f6ff2d00794d1967e9c5fab7c87633e242f2f999bdffb76da83f756d261c1ca476114599409ae1
+DIST llvmorg-11.0.1-rc2.tar.gz 122793330 BLAKE2B 5d42f7bd7ba253ac3ca08cf9901c79db5b51b86f0f66c8e63f4f9808ca5fb72cacccfad098b4f6701a34b0d77bdd66fe3839a3962a251eae53776240a2e13b06 SHA512 acda5a5be38cc8aae730c34cd1bb8f29a82e2ed3dd9734ca293ff092d5b30c8c255ab3054245b8f6ed541d5dbf8bc674b744bb2f81788db8826f69a204dda0c3
DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59
EBUILD compiler-rt-sanitizers-10.0.1.ebuild 4501 BLAKE2B 3a15cc67e7fdbf61e2103ca9e543f936cc6f3221f0f3b7d43788cef7785f5742674ab0325e8c0c5cefe8909cc860a9ff0d42b615c367c1ea736cc745817cd9d0 SHA512 97b6b2b68a6de75e211b5f181d76fcf573f72fef7ff8f49248d03d201c2fec6f7d525c048b5b8b5cdc79c8512948f0ec75d5dbaa286172df929d264956d2c675
EBUILD compiler-rt-sanitizers-11.0.0.ebuild 4567 BLAKE2B 116a4cec6de2f40d0b819182ed5317f58e5913efb884d2af028e39e23ee021d842cad8ab72f405b9eef0459477c74acc87b000fe1ecf39a41c7e1a579424469b SHA512 04d729e2453a4e40bdc4c4b4a650dc4256ef00cdd3a29b3a90fa0b390e5d691d404c01accff05d4375b2b6987498453255a1a915ddfb34eb4da4c43ed4a4a58d
-EBUILD compiler-rt-sanitizers-11.0.1.9999.ebuild 4491 BLAKE2B fa7e441b014225d4f08b369e839068083f97abfc23cb9923876bbcd22d4fc988a6c87eb7ec128ada251dd6897813a51ad475588a343c954d61fdd11267f04cfe SHA512 7cc1082997453322f4f8e3423d9b44b2b0d1dca1ea1a5b1f40392484605c58a49b6b825248f46f5c0e81ae58e7416475eea51d260d456c8b0a58a8314f2f302b
+EBUILD compiler-rt-sanitizers-11.0.1.9999.ebuild 5257 BLAKE2B f9ece6b21493dfbb263e89cb45daaee0bc0b947be6e7c1d55a19e881b9ccb04e10e63dc6a4be3de1f94ddf243c38d35e7ce5d8827adddc653aa7687d3fc0a5a9 SHA512 f0c896a887286c72cfa9049b85a1111adf82e86d1db2b2d95d04ba9feb0f539ea9cdfedb63ae2a981357bc9c52647841d0eabd50766d777572e27b0b2ad4d563
EBUILD compiler-rt-sanitizers-11.0.1_rc1.ebuild 4491 BLAKE2B fa7e441b014225d4f08b369e839068083f97abfc23cb9923876bbcd22d4fc988a6c87eb7ec128ada251dd6897813a51ad475588a343c954d61fdd11267f04cfe SHA512 7cc1082997453322f4f8e3423d9b44b2b0d1dca1ea1a5b1f40392484605c58a49b6b825248f46f5c0e81ae58e7416475eea51d260d456c8b0a58a8314f2f302b
-EBUILD compiler-rt-sanitizers-12.0.0.9999.ebuild 4491 BLAKE2B fa7e441b014225d4f08b369e839068083f97abfc23cb9923876bbcd22d4fc988a6c87eb7ec128ada251dd6897813a51ad475588a343c954d61fdd11267f04cfe SHA512 7cc1082997453322f4f8e3423d9b44b2b0d1dca1ea1a5b1f40392484605c58a49b6b825248f46f5c0e81ae58e7416475eea51d260d456c8b0a58a8314f2f302b
+EBUILD compiler-rt-sanitizers-11.0.1_rc2.ebuild 5394 BLAKE2B 1702cc91568ef526d454ddf0585550f751512b0701aad7c33f10a083e69e019e3cdcf7898ccbb132e6f6f5bee404404aa452c0282564453011df97dc92c717e3 SHA512 566730a43f39736557df25585f20db47a31616d5bfda497c7cb94c7ea9d987a8d314a61f6a635bbaa085467f528cd3cf3584bff678b6429a711c655cf2ccc447
+EBUILD compiler-rt-sanitizers-12.0.0.9999.ebuild 5257 BLAKE2B f9ece6b21493dfbb263e89cb45daaee0bc0b947be6e7c1d55a19e881b9ccb04e10e63dc6a4be3de1f94ddf243c38d35e7ce5d8827adddc653aa7687d3fc0a5a9 SHA512 f0c896a887286c72cfa9049b85a1111adf82e86d1db2b2d95d04ba9feb0f539ea9cdfedb63ae2a981357bc9c52647841d0eabd50766d777572e27b0b2ad4d563
EBUILD compiler-rt-sanitizers-9.0.1.ebuild 4847 BLAKE2B cc23d456a4c52596858a405bc74c3c5db35c4fe116685cba4982e2753ba01941bd2c166f56e4278c79e02b06229e90a7fba9fce923360dba8bbf516c8a665ae6 SHA512 dc11719f142cfa56c86373e7e6dba88957511218a654c138ab37d3de01a60bd77f8dd4bc90ed634156d0952b350dce1bad08f8a2db1a7d207335596cdd0bd4d6
-MISC metadata.xml 547 BLAKE2B 6f9d8b65c12797fd3d168e9b3948c604265db135bda5493d9f1d8b1d01fd73a79d07e5241afc3a7fa1672827fac23d3d9dc4d7ae42371a0de892a900c8c28269 SHA512 fb73a96b1ffbc7ff2fecfba35c9acd3e54ade0154016ae04423217f5c000eee2b0b821cc626908647551a0aa7b7f462d42d56cde3993ddd52248bc373b117c3e
+MISC metadata.xml 1280 BLAKE2B 68347dd2fdb4698150d2e19f2880437b0607360d06ae1e87b753d3d2f91a51265cc1abb76d59fd8933e42ea2df2643f694d7722f88957a9e927877830f181690 SHA512 41348dcf18acf298501484813d2194d4bffcf6f24ca6758b7b5ba4d84b7270a7c467c365eea4c46d6a75824b483bbba4b3e7a2146c0773e1dae91e7cce884cc7
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1.9999.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1.9999.ebuild
index 1e3a849c675a..81547ee16054 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1.9999.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1.9999.ebuild
@@ -12,9 +12,20 @@ HOMEPAGE="https://llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="$(ver_cut 1-3)"
KEYWORDS=""
-IUSE="+clang +libfuzzer +profile +sanitize test +xray elibc_glibc"
-# FIXME: libfuzzer does not enable all its necessary dependencies
-REQUIRED_USE="libfuzzer? ( || ( sanitize xray ) )"
+IUSE="+clang test elibc_glibc"
+# base targets
+IUSE+=" +libfuzzer +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 )
+ gwp-asan? ( scudo )
+ ubsan? ( cfi )"
RESTRICT="!test? ( test ) !clang? ( test )"
CLANG_SLOT=${SLOT%%.*}
@@ -62,6 +73,20 @@ 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
+
+ if use asan && ! use profile; then
+ # TODO: fix these tests to be skipped upstream
+ rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die
+ fi
+
llvm.org_src_prepare
}
@@ -75,6 +100,14 @@ src_configure() {
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
@@ -87,7 +120,7 @@ src_configure() {
-DCOMPILER_RT_BUILD_CRT=OFF
-DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
-DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
- -DCOMPILER_RT_BUILD_SANITIZERS=$(usex sanitize)
+ -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}"
-DCOMPILER_RT_BUILD_XRAY=$(usex xray)
-DPython3_EXECUTABLE="${PYTHON}"
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1_rc2.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1_rc2.ebuild
new file mode 100644
index 000000000000..f5ea6f732f74
--- /dev/null
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1_rc2.ebuild
@@ -0,0 +1,190 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..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 +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 )
+ gwp-asan? ( scudo )
+ ubsan? ( cfi )"
+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.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
+
+ if use asan && ! use profile; then
+ # TODO: fix these tests to be skipped upstream
+ rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die
+ fi
+
+ # broken with new glibc
+ sed -i -e '/EXPECT_EQ.*ThreadDescriptorSize/d' \
+ lib/sanitizer_common/tests/sanitizer_linux_test.cpp || die
+
+ 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_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+=(
+ # disable use of SDK for the system itself
+ -DDARWIN_macosx_CACHED_SYSROOT=/
+ )
+ 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-sanitizers/compiler-rt-sanitizers-12.0.0.9999.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.0.9999.ebuild
index 1e3a849c675a..81547ee16054 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.0.9999.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.0.9999.ebuild
@@ -12,9 +12,20 @@ HOMEPAGE="https://llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="$(ver_cut 1-3)"
KEYWORDS=""
-IUSE="+clang +libfuzzer +profile +sanitize test +xray elibc_glibc"
-# FIXME: libfuzzer does not enable all its necessary dependencies
-REQUIRED_USE="libfuzzer? ( || ( sanitize xray ) )"
+IUSE="+clang test elibc_glibc"
+# base targets
+IUSE+=" +libfuzzer +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 )
+ gwp-asan? ( scudo )
+ ubsan? ( cfi )"
RESTRICT="!test? ( test ) !clang? ( test )"
CLANG_SLOT=${SLOT%%.*}
@@ -62,6 +73,20 @@ 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
+
+ if use asan && ! use profile; then
+ # TODO: fix these tests to be skipped upstream
+ rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die
+ fi
+
llvm.org_src_prepare
}
@@ -75,6 +100,14 @@ src_configure() {
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
@@ -87,7 +120,7 @@ src_configure() {
-DCOMPILER_RT_BUILD_CRT=OFF
-DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
-DCOMPILER_RT_BUILD_PROFILE=$(usex profile)
- -DCOMPILER_RT_BUILD_SANITIZERS=$(usex sanitize)
+ -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}"
-DCOMPILER_RT_BUILD_XRAY=$(usex xray)
-DPython3_EXECUTABLE="${PYTHON}"
diff --git a/sys-libs/compiler-rt-sanitizers/metadata.xml b/sys-libs/compiler-rt-sanitizers/metadata.xml
index 8f5cbb8b29ad..5f139415fce4 100644
--- a/sys-libs/compiler-rt-sanitizers/metadata.xml
+++ b/sys-libs/compiler-rt-sanitizers/metadata.xml
@@ -11,5 +11,20 @@
<flag name='profile'>Build profiling runtime.</flag>
<flag name='sanitize'>Build sanitizer runtimes.</flag>
<flag name='xray'>Build XRay runtime.</flag>
+
+ <flag name='asan'>Build Address Sanitizer runtime.</flag>
+ <flag name='dfsan'>Build Data Flow Sanitizer runtime.</flag>
+ <flag name='lsan'>Build Leak Sanitizer runtime.</flag>
+ <flag name='msan'>Build Memory Sanitizer runtime.</flag>
+ <flag name='hwasan'>Build Hardware ASAN runtime.</flag>
+ <flag name='tsan'>Build Thread Sanitizer runtime.</flag>
+ <flag name='ubsan'>
+ Build Undefined Behavior Sanitizer runtime.
+ </flag>
+ <flag name='safestack'>Build SafeStack runtime.</flag>
+ <flag name='cfi'>Build Control Flow Integrity runtime.</flag>
+ <flag name='scudo'>Build Scudo Hardened Allocator.</flag>
+ <flag name='shadowcallstack'>Build ShadowCallStack.</flag>
+ <flag name='gwp-asan'>Build GWP-ASAN runtime.</flag>
</use>
</pkgmetadata>
diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest
index 3cade7fae36d..017e6fa5d30d 100644
--- a/sys-libs/compiler-rt/Manifest
+++ b/sys-libs/compiler-rt/Manifest
@@ -1,11 +1,13 @@
DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151
DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2
DIST llvmorg-11.0.1-rc1.tar.gz 122777435 BLAKE2B 23b520d33cf4b641027ee52bb10c6171d60356c9167d5b94012929e6e547c526cda1a6177c295ed19592dfb83b020f63b2cef4cabc70ce9a2a8e098fe654a3cd SHA512 605c7bbff1610f335be8ea4f1204df797fed21185a54c77565f6ff2d00794d1967e9c5fab7c87633e242f2f999bdffb76da83f756d261c1ca476114599409ae1
+DIST llvmorg-11.0.1-rc2.tar.gz 122793330 BLAKE2B 5d42f7bd7ba253ac3ca08cf9901c79db5b51b86f0f66c8e63f4f9808ca5fb72cacccfad098b4f6701a34b0d77bdd66fe3839a3962a251eae53776240a2e13b06 SHA512 acda5a5be38cc8aae730c34cd1bb8f29a82e2ed3dd9734ca293ff092d5b30c8c255ab3054245b8f6ed541d5dbf8bc674b744bb2f81788db8826f69a204dda0c3
DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59
EBUILD compiler-rt-10.0.1.ebuild 2770 BLAKE2B 68ee449ac28f519a2cc0ec03b73aac5c770064f0350b5d1803a861386ac6b295947da9362b26dd6cffd90985f429beaf382ed949fc56da32184c9dab3aaff843 SHA512 2aea27ca4b4ccdc9c295b82c5e19558653945f87aaca03e50158a584044f8b0694f99ceb6c27e9fc5eb4e89cbc7851a4953e5a0a1494a49c46da7079962e3b14
EBUILD compiler-rt-11.0.0.ebuild 2836 BLAKE2B 675ad6959c74f5d91c85129bb7ec8b3e93445deb4db3b7a4b1e8ce0e93b87081caa96dab4bb06ac67f9a0af318adcddfb17141562e4dde074d942ddaf3e586b1 SHA512 e557ba5f6511817caf5e6bea44835c28fbe6720e62d2ebe3fb22f758678f4054598e0770bdbfc2b3714dc8153fa350b07fba8cc8f42fb98be6cd849a1ea1de6e
EBUILD compiler-rt-11.0.1.9999.ebuild 2760 BLAKE2B 917e1260aafc22fa4193d4881e52a4c686d5a8673f6958261986b02f3987f159206843e3b62221e2a2af53192f9ef905c9edcf7311befbadb55c9a4b883525f0 SHA512 91498187bf9629e9f58e4b090cfb237c548c4f08b7a284d3a5df29d6803efd9aeb352a4ef6c6ddb23b9bac2f22dd0a06c75ac7039addd1ee920d08fc3a84cfa3
EBUILD compiler-rt-11.0.1_rc1.ebuild 2760 BLAKE2B 917e1260aafc22fa4193d4881e52a4c686d5a8673f6958261986b02f3987f159206843e3b62221e2a2af53192f9ef905c9edcf7311befbadb55c9a4b883525f0 SHA512 91498187bf9629e9f58e4b090cfb237c548c4f08b7a284d3a5df29d6803efd9aeb352a4ef6c6ddb23b9bac2f22dd0a06c75ac7039addd1ee920d08fc3a84cfa3
+EBUILD compiler-rt-11.0.1_rc2.ebuild 2760 BLAKE2B 917e1260aafc22fa4193d4881e52a4c686d5a8673f6958261986b02f3987f159206843e3b62221e2a2af53192f9ef905c9edcf7311befbadb55c9a4b883525f0 SHA512 91498187bf9629e9f58e4b090cfb237c548c4f08b7a284d3a5df29d6803efd9aeb352a4ef6c6ddb23b9bac2f22dd0a06c75ac7039addd1ee920d08fc3a84cfa3
EBUILD compiler-rt-12.0.0.9999.ebuild 2760 BLAKE2B 917e1260aafc22fa4193d4881e52a4c686d5a8673f6958261986b02f3987f159206843e3b62221e2a2af53192f9ef905c9edcf7311befbadb55c9a4b883525f0 SHA512 91498187bf9629e9f58e4b090cfb237c548c4f08b7a284d3a5df29d6803efd9aeb352a4ef6c6ddb23b9bac2f22dd0a06c75ac7039addd1ee920d08fc3a84cfa3
EBUILD compiler-rt-9.0.1.ebuild 2916 BLAKE2B 4725960cfa3ff697f1b17d709c7a9f463aa8aaf2da33592b6c5d129fc4acb51181a4712c1afce01c0b97e441685cc5932524f02cbacb339f5c7c315813e4ec72 SHA512 2b038aeb653043691f046ae2930cac58ada17ece1f7da2699e1e9ce4dbe1903f21366ca82cb3d08605875f0b24fc0a9707bbde2ea6a039c080f0d54268071f0f
MISC metadata.xml 333 BLAKE2B 24e417cb7b8ab7730b18a3e1e5e29d008042e4fd53cf1ba3cc9d18719160b0410854ddfae52315c690138e61fb0196015968fa09b98af6470cd8bdecc09205ef SHA512 97daa7452a696b7297c47f5f637a33425f82b51426060a75b3de6bc812f9ddcd3c70ae068bc3e88ce937ab1eb10d59b0ab48a2d2c0397a112b8b6a754e333bdc
diff --git a/sys-libs/compiler-rt/compiler-rt-11.0.1_rc2.ebuild b/sys-libs/compiler-rt/compiler-rt-11.0.1_rc2.ebuild
new file mode 100644
index 000000000000..38a2cbc81fbb
--- /dev/null
+++ b/sys-libs/compiler-rt/compiler-rt-11.0.1_rc2.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..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.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() {
+ llvm_pkg_setup
+ 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_PROFILE=OFF
+ -DCOMPILER_RT_BUILD_SANITIZERS=OFF
+ -DCOMPILER_RT_BUILD_XRAY=OFF
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+ )
+
+ if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then
+ mycmakeargs+=(
+ # disable use of SDK for the system itself
+ -DDARWIN_macosx_CACHED_SYSROOT=/
+ )
+ 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/cygwin-crypt/Manifest b/sys-libs/cygwin-crypt/Manifest
index 409223afac29..0825c52c894f 100644
--- a/sys-libs/cygwin-crypt/Manifest
+++ b/sys-libs/cygwin-crypt/Manifest
@@ -1,3 +1,3 @@
DIST cygwin-crypt-1.4.tar.bz2 4446 BLAKE2B a0644f036c55fd169a1d708d51fc7d3b1cc0a94fba845319357b4251eb379aa799ed39ba81b2551774c870944b19e6e1053453e1e99b48a93ed5a62272c37e25 SHA512 1ecc4256730f13161a651cfdf71b27c1042e6f56fb859943426c371d4b37b8b2bd6ea768f86e45f7b8cf3478e97ff9578b79e5c37178c8794ff9b87799f2cab3
-EBUILD cygwin-crypt-1.4.ebuild 869 BLAKE2B ffac7bde9e94542ac635d5b60cd4f9268d7516dabbdac58b5646e8dbe7ed20c1c31e05e2ee8f88856271d17fd3caf387f98c5f37ee2a52fbf4c45febdcbc91f2 SHA512 c60bf76fab75226c4266e837d4e4eb5bcb572bad6cefdd49431f3eebebac91f1434ffea5c90843b0bc15b3b7fcc2eeec4fcaaa32c7129e4ed93cc16b4340c3de
+EBUILD cygwin-crypt-1.4.ebuild 854 BLAKE2B 82868e38fc34dc233ecd8b72dad6b24c82c2ac142d15807c4e64c4e48fbe3035b8e7c10341834c585f306395f60ae3d44243b72c4cfac9066884e92105d323cf SHA512 725f80eb0acf1d0a30ff8a0afef0abb67bf21ce32b1f86f9066f42eeb37b2d324373dad87709567454f9c90790df9a5bc7b02103476012ca35f113f64a9d2864
MISC metadata.xml 517 BLAKE2B 08aee319193ca3b6efbeb61157a841554e9fe9891476ffad4addfc8156cc5f7844201fc7ce2eabca6c0dba72792959b90850bd58df198638c108e980baaa10fb SHA512 3434a72bc3776b411a6fa9cb4948a77c510002e145fb2986552731a1da3fb16152bcca762e72c12de5369a66ba9add93848783364f30e68b0de1cefbd2458e2c
diff --git a/sys-libs/cygwin-crypt/cygwin-crypt-1.4.ebuild b/sys-libs/cygwin-crypt/cygwin-crypt-1.4.ebuild
index 1b97a32993a0..37c9ff3d46f3 100644
--- a/sys-libs/cygwin-crypt/cygwin-crypt-1.4.ebuild
+++ b/sys-libs/cygwin-crypt/cygwin-crypt-1.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -16,7 +16,7 @@ SRC_URI="mirror://gentoo/${P}.tar.bz2"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~x64-cygwin ~x86-cygwin"
+KEYWORDS="~x64-cygwin"
IUSE=""
DEPEND=""
diff --git a/sys-libs/darwin-libc-headers/Manifest b/sys-libs/darwin-libc-headers/Manifest
deleted file mode 100644
index 4fede322d843..000000000000
--- a/sys-libs/darwin-libc-headers/Manifest
+++ /dev/null
@@ -1,38 +0,0 @@
-DIST CommonCrypto-60092.50.5.tar.gz 606900 BLAKE2B 1b6ab62b1a9fac03c4568f3c0f2a64a2fdccc6f89f0f9aadce4ac9a1abd8ceb780c6ff8ee161bc3b1fd386b602a54c79590ee0c163e3b66a2d49276875a8448d SHA512 52d8108ac7951b3b588069338390d69afa581aecebc85130a46ba8a73316cc1964fe3e0251a703e769a420fcd11c056b03e952301785218dfdc5a31cdb971e2c
-DIST CommonCrypto-60118.220.1.tar.gz 625670 BLAKE2B 8287100e973b7fd69c2f0a9c456b33379f66dd7f27923a3b5a4af1621f8166c0f5ccc6db560bc418067ca3c2dc6d6a7ea33276024deafbd7d53e1b475501d1a7 SHA512 0f109b5b25e8036cf35946028fb078c47e6d9c966380848efe320ee5e53e197a3aa678b998d83c6537d82f1abd20a73bebbb66a09b788a617f573538d81dc342
-DIST CommonCrypto-60118.50.1.tar.gz 622283 BLAKE2B 8f1726190ef67f8777516d6b760846fcacaa61019dc54141bdc2ed06cb955b717e53cface03a87a01201c2e98740d283cf5ecba87e76f62a9d93863cc6138167 SHA512 fa1bd62acf0cd2912e082618024f26efc0e674dc1f4bf925d1c6ebc65eaf224673548bcef26f982892c3b032a0f52183ae4717bc0fefc3c0977a912e22dfeab4
-DIST Libc-1158.50.2.tar.gz 1876052 BLAKE2B 0bc7d8cdc343c6c67d54f4a15b1add6aafb59526ab19021cacc892b2ac652b5a8faa7d9319e5009d7097944f424cfce8b006fc7d8d3ec34b66c6c5b307056e91 SHA512 8d6bf09122f47184ce588ee1b6388fe7cf7cb9dc689310ac7ec56f616cecacc3667f76bfde4325e2a5558ea56ee20d89c626ff9ecd4e5cb7c466220290601a9c
-DIST Libc-1244.50.9.tar.gz 1989821 BLAKE2B 96d8be589318523d6a7f39c46a7a59bf8652e4924e1442130926ab285e4fb2a8f09bd674b304feae1907f747ab7bf3dffee1d1e990ce40ba1c5a4b8c03e5087c SHA512 425229c77d24b2fb6e69cd036460642191c7c6c7887b1e84f2c8f78a2791624a04c9d34bd93443ee7cf09381b0b5043db3bf25bb5f75bff5dd2c042ac1bf7882
-DIST Libc-1272.250.1.tar.gz 2020635 BLAKE2B 7ec6be323928e169a23de08858cfb8f42f0289710538163a43c8543337ad5b1eef214d858388700d773ec75adef6010a94c760a6c0fdb0892a5159d7667d8401 SHA512 787934b4c25cb27dd624d73553baf1af93dee1568535326f8499d2fecf30b396c8e3e2c5f060ec00b9ed098ad1143b3fe1c272b234533fb8889585ae1decab45
-DIST Libinfo-503.50.4.tar.gz 283084 BLAKE2B 69f4a32910bcdd4870c23d54916b913336ea4e13430d23d94aa728958f4da54930702c332c427155501cb6c3929a49d585db401971dbe093e05ade18c57ea316 SHA512 145ad52b14050126da9f3e17507a7e3a83e962ac796d4f014b6b44554e33a499723fdf4f6912b1457e435997cff4f5fc29f1d7424397169c5709fce762fda9d5
-DIST Libinfo-517.200.9.tar.gz 306337 BLAKE2B da91c8d79997fc04eaaeca21b5dc90336c2d43dda4641fb91085f5a32157ab50ef022886b5b4ff09e2c306a8f887c4280a045fb01c04ca86f3e59d2bd5cf8d66 SHA512 8c2f72484f584312083095b8e8a373ae349e92bca2cacebd460e6e7c885d98d5dc3975eb37c348f6e65ff77af1990d3111468613af105b8605c7d575d8119eaa
-DIST Libinfo-517.30.1.tar.gz 293825 BLAKE2B dd19937b9c8419e953ff1e22f73dc89a9328706c87284fa6f138e23c97c236600f20e71d1926607211cc82766d3c3a9113381f2471046aceb01a56d3d332f2fb SHA512 48313e8ce4822ad61023faf364d7d64d7f15f8b70930d3052c321c9b555c4af20fd6563ae4b890e0504a1ca141423635a1bb7561cb82123cb0593ccafec6f915
-DIST copyfile-138.tar.gz 52035 BLAKE2B be62d549a45d7f8140d10a3f5857e8d445e5b968e05b82ec73668176047a94b7799b41450223e32406c3ba6677a1a6c694eb8b0ad839a25c37dd4657c176e5d7 SHA512 455fb02b8f5e03a751ebaf05af7cbf2efa60ce5a8084bb3953044abf71ec6b75f394fa5f7ec7fac76532a4216b0930100aee972963cfada83eed73717a881fd6
-DIST copyfile-146.200.3.tar.gz 65045 BLAKE2B 4e5b3524e6e5a54046a68b04d0277645d6ba5be466e669cbdd7a78d41c3d1a69e222cea55198ae53c5803c96fd6ba7ab4543d0bdc42b5cc99054815a84de664f SHA512 555c320eeb27373f68f1a8844ead0614f734e47f7a3d87f867663fc8d6a9e6fa295c1159f9be4e32af2f0933f3e56dd52288a3b2ff970966de5436d2ac054f2f
-DIST copyfile-146.50.5.tar.gz 64621 BLAKE2B 1bbb368dff263e43ebd97802310f98af2592c5a04279297a645e042179f86815376b393b44cba60be5d25e89a15e3b58751da9fd30ccb923d57d62f9c08808d3 SHA512 e09cacf3c284ca3460cfc8263d75b810c2e853a6a134ff3568af86394c90f04d866ba8d1e5996a2e009034fdd9e44162b04faf2fcefe56aeb12e5d128b0a678f
-DIST darwin-libc-headers-10.12-r2.tar.gz 3867106 BLAKE2B 6ac9399716da731913e51b141935496e9ce5e596cc58b971224b39b3346c961e8b2143e88c279736a557c27e64dc286436e662b4fb63183440948d31ab761b52 SHA512 7098832b46fd79d3a5255711a8825c63bea5f513c7646363912b08203d24c30b334cb9745cf84732ea558e50f71c0327eca53c5a8bc81daafffb10c6a43bd3f1
-DIST darwin-libc-headers-10.13-r2.tar.gz 3653319 BLAKE2B 96874e314adaafe129fbd35b743ae7e3f4a258ee3a21872cc197c1fe9244f74309321664fecdd0591583425f0e4bad2eb2bc024ae5eb04a864e27db14a4cf39f SHA512 a41047db4740933e961f433660661fc84fd7a124e5ec9806859042ec32680075f35953b96a58576b494ac0c5add7abd91522b1111b862b23fef7d12049e35e5b
-DIST darwin-libc-headers-10.14-r2.tar.gz 3984239 BLAKE2B 6c0681691dffe9e105b05a63d7a9022f0085dd89154e721c11dbadedcb2382bfc029293a6c510288ea5196f69a763a7eee34a5b5224d1072bb41b4125d224f2d SHA512 422139e55ef36217b38f8ee7f3b8dc78ca127358b5fcfbe2906c22597aaa52a55c576830cf19528872fb4dc6960a134783292d714c21a8be5b7d664bfafff9b4
-DIST dyld-433.5.tar.gz 632900 BLAKE2B b051aee22eb646942473f698b1f29f9acbc0ab20b0c1a60578123b4db5032290f02301bd2d867724b424b74a08470cdd29b47234063df2d100fd535bb8ec3ed7 SHA512 9479b66e5956a852491e1d080d45ff4c9254aa5bf890c634a6cf973f6e45862d282e00ba81c6ff4c849a643585920b654964ed4dde280a73849a84dd8f7be830
-DIST dyld-551.4.tar.gz 832297 BLAKE2B e65c5b2ed90af6ec94f1295efc984404af99f0e5dc666bfc854379f13fd2e98b8048fae84b7bc8864fe27112abf12f741a33cc404b18ae7c88b7abd6a1d9e3c6 SHA512 896281c4b2330c92ed538af58f1b60906ed0a9ffa3099a5e8ef9a15b7ed974259bf546fd2ab7562739f2c8cf1fdfb44ea0ea7567092c77f2ea2cab377da064b0
-DIST dyld-655.1.tar.gz 907306 BLAKE2B d0c22abe50575dc80214d2eba8a057068e4e2d7f06f5562e7cdf29293de9c97fffece206d9324ba37c0b98afa583693e2c26fcc91f0ea089720fc960709e93a9 SHA512 7054461b6ff2ba24153f2097516c1273c77ec0fd7edd5108c336bc22990b45eb68974bcd654b9a45724fd631253443f01988e9b1647dc37f8ae5b8d18bb0352d
-DIST libclosure-67.tar.gz 128749 BLAKE2B 2ca085bd3b98bbcad6a10af27fcf058941b755a4f3ff88102ce5bda4293d2f693c06569726ad368c08bceea8997e3ffc4019c21320d64c861d866eb30dc99044 SHA512 b3c5ab14f8e0e60ef11421cc366f6596864d5837ade51a3ef7b9cf2de7958a0dacf6a5a07ee3e6db03bbecc696fce7b60091f5820450b29b447596c04d2d7ee7
-DIST libclosure-73.tar.gz 131448 BLAKE2B fec5d92d6e9ddb338d730eaddc1c83e94e1a16323308abb0531118dffe02f8e50aa85c2721041a17ab4ef3fc15ece3a6f4b5045bca9c4e3cf3d54c2fdd8b42d1 SHA512 9749a5a08b0720eec1acedc60952b0ccc40f9cbfc9a326e0640280e0d017b9d241827bb6c5a9e68077662439877f3bd14082b7972399144bcb723988bb30def1
-DIST libdispatch-1008.220.2.tar.gz 503589 BLAKE2B d09427bbaf5a3c38ad036bb0d05ca3ba548be22bda59829be43db6aaa0509199d088b854326a95494fafd4870b2d00dcf31bd5ea4484b3a37e682c89cd6db781 SHA512 f3df85d1f37449ea8538a3e34f3b90abd939a6a3ff9ea0882a129597ab024773f5499bee173bf8062cbf5c48f8a1f52dbbebab12f5abb1248ddc78edc66f79ed
-DIST libdispatch-703.50.37.tar.gz 415675 BLAKE2B a30695458f274bb869556837ee69f0f47839fd8741cb446c0c9513ed0d971f44a7eb55d7276db34b5ac3409b68ec283576ea547f12052cfd656fc110ce95cfaf SHA512 a23d3850dc7b6b6e3ef09764a202d6600fc2f238b8dbfe9b13e63b6aae2336dc800d86d987afab88d9c4493d30824468a31a48997b2cfbd2d743e7f1e6dc28cf
-DIST libdispatch-913.60.2.tar.gz 463117 BLAKE2B ec8d90788c86853bd8b65ec953b0e96c57e7a58765d3cd2e53e6c6aae4effa16ae16d18b44e25121717e26774f031391e977d6adaae796192b1f14acdc1dbfcd SHA512 29520016db9fd89457f76d86d889834140e211b6da35bd370178814e97e8f6ffce4b36d96cf41af1280846cdff0ba4ea6ca58d0c63e29ab1a49595c6e52030f4
-DIST libmalloc-116.50.8.tar.gz 186880 BLAKE2B 00ec1cf6dc494fad1e817d942323da86f4de6ab35d92702b6c98b7b0fdb765e756f566298d3369165b0cdf687d43a655be64e3015f884c4d1cd7b7a286669de6 SHA512 a2a49a1d12e66618b124917617c942a51ac36b7b4a12c218b5c979b9d05db822949fc8ffada8901f551f5c2e7fce9abf1d3aeb4a6507f5870a9eab5b9f69ec18
-DIST libmalloc-140.50.6.tar.gz 208453 BLAKE2B 40b7f0052e81bc7862b7bffd302a7868f1f0e6dc11c799370842457635d32bbc61e75753b2b6ebaf2dceaf26b43d7bf4efc718df91c91e0f5572929cbc9bed1d SHA512 9d39f9758f85cfa61835f9deaa4ae4958569aac0da006c5f0e87aaab2cd902b60f60e537fa0d9250401b7177f8c186e8c8e6498b48ee3eaf856daf103bf61412
-DIST libmalloc-166.220.1.tar.gz 277584 BLAKE2B 2fee2a98aa0babc958726522639ddd135b4383bb8328a4d879481e27ec051bd530fc540ba2d959504c457a67536197632e28384959107b103bb466f96223b9ba SHA512 ebbe6d6e5d4cb4e6d928df49c8ab6582e4197ae9b7ed4e1068afd4227ca3e7d22f0d10d47745abcd7f983a75419c8fa7c94d127e3624cee16fa557434b0c3cef
-DIST libplatform-126.50.8.tar.gz 85182 BLAKE2B 3b33b4539acf32358e6288345d33d208fa14fd25d7f1cf8e0af78c6da9c646a57e6f3220f712867d8ffd72e3ffe4ca6f6fce138994c8c825138e7465e4b896d8 SHA512 4c8a15d33aef84075031bf13dc14f1ce31c269ca4117d7249884f980da48ec057f7bf00b75a376f28cf47ff1d03210dbe1bdf2a19b611e5b647c40e10786c7d6
-DIST libplatform-161.50.1.tar.gz 87361 BLAKE2B 569ee093b15a063386dde8c0c7731bc9d1ae7a1377555d83f8c245663d8f79ddcf4287d7cad6c76e519cbc809b4ae0d1698b47f244fe58182eb92b5e1aefa1ce SHA512 d8f47b3eaeaa0600c9df0e11001082f1f211d23ce21c0fa0d7aa86270f4dcb7e7e4691124e9c7618984970c69a4c14c0a3df23a97390dd899130da90ab13a28a
-DIST libplatform-177.200.16.tar.gz 91526 BLAKE2B 699acdef02b7f47995a4c56ecdc28e581e6340eccc851d4a29b4156958e5fb90b4d5f5efc297a988f9de38e7d782cbd5c018509955559161d174ceb25f36a91e SHA512 563f103a8c6ba8cdc36972c0fa412fe82ad8ed347b48472ed3705a39fa17ce19b481e515d999e7493f4d5738551751d247afb16b9fda99357818e795305acf27
-DIST libpthread-218.60.3.tar.gz 186967 BLAKE2B 991569f288813ddebf060c36b7542bd2dab4524f3306b2674f82a7cd452294cc5a2eaab70acc9f13653b36b11439b890134de4f3aadeb38a60a5d10f6932b952 SHA512 3322e4439c72924cd9dda5739c5579e693488636d4ad1f4ba3e94a3f05cfeb0333450a48b317fb2e66e114dacb9acd76c8958c822e7038a4899372263b8ab679
-DIST libpthread-301.50.1.tar.gz 208501 BLAKE2B d9056fc4132e453ed21b054761a3b78f4675258b445fe00949a7aec34465c336d672ffd7a41bbe1f91f071ced1ef2acfbbe1fd6fa79f4bcf7ac089a78b84d010 SHA512 c4f9a4d1e4dcab72a976d5e6272c2d9a9b8e4335312563931d726369dd5cda71e185eeca28cd50e83ed82b8b302af5b7ae40d3b8e147fc426ef1ce17e3f068d8
-DIST libpthread-330.230.1.tar.gz 197145 BLAKE2B 2366a9961862ac5467e48abf1e8a6ab4f240ebb09a8c58a390b49b259aa8ee012017de3a1ab0df6f779f1fc601fe841704c68406ed457f14456041a67038b29a SHA512 6ef2cd2775668ca74f365201b3477e26e6459a2597694d7c12ff203970004abf12deaea7a00b5301ab02344fb390e402e99155bf4e28f28db23928cac9f3bf6e
-DIST libunwind-35.3.tar.gz 90002 BLAKE2B d63ab0ae6e66a6f35ec17de9713d3bf4853cd80af218e868762b20dd8a44d42cd9ff8fce1d8c46fca4759144726bbf248a02a5dede5a94a2b75d3b45ddb7d018 SHA512 b7d9a86ef24f1fe9ca14517471e03a910219a229af9f0d4cf94435115971360640451107ba20c93fb1aab788f8b6eb5ed580ee08fdaa990b9fa43e9ae360c6b4
-DIST libunwind-35.4.tar.gz 1094999 BLAKE2B 5ddc3bb3dca0ceb5c979fd55657ad3ca0a4601be5594749d26a461ea61f75891b564ea9b4d60943baafe07f924d3750e857c0cd27154aceb130cada1cc83ff41 SHA512 7fcfaf071c6bfecd1b5dbdae6a24186c9741b2d877eaea9f64158278dc19f84b5bc46f09df2a4b81cf40f6dc91594b5411a0084e9e8fefcdbbfd8b53668f2631
-EBUILD darwin-libc-headers-1158.50.2-r4.ebuild 5176 BLAKE2B c0b3a15ebf53916c6ea2b99b0971e33667ed489c14b5be48774f4e84d6b61a5b7a8ee4a87ff4b1631f30d5db2a1360b1b8b0436902d4ce674cdac337d587dc07 SHA512 2c472e5d9c11913c52021a2dc2ad5185a371fd5cea7a2a40ce5c82248bf1c76c7074bf1de308197b400b5f5938ce7d51d78800a044dfbb9ac36b29ae622884a1
-EBUILD darwin-libc-headers-1244.50.9-r4.ebuild 5180 BLAKE2B c413e9d916a83c730b14a8e8db62ef3f8c1ffd37bddd1d56b364d7d0022752321dacc6cc48db8164aea4fc2b614fb8506f94fa7df9526bfadc6fa73ac5d1d9c6 SHA512 6b733d866b6fd89b354f00f555e635d1f91f8a6ef6ddd1e56a3a4e1c9fa037e88af0936cc0c03390fba42885a059fd50f0ea9d3fbee3fa6e3fb861315086d108
-EBUILD darwin-libc-headers-1272.250.1-r4.ebuild 5146 BLAKE2B 825ca5005551b44989fbcdef8249d942b30b91e634ef481a83a33b0b45c59d7e84fa27ebc572c60f17b9f26f3d97094966cdb292b3f33765f1e0f9cceefe5836 SHA512 26d3425807ba7e57579789b5e7475c3be50924d998cf94e0e8f80b75379e7bda31c52ea5b86b34c844f1a81b2865fd7838c2fe194842a25289abf6723870224b
-MISC metadata.xml 418 BLAKE2B 19bab44e3e375b0dce49cd07231049e9ac6eecdeb66761c105fb48680b5ceba06f760dff1ba64274a05b62567a9575992e5bd65264fadeddfb33118040a953dc SHA512 acdf28167fe5c74ac934fa673bd9d73ddf3e8b25c355e9a60199d94faa8f3b32b629d0a5139dafaef0e157e19cd04b8897b9ea3d8943301b471b8eed3b7a3032
diff --git a/sys-libs/darwin-libc-headers/darwin-libc-headers-1158.50.2-r4.ebuild b/sys-libs/darwin-libc-headers/darwin-libc-headers-1158.50.2-r4.ebuild
deleted file mode 100644
index 622f6d899e35..000000000000
--- a/sys-libs/darwin-libc-headers/darwin-libc-headers-1158.50.2-r4.ebuild
+++ /dev/null
@@ -1,156 +0,0 @@
-# Copyright 2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-IPV=503.50.4
-CPV=60092.50.5
-MPV=116.50.8
-PPV=218.60.3
-LPV=126.50.8
-UPV=35.3
-OPV=67
-DPV=433.5
-APV=703.50.37
-FPV=138
-OSX=10.12
-DESCRIPTION="Darwin system headers from Libc ${PV}, macOS ${OSX}.6"
-HOMEPAGE="https://opensource.apple.com/source/Libc"
-SRC_URI="https://opensource.apple.com/tarballs/Libc/Libc-${PV}.tar.gz
- https://opensource.apple.com/tarballs/Libinfo/Libinfo-${IPV}.tar.gz
- https://opensource.apple.com/tarballs/CommonCrypto/CommonCrypto-${CPV}.tar.gz
- https://opensource.apple.com/tarballs/libmalloc/libmalloc-${MPV}.tar.gz
- https://opensource.apple.com/tarballs/libpthread/libpthread-${PPV}.tar.gz
- https://opensource.apple.com/tarballs/libplatform/libplatform-${LPV}.tar.gz
- https://opensource.apple.com/tarballs/libunwind/libunwind-${UPV}.tar.gz
- https://opensource.apple.com/tarballs/libclosure/libclosure-${OPV}.tar.gz
- https://opensource.apple.com/tarballs/libdispatch/libdispatch-${APV}.tar.gz
- https://opensource.apple.com/tarballs/copyfile/copyfile-${FPV}.tar.gz
- https://opensource.apple.com/tarballs/dyld/dyld-${DPV}.tar.gz
- https://dev.gentoo.org/~grobian/distfiles/${PN}-${OSX}-r2.tar.gz"
-
-LICENSE="APSL-2"
-SLOT="${OSX}"
-KEYWORDS="~x64-macos"
-IUSE="+man"
-
-BDEPEND="sys-apps/darwin-miscutils"
-
-S=${WORKDIR}/Libc-${PV}
-
-src_prepare() {
- default
-
- # convert BSD find to GNU find syntax
- sed -i \
- -e 's/find -E ${SRCROOT}/find ${SRCROOT} -regextype posix-extended/' \
- xcodescripts/manpages.sh || die
- chmod 755 xcodescripts/manpages.sh || die
-
- # drop ownership stuff and use soft-links
- sed -i \
- -e 's/-o "$INSTALL_OWNER" -g "$INSTALL_GROUP"//' \
- -e 's/ln -hf/ln -sf/' \
- "${WORKDIR}"/Libinfo-${IPV}/xcodescripts/install_files.sh \
- "${WORKDIR}"/copyfile-${FPV}/xcodescripts/install_files.sh || die
-
- # add libmalloc manpage stuff to Libc to automate the installation
- cp "${WORKDIR}"/libmalloc-${MPV}/man/*.3 man/ || die
- cat "${WORKDIR}"/libmalloc-${MPV}/man/manpages.lst \
- >> man/manpages.lst || die
-
- # produce softlinks when installing libpthread manpages, don't do
- # ownership or /usr/local stuff
- sed -i \
- -e 's/ln -fh/ln -fs/' \
- -e '/chmod/d' -e '/chown/d' \
- -e '/\/usr\/local\/share/d' \
- "${WORKDIR}"/libpthread-${PPV}/xcodescripts/install-manpages.sh || die
-}
-
-src_compile() {
- : ; # nothing to do
-}
-
-src_install() {
- run_xcode_ish() {
- env ARCHS="x86_64 i386" \
- PLATFORM_NAME=macosx \
- VARIANT_PLATFORM_NAME=macosx \
- DERIVED_FILES_DIR="${T}" \
- SRCROOT="${S}" \
- DSTROOT="${ED}" \
- PUBLIC_HEADERS_FOLDER_PATH="/usr/include" \
- PRIVATE_HEADERS_FOLDER_PATH="remove-me" \
- "${BASH}" "$@"
- }
-
- run_xcode_ish ./xcodescripts/headers.sh || die
- if use man ; then
- run_xcode_ish ./xcodescripts/manpages.sh || die
- for f in "${ED}"/usr/share/man/man*/* ; do
- [[ -e ${f} ]] || rm "${f}"
- done
- fi
-
- pushd "${WORKDIR}"/Libinfo-${IPV} > /dev/null || die
- run_xcode_ish ./xcodescripts/install_files.sh || die
- popd > /dev/null || die
-
- if use man ; then
- pushd "${WORKDIR}"/copyfile-${FPV} > /dev/null || die
- run_xcode_ish ./xcodescripts/install_files.sh || die
- popd > /dev/null || die
- fi
-
- insinto /usr/include
- doins -r "${WORKDIR}"/libmalloc-${MPV}/include/malloc
- doins -r "${WORKDIR}"/libpthread-${PPV}/pthread
- doins -r "${WORKDIR}"/libplatform-${LPV}/include/*
- doins -r "${WORKDIR}"/libunwind-${UPV}/include/*
- doins -r "${WORKDIR}"/${PN}-${OSX}/include/*
- doins "${WORKDIR}"/libclosure-${OPV}/Block.h
- doins "${WORKDIR}"/dyld-${DPV}/include/dlfcn.h
- doins "${WORKDIR}"/copyfile-${FPV}/copyfile.h \
- "${WORKDIR}"/copyfile-${FPV}/xattr_flags.h
-
- insinto /usr/include/sys
- doins "${WORKDIR}"/libpthread-${PPV}/sys/qos.h
- doins -r "${WORKDIR}"/libpthread-${PPV}/sys/_pthread
-
- insinto /usr/include/mach-o
- doins "${WORKDIR}"/dyld-${DPV}/include/mach-o/dyld{,_images}.h
-
- insinto /usr/include/CommonCrypto
- doins "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonCrypto.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonCryptoError.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonCryptor.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonDigest.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonHMAC.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonKeyDerivation.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonRandom.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonSymmetricKeywrap.h
-
- insinto /usr/include/dispatch
- doins "${WORKDIR}"/libdispatch-${APV}/dispatch/*.h \
- "${WORKDIR}"/libdispatch-${APV}/dispatch/darwin/module.modulemap
- insinto /usr/include/os
- doins "${WORKDIR}"/libdispatch-${APV}/os/object.h
-
- insinto /Frameworks
- doins -r "${WORKDIR}"/${PN}-${OSX}/Frameworks/*.framework
-
- run_xcode_ish \
- "${WORKDIR}"/libpthread-${PPV}/xcodescripts/install-symlinks.sh || die
-
- S="${WORKDIR}"/libpthread-${PPV} run_xcode_ish \
- "${WORKDIR}"/libpthread-${PPV}/xcodescripts/install-manpages.sh || die
-
- ln -s ../nameser.h "${ED}"/usr/include/arpa/nameser.h || die
-
- rm -Rf "${ED}"/remove-me "${ED}"/System "${ED}"/usr/local || die
- use man || rm -Rf "${ED}/usr/share/man"
-
- # drop conflicting header (db is antiquated)
- rm "${ED}"/usr/include/db.h || die
-}
diff --git a/sys-libs/darwin-libc-headers/darwin-libc-headers-1244.50.9-r4.ebuild b/sys-libs/darwin-libc-headers/darwin-libc-headers-1244.50.9-r4.ebuild
deleted file mode 100644
index a7a635ddd3b4..000000000000
--- a/sys-libs/darwin-libc-headers/darwin-libc-headers-1244.50.9-r4.ebuild
+++ /dev/null
@@ -1,156 +0,0 @@
-# Copyright 2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-IPV=517.30.1
-CPV=60118.50.1
-MPV=140.50.6
-PPV=301.50.1
-LPV=161.50.1
-UPV=35.3
-OPV=67
-DPV=551.4
-APV=913.60.2
-FPV=146.50.5
-OSX=10.13
-DESCRIPTION="Darwin system headers from Libc ${PV}, macOS ${OSX}.6"
-HOMEPAGE="https://opensource.apple.com/source/Libc"
-SRC_URI="https://opensource.apple.com/tarballs/Libc/Libc-${PV}.tar.gz
- https://opensource.apple.com/tarballs/Libinfo/Libinfo-${IPV}.tar.gz
- https://opensource.apple.com/tarballs/CommonCrypto/CommonCrypto-${CPV}.tar.gz
- https://opensource.apple.com/tarballs/libmalloc/libmalloc-${MPV}.tar.gz
- https://opensource.apple.com/tarballs/libpthread/libpthread-${PPV}.tar.gz
- https://opensource.apple.com/tarballs/libplatform/libplatform-${LPV}.tar.gz
- https://opensource.apple.com/tarballs/libunwind/libunwind-${UPV}.tar.gz
- https://opensource.apple.com/tarballs/libclosure/libclosure-${OPV}.tar.gz
- https://opensource.apple.com/tarballs/libdispatch/libdispatch-${APV}.tar.gz
- https://opensource.apple.com/tarballs/copyfile/copyfile-${FPV}.tar.gz
- https://opensource.apple.com/tarballs/dyld/dyld-${DPV}.tar.gz
- https://dev.gentoo.org/~grobian/distfiles/${PN}-${OSX}-r2.tar.gz"
-
-LICENSE="APSL-2"
-SLOT="${OSX}"
-KEYWORDS="~x64-macos"
-IUSE="+man"
-
-BDEPEND="sys-apps/darwin-miscutils"
-
-S=${WORKDIR}/Libc-${PV}
-
-src_prepare() {
- default
-
- # convert BSD find to GNU find syntax
- sed -i \
- -e 's/find -E ${SRCROOT}/find ${SRCROOT} -regextype posix-extended/' \
- xcodescripts/manpages.sh || die
- chmod 755 xcodescripts/manpages.sh || die
-
- # drop ownership stuff and use soft-links
- sed -i \
- -e 's/-o "$INSTALL_OWNER" -g "$INSTALL_GROUP"//' \
- -e 's/ln -hf/ln -sf/' \
- "${WORKDIR}"/Libinfo-${IPV}/xcodescripts/install_files.sh \
- "${WORKDIR}"/copyfile-${FPV}/xcodescripts/install_files.sh || die
-
- # add libmalloc manpage stuff to Libc to automate the installation
- cp "${WORKDIR}"/libmalloc-${MPV}/man/*.3 man/ || die
- cat "${WORKDIR}"/libmalloc-${MPV}/man/manpages.lst \
- >> man/manpages.lst || die
-
- # produce softlinks when installing libpthread manpages, don't do
- # ownership or /usr/local stuff
- sed -i \
- -e 's/ln -fh/ln -fs/' \
- -e '/chmod/d' -e '/chown/d' \
- -e '/\/usr\/local\/share/d' \
- "${WORKDIR}"/libpthread-${PPV}/xcodescripts/install-manpages.sh || die
-}
-
-src_compile() {
- : ; # nothing to do
-}
-
-src_install() {
- run_xcode_ish() {
- env ARCHS="x86_64 i386" \
- PLATFORM_NAME=macosx \
- VARIANT_PLATFORM_NAME=macosx \
- DERIVED_FILES_DIR="${T}" \
- SRCROOT="${S}" \
- DSTROOT="${ED}" \
- PUBLIC_HEADERS_FOLDER_PATH="/usr/include" \
- PRIVATE_HEADERS_FOLDER_PATH="remove-me" \
- "${BASH}" "$@"
- }
-
- run_xcode_ish ./xcodescripts/headers.sh || die
- if use man ; then
- run_xcode_ish ./xcodescripts/manpages.sh || die
- for f in "${ED}"/usr/share/man/man*/* ; do
- [[ -e ${f} ]] || rm "${f}"
- done
- fi
-
- pushd "${WORKDIR}"/Libinfo-${IPV} > /dev/null || die
- run_xcode_ish ./xcodescripts/install_files.sh || die
- popd > /dev/null || die
-
- if use man ; then
- pushd "${WORKDIR}"/copyfile-${FPV} > /dev/null || die
- run_xcode_ish ./xcodescripts/install_files.sh || die
- popd > /dev/null || die
- fi
-
- insinto /usr/include
- doins -r "${WORKDIR}"/libmalloc-${MPV}/include/malloc
- doins -r "${WORKDIR}"/libpthread-${PPV}/pthread
- doins -r "${WORKDIR}"/libplatform-${LPV}/include/*
- doins -r "${WORKDIR}"/libunwind-${UPV}/include/*
- doins -r "${WORKDIR}"/${PN}-${OSX}/include/*
- doins "${WORKDIR}"/libclosure-${OPV}/Block.h
- doins "${WORKDIR}"/dyld-${DPV}/include/dlfcn.h
- doins "${WORKDIR}"/copyfile-${FPV}/copyfile.h \
- "${WORKDIR}"/copyfile-${FPV}/xattr_flags.h
-
- insinto /usr/include/sys
- doins "${WORKDIR}"/libpthread-${PPV}/sys/qos.h
- doins -r "${WORKDIR}"/libpthread-${PPV}/sys/_pthread
-
- insinto /usr/include/mach-o
- doins "${WORKDIR}"/dyld-${DPV}/include/mach-o/dyld{,_images}.h
-
- insinto /usr/include/CommonCrypto
- doins "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonCrypto.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonCryptoError.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonCryptor.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonDigest.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonHMAC.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonKeyDerivation.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonRandom.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonSymmetricKeywrap.h
-
- insinto /usr/include/dispatch
- doins "${WORKDIR}"/libdispatch-${APV}/dispatch/*.h \
- "${WORKDIR}"/libdispatch-${APV}/dispatch/darwin/module.modulemap
- insinto /usr/include/os
- doins "${WORKDIR}"/libdispatch-${APV}/os/object.h
-
- insinto /Frameworks
- doins -r "${WORKDIR}"/${PN}-${OSX}/Frameworks/*.framework
-
- run_xcode_ish \
- "${WORKDIR}"/libpthread-${PPV}/xcodescripts/install-symlinks.sh || die
-
- S="${WORKDIR}"/libpthread-${PPV} run_xcode_ish \
- "${WORKDIR}"/libpthread-${PPV}/xcodescripts/install-manpages.sh || die
-
- ln -s ../nameser.h "${ED}"/usr/include/arpa/nameser.h || die
-
- rm -Rf "${ED}"/remove-me "${ED}"/System "${ED}"/usr/local || die
- use man || rm -Rf "${ED}/usr/share/man"
-
- # drop conflicting header (db is antiquated)
- rm "${ED}"/usr/include/db.h || die
-}
diff --git a/sys-libs/darwin-libc-headers/darwin-libc-headers-1272.250.1-r4.ebuild b/sys-libs/darwin-libc-headers/darwin-libc-headers-1272.250.1-r4.ebuild
deleted file mode 100644
index 8de0fcb25482..000000000000
--- a/sys-libs/darwin-libc-headers/darwin-libc-headers-1272.250.1-r4.ebuild
+++ /dev/null
@@ -1,155 +0,0 @@
-# Copyright 2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-IPV=517.200.9
-CPV=60118.220.1
-MPV=166.220.1
-PPV=330.230.1
-LPV=177.200.16
-UPV=35.4
-OPV=73
-DPV=655.1
-APV=1008.220.2
-FPV=146.200.3
-OSX=10.14
-DESCRIPTION="Darwin system headers from Libc ${PV}, macOS ${OSX}.3"
-HOMEPAGE="https://opensource.apple.com/source/Libc"
-SRC_URI="https://opensource.apple.com/tarballs/Libc/Libc-${PV}.tar.gz
- https://opensource.apple.com/tarballs/Libinfo/Libinfo-${IPV}.tar.gz
- https://opensource.apple.com/tarballs/CommonCrypto/CommonCrypto-${CPV}.tar.gz
- https://opensource.apple.com/tarballs/libmalloc/libmalloc-${MPV}.tar.gz
- https://opensource.apple.com/tarballs/libpthread/libpthread-${PPV}.tar.gz
- https://opensource.apple.com/tarballs/libplatform/libplatform-${LPV}.tar.gz
- https://opensource.apple.com/tarballs/libunwind/libunwind-${UPV}.tar.gz
- https://opensource.apple.com/tarballs/libclosure/libclosure-${OPV}.tar.gz
- https://opensource.apple.com/tarballs/libdispatch/libdispatch-${APV}.tar.gz
- https://opensource.apple.com/tarballs/copyfile/copyfile-${FPV}.tar.gz
- https://opensource.apple.com/tarballs/dyld/dyld-${DPV}.tar.gz
- https://dev.gentoo.org/~grobian/distfiles/${PN}-${OSX}-r2.tar.gz"
-
-LICENSE="APSL-2"
-SLOT="${OSX}"
-KEYWORDS="~x64-macos"
-IUSE="+man"
-
-BDEPEND="sys-apps/darwin-miscutils"
-
-S=${WORKDIR}/Libc-${PV}
-
-src_prepare() {
- default
-
- # convert BSD find to GNU find syntax
- sed -i \
- -e 's/find -E ${SRCROOT}/find ${SRCROOT} -regextype posix-extended/' \
- xcodescripts/manpages.sh || die
-
- # drop ownership stuff and use soft-links
- sed -i \
- -e 's/-o "$INSTALL_OWNER" -g "$INSTALL_GROUP"//' \
- -e 's/ln -hf/ln -sf/' \
- "${WORKDIR}"/Libinfo-${IPV}/xcodescripts/install_files.sh \
- "${WORKDIR}"/copyfile-${FPV}/xcodescripts/install_files.sh || die
-
- # add libmalloc manpage stuff to Libc to automate the installation
- cp "${WORKDIR}"/libmalloc-${MPV}/man/*.3 man/ || die
- cat "${WORKDIR}"/libmalloc-${MPV}/man/manpages.lst \
- >> man/manpages.lst || die
-
- # produce softlinks when installing libpthread manpages, don't do
- # ownership or /usr/local stuff
- sed -i \
- -e 's/ln -fh/ln -fs/' \
- -e '/chmod/d' -e '/chown/d' \
- -e '/\/usr\/local\/share/d' \
- "${WORKDIR}"/libpthread-${PPV}/xcodescripts/install-manpages.sh || die
-}
-
-src_compile() {
- : ; # nothing to do
-}
-
-src_install() {
- run_xcode_ish() {
- env ARCHS="x86_64 i386" \
- PLATFORM_NAME=macosx \
- VARIANT_PLATFORM_NAME=macosx \
- DERIVED_FILES_DIR="${T}" \
- SRCROOT="${S}" \
- DSTROOT="${ED}" \
- PUBLIC_HEADERS_FOLDER_PATH="/usr/include" \
- PRIVATE_HEADERS_FOLDER_PATH="remove-me" \
- "${BASH}" "$@"
- }
-
- run_xcode_ish ./xcodescripts/headers.sh || die
- if use man ; then
- run_xcode_ish ./xcodescripts/manpages.sh || die
- for f in "${ED}"/usr/share/man/man*/* ; do
- [[ -e ${f} ]] || rm "${f}"
- done
- fi
-
- pushd "${WORKDIR}"/Libinfo-${IPV} > /dev/null || die
- run_xcode_ish ./xcodescripts/install_files.sh || die
- popd > /dev/null || die
-
- if use man ; then
- pushd "${WORKDIR}"/copyfile-${FPV} > /dev/null || die
- run_xcode_ish ./xcodescripts/install_files.sh || die
- popd > /dev/null || die
- fi
-
- insinto /usr/include
- doins -r "${WORKDIR}"/libmalloc-${MPV}/include/malloc
- doins -r "${WORKDIR}"/libpthread-${PPV}/pthread
- doins -r "${WORKDIR}"/libplatform-${LPV}/include/*
- doins -r "${WORKDIR}"/libunwind-${UPV}/include/*
- doins -r "${WORKDIR}"/${PN}-${OSX}/include/*
- doins "${WORKDIR}"/libclosure-${OPV}/Block.h
- doins "${WORKDIR}"/dyld-${DPV}/include/dlfcn.h
- doins "${WORKDIR}"/copyfile-${FPV}/copyfile.h \
- "${WORKDIR}"/copyfile-${FPV}/xattr_flags.h
-
- insinto /usr/include/sys
- doins "${WORKDIR}"/libpthread-${PPV}/sys/qos.h
- doins -r "${WORKDIR}"/libpthread-${PPV}/sys/_pthread
-
- insinto /usr/include/mach-o
- doins "${WORKDIR}"/dyld-${DPV}/include/mach-o/dyld{,_images}.h
-
- insinto /usr/include/CommonCrypto
- doins "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonCrypto.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonCryptoError.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonCryptor.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonDigest.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonHMAC.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonKeyDerivation.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonRandom.h \
- "${WORKDIR}"/CommonCrypto-${CPV}/include/CommonSymmetricKeywrap.h
-
- insinto /usr/include/dispatch
- doins "${WORKDIR}"/libdispatch-${APV}/dispatch/*.h \
- "${WORKDIR}"/libdispatch-${APV}/dispatch/darwin/module.modulemap
- insinto /usr/include/os
- doins "${WORKDIR}"/libdispatch-${APV}/os/object.h
-
- insinto /Frameworks
- doins -r "${WORKDIR}"/${PN}-${OSX}/Frameworks/*.framework
-
- run_xcode_ish \
- "${WORKDIR}"/libpthread-${PPV}/xcodescripts/install-symlinks.sh || die
-
- S="${WORKDIR}"/libpthread-${PPV} run_xcode_ish \
- "${WORKDIR}"/libpthread-${PPV}/xcodescripts/install-manpages.sh || die
-
- ln -s ../nameser.h "${ED}"/usr/include/arpa/nameser.h || die
-
- rm -Rf "${ED}"/remove-me "${ED}"/System "${ED}"/usr/local || die
- use man || rm -Rf "${ED}/usr/share/man"
-
- # drop conflicting header (db is antiquated)
- rm "${ED}"/usr/include/db.h || die
-}
diff --git a/sys-libs/darwin-libc-headers/metadata.xml b/sys-libs/darwin-libc-headers/metadata.xml
deleted file mode 100644
index ec8d2a6ebeb4..000000000000
--- a/sys-libs/darwin-libc-headers/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>grobian@gentoo.org</email>
- <name>Fabian Groffen</name>
- </maintainer>
- <maintainer type="project">
- <email>prefix@gentoo.org</email>
- <name>Gentoo Prefix</name>
- </maintainer>
- <use>
- <flag name="man">Install the manpages</flag>
- </use>
-</pkgmetadata>
diff --git a/sys-libs/gdbm/Manifest b/sys-libs/gdbm/Manifest
index 9e6bd1ec6da0..492f19cb5d59 100644
--- a/sys-libs/gdbm/Manifest
+++ b/sys-libs/gdbm/Manifest
@@ -1,5 +1,7 @@
AUX gdbm-1.18.1-gcc-10.patch 1243 BLAKE2B d956231e7df353c203e37054438aa9c50f875e83afbefad5de5d150ee272131a2f4825f330b25a2eaf8aa0e2977645e827934778f77f9752aaa887fe99917b86 SHA512 23dd6edcad930bfffd8248015862674fa12402693a24dea65ba61819d81c9e4eb594223c85483cb6ca5b908967f3509ace2753702118db3e79e7d137b63c00b2
AUX gdbm-1.18.1-gettext.patch 444 BLAKE2B 43496bf0e950e1af452439f881bca4fe5e318717c27692639196884405b0b6ed8e32e056afeda2040f651d26ff1607e69e7f482d023c2b98b7c080b67f3392b2 SHA512 fd033d7de3a1bc53c10115fd27d7001ce1b376126c11f934adf8a25c9df195754835fd707f40c540539553c091fa196115e02bb56cc41702a12a1d4fb1724a52
DIST gdbm-1.18.1.tar.gz 941863 BLAKE2B b7717224e966321d7499a90214bfb62d0402e867db475ed4eddacfe3944d8d9cca1052e41d625f447936bfb3cbd7f1b79cfe6ff435a018efed3d5a7c5eae52d7 SHA512 adf9d6c5bc843ff0d7f88c2a1667d509973b2d63378d0001d7e74cc10aee6ea498a4513cc88ddf78c32ba4db5cb040b2794f4f1b3338c65d9894058850e2f5ef
+DIST gdbm-1.19.tar.gz 967861 BLAKE2B 92a1a9c461c763b01d7abced58800aa8db200ae746240c8ef8079a615d920efe95f0d805a8cfa63d8aa6bcbda637bcb07d98d630f58de5678b7633c3fcf6bf9b SHA512 118c5b8cdf74898bfb7c2100302fedf80096be017bf08e80a44486563cad5d93b93567622f2e7c7aceb72f30460504bd0b4ddfccf34df994ed65166e12ecd495
EBUILD gdbm-1.18.1-r1.ebuild 1400 BLAKE2B a53f0bf252d2cde959c7024b2d04f9f068e1f5f8893681413a12c34474f841632f41d1a3c312874b7575bb7d6a502efa8f8b9954ad78ff51c546efd43b5dd2f3 SHA512 089c88f982a07cc549644a0e09158a6f5ee43f866000bcb899c2ed598adf119b3afca9485a3378cefa2dfb7ac5cff28ccbab6406bc055856abd76f4572c2b9fd
+EBUILD gdbm-1.19.ebuild 1368 BLAKE2B 0691e33553bd7d03724eb659e9d864fc22cfd2c5a8acaa5d6162dfc92b98bbe4a6e06d2a563ffb00517bc2ee5f52867b248be26790acc416785f2919413be1eb SHA512 bf20a4ae4f682518cfaef9c30d516d40b2e7622b976a25a08ea12d29069b677133a730af4e4a7bfe0f1dd173768957b2e65c45091735b729543819adc5c5be4c
MISC metadata.xml 359 BLAKE2B f58b008f8cd663d499052f6d3ea0f658b3816d28c044a4fb8a341a8ce7382104962f58b5ba881bb1dcfc8835cbfc22782471eb48088c547706caa63c35e21e97 SHA512 12da6a0492c269ebff68bf1b1d5ea44b9e011a9197c353157da04283fe865ffff01d6f6c28ecc73b5985ec39959c1c7911b2aa5c3e905929f41521b7cae0b169
diff --git a/sys-libs/gdbm/gdbm-1.19.ebuild b/sys-libs/gdbm/gdbm-1.19.ebuild
new file mode 100644
index 000000000000..6c43e5c486a3
--- /dev/null
+++ b/sys-libs/gdbm/gdbm-1.19.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic multilib multilib-minimal
+
+DESCRIPTION="Standard GNU database libraries"
+HOMEPAGE="https://www.gnu.org/software/gdbm/"
+SRC_URI="mirror://gnu/gdbm/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0/6" # libgdbm.so version
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="+berkdb nls +readline static-libs"
+
+DEPEND="
+ readline? ( sys-libs/readline:0=[${MULTILIB_USEDEP}] )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.18.1-gettext.patch #696838
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+multilib_src_configure() {
+ # gdbm doesn't appear to use either of these libraries
+ export ac_cv_lib_dbm_main=no ac_cv_lib_ndbm_main=no
+
+ local myeconfargs=(
+ --includedir="${EPREFIX}"/usr/include/gdbm
+ $(use_enable berkdb libgdbm-compat)
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ $(use_with readline)
+ )
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ if ! use static-libs ; then
+ find "${ED}" -name '*.la' -delete || die
+ fi
+ mv "${ED}"/usr/include/gdbm/gdbm.h "${ED}"/usr/include/ || die
+}
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index 88934733bfd9..dceb2211b2b2 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -23,6 +23,7 @@ DIST glibc-2.31-patches-9.tar.xz 74712 BLAKE2B 62991b67de4def4cca944e8420d2f0139
DIST glibc-2.31.tar.xz 16676764 BLAKE2B 91df1792345f157265eae405185a81fd4b8ce36d4c2388f44b0d5b1ae38174ea374cbc909cd260770b9f38ea58051da13766d4fa22abf41c2d4a2493257b179b SHA512 735e4c0ef10418b6ea945ad3906585e5bbd8b282d76f2131309dce4cec6b15066a5e4a3731773ce428a819b542579c9957867bb0abf05ed2030983fca4412306
DIST glibc-2.32-patches-2.tar.xz 8588 BLAKE2B 57a85241e3270d14df0332b039a933c5a7ee4d089684d85cca564eeec2d6796735de60b628c5746858757342922d58993d6cf7187ce1d7102b2299ca2cf8513f SHA512 45bbab9e2f813f55cb4a1438dcd9365170b8facff50b11648ba6022da06c20029bb65a4b06fd906af82aa7461b7374f85105fd7eedb7915cec3f1df3779b68a3
DIST glibc-2.32-patches-4.tar.xz 49884 BLAKE2B e7f364123d9c7b6be5f769a5be0c71afe345972d123d44797cb427667faf6c2bb27bb979a6dc949ec7cc522ccccfdaed730c44dd48251375be24f9c96dbd2aca SHA512 41548299b083e60dc3df4bad7135eba09e1f4d83ab94cf1ff0240198261338c87a228f53179bf639d04190710e2913679fa2c682fd5d3e31a1250f91e31b1683
+DIST glibc-2.32-patches-5.tar.xz 53116 BLAKE2B b2bd9d2cc7fb8f7d3cd96d8439842c30aeed4703e69f959a470967d82dc37ce141f747387c793a3ee6663ed8889af1bcca87fd9ca66c51f1099bba36fe6759d5 SHA512 b3b2baf7b25e28cd4884c4d61f1337b3e49c39dc3f6d789e7cb0a1e180402028da9e8a69828940d2e9676a857d6248da1173d45e8465adca4e148bc2bd76cb62
DIST glibc-2.32.tar.xz 16744512 BLAKE2B a56b4afbb35315c5cd6dca0f62e44455dceae3e6e88a8453621f9a5394a60ddf10ca9309b2db0911830c7fd77e3faa5d94694eb94d5b2c05fc5285cef52255da SHA512 8460c155b7003e04f18dabece4ed9ad77445fa2288a7dc08e80a8fc4c418828af29e0649951bd71a54ea2ad2d4da7570aafd9bdfe4a37e9951b772b442afe50b
DIST locale-gen-2.00.tar.gz 7738 BLAKE2B cde6de5ba3400aea24d0d5f1b79471f89f09fb747c8e371e38316c7ada92f967e0865f573f23cb353d82419c234724143c0aeca9eb70eb945dfc581cc7491eb1 SHA512 b609fddb9ec5e567c008841fef3390eddb5d6e7699a8271b3b8c0ade1b44b0ac2e5d1daa8b9acabf3432e3b88110b538a96f209b1ad0f9e988b7efce66606dff
DIST locale-gen-2.10.tar.gz 7747 BLAKE2B 49f569c5ae5260fca128503bc6f22d6f6f1cda817920c41fdadadf1527bbb4f3eb161f79fa729830666a4673e9092f99f4685ec8fcac8ddea0b8242bca9c1f4f SHA512 e350e60d458d67638e3090711fca05af6fafac06c51b97648244549f8a0621dab7543f09dc7ad4c62392f13bdae8e5875dc6d0b6c3d83efc29d116bc2eef92db
@@ -33,7 +34,8 @@ EBUILD glibc-2.30-r9.ebuild 43267 BLAKE2B 5705e5c2c6558d1eecb0b1df532512cda073e1
EBUILD glibc-2.31-r6.ebuild 44382 BLAKE2B 232d74149e6028963993873c373e1fc744e4b0a3eb33aed47cd045503d55c2a77836c5bf7a96a3496c9d2d863a691ae1268f62d3f029a5cdd417c9492f3b3392 SHA512 61d0bb3df2cba90d53956774d4b4d52fa63649c6d9e21cc08f903bc63dbb30d6e412c0e71824dde753553bd64dee711603cb094cdcf35bbd28f6b5e911ebf735
EBUILD glibc-2.31-r7.ebuild 44385 BLAKE2B 05f69a4d44b2c07a44a94e9d3ee2eb204dd2349387abc45b456abf2b5577810255a6cab1db4aa4e2c116dc785964442b3744b333863692500a41875dea9651d4 SHA512 0ed26e18b3219143d7d74086dc21efc7d52a5e6be80fb9a053dd339f25c9ef00f8b75bf2e0ae3ae1e732b724fabf2443df9b1bbefbb850510e97dcfb0359e797
EBUILD glibc-2.32-r2.ebuild 44988 BLAKE2B d1c13c6044d3423344be28f0acf6d8da56b431e31740bc4b4ae8678a83e4c8bfc52b37eb9c781677a28422e55a0b49c0d8e0af1278c7573df118e1fb154dfd89 SHA512 1e6cc8d84d645e32d6c5ebe0ef03a6e89f93d2f65b0632797095f5840067af5eaebc1da59b98a639c76bb1a2a09d99acad425a397fefd1289815e8de39dc7ec6
-EBUILD glibc-2.32-r3.ebuild 44720 BLAKE2B 3f1c337560ac284511ea6f490ed0d77b2a605395a0919f443124fe24b4e036385b04217a35af3d5043d855e457356a730f86fa84cc36348883a291e36f119acc SHA512 495ddd82b316a8942d331706d0f05b0b13556de09c0abfb028518578b2ce93fda775762cf79991a50dc12d7ee21d838ead419036814976c27f832d37ed71a70b
+EBUILD glibc-2.32-r3.ebuild 44717 BLAKE2B 5a42e32847189619531b512f0b1271672f32914f1f23fc31814b5b3d0d70fc3befaaf2cddef29032bf4b42d0c467b8f833a97cb1de4b00233562cf0be52a7c48 SHA512 b550e858435155eff529d6bab58367aa529950bc77527a30cd4cdea244ebf6c29f977eabbff36c05b1748ae2b94ef572f445811138c29bb9c7a442652f466680
EBUILD glibc-2.32-r5.ebuild 44722 BLAKE2B 59c445ae3396499b0889128982055a2b3084ce963fe56599d79b662161c2214726b0acd78a1f46e4becd13bfe36989e08a62b358cd45fee4886aabe8b2becc17 SHA512 b193ff06666233d319be9e1868a6aed7cc16c1e6e8b65d7008e76bf70d70bcd284ba52833201f5669cc65e092f6cd83d38c1bfa1aa831e38facc6e4fc4945080
+EBUILD glibc-2.32-r6.ebuild 44722 BLAKE2B 7112bee1e2ffc56c4415da3d2edaf22a63ca642015c4f73a8b03788cff177bab1eecf73e5cb01837125b6c5d50ce5838723f5ebfc4f0facf059613bf1db2b42b SHA512 1ca2e4bc72751ec4753a1ef7bf0b75e9444b31109b424be4a52d60e0c55fac985e9f04d6355aede516c43357da8d73b09dafc92baa51a8b99c76a4df19245f05
EBUILD glibc-9999.ebuild 44212 BLAKE2B 206ee7699d37e925c1f04af78b539ab0bbd56c19cd9b4546e077be7c656fe1df735c3437926fc481edad79e54a80911f353e62ab25418d330c4cf25d584f91d0 SHA512 1a88e2c6acf7c9567270710d37c615358e0f5ba9a08b0506e650c084f7ec1f9ab3835e159dd648ce7f7fee464033ca342e67ded2beacbc1fcfdd9893776bafc3
MISC metadata.xml 1611 BLAKE2B 3bd777c160ea20cdbd86cca791d9fd4ff02f8d100344235ec74fff37d5cae1e7119e0ec26969707e75a983dcdb23e994559c8be128ef40fa0ec9ed655017466d SHA512 08be6d085ac47b140fff17a3be8cee77e066a4536cdce76fa44c77875dec2a9dc236ff67ff44301abf75cb196d1902feb2a139dda420220248b46dd9cdb16b9f
diff --git a/sys-libs/glibc/glibc-2.32-r3.ebuild b/sys-libs/glibc/glibc-2.32-r3.ebuild
index a2c36abaeefc..4824a1d657a2 100644
--- a/sys-libs/glibc/glibc-2.32-r3.ebuild
+++ b/sys-libs/glibc/glibc-2.32-r3.ebuild
@@ -22,7 +22,7 @@ PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
inherit git-r3
else
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
SRC_URI+=" riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz )"
diff --git a/sys-libs/glibc/glibc-2.32-r6.ebuild b/sys-libs/glibc/glibc-2.32-r6.ebuild
new file mode 100644
index 000000000000..415b9cf9d29f
--- /dev/null
+++ b/sys-libs/glibc/glibc-2.32-r6.ebuild
@@ -0,0 +1,1513 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9} )
+
+inherit python-any-r1 prefix eutils toolchain-funcs flag-o-matic gnuconfig \
+ multilib systemd multiprocessing
+
+DESCRIPTION="GNU libc C library"
+HOMEPAGE="https://www.gnu.org/software/libc/"
+LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE"
+SLOT="2.2"
+
+EMULTILIB_PKG="true"
+
+# Gentoo patchset (ignored for live ebuilds)
+PATCH_VER=5
+PATCH_DEV=slyfox
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+else
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
+ SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
+ SRC_URI+=" riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz )"
+fi
+
+RELEASE_VER=${PV}
+
+GCC_BOOTSTRAP_VER=20201208
+
+LOCALE_GEN_VER=2.10
+
+SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz"
+SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
+
+IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib nscd profile selinux +ssp +static-libs static-pie suid systemtap test vanilla"
+
+# Minimum kernel version that glibc requires
+MIN_KERN_VER="3.2.0"
+
+# Here's how the cross-compile logic breaks down ...
+# CTARGET - machine that will target the binaries
+# CHOST - machine that will host the binaries
+# CBUILD - machine that will build the binaries
+# If CTARGET != CHOST, it means you want a libc for cross-compiling.
+# If CHOST != CBUILD, it means you want to cross-compile the libc.
+# CBUILD = CHOST = CTARGET - native build/install
+# CBUILD != (CHOST = CTARGET) - cross-compile a native build
+# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
+# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
+# For install paths:
+# CHOST = CTARGET - install into /
+# CHOST != CTARGET - install into /usr/CTARGET/
+#
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+ if [[ ${CATEGORY} == cross-* ]] ; then
+ export CTARGET=${CATEGORY#cross-}
+ fi
+fi
+
+# Note [Disable automatic stripping]
+# Disabling automatic stripping for a few reasons:
+# - portage's attempt to strip breaks non-native binaries at least on
+# arm: bug #697428
+# - portage's attempt to strip libpthread.so.0 breaks gdb thread
+# enumeration: bug #697910. This is quite subtle:
+# * gdb uses glibc's libthread_db-1.0.so to enumerate threads.
+# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols
+# via 'ps_pglobal_lookup' symbol defined in gdb.
+# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all
+# known symbols in 'libpthread.so.0'. Specifically 'nptl_version'
+# (unexported) is used to sanity check compatibility before enabling
+# debugging.
+# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint
+# * normal 'strip' command trims '.symtab'
+# Thus our main goal here is to prevent 'libpthread.so.0' from
+# losing it's '.symtab' entries.
+# As Gentoo's strip does not allow us to pass less aggressive stripping
+# options and does not check the machine target we strip selectively.
+
+# We need a new-enough binutils/gcc to match upstream baseline.
+# Also we need to make sure our binutils/gcc supports TLS,
+# and that gcc already contains the hardened patches.
+# Lastly, let's avoid some openssh nastiness, bug 708224, as
+# convenience to our users.
+
+# gzip, grep, awk are needed by locale-gen, bug 740750
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=app-misc/pax-utils-0.1.10
+ sys-devel/bison
+ doc? ( sys-apps/texinfo )
+ !compile-locales? (
+ app-arch/gzip
+ sys-apps/grep
+ virtual/awk
+ )
+"
+COMMON_DEPEND="
+ gd? ( media-libs/gd:2= )
+ nscd? ( selinux? (
+ audit? ( sys-process/audit )
+ caps? ( sys-libs/libcap )
+ ) )
+ suid? ( caps? ( sys-libs/libcap ) )
+ selinux? ( sys-libs/libselinux )
+ systemtap? ( dev-util/systemtap )
+ !<net-misc/openssh-8.1_p1-r2
+"
+DEPEND="${COMMON_DEPEND}
+ compile-locales? (
+ app-arch/gzip
+ sys-apps/grep
+ virtual/awk
+ )
+ test? ( >=net-dns/libidn2-2.3.0 )
+"
+RDEPEND="${COMMON_DEPEND}
+ app-arch/gzip
+ sys-apps/grep
+ virtual/awk
+ sys-apps/gentoo-functions
+"
+
+RESTRICT="!test? ( test )"
+
+if [[ ${CATEGORY} == cross-* ]] ; then
+ BDEPEND+=" !headers-only? (
+ >=${CATEGORY}/binutils-2.24
+ >=${CATEGORY}/gcc-6
+ )"
+ [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
+else
+ BDEPEND+="
+ >=sys-devel/binutils-2.24
+ >=sys-devel/gcc-6
+ "
+ DEPEND+=" virtual/os-headers "
+ RDEPEND+="
+ >=net-dns/libidn2-2.3.0
+ vanilla? ( !sys-libs/timezone-data )
+ "
+ PDEPEND+=" !vanilla? ( sys-libs/timezone-data )"
+fi
+
+# Ignore tests whitelisted below
+GENTOO_GLIBC_XFAIL_TESTS="${GENTOO_GLIBC_XFAIL_TESTS:-yes}"
+
+# The following tests fail due to the Gentoo build system and are thus
+# executed but ignored:
+XFAIL_TEST_LIST=(
+ # 9) Failures of unknown origin
+ tst-latepthread
+
+ # buggy test, assumes /dev/ and /dev/null on a single filesystem
+ # 'mount --bind /dev/null /chroot/dev/null' breaks it.
+ # https://sourceware.org/PR25909
+ tst-support_descriptors
+
+ # Flaky test, known to fail occasionally:
+ # https://sourceware.org/PR19329
+ # https://bugs.gentoo.org/719674#c12
+ tst-stack4
+)
+
+#
+# Small helper functions
+#
+
+is_crosscompile() {
+ [[ ${CHOST} != ${CTARGET} ]]
+}
+
+just_headers() {
+ is_crosscompile && use headers-only
+}
+
+alt_prefix() {
+ is_crosscompile && echo /usr/${CTARGET}
+}
+
+# This prefix is applicable to CHOST when building against this
+# glibc. It is baked into the library at configure time.
+host_eprefix() {
+ is_crosscompile || echo "${EPREFIX}"
+}
+
+# This prefix is applicable to CBUILD when building against this
+# glibc. It determines the destination path at install time.
+build_eprefix() {
+ is_crosscompile && echo "${EPREFIX}"
+}
+
+# We need to be able to set alternative headers for compiling for non-native
+# platform. Will also become useful for testing kernel-headers without screwing
+# up the whole system.
+alt_headers() {
+ echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
+}
+
+alt_build_headers() {
+ if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
+ ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
+ if tc-is-cross-compiler ; then
+ ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
+ if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
+ local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
+ ALT_BUILD_HEADERS=${header_path%/linux/version.h}
+ fi
+ fi
+ fi
+ echo "${ALT_BUILD_HEADERS}"
+}
+
+alt_libdir() {
+ echo $(alt_prefix)/$(get_libdir)
+}
+alt_usrlibdir() {
+ echo $(alt_prefix)/usr/$(get_libdir)
+}
+
+builddir() {
+ echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
+}
+
+do_compile_test() {
+ local ret save_cflags=${CFLAGS}
+ CFLAGS+=" $1"
+ shift
+
+ pushd "${T}" >/dev/null
+
+ rm -f glibc-test*
+ printf '%b' "$*" > glibc-test.c
+
+ # Most of the time CC is already set, but not in early sanity checks.
+ nonfatal emake glibc-test CC="${CC-$(tc-getCC ${CTARGET})}"
+ ret=$?
+
+ popd >/dev/null
+
+ CFLAGS=${save_cflags}
+ return ${ret}
+}
+
+do_run_test() {
+ local ret
+
+ if [[ ${MERGE_TYPE} == "binary" ]] ; then
+ # ignore build failures when installing a binary package #324685
+ do_compile_test "" "$@" 2>/dev/null || return 0
+ else
+ if ! do_compile_test "" "$@" ; then
+ ewarn "Simple build failed ... assuming this is desired #324685"
+ return 0
+ fi
+ fi
+
+ pushd "${T}" >/dev/null
+
+ ./glibc-test
+ ret=$?
+ rm -f glibc-test*
+
+ popd >/dev/null
+
+ return ${ret}
+}
+
+setup_target_flags() {
+ # This largely mucks with compiler flags. None of which should matter
+ # when building up just the headers.
+ just_headers && return 0
+
+ case $(tc-arch) in
+ x86)
+ # -march needed for #185404 #199334
+ # TODO: When creating the first glibc cross-compile, this test will
+ # always fail as it does a full link which in turn requires glibc.
+ # Probably also applies when changing multilib profile settings (e.g.
+ # enabling x86 when the profile was amd64-only previously).
+ # We could change main to _start and pass -nostdlib here so that we
+ # only test the gcc code compilation. Or we could do a compile and
+ # then look for the symbol via scanelf.
+ if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then
+ local t=${CTARGET_OPT:-${CTARGET}}
+ t=${t%%-*}
+ filter-flags '-march=*'
+ export CFLAGS="-march=${t} ${CFLAGS}"
+ einfo "Auto adding -march=${t} to CFLAGS #185404"
+ fi
+ ;;
+ amd64)
+ # -march needed for #185404 #199334
+ # TODO: See cross-compile issues listed above for x86.
+ [[ ${ABI} == x86 ]] &&
+ if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then
+ local t=${CTARGET_OPT:-${CTARGET}}
+ t=${t%%-*}
+ # Normally the target is x86_64-xxx, so turn that into the -march that
+ # gcc actually accepts. #528708
+ [[ ${t} == "x86_64" ]] && t="x86-64"
+ filter-flags '-march=*'
+ # ugly, ugly, ugly. ugly.
+ CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}")
+ export CFLAGS_x86="${CFLAGS_x86} -march=${t}"
+ einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})"
+ fi
+ ;;
+ mips)
+ # The mips abi cannot support the GNU style hashes. #233233
+ filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
+ ;;
+ ppc|ppc64)
+ # Many arch-specific implementations do not work on ppc with
+ # cache-block not equal to 128 bytes. This breaks memset:
+ # https://sourceware.org/PR26522
+ # https://bugs.gentoo.org/737996
+ # Use default -mcpu=. For ppc it means non-multiarch setup.
+ filter-flags '-mcpu=*'
+ ;;
+ sparc)
+ # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though.
+ filter-flags "-fcall-used-g7"
+ append-flags "-fcall-used-g6"
+
+ local cpu
+ case ${CTARGET} in
+ sparc64-*)
+ cpu="sparc64"
+ case $(get-flag mcpu) in
+ v9)
+ # We need to force at least v9a because the base build doesn't
+ # work with just v9.
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=19477
+ append-flags "-Wa,-xarch=v9a"
+ ;;
+ esac
+ ;;
+ sparc-*)
+ case $(get-flag mcpu) in
+ v8|supersparc|hypersparc|leon|leon3)
+ cpu="sparcv8"
+ ;;
+ *)
+ cpu="sparcv9"
+ ;;
+ esac
+ ;;
+ esac
+ [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
+ ;;
+ esac
+}
+
+setup_flags() {
+ # Make sure host make.conf doesn't pollute us
+ if is_crosscompile || tc-is-cross-compiler ; then
+ CHOST=${CTARGET} strip-unsupported-flags
+ fi
+
+ # Store our CFLAGS because it's changed depending on which CTARGET
+ # we are building when pulling glibc on a multilib profile
+ CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
+ CFLAGS=${CFLAGS_BASE}
+ CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
+ CXXFLAGS=${CXXFLAGS_BASE}
+ ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
+ ASFLAGS=${ASFLAGS_BASE}
+
+ # Allow users to explicitly avoid flag sanitization via
+ # USE=custom-cflags.
+ if ! use custom-cflags; then
+ # Over-zealous CFLAGS can often cause problems. What may work for one
+ # person may not work for another. To avoid a large influx of bugs
+ # relating to failed builds, we strip most CFLAGS out to ensure as few
+ # problems as possible.
+ strip-flags
+ # Lock glibc at -O2; we want to be conservative here.
+ filter-flags '-O?'
+ append-flags -O2
+ fi
+ strip-unsupported-flags
+ filter-flags -m32 -m64 '-mabi=*'
+
+ # glibc aborts if rpath is set by LDFLAGS
+ filter-ldflags '-Wl,-rpath=*'
+
+ # #492892
+ filter-flags -frecord-gcc-switches
+
+ unset CBUILD_OPT CTARGET_OPT
+ if use multilib ; then
+ CTARGET_OPT=$(get_abi_CTARGET)
+ [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST)
+ fi
+
+ setup_target_flags
+
+ if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then
+ CBUILD_OPT=${CTARGET_OPT}
+ fi
+
+ # glibc's headers disallow -O0 and fail at build time:
+ # include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization"
+ replace-flags -O0 -O1
+
+ filter-flags '-fstack-protector*'
+}
+
+want_tls() {
+ # Archs that can use TLS (Thread Local Storage)
+ case $(tc-arch) in
+ x86)
+ # requires i486 or better #106556
+ [[ ${CTARGET} == i[4567]86* ]] && return 0
+ return 1
+ ;;
+ esac
+ return 0
+}
+
+want__thread() {
+ want_tls || return 1
+
+ # For some reason --with-tls --with__thread is causing segfaults on sparc32.
+ [[ ${PROFILE_ARCH} == "sparc" ]] && return 1
+
+ [[ -n ${WANT__THREAD} ]] && return ${WANT__THREAD}
+
+ # only test gcc -- can't test linking yet
+ tc-has-tls -c ${CTARGET}
+ WANT__THREAD=$?
+
+ return ${WANT__THREAD}
+}
+
+use_multiarch() {
+ # Allow user to disable runtime arch detection in multilib.
+ use multiarch || return 1
+ # Make sure binutils is new enough to support indirect functions,
+ # #336792. This funky sed supports gold and bfd linkers.
+ local bver nver
+ bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}')
+ case $(tc-arch ${CTARGET}) in
+ amd64|x86) nver="2.20" ;;
+ arm) nver="2.22" ;;
+ hppa) nver="2.23" ;;
+ ppc|ppc64) nver="2.20" ;;
+ # ifunc support was added in 2.23, but glibc also needs
+ # machinemode which is in 2.24.
+ s390) nver="2.24" ;;
+ sparc) nver="2.21" ;;
+ *) return 1 ;;
+ esac
+ ver_test ${bver} -ge ${nver}
+}
+
+# Setup toolchain variables that had historically been defined in the
+# profiles for these archs.
+setup_env() {
+ # silly users
+ unset LD_RUN_PATH
+ unset LD_ASSUME_KERNEL
+
+ if is_crosscompile || tc-is-cross-compiler ; then
+ multilib_env ${CTARGET_OPT:-${CTARGET}}
+
+ if ! use multilib ; then
+ MULTILIB_ABIS=${DEFAULT_ABI}
+ else
+ MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}}
+ fi
+
+ # If the user has CFLAGS_<CTARGET> in their make.conf, use that,
+ # and fall back on CFLAGS.
+ local VAR=CFLAGS_${CTARGET//[-.]/_}
+ CFLAGS=${!VAR-${CFLAGS}}
+ einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}"
+ fi
+
+ setup_flags
+
+ export ABI=${ABI:-${DEFAULT_ABI:-default}}
+
+ if just_headers ; then
+ # Avoid mixing host's CC and target's CFLAGS_${ABI}:
+ # At this bootstrap stage we have only binutils for
+ # target but not compiler yet.
+ einfo "Skip CC ABI injection. We can't use (cross-)compiler yet."
+ return 0
+ fi
+ local VAR=CFLAGS_${ABI}
+ # We need to export CFLAGS with abi information in them because glibc's
+ # configure script checks CFLAGS for some targets (like mips). Keep
+ # around the original clean value to avoid appending multiple ABIs on
+ # top of each other.
+ : ${__GLIBC_CC:=$(tc-getCC ${CTARGET})}
+ export __GLIBC_CC CC="${__GLIBC_CC} ${!VAR}"
+ einfo " $(printf '%15s' 'Manual CC:') ${CC}"
+}
+
+foreach_abi() {
+ setup_env
+
+ local ret=0
+ local abilist=""
+ if use multilib ; then
+ abilist=$(get_install_abis)
+ else
+ abilist=${DEFAULT_ABI}
+ fi
+ local -x ABI
+ for ABI in ${abilist:-default} ; do
+ setup_env
+ einfo "Running $1 for ABI ${ABI}"
+ $1
+ : $(( ret |= $? ))
+ done
+ return ${ret}
+}
+
+glibc_banner() {
+ local b="Gentoo ${PVR}"
+ [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
+ echo "${b}"
+}
+
+# The following Kernel version handling functions are mostly copied from portage
+# source. It's better not to use linux-info.eclass here since a) it adds too
+# much magic, see bug 326693 for some of the arguments, and b) some of the
+# functions are just not provided.
+
+g_get_running_KV() {
+ uname -r
+ return $?
+}
+
+g_KV_major() {
+ [[ -z $1 ]] && return 1
+ local KV=$@
+ echo "${KV%%.*}"
+}
+
+g_KV_minor() {
+ [[ -z $1 ]] && return 1
+ local KV=$@
+ KV=${KV#*.}
+ echo "${KV%%.*}"
+}
+
+g_KV_micro() {
+ [[ -z $1 ]] && return 1
+ local KV=$@
+ KV=${KV#*.*.}
+ echo "${KV%%[^[:digit:]]*}"
+}
+
+g_KV_to_int() {
+ [[ -z $1 ]] && return 1
+ local KV_MAJOR=$(g_KV_major "$1")
+ local KV_MINOR=$(g_KV_minor "$1")
+ local KV_MICRO=$(g_KV_micro "$1")
+ local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO ))
+
+ # We make version 2.2.0 the minimum version we will handle as
+ # a sanity check ... if its less, we fail ...
+ if [[ ${KV_int} -ge 131584 ]] ; then
+ echo "${KV_int}"
+ return 0
+ fi
+ return 1
+}
+
+g_int_to_KV() {
+ local version=$1 major minor micro
+ major=$((version / 65536))
+ minor=$(((version % 65536) / 256))
+ micro=$((version % 256))
+ echo ${major}.${minor}.${micro}
+}
+
+eend_KV() {
+ [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]]
+ eend $?
+}
+
+get_kheader_version() {
+ printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
+ $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
+ tail -n 1
+}
+
+# We collect all sanity checks here. Consistency is not guranteed between
+# pkg_ and src_ phases, so we call this function both in pkg_pretend and in
+# src_unpack.
+sanity_prechecks() {
+ # Prevent native builds from downgrading
+ if [[ ${MERGE_TYPE} != "buildonly" ]] && \
+ [[ -z ${ROOT} ]] && \
+ [[ ${CBUILD} == ${CHOST} ]] && \
+ [[ ${CHOST} == ${CTARGET} ]] ; then
+
+ # The high rev # is to allow people to downgrade between -r#
+ # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2
+ # should be fine. Hopefully we never actually use a r# this
+ # high.
+ if has_version ">${CATEGORY}/${P}-r10000" ; then
+ eerror "Sanity check to keep you from breaking your system:"
+ eerror " Downgrading glibc is not supported and a sure way to destruction."
+ [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system."
+ fi
+
+ if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then
+ eerror "Your old kernel is broken. You need to update it to a newer"
+ eerror "version as syscall(<bignum>) will break. See bug 279260."
+ die "Old and broken kernel."
+ fi
+ fi
+
+ # Users have had a chance to phase themselves, time to give em the boot
+ if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then
+ eerror "You still haven't deleted ${EROOT}/etc/locales.build."
+ eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher."
+ die "Lazy upgrader detected"
+ fi
+
+ if [[ ${CTARGET} == i386-* ]] ; then
+ eerror "i386 CHOSTs are no longer supported."
+ eerror "Chances are you don't actually want/need i386."
+ eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml"
+ die "Please fix your CHOST"
+ fi
+
+ if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then
+ ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS."
+ ewarn "This will result in a 50% performance penalty when running with a 32bit"
+ ewarn "hypervisor, which is probably not what you want."
+ fi
+
+ # Check for sanity of /etc/nsswitch.conf
+ if [[ -e ${EROOT}/etc/nsswitch.conf ]] ; then
+ local entry
+ for entry in passwd group shadow; do
+ if ! egrep -q "^[ \t]*${entry}:.*files" "${EROOT}"/etc/nsswitch.conf; then
+ eerror "Your ${EROOT}/etc/nsswitch.conf is out of date."
+ eerror "Please make sure you have 'files' entries for"
+ eerror "'passwd:', 'group:' and 'shadow:' databases."
+ eerror "For more details see:"
+ eerror " https://wiki.gentoo.org/wiki/Project:Toolchain/nsswitch.conf_in_glibc-2.26"
+ die "nsswitch.conf has no 'files' provider in '${entry}'."
+ fi
+ done
+ fi
+
+ # ABI-specific checks follow here. Hey, we have a lot more specific conditions that
+ # we test for...
+ if ! is_crosscompile ; then
+ if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then
+ ebegin "Checking that IA32 emulation is enabled in the running kernel"
+ echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c"
+ local STAT
+ if "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then
+ "${T}/check-ia32-emulation.elf32"
+ STAT=$?
+ else
+ # Don't fail here to allow single->multi ABI switch
+ # or recover from breakage like bug #646424
+ ewarn "Failed to compile the ABI test. Broken host glibc?"
+ STAT=0
+ fi
+ rm -f "${T}/check-ia32-emulation.elf32"
+ eend $STAT
+ [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc."
+ fi
+
+ fi
+
+ # When we actually have to compile something...
+ if ! just_headers ; then
+ ebegin "Checking gcc for __thread support"
+ if ! eend $(want__thread ; echo $?) ; then
+ echo
+ eerror "Could not find a gcc that supports the __thread directive!"
+ eerror "Please update your binutils/gcc and try again."
+ die "No __thread support in gcc!"
+ fi
+
+ if [[ ${CTARGET} == *-linux* ]] ; then
+ local run_kv build_kv want_kv
+
+ run_kv=$(g_get_running_KV)
+ build_kv=$(g_int_to_KV $(get_kheader_version))
+ want_kv=${MIN_KERN_VER}
+
+ if ! is_crosscompile && ! tc-is-cross-compiler ; then
+ # Building fails on an non-supporting kernel
+ ebegin "Checking running kernel version (${run_kv} >= ${want_kv})"
+ if ! eend_KV ${run_kv} ${want_kv} ; then
+ echo
+ eerror "You need a kernel of at least ${want_kv}!"
+ die "Kernel version too low!"
+ fi
+ fi
+
+ ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})"
+ if ! eend_KV ${build_kv} ${want_kv} ; then
+ echo
+ eerror "You need linux-headers of at least ${want_kv}!"
+ die "linux-headers version too low!"
+ fi
+ fi
+ fi
+}
+
+#
+# the phases
+#
+
+# pkg_pretend
+
+pkg_pretend() {
+ # All the checks...
+ einfo "Checking general environment sanity."
+ sanity_prechecks
+}
+
+pkg_setup() {
+ # see bug 682570
+ [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup
+}
+
+# src_unpack
+
+src_unpack() {
+ # Consistency is not guaranteed between pkg_ and src_ ...
+ sanity_prechecks
+
+ use multilib && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz
+
+ setup_env
+
+ if [[ ${PV} == 9999* ]] ; then
+ EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git"
+ EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git
+ git-r3_src_unpack
+ mv patches-git/9999 patches || die
+
+ EGIT_REPO_URI="https://sourceware.org/git/glibc.git"
+ EGIT_CHECKOUT_DIR=${S}
+ git-r3_src_unpack
+ else
+ unpack ${P}.tar.xz
+
+ cd "${WORKDIR}" || die
+ unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
+ fi
+
+ cd "${WORKDIR}" || die
+ unpack locale-gen-${LOCALE_GEN_VER}.tar.gz
+ use riscv && unpack backport-rv32.txz
+}
+
+src_prepare() {
+ local patchsetname
+ if ! use vanilla ; then
+ if [[ ${PV} == 9999* ]] ; then
+ patchsetname="from git master"
+ else
+ patchsetname="${RELEASE_VER}-${PATCH_VER}"
+ fi
+ elog "Applying Gentoo Glibc Patchset ${patchsetname}"
+ eapply "${WORKDIR}"/patches
+ einfo "Done."
+
+ if use riscv ; then
+ elog "Adding rv32 backport patchset for glibc-2.32 (experimental)"
+ eapply "${WORKDIR}"/backport-rv32
+ einfo "Done."
+ fi
+ fi
+
+ default
+
+ gnuconfig_update
+
+ cd "${WORKDIR}"
+ find . -name configure -exec touch {} +
+
+ # move the external locale-gen to its old place
+ mkdir extra || die
+ mv locale-gen-${LOCALE_GEN_VER} extra/locale || die
+
+ eprefixify extra/locale/locale-gen
+
+ # Fix permissions on some of the scripts.
+ chmod u+x "${S}"/scripts/*.sh
+
+ cd "${S}"
+}
+
+glibc_do_configure() {
+ # Glibc does not work with gold (for various reasons) #269274.
+ tc-ld-disable-gold
+
+ # CXX isnt handled by the multilib system, so if we dont unset here
+ # we accumulate crap across abis
+ unset CXX
+
+ einfo "Configuring glibc for nptl"
+
+ if use doc ; then
+ export MAKEINFO=makeinfo
+ else
+ export MAKEINFO=/dev/null
+ fi
+
+ local v
+ for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM READELF; do
+ einfo " $(printf '%15s' ${v}:) ${!v}"
+ done
+
+ # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760
+ # To build .S (assembly) files with the same ABI-specific flags
+ # upstream currently recommends adding CFLAGS to CC/CXX:
+ # https://sourceware.org/PR23273
+ # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS
+ # and breaks multiarch support. See 659030#c3 for an example.
+ # The glibc configure script doesn't properly use LDFLAGS all the time.
+ export CC="$(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS}"
+ einfo " $(printf '%15s' 'Manual CC:') ${CC}"
+
+ # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548
+ export CXX="$(tc-getCXX ${CTARGET}) $(get_abi_CFLAGS) ${CFLAGS}"
+
+ if is_crosscompile; then
+ # Assume worst-case bootstrap: glibc is buil first time
+ # when ${CTARGET}-g++ is not available yet. We avoid
+ # building auxiliary programs that require C++: bug #683074
+ # It should not affect final result.
+ export libc_cv_cxx_link_ok=no
+ # The line above has the same effect. We set CXX explicitly
+ # to make build logs less confusing.
+ export CXX=
+ fi
+ einfo " $(printf '%15s' 'Manual CXX:') ${CXX}"
+
+ # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure
+ # can't detect them automatically due to ${CHOST} mismatch and fallbacks
+ # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup().
+ export NM="$(tc-getNM ${CTARGET})"
+ export READELF="$(tc-getREADELF ${CTARGET})"
+ einfo " $(printf '%15s' 'Manual NM:') ${NM}"
+ einfo " $(printf '%15s' 'Manual READELF:') ${READELF}"
+
+ echo
+
+ local myconf=()
+
+ case ${CTARGET} in
+ m68k*)
+ # setjmp() is not compatible with stack protection:
+ # https://sourceware.org/PR24202
+ myconf+=( --enable-stack-protector=no )
+ ;;
+ powerpc-*)
+ # Currently gcc on powerpc32 generates invalid code for
+ # __builtin_return_address(0) calls. Normally programs
+ # don't do that but malloc hooks in glibc do:
+ # https://gcc.gnu.org/PR81996
+ # https://bugs.gentoo.org/629054
+ myconf+=( --enable-stack-protector=no )
+ ;;
+ *)
+ # Use '=strong' instead of '=all' to protect only functions
+ # worth protecting from stack smashes.
+ # '=all' is also known to have a problem in IFUNC resolution
+ # tests: https://sourceware.org/PR25680, bug #712356.
+ myconf+=( --enable-stack-protector=$(usex ssp strong no) )
+ ;;
+ esac
+ myconf+=( --enable-stackguard-randomization )
+
+ # Keep a whitelist of targets supporing IFUNC. glibc's ./configure
+ # is not robust enough to detect proper support:
+ # https://bugs.gentoo.org/641216
+ # https://sourceware.org/PR22634#c0
+ case $(tc-arch ${CTARGET}) in
+ # Keep whitelist of targets where autodetection mostly works.
+ amd64|x86|sparc|ppc|ppc64|arm|arm64|s390) ;;
+ # Blacklist everywhere else
+ *) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;;
+ esac
+
+ # Enable Intel Control-flow Enforcement Technology on amd64 if requested
+ case ${CTARGET} in
+ x86_64-*) myconf+=( $(use_enable cet) ) ;;
+ *) ;;
+ esac
+
+ [[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp )
+
+ myconf+=( --enable-kernel=${MIN_KERN_VER} )
+
+ # Since SELinux support is only required for nscd, only enable it if:
+ # 1. USE selinux
+ # 2. only for the primary ABI on multilib systems
+ # 3. Not a crosscompile
+ if ! is_crosscompile && use selinux ; then
+ if use multilib ; then
+ if is_final_abi ; then
+ myconf+=( --with-selinux )
+ else
+ myconf+=( --without-selinux )
+ fi
+ else
+ myconf+=( --with-selinux )
+ fi
+ else
+ myconf+=( --without-selinux )
+ fi
+
+ # Force a few tests where we always know the answer but
+ # configure is incapable of finding it.
+ if is_crosscompile ; then
+ export \
+ libc_cv_c_cleanup=yes \
+ libc_cv_forced_unwind=yes
+ fi
+
+ myconf+=(
+ --without-cvs
+ --disable-werror
+ --enable-bind-now
+ --build=${CBUILD_OPT:-${CBUILD}}
+ --host=${CTARGET_OPT:-${CTARGET}}
+ $(use_enable profile)
+ $(use_with gd)
+ --with-headers=$(build_eprefix)$(alt_build_headers)
+ --prefix="$(host_eprefix)/usr"
+ --sysconfdir="$(host_eprefix)/etc"
+ --localstatedir="$(host_eprefix)/var"
+ --libdir='$(prefix)'/$(get_libdir)
+ --mandir='$(prefix)'/share/man
+ --infodir='$(prefix)'/share/info
+ --libexecdir='$(libdir)'/misc/glibc
+ --with-bugurl=https://bugs.gentoo.org/
+ --with-pkgversion="$(glibc_banner)"
+ $(use_enable crypt)
+ $(use_multiarch || echo --disable-multi-arch)
+ $(use_enable static-pie)
+ $(use_enable systemtap)
+ $(use_enable nscd)
+
+ # locale data is arch-independent
+ # https://bugs.gentoo.org/753740
+ libc_cv_complocaledir='${exec_prefix}/lib/locale'
+
+ ${EXTRA_ECONF}
+ )
+
+ # We rely on sys-libs/timezone-data for timezone tools normally.
+ myconf+=( $(use_enable vanilla timezone-tools) )
+
+ # These libs don't have configure flags.
+ ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no)
+ ac_cv_lib_cap_cap_init=$(usex caps || echo no)
+
+ # There is no configure option for this and we need to export it
+ # since the glibc build will re-run configure on itself
+ export libc_cv_rootsbindir="$(host_eprefix)/sbin"
+ export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)"
+
+ # We take care of patching our binutils to use both hash styles,
+ # and many people like to force gnu hash style only, so disable
+ # this overriding check. #347761
+ export libc_cv_hashstyle=no
+
+ local builddir=$(builddir nptl)
+ mkdir -p "${builddir}"
+ cd "${builddir}"
+ set -- "${S}"/configure "${myconf[@]}"
+ echo "$@"
+ "$@" || die "failed to configure glibc"
+
+ # ia64 static cross-compilers are a pita in so much that they
+ # can't produce static ELFs (as the libgcc.a is broken). so
+ # disable building of the programs for those targets if it
+ # doesn't work.
+ # XXX: We could turn this into a compiler test, but ia64 is
+ # the only one that matters, so this should be fine for now.
+ if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
+ sed -i '1i+link-static = touch $@' config.make
+ fi
+
+ # If we're trying to migrate between ABI sets, we need
+ # to lie and use a local copy of gcc. Like if the system
+ # is built with MULTILIB_ABIS="amd64 x86" but we want to
+ # add x32 to it, gcc/glibc don't yet support x32.
+ #
+ if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then
+ echo 'main(){}' > "${T}"/test.c
+ if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
+ sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
+ fi
+ fi
+}
+
+glibc_headers_configure() {
+ export ABI=default
+
+ local builddir=$(builddir "headers")
+ mkdir -p "${builddir}"
+ cd "${builddir}"
+
+ # if we don't have a compiler yet, we can't really test it now ...
+ # hopefully they don't affect header generation, so let's hope for
+ # the best here ...
+ local v vars=(
+ ac_cv_header_cpuid_h=yes
+ libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes
+ libc_cv_asm_cfi_directives=yes
+ libc_cv_broken_visibility_attribute=no
+ libc_cv_c_cleanup=yes
+ libc_cv_compiler_powerpc64le_binary128_ok=yes
+ libc_cv_forced_unwind=yes
+ libc_cv_gcc___thread=yes
+ libc_cv_mlong_double_128=yes
+ libc_cv_mlong_double_128ibm=yes
+ libc_cv_ppc_machine=yes
+ libc_cv_ppc_rel16=yes
+ libc_cv_predef_fortify_source=no
+ libc_cv_target_power8_ok=yes
+ libc_cv_visibility_attribute=yes
+ libc_cv_z_combreloc=yes
+ libc_cv_z_execstack=yes
+ libc_cv_z_initfirst=yes
+ libc_cv_z_nodelete=yes
+ libc_cv_z_nodlopen=yes
+ libc_cv_z_relro=yes
+ libc_mips_abi=${ABI}
+ libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard)
+ # These libs don't have configure flags.
+ ac_cv_lib_audit_audit_log_user_avc_message=no
+ ac_cv_lib_cap_cap_init=no
+ )
+
+ einfo "Forcing cached settings:"
+ for v in "${vars[@]}" ; do
+ einfo " ${v}"
+ export ${v}
+ done
+
+ local headers_only_arch_CPPFLAGS=()
+
+ # Blow away some random CC settings that screw things up. #550192
+ if [[ -d ${S}/sysdeps/mips ]]; then
+ pushd "${S}"/sysdeps/mips >/dev/null
+ sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die
+ sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die
+
+ # Force the mips ABI to the default. This is OK because the set of
+ # installed headers in this phase is the same between the 3 ABIs.
+ # If this ever changes, this hack will break, but that's unlikely
+ # as glibc discourages that behavior.
+ # https://crbug.com/647033
+ sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die
+
+ popd >/dev/null
+ fi
+
+ case ${CTARGET} in
+ riscv*)
+ # RISC-V interrogates the compiler to determine which target to
+ # build. If building the headers then we don't strictly need a
+ # RISC-V compiler, so the built-in definitions that are provided
+ # along with all RISC-V compiler might not exist. This causes
+ # glibc's RISC-V preconfigure script to blow up. Since we're just
+ # building the headers any value will actually work here, so just
+ # pick the standard one (rv64g/lp64d) to make the build scripts
+ # happy for now -- the headers are all the same anyway so it
+ # doesn't matter.
+ headers_only_arch_CPPFLAGS+=(
+ -D__riscv_xlen=64
+ -D__riscv_flen=64
+ -D__riscv_float_abi_double=1
+ -D__riscv_atomic=1
+ ) ;;
+ esac
+
+ local myconf=()
+ myconf+=(
+ --disable-sanity-checks
+ --enable-hacker-mode
+ --without-cvs
+ --disable-werror
+ --enable-bind-now
+ --build=${CBUILD_OPT:-${CBUILD}}
+ --host=${CTARGET_OPT:-${CTARGET}}
+ --with-headers=$(build_eprefix)$(alt_build_headers)
+ --prefix="$(host_eprefix)/usr"
+ ${EXTRA_ECONF}
+ )
+
+ # Nothing is compiled here which would affect the headers for the target.
+ # So forcing CC/CFLAGS is sane.
+ local headers_only_CC=$(tc-getBUILD_CC)
+ local headers_only_CFLAGS="-O1 -pipe"
+ local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}"
+ local headers_only_LDFLAGS=""
+ set -- "${S}"/configure "${myconf[@]}"
+ echo \
+ "CC=${headers_only_CC}" \
+ "CFLAGS=${headers_only_CFLAGS}" \
+ "CPPFLAGS=${headers_only_CPPFLAGS}" \
+ "LDFLAGS=${headers_only_LDFLAGS}" \
+ "$@"
+ CC=${headers_only_CC} \
+ CFLAGS=${headers_only_CFLAGS} \
+ CPPFLAGS=${headers_only_CPPFLAGS} \
+ LDFLAGS="" \
+ "$@" || die "failed to configure glibc"
+}
+
+do_src_configure() {
+ if just_headers ; then
+ glibc_headers_configure
+ else
+ glibc_do_configure nptl
+ fi
+}
+
+src_configure() {
+ foreach_abi do_src_configure
+}
+
+do_src_compile() {
+ emake -C "$(builddir nptl)"
+}
+
+src_compile() {
+ if just_headers ; then
+ return
+ fi
+
+ foreach_abi do_src_compile
+}
+
+glibc_src_test() {
+ cd "$(builddir nptl)"
+
+ local myxfailparams=""
+ if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then
+ for myt in ${XFAIL_TEST_LIST[@]} ; do
+ myxfailparams+="test-xfail-${myt}=yes "
+ done
+ fi
+
+ # sandbox does not understand unshare() and prevents
+ # writes to /proc/, which makes many tests fail
+
+ SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check
+}
+
+do_src_test() {
+ local ret=0
+
+ glibc_src_test
+ : $(( ret |= $? ))
+
+ return ${ret}
+}
+
+src_test() {
+ if just_headers ; then
+ return
+ fi
+
+ # Give tests more time to complete.
+ export TIMEOUTFACTOR=5
+
+ foreach_abi do_src_test || die "tests failed"
+}
+
+run_locale_gen() {
+ # if the host locales.gen contains no entries, we'll install everything
+ local root="$1"
+ local inplace=""
+
+ if [[ "${root}" == "--inplace-glibc" ]] ; then
+ inplace="--inplace-glibc"
+ root="$2"
+ fi
+
+ local locale_list="${root}/etc/locale.gen"
+
+ pushd "${ED}"/$(get_libdir) >/dev/null
+
+ if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then
+ [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space"
+ locale_list="${root}/usr/share/i18n/SUPPORTED"
+ fi
+
+ set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \
+ --destdir "${root}"
+ echo "$@"
+ "$@"
+
+ popd >/dev/null
+}
+
+glibc_do_src_install() {
+ local builddir=$(builddir nptl)
+ cd "${builddir}"
+
+ emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install
+
+ # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support
+ # which come without headers etc. Only needed for binary packages since the
+ # external net-libs/libnsl has increased soversion. Keep only versioned libraries.
+ find "${D}" -name "libnsl.a" -delete
+ find "${D}" -name "libnsl.so" -delete
+
+ # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need
+ # to infer upstream version:
+ # '#define VERSION "2.26.90"' -> '2.26.90'
+ local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h)
+
+ # Avoid stripping binaries not targeted by ${CHOST}. Or else
+ # ${CHOST}-strip would break binaries build for ${CTARGET}.
+ is_crosscompile && dostrip -x /
+ # gdb thread introspection relies on local libpthreas symbols. stripping breaks it
+ # See Note [Disable automatic stripping]
+ dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so
+
+ if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then
+ # Move versioned .a file out of libdir to evade portage QA checks
+ # instead of using gen_usr_ldscript(). We fix ldscript as:
+ # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..."
+ sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die
+ dodir $(alt_usrlibdir)/${P}
+ mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die
+ fi
+
+ # We'll take care of the cache ourselves
+ rm -f "${ED}"/etc/ld.so.cache
+
+ # Everything past this point just needs to be done once ...
+ is_final_abi || return 0
+
+ # Make sure the non-native interp can be found on multilib systems even
+ # if the main library set isn't installed into the right place. Maybe
+ # we should query the active gcc for info instead of hardcoding it ?
+ local i ldso_abi ldso_name
+ local ldso_abi_list=(
+ # x86
+ amd64 /lib64/ld-linux-x86-64.so.2
+ x32 /libx32/ld-linux-x32.so.2
+ x86 /lib/ld-linux.so.2
+ # mips
+ o32 /lib/ld.so.1
+ n32 /lib32/ld.so.1
+ n64 /lib64/ld.so.1
+ # powerpc
+ ppc /lib/ld.so.1
+ ppc64 /lib64/ld64.so.1
+ # riscv
+ ilp32d /lib/ld-linux-riscv32-ilp32d.so.1
+ ilp32 /lib/ld-linux-riscv32-ilp32.so.1
+ lp64d /lib/ld-linux-riscv64-lp64d.so.1
+ lp64 /lib/ld-linux-riscv64-lp64.so.1
+ # s390
+ s390 /lib/ld.so.1
+ s390x /lib/ld64.so.1
+ # sparc
+ sparc32 /lib/ld-linux.so.2
+ sparc64 /lib64/ld-linux.so.2
+ )
+ case $(tc-endian) in
+ little)
+ ldso_abi_list+=(
+ # arm
+ arm64 /lib/ld-linux-aarch64.so.1
+ )
+ ;;
+ big)
+ ldso_abi_list+=(
+ # arm
+ arm64 /lib/ld-linux-aarch64_be.so.1
+ )
+ ;;
+ esac
+ if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then
+ dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib
+ fi
+ for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do
+ ldso_abi=${ldso_abi_list[i]}
+ has ${ldso_abi} $(get_install_abis) || continue
+
+ ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}"
+ if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then
+ dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name}
+ fi
+ done
+
+ # With devpts under Linux mounted properly, we do not need the pt_chown
+ # binary to be setuid. This is because the default owners/perms will be
+ # exactly what we want.
+ if ! use suid ; then
+ find "${ED}" -name pt_chown -exec chmod -s {} +
+ fi
+
+ #################################################################
+ # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY #
+ # Make sure we install some symlink hacks so that when we build
+ # a 2nd stage cross-compiler, gcc finds the target system
+ # headers correctly. See gcc/doc/gccinstall.info
+ if is_crosscompile ; then
+ # We need to make sure that /lib and /usr/lib always exists.
+ # gcc likes to use relative paths to get to its multilibs like
+ # /usr/lib/../lib64/. So while we don't install any files into
+ # /usr/lib/, we do need it to exist.
+ keepdir $(alt_prefix)/lib
+ keepdir $(alt_prefix)/usr/lib
+
+ dosym usr/include $(alt_prefix)/sys-include
+ return 0
+ fi
+
+ # Files for Debian-style locale updating
+ dodir /usr/share/i18n
+ sed \
+ -e "/^#/d" \
+ -e "/SUPPORTED-LOCALES=/d" \
+ -e "s: \\\\::g" -e "s:/: :g" \
+ "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \
+ || die "generating /usr/share/i18n/SUPPORTED failed"
+ cd "${WORKDIR}"/extra/locale
+ dosbin locale-gen
+ doman *.[0-8]
+ insinto /etc
+ doins locale.gen
+
+ keepdir /usr/lib/locale
+
+ cd "${S}"
+
+ # Install misc network config files
+ insinto /etc
+ doins posix/gai.conf nss/nsswitch.conf
+
+ # Gentoo-specific
+ newins "${FILESDIR}"/host.conf-1 host.conf
+
+ if use nscd ; then
+ doins nscd/nscd.conf
+
+ newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd
+
+ local nscd_args=(
+ -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):"
+ )
+
+ sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd
+
+ systemd_dounit nscd/nscd.service
+ systemd_newtmpfilesd nscd/nscd.tmpfiles nscd.conf
+ fi
+
+ echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc
+ doenvd "${T}"/00glibc
+
+ for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do
+ [[ -s ${d} ]] && dodoc ${d}
+ done
+ dodoc -r ChangeLog.old
+
+ # Prevent overwriting of the /etc/localtime symlink. We'll handle the
+ # creation of the "factory" symlink in pkg_postinst().
+ rm -f "${ED}"/etc/localtime
+
+ # Generate all locales if this is a native build as locale generation
+ if use compile-locales && ! is_crosscompile ; then
+ run_locale_gen --inplace-glibc "${ED}/"
+ sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die
+ fi
+}
+
+glibc_headers_install() {
+ local builddir=$(builddir "headers")
+ cd "${builddir}"
+ emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers
+
+ insinto $(alt_headers)/gnu
+ doins "${S}"/include/gnu/stubs.h
+
+ # Make sure we install the sys-include symlink so that when
+ # we build a 2nd stage cross-compiler, gcc finds the target
+ # system headers correctly. See gcc/doc/gccinstall.info
+ dosym usr/include $(alt_prefix)/sys-include
+}
+
+src_install() {
+ if just_headers ; then
+ export ABI=default
+ glibc_headers_install
+ return
+ fi
+
+ foreach_abi glibc_do_src_install
+
+ if ! use static-libs ; then
+ elog "Not installing static glibc libraries"
+ find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete
+ fi
+}
+
+# Simple test to make sure our new glibc isn't completely broken.
+# Make sure we don't test with statically built binaries since
+# they will fail. Also, skip if this glibc is a cross compiler.
+#
+# If coreutils is built with USE=multicall, some of these files
+# will just be wrapper scripts, not actual ELFs we can test.
+glibc_sanity_check() {
+ cd / #228809
+
+ # We enter ${ED} so to avoid trouble if the path contains
+ # special characters; for instance if the path contains the
+ # colon character (:), then the linker will try to split it
+ # and look for the libraries in an unexpected place. This can
+ # lead to unsafe code execution if the generated prefix is
+ # within a world-writable directory.
+ # (e.g. /var/tmp/portage:${HOSTNAME})
+ pushd "${ED}"/$(get_libdir) >/dev/null
+
+ local x striptest
+ for x in cal date env free ls true uname uptime ; do
+ x=$(type -p ${x})
+ [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue
+ striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue
+ case ${striptest} in
+ *"statically linked"*) continue;;
+ *"ASCII text"*) continue;;
+ esac
+ # We need to clear the locale settings as the upgrade might want
+ # incompatible locale data. This test is not for verifying that.
+ LC_ALL=C \
+ ./ld-*.so --library-path . ${x} > /dev/null \
+ || die "simple run test (${x}) failed"
+ done
+
+ popd >/dev/null
+}
+
+pkg_preinst() {
+ # nothing to do if just installing headers
+ just_headers && return
+
+ # prepare /etc/ld.so.conf.d/ for files
+ mkdir -p "${EROOT}"/etc/ld.so.conf.d
+
+ # Default /etc/hosts.conf:multi to on for systems with small dbs.
+ if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then
+ sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf
+ einfo "Defaulting /etc/host.conf:multi to on"
+ fi
+
+ [[ -n ${ROOT} ]] && return 0
+ [[ -d ${ED}/$(get_libdir) ]] || return 0
+ [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check
+
+ if [[ -L ${EROOT}/usr/lib/locale ]]; then
+ # Help portage migrate this to a directory
+ # https://bugs.gentoo.org/753740
+ rm "${EROOT}"/usr/lib/locale || die
+ fi
+}
+
+pkg_postinst() {
+ # nothing to do if just installing headers
+ just_headers && return
+
+ if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then
+ # Generate fastloading iconv module configuration file.
+ "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/"
+ fi
+
+ if ! is_crosscompile && [[ -z ${ROOT} ]] ; then
+ use compile-locales || run_locale_gen "${EROOT}/"
+ fi
+
+ # Check for sanity of /etc/nsswitch.conf, take 2
+ if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then
+ local entry
+ for entry in passwd group shadow; do
+ if egrep -q "^[ \t]*${entry}:.*nis" "${EROOT}"/etc/nsswitch.conf; then
+ ewarn ""
+ ewarn "Your ${EROOT}/etc/nsswitch.conf uses NIS. Support for that has been"
+ ewarn "removed from glibc and is now provided by the package"
+ ewarn " sys-auth/libnss-nis"
+ ewarn "Install it now to keep your NIS setup working."
+ ewarn ""
+ fi
+ done
+ fi
+}
diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest
index 0d8766d83f0f..7c0a7f86c74e 100644
--- a/sys-libs/libcxx/Manifest
+++ b/sys-libs/libcxx/Manifest
@@ -2,11 +2,13 @@ AUX libcxx-3.9-cmake-link-flags.patch 1014 BLAKE2B 8e86059e00a5ebcd7a15288828766
DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151
DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2
DIST llvmorg-11.0.1-rc1.tar.gz 122777435 BLAKE2B 23b520d33cf4b641027ee52bb10c6171d60356c9167d5b94012929e6e547c526cda1a6177c295ed19592dfb83b020f63b2cef4cabc70ce9a2a8e098fe654a3cd SHA512 605c7bbff1610f335be8ea4f1204df797fed21185a54c77565f6ff2d00794d1967e9c5fab7c87633e242f2f999bdffb76da83f756d261c1ca476114599409ae1
+DIST llvmorg-11.0.1-rc2.tar.gz 122793330 BLAKE2B 5d42f7bd7ba253ac3ca08cf9901c79db5b51b86f0f66c8e63f4f9808ca5fb72cacccfad098b4f6701a34b0d77bdd66fe3839a3962a251eae53776240a2e13b06 SHA512 acda5a5be38cc8aae730c34cd1bb8f29a82e2ed3dd9734ca293ff092d5b30c8c255ab3054245b8f6ed541d5dbf8bc674b744bb2f81788db8826f69a204dda0c3
DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59
EBUILD libcxx-10.0.1.ebuild 5967 BLAKE2B 2e31f12ce656507bae063f3ec199ec485e2cd0e67346b87ba1ab4d57acb4f89d6c1f79d76ca305c470c1160414833ea727f62e9128ed5327dc81b06b27b9e58c SHA512 70ebbeeebdae6f4ee82cbe9d78e6c823535ea38c6cb84411b379962ee6ae93a0c495dab4f051bc5722257211e3d8f3997361dbcf383a6f46edfea1510d6a217b
EBUILD libcxx-11.0.0.ebuild 6076 BLAKE2B bc3207e38459230228002e9e4cc119235aef014d59889f9dffd0bb8de7942793a7b434f0743bf20d54cfdba1de183cd56c813768b7781b0d71ea7e17525ec8a5 SHA512 56d881963a416846d58eb57598b95fc34a789a84f448d50aff69ef44981ac05edefe4fcf11100245a9ee8751adf6b3291844f70c3a2d14f78e60de7256440478
EBUILD libcxx-11.0.1.9999.ebuild 6051 BLAKE2B 073787f1a880a85bda48d8f9d8de9140b3e240c554b9fc5a822037d4aed0d47fa6759c9fe01f43a42a37458dfd451ff7676f88c48f3bc8d48c010f1361a2f492 SHA512 807f943e94677bb161b2c479e85ab75fde4747302c6b16e63ab45156571bd50edf0a27a8e5cd765ece20937564f0b24acaa63ce285d21e3a8901530da961bd5a
EBUILD libcxx-11.0.1_rc1.ebuild 6051 BLAKE2B 073787f1a880a85bda48d8f9d8de9140b3e240c554b9fc5a822037d4aed0d47fa6759c9fe01f43a42a37458dfd451ff7676f88c48f3bc8d48c010f1361a2f492 SHA512 807f943e94677bb161b2c479e85ab75fde4747302c6b16e63ab45156571bd50edf0a27a8e5cd765ece20937564f0b24acaa63ce285d21e3a8901530da961bd5a
+EBUILD libcxx-11.0.1_rc2.ebuild 6051 BLAKE2B 073787f1a880a85bda48d8f9d8de9140b3e240c554b9fc5a822037d4aed0d47fa6759c9fe01f43a42a37458dfd451ff7676f88c48f3bc8d48c010f1361a2f492 SHA512 807f943e94677bb161b2c479e85ab75fde4747302c6b16e63ab45156571bd50edf0a27a8e5cd765ece20937564f0b24acaa63ce285d21e3a8901530da961bd5a
EBUILD libcxx-12.0.0.9999.ebuild 6051 BLAKE2B 073787f1a880a85bda48d8f9d8de9140b3e240c554b9fc5a822037d4aed0d47fa6759c9fe01f43a42a37458dfd451ff7676f88c48f3bc8d48c010f1361a2f492 SHA512 807f943e94677bb161b2c479e85ab75fde4747302c6b16e63ab45156571bd50edf0a27a8e5cd765ece20937564f0b24acaa63ce285d21e3a8901530da961bd5a
EBUILD libcxx-9.0.1.ebuild 6398 BLAKE2B 0bf084d925f6633809763077300f2221bd7fd67f2d29b1f4febc436b7ff658c51deb7b614807eb9459f466a120e9f7420cf047a1f5583effd48544bdc51aa344 SHA512 77898701b515982851e2e49436705c9166f9c82c011b967b942f3c4f8d2466692e89883d18b28b1ad886692d37b02234a14a80c965c12fc2675fc40baacceebc
MISC metadata.xml 731 BLAKE2B a6e96906bc2bff950c1b193b01feeb456b064fa585042566eae77dbe9a207bb08dfd083a3ab5fede2133a80b905a61c6dd541f9196e585c60b5629dd04a06213 SHA512 0a25560aa3eff5355137dadbb9cc48e384d2885b89075a97a8dafc7ac0ebe4ec5fde5b171a3416490264791a734c4405ec8a42dfc98e7e830c30ef0cfef58b6f
diff --git a/sys-libs/libcxx/libcxx-11.0.1_rc2.ebuild b/sys-libs/libcxx/libcxx-11.0.1_rc2.ebuild
new file mode 100644
index 000000000000..dd1a1a1f3a2f
--- /dev/null
+++ b/sys-libs/libcxx/libcxx-11.0.1_rc2.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+PYTHON_COMPAT=( python3_{6..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.org_set_globals
+
+python_check_deps() {
+ has_version "dev-python/lit[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ llvm_pkg_setup
+ 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
+}
+
+src_prepare() {
+ # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a
+ # out-of-tree build.
+ eapply "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch"
+
+ llvm.org_src_prepare
+}
+
+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
+ 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
+ gen_shared_ldscript
+ use static-libs && gen_static_ldscript
+}
+
+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 20bfde8532ac..9ecf96041edd 100644
--- a/sys-libs/libcxxabi/Manifest
+++ b/sys-libs/libcxxabi/Manifest
@@ -1,11 +1,13 @@
DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151
DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2
DIST llvmorg-11.0.1-rc1.tar.gz 122777435 BLAKE2B 23b520d33cf4b641027ee52bb10c6171d60356c9167d5b94012929e6e547c526cda1a6177c295ed19592dfb83b020f63b2cef4cabc70ce9a2a8e098fe654a3cd SHA512 605c7bbff1610f335be8ea4f1204df797fed21185a54c77565f6ff2d00794d1967e9c5fab7c87633e242f2f999bdffb76da83f756d261c1ca476114599409ae1
+DIST llvmorg-11.0.1-rc2.tar.gz 122793330 BLAKE2B 5d42f7bd7ba253ac3ca08cf9901c79db5b51b86f0f66c8e63f4f9808ca5fb72cacccfad098b4f6701a34b0d77bdd66fe3839a3962a251eae53776240a2e13b06 SHA512 acda5a5be38cc8aae730c34cd1bb8f29a82e2ed3dd9734ca293ff092d5b30c8c255ab3054245b8f6ed541d5dbf8bc674b744bb2f81788db8826f69a204dda0c3
DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59
EBUILD libcxxabi-10.0.1.ebuild 3238 BLAKE2B e2bd5189a20b8a2a575d1a660d97e7554527f03e4cb3c836b2f1c715bf42ce37250dcf2067639bb59f2c580fd3aa45f4217577ec41a1f4747a7e8397dde519cd SHA512 c6d03f55af65ca576d380497ff172dd3964e31fbc3fe1a8f49ae0b94364d6bf1819505ec5c4b1167744e0f11126cf22b4a8fbba03fff35017cf3963415a675c2
EBUILD libcxxabi-11.0.0.ebuild 3278 BLAKE2B c0d0f3b89e3e5d9c9f18f18bc0dd05f440988dea5e26a75fa0dd832ca7425dc8b1aee86add1bc2cabb8690957118fe4962d47c934b961aa5921859c783c8ed8e SHA512 8f656a3c866bfdf83fb06e56d3fa1b4c6ac3e99bb8ff2bab66e44e6a820dda362f1174a0f700130bdd25c7c5ecac31ee32c5377700e2abe54618a192b4306fb6
EBUILD libcxxabi-11.0.1.9999.ebuild 3254 BLAKE2B b955ae412a6407b4f8687ea80d6d28ee0c7ee31d811e11002ce0b817b3f73bce6b8c4ca7f0020b8580c5e43e2fbb8364f3af373f812cf13f74b0334db41814a1 SHA512 7683c68ed72934a9c74e29b37b4a94af73f5607b9dc1857b7d1970c756654acc4176873e4201d11179f18b775306f34ffd082f532808837a118ff3e3a9517f59
EBUILD libcxxabi-11.0.1_rc1.ebuild 3254 BLAKE2B b955ae412a6407b4f8687ea80d6d28ee0c7ee31d811e11002ce0b817b3f73bce6b8c4ca7f0020b8580c5e43e2fbb8364f3af373f812cf13f74b0334db41814a1 SHA512 7683c68ed72934a9c74e29b37b4a94af73f5607b9dc1857b7d1970c756654acc4176873e4201d11179f18b775306f34ffd082f532808837a118ff3e3a9517f59
+EBUILD libcxxabi-11.0.1_rc2.ebuild 3254 BLAKE2B b955ae412a6407b4f8687ea80d6d28ee0c7ee31d811e11002ce0b817b3f73bce6b8c4ca7f0020b8580c5e43e2fbb8364f3af373f812cf13f74b0334db41814a1 SHA512 7683c68ed72934a9c74e29b37b4a94af73f5607b9dc1857b7d1970c756654acc4176873e4201d11179f18b775306f34ffd082f532808837a118ff3e3a9517f59
EBUILD libcxxabi-12.0.0.9999.ebuild 3254 BLAKE2B b955ae412a6407b4f8687ea80d6d28ee0c7ee31d811e11002ce0b817b3f73bce6b8c4ca7f0020b8580c5e43e2fbb8364f3af373f812cf13f74b0334db41814a1 SHA512 7683c68ed72934a9c74e29b37b4a94af73f5607b9dc1857b7d1970c756654acc4176873e4201d11179f18b775306f34ffd082f532808837a118ff3e3a9517f59
EBUILD libcxxabi-9.0.1.ebuild 3390 BLAKE2B 708b1327f629ad4445fde37d53dea7807c433a2e3154f56f3fed4ba9eb698f3bb3e67055820521c58d8a31dc26abf28c293d709f97b4496ab420d788ab532c12 SHA512 18ab388b271756a5eb6dd1650d6a9f05a392b4e2cb48df92359c0e9ac763ecc4672343b4b51184f13c0636fe130e4a5972d8937866d34f1efec4b1addce1f81a
MISC metadata.xml 350 BLAKE2B 67b70b8d7292327882a845b76667ce24fee728cd84f27ed7e329bc7963631cba4c28bafce5e6a5fefb4ba1df5c7fd572b3b0d7a2b31ef649496f2f991b691bff SHA512 317dd7b59a711dd0461b5369f7e31ea196882b018e047e1dbae8077274d06cb68542c8762efb852cce0b8021bedea69c19aa0c124b9414a36cf1a9c00e0b9703
diff --git a/sys-libs/libcxxabi/libcxxabi-11.0.1_rc2.ebuild b/sys-libs/libcxxabi/libcxxabi-11.0.1_rc2.ebuild
new file mode 100644
index 000000000000..c1992223348b
--- /dev/null
+++ b/sys-libs/libcxxabi/libcxxabi-11.0.1_rc2.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+PYTHON_COMPAT=( python3_{6..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_TEST_COMPONENTS=( llvm/cmake )
+llvm.org_set_globals
+
+python_check_deps() {
+ has_version "dev-python/lit[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ llvm_pkg_setup
+ 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}"
+ )
+ 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/libkudzu/Manifest b/sys-libs/libkudzu/Manifest
deleted file mode 100644
index 6cb108b5aff7..000000000000
--- a/sys-libs/libkudzu/Manifest
+++ /dev/null
@@ -1,5 +0,0 @@
-AUX kudzu-1.2.57.1-sbusfix.patch 2217 BLAKE2B 27506402bd81f1a1be3e5213945dd6c6ca814085da9b7becf9cd2845242e17acf8a7936ce843eddc49f6e46590f09c9077d852fb21d15d051d9beeb6d57b4c4b SHA512 5b94734f63e1bb62cbfc349646c6dc4663e6ed2309e554e701943c35649193b14ea779a0c08e531ee931a94afdcc3e15529a8f410c658ea26d26659fe4147c71
-AUX kudzu-1.2.57.1-sparc-keyboard.patch 5389 BLAKE2B b49bd002dcadf6f79ee468fe222f150660908e983e8ffa44cbbc446c8162e3494ecb2b959e11f59e19d56437cc163199e2f4e773cdb8e5e6bc86aa7e6b39606b SHA512 6b89de1ede96e1a523880a33975488957e87cfc31cc0155014bb8152123cafb7ad793edcd9d228b9946bc6005b544e6fb908185f4ff901e623ce200435982708
-DIST kudzu-1.2.57.1.tar.gz 165855 BLAKE2B cd7a71a45a234701dd3e94b7378b37017a03cc78bf5230cc267c273fee4baf5338a5509572f0ba1bb23c8f585ec452c4a7f2d02159326c4133ad6abd80d36c3f SHA512 799e7cea840b7495fc007f4e34adc50fecd2fa7ceda2e2779e39639d0b93b10419bd44a0eb910b2e47024a49a4376330653a6fd96e5560c4828d55e18ab5d641
-EBUILD libkudzu-1.2.57.1.ebuild 1297 BLAKE2B aec0ded22af437e769955d9f974a597a6e2133ded86024e41ee166e3825a92412e1c1252d1e5e4bab0d1a7588f1c3fbd3be520148d02e641a02bdaf3d41554fc SHA512 997eb0825c44048c1faacede1ee7c276ed8b2da9b969d48c9927eae7d77d3965aef9e3f6c5553d55c6b400b160a0720d6ba8a930f4f4bd8cee981b90174cb5f1
-MISC metadata.xml 256 BLAKE2B d02b5b33f7375594b6e77357966b74fd698579fcefce673bde9b7082e2a56a47b1b8824d5aa423ad7271113efc568997c476bc0106d147dbc1a198b201def869 SHA512 b301300f23bb631f440eef04dce17f16cfee618775d38013cfded6b0e8b806d772749578a39c43143104a1716d2cc6eefb3af7f6865d85da5b2cb6f1e78c7c68
diff --git a/sys-libs/libkudzu/files/kudzu-1.2.57.1-sbusfix.patch b/sys-libs/libkudzu/files/kudzu-1.2.57.1-sbusfix.patch
deleted file mode 100644
index 5c186ed631da..000000000000
--- a/sys-libs/libkudzu/files/kudzu-1.2.57.1-sbusfix.patch
+++ /dev/null
@@ -1,72 +0,0 @@
---- a/sbus.c
-+++ b/sbus.c
-@@ -162,6 +162,7 @@
- devClass = CLASS_NETWORK;
- } else if (!strcmp(prop, "le")) {
- type = "Sun Lance Ethernet";
-+ module = "sunlance";
- devClass = CLASS_NETWORK;
- } else if (!strcmp(prop, "qe")) {
- prop = prom_getproperty("channel#", &len);
-@@ -206,9 +207,11 @@
- devClass = CLASS_SCSI;
- } else if (!strcmp(prop, "esp")) {
- type = "Sun Enhanced SCSI Processor (ESP)";
-+ module = "esp";
- devClass = CLASS_SCSI;
- } else if (!strcmp(prop, "fas")) {
- type = "Sun Swift (ESP)";
-+ module = "esp";
- devClass = CLASS_SCSI;
- } else if (!strcmp(prop, "ptisp")) {
- type = "Performance Technologies ISP";
-@@ -232,19 +235,19 @@
- while ((*prop >= 'A' && *prop <= 'Z') || *prop == ',')
- if (*prop++ == ',') break;
- if (!strcmp(prop, "audio")) {
-- type = "AMD7930";
-- module = "amd7930";
-+ type = "Sun|AMD7930";
-+ module = "snd-sun-amd7930";
- devClass = CLASS_AUDIO;
- } else if (!strcmp(prop, "CS4231")) {
- if (ebus)
-- type = "CS4231 EB2 DMA (PCI)";
-+ type = "Sun|CS4231 EB2 DMA (PCI)";
- else
-- type = "CS4231 APC DMA (SBUS)";
-- module = "cs4231";
-+ type = "Sun|CS4231 APC DMA (SBUS)";
-+ module = "snd-sun-cs4231";
- devClass = CLASS_AUDIO;
- } else if (!strcmp(prop, "DBRIe")) {
-- type = "SS10/SS20 DBRI";
-- module = "dbri";
-+ type = "Sun|SS10/SS20 DBRI";
-+ module = "snd-sun-dbri";
- devClass = CLASS_AUDIO;
- }
- prop = prom_getproperty("device_type", &len);
-@@ -452,22 +455,6 @@
-
- struct device *sbusProbe( enum deviceClass probeClass, int probeFlags,
- struct device *devlist) {
-- if (probeClass & CLASS_MOUSE) {
-- int fd;
-- struct sbusDevice *mousedev;
--
-- if ((fd = open("/dev/sunmouse", O_RDONLY)) != -1) {
-- /* FIXME: Should probably talk to the mouse to see
-- if the connector is not empty. */
-- close (fd);
-- mousedev = sbusNewDevice(NULL);
-- mousedev->type = CLASS_MOUSE;
-- mousedev->device = strdup("sunmouse");
-- mousedev->desc = strdup("Sun Mouse");
-- mousedev->next = devlist;
-- devlist = (struct device *)mousedev;
-- }
-- }
- if (
- (probeClass & CLASS_OTHER) ||
- (probeClass & CLASS_NETWORK) ||
diff --git a/sys-libs/libkudzu/files/kudzu-1.2.57.1-sparc-keyboard.patch b/sys-libs/libkudzu/files/kudzu-1.2.57.1-sparc-keyboard.patch
deleted file mode 100644
index 5626a357345d..000000000000
--- a/sys-libs/libkudzu/files/kudzu-1.2.57.1-sparc-keyboard.patch
+++ /dev/null
@@ -1,195 +0,0 @@
---- a/keyboard.c
-+++ b/keyboard.c
-@@ -21,7 +21,6 @@
- #include "keyboard.h"
-
- #ifdef __sparc__
--#include <asm/kbio.h>
- #include <asm/openpromio.h>
- #include <asm/types.h>
- #endif
-@@ -96,7 +95,15 @@
- {0, 0}
- };
-
--#if !defined(__s390__) && !defined(__s390x__)
-+#if defined(__sparc__)
-+static int termcmp(struct termios *a, struct termios *b)
-+{
-+ if (a->c_iflag != b->c_iflag || a->c_oflag != b->c_oflag ||
-+ a->c_cflag != b->c_cflag || a->c_lflag != b->c_lflag)
-+ return 1;
-+ return memcmp(a->c_cc, b->c_cc, sizeof(a->c_cc));
-+}
-+#elif !defined(__s390__) && !defined(__s390x__)
- static int termcmp(struct termios *a, struct termios *b)
- {
- if (a->c_iflag != b->c_iflag || a->c_oflag != b->c_oflag ||
-@@ -110,150 +117,6 @@
- struct device *keyboardProbe(enum deviceClass probeClass, int probeFlags,
- struct device *devlist)
- {
--#ifdef __sparc__
-- int fd;
-- char buf[256];
-- struct keyboardDevice *kbddev;
--
-- if (probeClass & CLASS_KEYBOARD) {
-- static struct {
-- int layout0, layout1, layout2;
-- char *symbols;
-- int use_iso9995_3;
-- } sunkbd_translate[] = {
-- { 0, 33, 80, "", 0, },
-- { 1, 34, 81, "", 0, },
-- { 2, -1, -1, "fr_BE", 0, },
-- { 3, -1, -1, "ca", 0, },
-- { 4, 36, 83, "dk", 1, },
-- { 5, 37, 84, "de", 1, },
-- { 6, 38, 85, "it", 1, },
-- { 7, 39, 86, "nl", 0, },
-- { 8, 40, 87, "no", 1, },
-- { 9, 41, 88, "pt", 1, },
-- { 10, 42, 89, "es", 1, },
-- { 11, 43, 90, "se", 1, },
-- { 12, 44, 91, "fr_CH",1, },
-- { 13, 45, 92, "de_CH",1, },
-- { 14, 46, 93, "gb", 1, },
-- { 16, 47, 94, "ko", 0, },
-- { 17, 48, 95, "tw", 0, },
-- { 32, 49, 96, "jp", 0, },
-- { 50, 97, -1, "fr_CA",0, },
-- { 51, -1, -1, "hu", 0, },
-- { 52, -1, -1, "pl", 0, },
-- { 53, -1, -1, "cs", 0, },
-- { 54, -1, -1, "ru", 0, },
-- { -1, -1, -1, NULL, 0, }
-- };
--
-- char twelve = 12;
-- int fdstd = 0;
-- char buf[4096];
--
-- for (fd = 0; fd <= 2; fd++) {
-- sprintf (buf, "/proc/self/fd/%d", fd);
-- if (readlink (buf, buf, 4096) == 12 &&
-- !strncmp (buf, "/dev/console", 12)) {
-- fdstd = 1;
-- break;
-- }
-- }
-- if (!fdstd) {
-- fd = open("/dev/console", O_RDWR);
-- if (fd < 0) return devlist;
-- }
--
-- kbddev=keyboardNewDevice(NULL);
-- kbddev->type=CLASS_KEYBOARD;
-- if (devlist)
-- kbddev->next = devlist;
-- devlist = (struct device *) kbddev;
--
-- if (ioctl (fd, TIOCLINUX, &twelve) < 0) {
-- /* Serial console */
-- char desc[64];
-- struct serial_struct si;
-- int line = 0;
--
-- if (ioctl (fd, TIOCGSERIAL, &si) >= 0) {
-- if (si.line & 1)
-- /* ttyb */
-- line = 1;
-- }
-- if (!fdstd) close(fd);
-- sprintf (desc, "Serial console tty%c", line + 'a');
-- fd = open("/dev/openprom", O_RDONLY);
-- if (fd >= 0) {
-- struct openpromio *op = (struct openpromio *)buf;
-- sprintf (op->oprom_array, "tty%c-mode", line + 'a');
-- op->oprom_size = 4096-128-4;
-- if (ioctl (fd, OPROMGETOPT, op) >= 0 &&
-- op->oprom_size > 0 && op->oprom_size < 40) {
-- strcat (desc, " ");
-- op->oprom_array [op->oprom_size] = 0;
-- strcat (desc, op->oprom_array);
-- }
-- close (fd);
-- }
-- kbddev->desc=strdup(desc);
-- kbddev->device=strdup("console");
-- return devlist;
-- }
--
-- if (!fdstd) close(fd);
-- fd=open("/dev/kbd", O_RDWR);
-- if (fd < 0) {
-- /* PS/2 keyboard */
-- kbddev->desc=strdup("Generic PS/2 Keyboard");
-- } else {
-- /* Sun keyboard */
-- int kbdtype, kbdlayout, i;
-- char *desc, *desclayout = NULL;
--
-- kbddev->device=strdup("kbd");
-- desc = "Sun Type4 ";
-- if (ioctl(fd, KIOCTYPE, &kbdtype) >= 0)
-- switch (kbdtype) {
-- case 2: desc = "Sun Type2 "; break;
-- case 3: desc = "Sun Type3 "; break;
-- case 4: ioctl(fd, KIOCLAYOUT, &kbdlayout);
-- if (kbdlayout < 33)
-- desc = "Sun Type4 ";
-- else switch (kbdlayout) {
-- case 33: case 47: case 48: case 49:
-- case 80: case 94: case 95: case 96:
-- desc = "Sun Type5 "; break;
-- case 34: case 81:
-- desc = "Sun Type5 Unix "; break;
-- default:
-- desc = "Sun Type5 Euro "; break;
-- }
-- for (i = 0; sunkbd_translate[i].layout0 != -1; i++) {
-- if (sunkbd_translate[i].layout0 == kbdlayout ||
-- sunkbd_translate[i].layout1 == kbdlayout ||
-- sunkbd_translate[i].layout2 == kbdlayout)
-- break;
-- }
-- if (sunkbd_translate[i].layout0 != -1 &&
-- sunkbd_translate[i].symbols[0])
-- desclayout = sunkbd_translate[i].symbols;
-- break;
-- }
-- if (desclayout) {
-- kbddev->desc = malloc(strlen(desc) + strlen(desclayout) + 1 + strlen("Keyboard") + 1);
-- strcpy (kbddev->desc, desc);
-- strcat (kbddev->desc, desclayout);
-- strcat (kbddev->desc, " Keyboard");
-- } else {
-- kbddev->desc = malloc(strlen(desc) + strlen("Keyboard") + 1);
-- strcpy (kbddev->desc, desc);
-- strcat (kbddev->desc, "Keyboard");
-- }
-- }
-- close (fd);
-- }
--#else
- int fd;
- char twelve = 12;
- int fdstd = 0;
-@@ -311,7 +174,7 @@
- kbddev->device = strdup("ttySG0");
- }
- #endif
--#if defined(__i386__) || defined(__x86_64__) || defined(__ia64__)
-+#if defined(__i386__) || defined(__x86_64__) || defined(__ia64__) || defined(__sparc__)
- int cfd;
- struct termios cmode, mode;
-
-@@ -397,7 +260,6 @@
- kbddev->device=strdup(desc);
- }
- }
--#endif
- out:
- return devlist;
- }
diff --git a/sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild b/sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild
deleted file mode 100644
index e37cf4c2de6a..000000000000
--- a/sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit eutils linux-info flag-o-matic toolchain-funcs
-
-DESCRIPTION="Red Hat Hardware detection tools"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-SRC_URI="mirror://gentoo/kudzu-${PV}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 hppa ~ia64 -mips ppc ppc64 sparc x86"
-IUSE="zlib"
-
-DEPEND="
- dev-libs/popt
- >=sys-apps/pciutils-2.2.4[zlib?]
- zlib? ( sys-libs/zlib )
-"
-RDEPEND="
- ${DEPEND}
- sys-apps/hwdata-gentoo
- !sys-apps/kudzu
-"
-
-S=${WORKDIR}/kudzu-${PV}
-
-src_prepare() {
- sed -i -e 's/-fpic/-fPIC/g' Makefile || die
-
- epatch \
- "${FILESDIR}"/kudzu-${PV}-sbusfix.patch \
- "${FILESDIR}"/kudzu-${PV}-sparc-keyboard.patch
-}
-
-src_configure() {
- if use zlib; then
- sed -i -e 's| -lpci| -lz -lpci|g' Makefile || die
- fi
- # Fix the modules directory to match Gentoo layout.
- sed -i -e 's|/etc/modutils/kudzu|/etc/modules.d/kudzu|g' *.* || die
-
- tc-export CC
-}
-
-src_compile() {
- emake \
- $( usex ppc ARCH='ppc' ARCH=$(tc-arch-kernel) ) \
- AR=$(tc-getAR) \
- RANLIB=$(tc-getRANLIB) \
- RPM_OPT_FLAGS="${CFLAGS}" \
- libkudzu.a libkudzu_loader.a
-}
-
-src_install() {
- insinto /usr/include/kudzu
- doins *.h
-
- dolib.a libkudzu.a libkudzu_loader.a
-
- keepdir /etc/sysconfig
-}
diff --git a/sys-libs/libkudzu/metadata.xml b/sys-libs/libkudzu/metadata.xml
deleted file mode 100644
index 06ddf117247b..000000000000
--- a/sys-libs/libkudzu/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-<maintainer type="project">
- <email>releng@gentoo.org</email>
- <name>Gentoo Release Engineering</name>
-</maintainer>
-</pkgmetadata>
diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest
index dc006eb6c59c..66743a4828b3 100644
--- a/sys-libs/libomp/Manifest
+++ b/sys-libs/libomp/Manifest
@@ -1,11 +1,13 @@
DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151
DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2
DIST llvmorg-11.0.1-rc1.tar.gz 122777435 BLAKE2B 23b520d33cf4b641027ee52bb10c6171d60356c9167d5b94012929e6e547c526cda1a6177c295ed19592dfb83b020f63b2cef4cabc70ce9a2a8e098fe654a3cd SHA512 605c7bbff1610f335be8ea4f1204df797fed21185a54c77565f6ff2d00794d1967e9c5fab7c87633e242f2f999bdffb76da83f756d261c1ca476114599409ae1
+DIST llvmorg-11.0.1-rc2.tar.gz 122793330 BLAKE2B 5d42f7bd7ba253ac3ca08cf9901c79db5b51b86f0f66c8e63f4f9808ca5fb72cacccfad098b4f6701a34b0d77bdd66fe3839a3962a251eae53776240a2e13b06 SHA512 acda5a5be38cc8aae730c34cd1bb8f29a82e2ed3dd9734ca293ff092d5b30c8c255ab3054245b8f6ed541d5dbf8bc674b744bb2f81788db8826f69a204dda0c3
DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59
EBUILD libomp-10.0.1.ebuild 2893 BLAKE2B e91e074bfa0d1584d40d997a1661507f404d6a6e4593e6da2a6825a1f8260ff02c4daebe4b9183d6ea025aa5c3be6986f3f7a920f578ad16d993ea10db272943 SHA512 558940389a55b5ea0e6e4c5b0fb48a8eaad5c00e26c1af90d5619106711b78341a532c59535f01ba5eedf99902af4494838b6edf5a0ade8693524d662d55053a
EBUILD libomp-11.0.0.ebuild 2900 BLAKE2B 7aeeb7dd0598c9834437176843cd11f43c3e77c73b1638c15ce2d00cfbf44a2af939a5f1a24759c7f8f118ff13e17d26769263eac84ef4b7ea2ce9e560ffd443 SHA512 95d4c487ae19ce18d8f8efb22c71a85c38cbfed7dcdbf7d9a2bae8633ae066cef6dd4a64e8ad80a3684590ffbaf3451577e11ad40b7ab6a10a29cb0f71917c66
EBUILD libomp-11.0.1.9999.ebuild 2845 BLAKE2B 13c2ef4577d1dcd14f11d5100797a5bc936d9f02c0ca9814c63e4fd8b9e8c274404c8d672ededfd4b304c1c864a33c39d7b1c9f2b1c7c98c70008f809dbb3f19 SHA512 1552854a04dfc15e518a2b8234e64f1d6679638681023d4fd5690ca6577eec4f84b4ab64f3f211c20c9167be354549e2ab96fa2051dc40e66f1689caeea2d58d
EBUILD libomp-11.0.1_rc1.ebuild 2845 BLAKE2B 13c2ef4577d1dcd14f11d5100797a5bc936d9f02c0ca9814c63e4fd8b9e8c274404c8d672ededfd4b304c1c864a33c39d7b1c9f2b1c7c98c70008f809dbb3f19 SHA512 1552854a04dfc15e518a2b8234e64f1d6679638681023d4fd5690ca6577eec4f84b4ab64f3f211c20c9167be354549e2ab96fa2051dc40e66f1689caeea2d58d
+EBUILD libomp-11.0.1_rc2.ebuild 2845 BLAKE2B 13c2ef4577d1dcd14f11d5100797a5bc936d9f02c0ca9814c63e4fd8b9e8c274404c8d672ededfd4b304c1c864a33c39d7b1c9f2b1c7c98c70008f809dbb3f19 SHA512 1552854a04dfc15e518a2b8234e64f1d6679638681023d4fd5690ca6577eec4f84b4ab64f3f211c20c9167be354549e2ab96fa2051dc40e66f1689caeea2d58d
EBUILD libomp-12.0.0.9999.ebuild 2858 BLAKE2B 5b23d8c8e540decfa950bd795e0b3ec956307e9bbcd8aa67e9e7e574a0a0990987d8ad0bf2e7543bea128a052212f36bdc25d7d086a85092b1dade3ef1017f22 SHA512 f823e550a414fa30b23c2ac1ef1a53090bb0d547ae4ebbcecf227936e6f46d8dbdf23cc42b87cdbd009e5feddbad17a24b3bec065043a1460812258b74d89e66
EBUILD libomp-9.0.1.ebuild 3011 BLAKE2B 33ccc441765ab33b61c9739e999039b24437c6f79b89a4db5ee1575b072fd3af609d5c8c583331db81b0b5a24a2a85cc359b4df312330b5732a24c7a8ebe3021 SHA512 404f3df2df27e031b59c4f827b13b2d9ce2b6af4126abdd1d6a233cfe0ec26ede61d01ddf6ca3434b6698ac6407ce8b4a845070b875f92eff4d961280c95ed5a
MISC metadata.xml 825 BLAKE2B 07802144018f2f74b0927b53a346f99cbc7e36dbf501bb8dfc786f8d549c10eb688afafb1759f13d4d56d10f1bcae67dfa86cc2047cc39a9655a09a22e9a4260 SHA512 de43d5be94a5ea1cdfd3ae747d55b50d5d6ee577743f55d006d585d2d5acd5b3100845486ac415685f07361cd9985bae9347fff9c65417d198c49a61b4f6ba5e
diff --git a/sys-libs/libomp/libomp-11.0.1_rc2.ebuild b/sys-libs/libomp/libomp-11.0.1_rc2.ebuild
new file mode 100644
index 000000000000..f715bdea5353
--- /dev/null
+++ b/sys-libs/libomp/libomp-11.0.1_rc2.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+PYTHON_COMPAT=( python3_{6..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.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++")"
+ )
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+
+ cmake_build check-libomp
+}
diff --git a/sys-libs/libunwind/Manifest b/sys-libs/libunwind/Manifest
index 3c45816281aa..b9503e5d783c 100644
--- a/sys-libs/libunwind/Manifest
+++ b/sys-libs/libunwind/Manifest
@@ -2,8 +2,6 @@ AUX libunwind-1.2-coredump-regs.patch 619 BLAKE2B b901d50cb7fa4ab372da26120e512d
AUX libunwind-1.2-ia64-missing.patch 3863 BLAKE2B 384d2afd7d725f0730207b5b32ff4ffcedd852043af83b1884c7dc95116298eff41bd7f997e0ad51c9912b59e36b439eb524d3d4786f2a0a19dff32437e62003 SHA512 e8f65d706839770d993f9801371e1e294a0231c4bfe29b497e4a859567b7f5b6561b0a15d59b1626311e549fe57149046f5a76424a2ad69c521610aaa3019c17
AUX libunwind-1.2-ia64-ptrace-coredump.patch 1445 BLAKE2B 0b4b6b5d7b3cfc8be58c3973b096ceeb19faa84f175a23f2130588351e40f94abf5c53a4eb5813d8b9da7762f032671031d2d637bd2ec445f7e4f9ea9d276773 SHA512 0bab310ff16294d7617077ffa1261fe9c1a6aaeb4339c96918869c4dd9a2b1b73fbe2ebb5c895f1a420ff7922da85cbb44ccfcd69df6e2518c1f2ff64b7b2d76
AUX libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch 1290 BLAKE2B eac40a5cb05fbda00e5dde5b4ecedfa21442cb5481281b8aac45b118d8b8d503bafe69aa9adb93cac9c7e89cb72f8b44bdb7018a09aa4c9d512e20a457c7d78f SHA512 36b76eefdff3ca832696c13b18d9153ca89d5b648c7df11d3c112a85e9ab92e9f124fdbd05d2d9017bd9c5cdc6bbb2de5038918c9f3a2695c8fa3a05835abdb0
-DIST libunwind-1.4.0.tar.gz 872941 BLAKE2B 39628dd46151d2748372c8f1dfa3cd39114770b85e890b048304f8395b2778a22da4cc468eb6fe1e2357a41bed5a6067e12992634859dabe30addd0fd39b4269 SHA512 60bce1e840f071d3a48cfa8e2acff988977956f659c5c04ce83f00751348fbbeddbfc54e8c9bd6ebc9073423ca5ee1816655dc5aa59fefd0a8edc9c3f7f3b913
DIST libunwind-1.5.0.tar.gz 878355 BLAKE2B ee35441289926ac22a58bedb9f831d8e13bacd663a99b3ce25eed229f25f0423bbbd90e09e3d62b003518d7a620aa6d15b0dd5b93632736a89fa0667b35d5fc2 SHA512 1df20ca7a8cee2f2e61294fa9b677e88fec52e9d5a329f88d05c2671c69fa462f6c18808c97ca9ff664ef57292537a844f00b18d142b1938c9da701ca95a4bab
-EBUILD libunwind-1.4.0.ebuild 3084 BLAKE2B 2c1791c707e2b2fe38abea2faa0f904a414d49c46c61ddc8ced7603294221cdec275758f230a2696e0378db1ea0c4e26fcf66e1e9a2840e32ba90b4ce291ff9f SHA512 efc6aaa08d84b322fb31485c83881447657a6ad588cc5b29a50ff78e3a4ade8a14d4c99370eb042aa19f7baef716decedd71dc1b6697921a66f53c6b80dc87de
-EBUILD libunwind-1.5.0.ebuild 3234 BLAKE2B 49fd0f035b58211350dad8d60fe706f306fc85a1805384e069ce3f2c6024d86b84c77d59d334defc09b6c90e62b39d8f5df7628288402eb401b326d5dc7ebe56 SHA512 8d9017bd8162a3a06c1fcc3d21a97a63ae6b397a7575c6aed6b812ad2f31ddd108a4048761278cbb60f115edd305c5d38dffbab3bf77ab1d2c5e0caa6ba53b59
+EBUILD libunwind-1.5.0.ebuild 3233 BLAKE2B 3f2cf31fabbc43bb0ec23353ae4bb93baf94df6fb2b0ce526989df3bb5d1ac705d537c1342090fd3d27aec779f661df4f83f64a362a159bb4bc9183f269e8846 SHA512 1ca06a8a5f3332746c4964d0befa05579eba67593555a86b09496badd1e5485bf04640760ea1300699c3655bde91c8cad12ca4a2a08f635459c2819a4e192f7a
MISC metadata.xml 489 BLAKE2B c0a884e7161b62e8548fdf3c8c1d34b24936c71a99fef37713b7c36e0ef3423563e5c98eae8e9748db059645ce85cf972448e0584b1ed92e51c228794e5ed10d SHA512 d7586420e24a7b841cb090ce8dc7bb1c1260a3e2afbc6606d0a974243ca20c0586b4aa3e770b5b98787f8d34b8255846d87550c16f68da6e9d3f55f8b57bde40
diff --git a/sys-libs/libunwind/libunwind-1.4.0.ebuild b/sys-libs/libunwind/libunwind-1.4.0.ebuild
deleted file mode 100644
index f3a6bbb9eff6..000000000000
--- a/sys-libs/libunwind/libunwind-1.4.0.ebuild
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 2005-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PV=${PV/_/-}
-MY_P=${PN}-${MY_PV}
-inherit autotools flag-o-matic libtool multilib-minimal
-
-DESCRIPTION="Portable and efficient API to determine the call-chain of a program"
-HOMEPAGE="https://savannah.nongnu.org/projects/libunwind"
-SRC_URI="mirror://nongnu/libunwind/${MY_P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0/8" # libunwind.so.8
-KEYWORDS="amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 -sparc x86 ~amd64-linux ~x86-linux"
-IUSE="debug debug-frame doc libatomic lzma +static-libs"
-
-RESTRICT="test" # some tests are broken (toolchain version dependent)
-
-# We just use the header from libatomic.
-RDEPEND="lzma? ( app-arch/xz-utils[static-libs?,${MULTILIB_USEDEP}] )"
-DEPEND="${RDEPEND}
- libatomic? ( dev-libs/libatomic_ops[${MULTILIB_USEDEP}] )"
-
-S="${WORKDIR}/${MY_P}"
-
-MULTILIB_WRAPPED_HEADERS=(
- /usr/include/libunwind.h
-
- # see libunwind.h for the full list of arch-specific headers
- /usr/include/libunwind-aarch64.h
- /usr/include/libunwind-arm.h
- /usr/include/libunwind-hppa.h
- /usr/include/libunwind-ia64.h
- /usr/include/libunwind-mips.h
- /usr/include/libunwind-ppc32.h
- /usr/include/libunwind-ppc64.h
- /usr/include/libunwind-sh.h
- /usr/include/libunwind-tilegx.h
- /usr/include/libunwind-x86.h
- /usr/include/libunwind-x86_64.h
-)
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.2-coredump-regs.patch #586092
- "${FILESDIR}"/${PN}-1.2-ia64-ptrace-coredump.patch
- "${FILESDIR}"/${PN}-1.2-ia64-missing.patch
- "${FILESDIR}"/${PN}-1.2.1-only-include-execinfo_h-if-avaliable.patch
-)
-
-src_prepare() {
- default
- chmod +x src/ia64/mk_cursor_i || die
- # Since we have tests disabled via RESTRICT, disable building in the subdir
- # entirely. This works around some build errors too. #484846
- sed -i -e '/^SUBDIRS/s:tests::' Makefile.in || die
-
- elibtoolize
- eautoreconf
-
- # Let's wait for proper fix upstream in https://github.com/libunwind/libunwind/issues/154
- # Meanwhile workaround for gcc-10 with -fcommon, bug #706560
- append-cflags -fcommon
-}
-
-multilib_src_configure() {
- # --enable-cxx-exceptions: always enable it, headers provide the interface
- # and on some archs it is disabled by default causing a mismatch between the
- # API and the ABI, bug #418253
- # conservative-checks: validate memory addresses before use; as of 1.0.1,
- # only x86_64 supports this, yet may be useful for debugging, couple it with
- # debug useflag.
- ECONF_SOURCE="${S}" \
- ac_cv_header_atomic_ops_h=$(usex libatomic) \
- econf \
- --enable-cxx-exceptions \
- --enable-coredump \
- --enable-ptrace \
- --enable-setjmp \
- $(use_enable debug-frame) \
- $(use_enable doc documentation) \
- $(use_enable lzma minidebuginfo) \
- $(use_enable static-libs static) \
- $(use_enable debug conservative_checks) \
- $(use_enable debug)
-}
-
-multilib_src_compile() {
- # Bug 586208
- CCACHE_NODIRECT=1 default
-}
-
-multilib_src_test() {
- # Explicitly allow parallel build of tests.
- # Sandbox causes some tests to freak out.
- SANDBOX_ON=0 emake check
-}
-
-multilib_src_install_all() {
- find "${D}" -name "*.la" -type f -delete || die
-}
diff --git a/sys-libs/libunwind/libunwind-1.5.0.ebuild b/sys-libs/libunwind/libunwind-1.5.0.ebuild
index 42ee07e1b350..0426d0b78971 100644
--- a/sys-libs/libunwind/libunwind-1.5.0.ebuild
+++ b/sys-libs/libunwind/libunwind-1.5.0.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://nongnu/libunwind/${MY_P}.tar.gz"
LICENSE="MIT"
SLOT="0/8" # libunwind.so.8
-KEYWORDS="amd64 arm arm64 hppa ~ia64 ~mips ppc ~ppc64 -sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 -sparc x86 ~amd64-linux ~x86-linux"
IUSE="debug debug-frame doc libatomic lzma +static-libs zlib"
RESTRICT="test" # some tests are broken (toolchain version dependent, rely on external binaries)
diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest
index 70bd3a16f784..29f8d74b5343 100644
--- a/sys-libs/llvm-libunwind/Manifest
+++ b/sys-libs/llvm-libunwind/Manifest
@@ -1,11 +1,13 @@
DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151
DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2
DIST llvmorg-11.0.1-rc1.tar.gz 122777435 BLAKE2B 23b520d33cf4b641027ee52bb10c6171d60356c9167d5b94012929e6e547c526cda1a6177c295ed19592dfb83b020f63b2cef4cabc70ce9a2a8e098fe654a3cd SHA512 605c7bbff1610f335be8ea4f1204df797fed21185a54c77565f6ff2d00794d1967e9c5fab7c87633e242f2f999bdffb76da83f756d261c1ca476114599409ae1
+DIST llvmorg-11.0.1-rc2.tar.gz 122793330 BLAKE2B 5d42f7bd7ba253ac3ca08cf9901c79db5b51b86f0f66c8e63f4f9808ca5fb72cacccfad098b4f6701a34b0d77bdd66fe3839a3962a251eae53776240a2e13b06 SHA512 acda5a5be38cc8aae730c34cd1bb8f29a82e2ed3dd9734ca293ff092d5b30c8c255ab3054245b8f6ed541d5dbf8bc674b744bb2f81788db8826f69a204dda0c3
DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59
EBUILD llvm-libunwind-10.0.1.ebuild 3186 BLAKE2B 11f1a597295754131e37decd729a0583405885910ca915cec77fe0593452164d217f7205ea0ead058c63779b9b0eefb92d2b0118cc764497483a42db0f059ad4 SHA512 eaaff919522f581886c212c319e20056ad2554fb4499e17a3a9d4ea3dc2d12ec2c07ab2c4de300c38103f92f640887845c5368ee0eb8c8cc921454033e5936c4
EBUILD llvm-libunwind-11.0.0.ebuild 3197 BLAKE2B b2bc45250b64e5db02e14ff2b8b24eca7a63f0b17e32ff11563a8191f399d90b61ad58349cb2d834bc64a95e297e89f60225761f800af72f7e93927dcdfbc395 SHA512 798c6001df7018d840c28da7a1d3063d5d3549c406b550e20120fc1ff9f337a1e88d4140a8b0eb45871e0eb4e3ad5943790490cf32b127525dd890142a7d294e
EBUILD llvm-libunwind-11.0.1.9999.ebuild 3180 BLAKE2B c28657a17c13d0542029afa1adfc0c93ef7527b27243c75d7e6cd8647b89a612b95876ca53e0c8035e5be6682121f64a1ca182cbecf43703d773ee4d9e278852 SHA512 9c7bb3b843ecb3169c85df3cfd9b821a7c6f9e11b777645fab0a0e5b9365dad974f578c65fe535e222034d13b03df3738dbe07ded84894f293da77fdf14b1738
EBUILD llvm-libunwind-11.0.1_rc1.ebuild 3180 BLAKE2B c28657a17c13d0542029afa1adfc0c93ef7527b27243c75d7e6cd8647b89a612b95876ca53e0c8035e5be6682121f64a1ca182cbecf43703d773ee4d9e278852 SHA512 9c7bb3b843ecb3169c85df3cfd9b821a7c6f9e11b777645fab0a0e5b9365dad974f578c65fe535e222034d13b03df3738dbe07ded84894f293da77fdf14b1738
+EBUILD llvm-libunwind-11.0.1_rc2.ebuild 3180 BLAKE2B c28657a17c13d0542029afa1adfc0c93ef7527b27243c75d7e6cd8647b89a612b95876ca53e0c8035e5be6682121f64a1ca182cbecf43703d773ee4d9e278852 SHA512 9c7bb3b843ecb3169c85df3cfd9b821a7c6f9e11b777645fab0a0e5b9365dad974f578c65fe535e222034d13b03df3738dbe07ded84894f293da77fdf14b1738
EBUILD llvm-libunwind-12.0.0.9999.ebuild 3180 BLAKE2B c28657a17c13d0542029afa1adfc0c93ef7527b27243c75d7e6cd8647b89a612b95876ca53e0c8035e5be6682121f64a1ca182cbecf43703d773ee4d9e278852 SHA512 9c7bb3b843ecb3169c85df3cfd9b821a7c6f9e11b777645fab0a0e5b9365dad974f578c65fe535e222034d13b03df3738dbe07ded84894f293da77fdf14b1738
EBUILD llvm-libunwind-9.0.1.ebuild 3356 BLAKE2B 761c9fcfbd3dc5689521f7423e1bafe4f673d7c6dbd397f6b6e0f4bc168495f3eea513c0550d20a60cf1e4e38200df59583cede7bfaad4c574f249e532fe4bb2 SHA512 82f4e6967d73ae96199a507081cd9cc913a4e4b2b0c45caa0b27d428b68262df76242d318327616bb5112d97ee68fec1061485f94f0137fd73a0fdaad998707b
MISC metadata.xml 302 BLAKE2B 1cdee7813ed9a3766b2eddccd14f9e0576ba5cc7f812d7af4f35c8c2e5991790f3800c6473c37da90d72804832fd9af969a2e3bf7aa625f0d3a32da1dbcefacf SHA512 3afaef82e6a495a81e221524ae7604dc170ef5c103333728674faf0417c45ba7996118c10466eaa24f8feef9ed8f0fc60d535a5195462317d61c61a531c8a285
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-11.0.1_rc2.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-11.0.1_rc2.ebuild
new file mode 100644
index 000000000000..38385b9304f5
--- /dev/null
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-11.0.1_rc2.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+PYTHON_COMPAT=( python3_{6..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 )
+LLVM_TEST_COMPONENTS=( libcxx{,abi} llvm/cmake )
+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
+}
diff --git a/sys-libs/newlib/Manifest b/sys-libs/newlib/Manifest
index fb4e583995bb..4a9fe1800d68 100644
--- a/sys-libs/newlib/Manifest
+++ b/sys-libs/newlib/Manifest
@@ -1,8 +1,10 @@
AUX newlib-3.3.0-no-nano-cxx.patch 1338 BLAKE2B ff16751b01784a38dc07aa79120c38f0274bb14caeeb653cecca4b3ca69c60a72e0e1918fea8f2c0f4734293817539122fa41b349f61ceabb3cb9ae878a11d13 SHA512 08dfc7d854dc75c8b875fa7c1829078c8df8988b4ba2b20739d387c656ca63b8b344487861d23658e31b72f911d05c2f57abe51bdf3b2dedcc88ce072c6595c8
DIST newlib-3.3.0.tar.gz 18361083 BLAKE2B bdc81427955d0a2f550bf2973ca82c0b8b55aa170565cdf1cfe8ac926257fad6d3e860ce7b2e286949ab21be2677378b5b6d3c743c05fe8aa6df8a8c34a16945 SHA512 2f0c6666487520e1a0af0b6935431f85d2359e27ded0d01d02567d0d1c6479f2f0e6bbc60405e88e46b92c2a18780a01a60fc9281f7e311cfd40b8d5881d629c
DIST newlib-4.0.0.tar.gz 18645966 BLAKE2B 04dced199253f7ea725c1812c2083fd5664722bed645c5cc26567587f802119826ed6bb0372c53c9496110efdc6ee9ea0ec007885c00af885164bfd6b8280bad SHA512 15786bdba2ea6252409b0e3a11046d6315c7629df3b0ee37f0aa2e119c3f356d04e4da6ad2b5dc90de218cc35008f144d7bc986f6b24d95e8868e1848a9ca970
+DIST newlib-4.1.0.tar.gz 18648429 BLAKE2B c4d4d734bceeacf05b75d450d4316392d0000266812f98f99cd3f9f0926ac9848e1dc145361827d1d6951edfe5f109923c982d9f284f927ffc5fd5e5edaf8be6 SHA512 6a24b64bb8136e4cd9d21b8720a36f87a34397fd952520af66903e183455c5cf19bb0ee4607c12a05d139c6c59382263383cb62c461a839f969d23d3bc4b1d34
EBUILD newlib-3.3.0-r1.ebuild 4459 BLAKE2B c2a94dbe1f3f02e9b4f5ffdd3d80c0a7b85533966ae4e5339f8efda4534aa3e8eef297fb82b0a9c1c113556e3b28293a11444f7208abcce6f5fa9f3996ddcb29 SHA512 140d1044b26489f050a4d5e26f8df168c1a524fcaad1ce10b12c274f188b7c62d31c5870ab731d5f82262d594aa37d0251bd0da2ca1f62a8fd8a7a387dc9fe4e
EBUILD newlib-3.3.0.ebuild 4401 BLAKE2B a35d99451e91261ea18c9d3e988e2ef260fa8bfbc17d16cb85db8958f1531152baf0b25281c930288a9d6a7affe0c08deb9d608b78e7906381e03962a4e9da61 SHA512 58ed88812207e3c2ef6e811ddb9e74cdef1b1626cc6c04a9d619e5c5bc4ad1f88516b4b9c2fdda9179848b17995bb34ec38f9d66f3bcea201bdee432e34cf7aa
EBUILD newlib-4.0.0.ebuild 4458 BLAKE2B 1dd071212b733aec7c9b274c966439517eefec491cc99e2e2b2068b08dfca5b80de3de4482a67e5c1a6c51a4f53154b545115d883b98cf1e6d9c17636f02920f SHA512 7934761958f4171a30c109d46b5fe4f353f1a8f812a69663e4315a472cceb378102d862d335b0c991e3a479c2557daa960a8502aa1686b49456ee0629c2e133b
+EBUILD newlib-4.1.0.ebuild 4458 BLAKE2B 1dd071212b733aec7c9b274c966439517eefec491cc99e2e2b2068b08dfca5b80de3de4482a67e5c1a6c51a4f53154b545115d883b98cf1e6d9c17636f02920f SHA512 7934761958f4171a30c109d46b5fe4f353f1a8f812a69663e4315a472cceb378102d862d335b0c991e3a479c2557daa960a8502aa1686b49456ee0629c2e133b
EBUILD newlib-9999.ebuild 4458 BLAKE2B 1dd071212b733aec7c9b274c966439517eefec491cc99e2e2b2068b08dfca5b80de3de4482a67e5c1a6c51a4f53154b545115d883b98cf1e6d9c17636f02920f SHA512 7934761958f4171a30c109d46b5fe4f353f1a8f812a69663e4315a472cceb378102d862d335b0c991e3a479c2557daa960a8502aa1686b49456ee0629c2e133b
MISC metadata.xml 413 BLAKE2B 03320244c40182ff9d503fd1d9c7c3847209eeb91081e7d4a3285ed43eba6a42e0f361f6b7601966df420dde2d4e93ca458816198c2f9ebaec82790359ce868b SHA512 37e46d117243b93e189177ada64acedc0d798dfe4859f29a7ef70b22fe44e6364a3445e345def7e48264cb2bf3047ac78637759bc04d9ed3d7ea339432adf7e4
diff --git a/sys-libs/newlib/newlib-4.1.0.ebuild b/sys-libs/newlib/newlib-4.1.0.ebuild
new file mode 100644
index 000000000000..e16fd4c10b75
--- /dev/null
+++ b/sys-libs/newlib/newlib-4.1.0.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit flag-o-matic toolchain-funcs
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://sourceware.org/git/newlib-cygwin.git"
+ inherit git-r3
+else
+ SRC_URI="ftp://sourceware.org/pub/newlib/${P}.tar.gz"
+ KEYWORDS="~arm ~hppa ~m68k ~mips ~ppc ~ppc64 ~sparc ~x86"
+fi
+
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+ if [[ ${CATEGORY} == cross-* ]] ; then
+ export CTARGET=${CATEGORY#cross-}
+ fi
+fi
+
+DESCRIPTION="Newlib is a C library intended for use on embedded systems"
+HOMEPAGE="https://sourceware.org/newlib/"
+
+LICENSE="NEWLIB LIBGLOSS GPL-2"
+SLOT="0"
+IUSE="nls threads unicode headers-only nano"
+RESTRICT="strip"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.3.0-no-nano-cxx.patch
+)
+
+NEWLIBBUILD="${WORKDIR}/build"
+NEWLIBNANOBUILD="${WORKDIR}/build.nano"
+NEWLIBNANOTMPINSTALL="${WORKDIR}/nano_tmp_install"
+
+# Adding -U_FORTIFY_SOURCE to counter the effect of Gentoo's
+# auto-addition of _FORTIFY_SOURCE at gcc site: bug #656018#c4
+# Currently newlib can't be built itself when _FORTIFY_SOURCE
+# is set.
+CFLAGS_FULL="-ffunction-sections -fdata-sections -U_FORTIFY_SOURCE"
+CFLAGS_NANO="-Os -ffunction-sections -fdata-sections -U_FORTIFY_SOURCE"
+
+pkg_setup() {
+ # Reject newlib-on-glibc type installs
+ if [[ ${CTARGET} == ${CHOST} ]] ; then
+ case ${CHOST} in
+ *-newlib|*-elf) ;;
+ *) die "Use sys-devel/crossdev to build a newlib toolchain" ;;
+ esac
+ fi
+
+ case ${CTARGET} in
+ msp430*)
+ if ver_test $(gcc-version ${CTARGET}) -lt 10.1; then
+ # bug #717610
+ die "gcc for ${CTARGET} has to be 10.1 or above"
+ fi
+ ;;
+ esac
+}
+
+src_configure() {
+ # TODO: we should fix this
+ unset LDFLAGS
+ CHOST=${CTARGET} strip-unsupported-flags
+ CCASFLAGS_ORIG="${CCASFLAGS}"
+ CFLAGS_ORIG="${CFLAGS}"
+
+ local myconf=(
+ # Disable legacy syscall stub code in newlib. These have been
+ # moved to libgloss for a long time now, so the code in newlib
+ # itself just gets in the way.
+ --disable-newlib-supplied-syscalls
+ )
+ [[ ${CTARGET} == "spu" ]] \
+ && myconf+=( --disable-newlib-multithread ) \
+ || myconf+=( $(use_enable threads newlib-multithread) )
+
+ mkdir -p "${NEWLIBBUILD}"
+ cd "${NEWLIBBUILD}"
+
+ export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_FULL}"
+ export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_FULL}"
+ ECONF_SOURCE=${S} \
+ econf \
+ $(use_enable unicode newlib-mb) \
+ $(use_enable nls) \
+ "${myconf[@]}"
+
+ # Build newlib-nano beside newlib (original)
+ # Based on https://tracker.debian.org/media/packages/n/newlib/rules-2.1.0%2Bgit20140818.1a8323b-2
+ if use nano ; then
+ mkdir -p "${NEWLIBNANOBUILD}" || die
+ cd "${NEWLIBNANOBUILD}" || die
+ export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_NANO}"
+ export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_NANO}"
+ ECONF_SOURCE=${S} \
+ econf \
+ $(use_enable unicode newlib-mb) \
+ $(use_enable nls) \
+ --enable-newlib-reent-small \
+ --disable-newlib-fvwrite-in-streamio \
+ --disable-newlib-fseek-optimization \
+ --disable-newlib-wide-orient \
+ --enable-newlib-nano-malloc \
+ --disable-newlib-unbuf-stream-opt \
+ --enable-lite-exit \
+ --enable-newlib-global-atexit \
+ --enable-newlib-nano-formatted-io \
+ ${myconf}
+ fi
+}
+
+src_compile() {
+ export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_FULL}"
+ export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_FULL}"
+ emake -C "${NEWLIBBUILD}"
+
+ if use nano ; then
+ export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_NANO}"
+ export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_NANO}"
+ emake -C "${NEWLIBNANOBUILD}"
+ fi
+}
+
+src_install() {
+ cd "${NEWLIBBUILD}" || die
+ emake -j1 DESTDIR="${D}" install
+
+ if use nano ; then
+ cd "${NEWLIBNANOBUILD}" || die
+ emake -j1 DESTDIR="${NEWLIBNANOTMPINSTALL}" install
+ # Rename nano lib* files to lib*_nano and move to the real ${D}
+ local nanolibfiles=""
+ nanolibfiles=$(find "${NEWLIBNANOTMPINSTALL}" -regex ".*/lib\(c\|g\|rdimon\)\.a" -print)
+ for f in ${nanolibfiles}; do
+ local l="${f##${NEWLIBNANOTMPINSTALL}}"
+ mv -v "${f}" "${D}/${l%%\.a}_nano.a" || die
+ done
+
+ # Move newlib-nano's version of newlib.h to newlib-nano/newlib.h
+ mkdir -p "${D}/usr/${CTARGET}/include/newlib-nano" || die
+ mv "${NEWLIBNANOTMPINSTALL}/usr/${CTARGET}/include/newlib.h" \
+ "${D}/usr/${CTARGET}/include/newlib-nano/newlib.h" || die
+ fi
+
+ # minor hack to keep things clean
+ rm -rf "${D}"/usr/share/info || die
+ rm -rf "${D}"/usr/info || die
+}
diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest
index 435e5ce41a26..c66a1e5bc147 100644
--- a/sys-libs/readline/Manifest
+++ b/sys-libs/readline/Manifest
@@ -1,34 +1,13 @@
AUX readline-5.0-no_rpath.patch 367 BLAKE2B a39663c6222f604acf0ea0a5b6e4a4c99097257727644d2e8b814377b0f9472a6cdba8ed6edacc61629a39458fb5905bb873474e72dd44ab3e7e78b330f451c5 SHA512 ce4a03fe5b60a1e785f35b6717c5e267a815e8fd1a1d59e527aa88f35709c457c1d7c505c34f63f0d32f8f1633eb66661e05e151e218ae5b74cec1d9ddc4ab92
AUX readline-6.2-rlfe-tgoto.patch 379 BLAKE2B 363dee5501fa9449eeee0647f1ae65106e28ad06af16c8aefe372a081eb5cd62b01a7cf2109ce5b3fc6577b6056f3a0206e3cc53f22d0a69f4d273930e3e2ab6 SHA512 1d2c3aafc949d92fdf6abbee60a60c80f0327f81694d5d8f3a166f1c24d37346caca3e72c9971106b96b2758a9a01269346954fe20bc381eb9da2e6a2737fc3c
-AUX readline-6.3-fix-long-prompt-vi-search.patch 736 BLAKE2B 1439a22ce82d51dd7cfb4bd1436475dce1d566fb2cc592e8161400e62e2790eff4a21c0634ef99f5da75efb21583514b90d47bb574b97374239fbd7ebb13fde8 SHA512 ad5bb44ba00f6f5e355b95078209e2e51f8d8ba9a924d00ef6aa3286e09c15fe0024efa0817f9e6d86b7aecb73150fcd69d0051a0f7fb37475921478f62ce0e0
-AUX readline-6.3-read-eof.patch 1913 BLAKE2B 85cbba295d21de00af7cfa361d7976aabfb1110d860256224138a1844288f869f5225c296800aba5f637c892a988f834dddf184d06d308ae3da94cccb00ee5c4 SHA512 99728e35d64b466e2bea570412eec719c70841d205a5190c0000bcae55cf3ac2d659ae18e57b4c332525261d83e160054800cd89f4009ce3c76d1c3b4ac27223
AUX readline-7.0-headers.patch 550 BLAKE2B 82949940cda6d042923b3dde777fbd66643d80f4c2fd984eb11ef7f0fb48776ba8938d1c8be23087b328ce9b3ad0acd668f5bb4f0bda77b4a992119688a37191 SHA512 fec3d20e1581f35609a9d9f9ee1f48df8f9aa781e1a2cdcde2edf7d149624b5770867feb65a7ba142276d95a3133b768f5589e8041049aa0cf30068d0637b938
-AUX readline-7.0-mingw.patch 4464 BLAKE2B 00ca79f7ee128a78d76c3e0adcb8b51f6d3027718cc3a7b2b11660cd4aa9c61b4da15c893c9ad0595becf2c393c0d9e7597b5a772085bfc82974568c30f5b381 SHA512 f416f265c51f4cb05467c29c29abcaabf40ae29d66bb5d3288d35403ccc26903f2a22afef43382e39d7b13ba62732082c60d8f8d10abf7cf7955ee50fc23531b
-AUX readline-7.0-missing-echo-proto.patch 466 BLAKE2B 251660f1321a36231774d5f03fea971a047688918a8f6498e019cadca43314097aee89ef8a96b104a5382ba0baa1037d500143f4d66e881da76d23f9385faaa9 SHA512 a8458bf62c73f79b980f375b98b33a6fbef59dec28386cd5266e4742a9cf70673e567f999d5682e538a2a47388d6f123d8a4fe4cfe34f19c28d4dafd93a9e10a
AUX readline-8.0-headers.patch 577 BLAKE2B b8fe6cdf51188f68c852d3c9052e7840a0bcb4cd0cd0b25afa82d6fe8697dcb34aa541279010b308427c411a7133c481dd778551069893ad965ce6d3a4a9ff83 SHA512 81695abab2e9fba1b17a4c194b7c72eeb23bbc3ab84cb0716c08388c0ee60adb770ae8efcbbb6a2c7c6adab93dcff12e3a16d0423cf52a0166b38c9efee5c221
-DIST readline-6.3.tar.gz 2468560 BLAKE2B 24488ec141734c050ba985a93423692396f105619bae3ce5b109bc68a4f43862bcf3a6fb8d82fec1145d665cdb408765e179379bb35f008d09c441fa2e5739df SHA512 f70efaf46d570b85c7637172b0ee2eb9a4aa73ba38a62bb45075e665929d9701b96fba0aea6c767fd9a2a0d39dfe8e70ab06da08f8524aee76a7c502f370a401
-DIST readline-7.0.tar.gz 2910016 BLAKE2B 679b8aa7ce003017b729e6d8d4cb69d0f991578441a3e69005090079e61f6aa48b7ad4d0b1f34b6041528cf33254a1bf3ddb05b60db53a06e443d7922d49d0d4 SHA512 18243189d39bf0d4c8a76cddcce75243c1bae8824c686e9b6ba352667607e5b10c5feb79372a1093c1c388d821841670702e940df12eae94bcebdeed90047870
DIST readline-8.0.tar.gz 2975937 BLAKE2B 95e08b28cc46582f036379413810ca40c97d4d3bc59a9e03e04e57d531573abfbe955f6f1cb86e39c208bf6c3f4c618cff70a87bec596d0b9120909d6c5a2f69 SHA512 41759d27bc3a258fefd7f4ff3277fa6ab9c21abb7b160e1a75aa8eba547bd90b288514e76264bd94fb0172da8a4faa54aab2c07b68a0356918ecf7f1969e866f
DIST readline-8.1.tar.gz 2993288 BLAKE2B f0feca1ea3517b2b613adacac8c997cce0e86aa2f410c82a40ce1a2e128067112b4c68dbf25b808291c28c47583345abac994ce10b8d117958afcb96ee5e7c69 SHA512 27790d0461da3093a7fee6e89a51dcab5dc61928ec42e9228ab36493b17220641d5e481ea3d8fee5ee0044c70bf960f55c7d3f1a704cf6b9c42e5c269b797e00
-DIST readline63-001 1366 BLAKE2B 82af5be99597719329db3f1d6049e75a5654ccf6597cf557c71ad7ada0ac03be87381a7738931eb78716de65902ae87498f574b84150a69eae9cc308c4bfffdd SHA512 e70f89ca52a4eae7e1cddd70de6a7162252231ee029c89bb3fcb0f6c8c8b46c666be910c8b2eee72e96983ec2f1a23663694dc222f67228d82e8e4684f1504a2
-DIST readline63-002 1297 BLAKE2B 5ace4a81381910ee48dee8cdbb2ca95a1bef2d1f8acca6d39a910c078c86de10a0fc29486939b336110ecb0281b3edb16e4b985f41e7ee161904728f289fff04 SHA512 4e23bd67433577e6e361d10a6c32768ea9e13b10e77493e565b870f56069b673fbcb0b860225f79fa9931845fc91d35c9a82c1385c23f8b757ebfd59f27851f4
-DIST readline63-003 985 BLAKE2B cf2cda505b100d5f820d8bfc99eed6b50e65c92b6a495073352fc7385c6456478594e5c2dc293ce556b66853dff705050fb97982aa25fce452ae53d2cb272cf4 SHA512 6bfb84a5b980091b995e2b96bdf5680f97fe670e6cac1b8606d2d75a1ef922ff5bd4e73f029f7af98a115006b7ab7828146f2cd6986287543d8a29987c91dc12
-DIST readline63-004 1363 BLAKE2B c1aec93f1e23acd51b36068d3aac31b93ffd9c1039be2c45ff4e6479135f153888030c68cf19c5ced950f6fbbb38ee7fa644d5a737f3f8ed511e97bf342940f5 SHA512 6b683e9fe28831885135391b5a23bc580cacf0ffe720951a80f545574eda4eb064fe189801d44329b2eb2d3577db5a90f9e5ad9ed131e7e8a8ae349511632721
-DIST readline63-005 1664 BLAKE2B f98f62be8676aca81b91d919bc4eccfe40c382a8baab0e64b1659b714f0d72424e29b709cc5e226fd73daf67eef264a17e07982d2553ce80f5e5f39fad70610b SHA512 b0332d7f999376788155341319d138a899a2278c338a6faaac89ecf3ed1e2248a07413dd810a76996bf25f211de787182b55f34ab3d7d31eb7519d7a48ebed32
-DIST readline63-006 1982 BLAKE2B ad6d16ff769eb8e367cf961ffe152c04778b046a04e4a62e0ce21d08fa16b0eca3d278dbdc274b082d24fa2ec959ffb62168ea7693b4de94b59a4526b1f0c4a2 SHA512 e9fbfa38d7b03ab2aff2e9e48918b85b4b67a729862ee47d1cc8e0aeb90c3224394a79f68829951e1377cae65742aa5385eae865f75e9c0b2e2abde42889431c
-DIST readline63-007 1428 BLAKE2B 60e64c2dd36457e3992cfbfbbcc261337e515be360a37d71b9de236c62c781f10f0ec37e4e196b4634e5d547edebbf915370091ca42fff873b78cd80cfe3a7f2 SHA512 abee331894846b360203a521d9a66fa02c03214120d5cafbd1cb4d680bd7bbef14321ae845dd67f7b5e8c87322801fd96fc9a5fd0ae026b41d98dc24a8949854
-DIST readline63-008 1452 BLAKE2B 4e41c45be1479fba9f74bf9cedb8d1f6237e650962d5b45ea1a61cc48a8323a0fa60d76f68c011b6e7c73a1078b5ff80f9966e983b994f814d471d0efd9efde6 SHA512 8e30bbca3aa5cea8c2ee511abe0ec8f131608d74fe5ab24d68bcf452267f0f97446ed6e7cd482360876ce6c027280e4f4450cae05eb18f56046240f4c224841c
-DIST readline70-001 1777 BLAKE2B ab217bd9d27f30351397db2b745cb33ac7e0ce18bbc00112bb87570da0f62ee0e8d182395c97e4ecc21af51e7e1e580ba48076de1095c556f0744475e4019821 SHA512 4402186905af8cd42c609d640c2e13b9ad61c7778e5a3fd2c2d9da301f0deab05b04d7836f31527262f44f406517823dbb18cb07f2c73931186c806b494699ec
-DIST readline70-002 2953 BLAKE2B 47d729b1babe904855fe5d4f780a5b2153a743def527479c3cb82759cdee5bb4260be722e1050be680f5c0dd6dec8ca25c4c1ff557415abae6b3fac2bd481f0b SHA512 13d1489578508d4d2c3a1618024198a709dbce74a6bbf0f6d7ec67d2419c55bfec9f0ca9de0ed93f129d21d5c3a94307ccdc49408455bbb301c5e3a772b03185
-DIST readline70-003 1294 BLAKE2B 9473e18b582fba69cea83e3f5b9fa278dd8b0544325439307d2b4053cbeca8d2f008104bee181ae5d9405d702e6d3bcf26379c4d46e269906474c8544367b780 SHA512 eaf962a1480eb3870519017b81ecc5cef171e4c41fcf8c17da61ccbfd0379ed6bca85c17b03e2207ae4d51509f33fd010294c75f4bd0433a52118015d4160385
-DIST readline70-004 1501 BLAKE2B cebce69a21bee3a4d6a908de09f371d65eab6af51a8dc0f58fc915b916957db420252ce07b06703c05d984f62e1e849b6975f5444b2af6ba35ff7c939acf9d99 SHA512 7be41558eab3b88a3657f8589ecfaff0b8ee7f59083d385f50e8704fe830e05a50652a5feda19ff1f3cfd98bff4bb8e25e1637ec4dac8a618db9c8220a3d954e
-DIST readline70-005 1641 BLAKE2B f720508f698b113c6328018f7e6e8775c7c79afc464047405a5c3dae017d611535017dfc2759c11483bb536fab1e9bf72c7a9d3c769b7aea3bd2cee9686bd522 SHA512 eeb27f4f9195cb905d5891f26480d58f59c885dde3457f7a30ff57760ac772e2333ee8aeae979214949f3b52030285b10db013e307ee7311abab677a4427e878
DIST readline80-001 927 BLAKE2B 95e3ac33ff4adb65813274864c17781056a8ea065f9a76571b4a6bcb2ebab090c3a021fa2b621832c11b5995e48a8a26dd6e3a8f5864a8e8b520bfcf85d7c4ab SHA512 a148cda6ac97935d51ede1bbacf847d7d2cba8861cf3941d32e3da2f45f16dcc05b20845b63d4264692520db8329e1236cf2bc4fd8ccbe6e40921bbbdeb2cb1c
DIST readline80-002 1401 BLAKE2B a2f511272f6d651208469998330059d6bae17bb8b704b64468685bb0368b76df1ca5b1dcd8e5cb0019e80932130c8a92fd1a305679bf79f0b801532a94c4b4ae SHA512 a941d142a59fe592cc45c1cf4d416e2fc0ab543dd6a0496fb8b2ec6f651cedd6fb9e0c105f14880700b69b2d6912653b3f66371e45cbe4adc0cc9554801afd3c
DIST readline80-003 2158 BLAKE2B d8910aef1b796a59500b255df8db71ad1738dd164fd69827759eade74b6d9806ecd364839cfa904fc2f2d48352342155f670e5ec43aac0693f36820fb7139a4d SHA512 85235fca047b4ac87b846d998fffc67ae67ed365b068fd2743e84f11fd00086f85e622955192e07e3560965e32ff5f6d014e0146cde528fb0d0f7b5b829875ca
DIST readline80-004 1275 BLAKE2B ac260bab163f17ccc783e0c2a21351b05e9e86ad973383d228d10ec749f265df8588c38946c9da15e987192b50f1bcb81141c2f4e171f65455f58521e864a534 SHA512 301ced2361e7583468f9932038936387a016c20d1c41966658a78c7f7c48c70308bf66b3228de0a3c6fc880427b6a90ee1ac4d2693daed432e5ae970671a7461
-EBUILD readline-6.3_p8-r3.ebuild 4382 BLAKE2B 40f4d50108b38fea8c04c4d21d7f2d0166c903e4094b55a1878c230e8aa2dbe53c482e6ac0bd7173444aabf05e384b322852f06b8959b281c5cda7e561692540 SHA512 756f195d204a9ff3bc942ded6767db0afe8fb4186ffb86b66d8ac77262cc32834a34877a05d6903ae5da399562c596e3eab7641fb950bb7a97bd87261ce534d7
-EBUILD readline-7.0_p5-r1.ebuild 4873 BLAKE2B 3906ef2e23648e451512d7a9b7020b1185f098ca6e6f0d99a8939bc768f73fc90b3db227f861d3816102fe2cb4f950b456004ed333b325dda872a6cf88f148b0 SHA512 9c72e370630bb34d98c65bcdf8a4e9d5b064ac9237c67eda268f41d1ef2c3f0a5b8109b746b987cded1fc6807ac3c025a4b124bfe9910a01f07da5d12b8106a8
EBUILD readline-8.0_p4.ebuild 4843 BLAKE2B 4466c69c466200c3da9528b4456c69c86d46ace2dd7fb98183e8a42a8e956d0a4a597db0c3658396dea9f0cb57e40dd7926a2ea83e8388c430fb3d145e7635a2 SHA512 0b768071df2aabb2ec3381c13fbb6a0ff30ae9da8471c37f93daf96aa6a2fda652864feddca458e10e28f4d595041575db3da118928251394b623f05d48d6458
EBUILD readline-8.1.ebuild 4880 BLAKE2B 925b253a42d48e9fb28e8d612c5d4af3d1ea9291f747485896b1105e29e617f6790bc25a1afe6995e3fa00ba0152e02d1cfedb605d76d558b820f9a2cde63759 SHA512 62f2cb6e9594797cc363cde85a43c8c273ee5effb02fc355d5e7f6079884f86bb59d68aa22ccd34317e5e3c53c62ae4bbb8e89e752a72cca6a464534f8e6fcd7
MISC metadata.xml 472 BLAKE2B 8d3717ac6980105677b10449a1aabca9f9347066f73802241b904101172690bb789b8071f3670dd91ad2af0223c7bc5fb4ed594dc8af3aff20b17bdd681f7630 SHA512 f19a6f0d6aed18903778adc5ad45fdae39c4388e4f09e7cb8a110b798e8cc7ab1739ff813a227ad08ef1166309e1ead57c200b7fe42499a06db97af9f4bce173
diff --git a/sys-libs/readline/files/readline-6.3-fix-long-prompt-vi-search.patch b/sys-libs/readline/files/readline-6.3-fix-long-prompt-vi-search.patch
deleted file mode 100644
index 23d785054e75..000000000000
--- a/sys-libs/readline/files/readline-6.3-fix-long-prompt-vi-search.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-https://lists.gnu.org/archive/html/bug-bash/2014-08/msg00082.html
-
-From 2774192e93991e3d85ccc37c714aa018e442af6d Mon Sep 17 00:00:00 2001
-From: Dylan Cali <calid1984@gmail.com>
-Date: Sat, 23 Aug 2014 02:26:05 -0500
-Subject: [PATCH] fix vi search prompt bug for long prompts
-
----
- display.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/display.c b/display.c
-index 4df1f73..e575b16 100644
---- a/display.c
-+++ b/display.c
-@@ -2259,7 +2259,7 @@ rl_message (va_alist)
- va_start (args);
- format = va_arg (args, char *);
- #endif
-- vsnprintf (msg_buf, msg_bufsiz - 1, format, args);
-+ vsnprintf (msg_buf, msg_bufsiz, format, args);
- }
- #else
- vsprintf (msg_buf, format, args);
---
-1.7.10.4
diff --git a/sys-libs/readline/files/readline-6.3-read-eof.patch b/sys-libs/readline/files/readline-6.3-read-eof.patch
deleted file mode 100644
index f74aad63be1f..000000000000
--- a/sys-libs/readline/files/readline-6.3-read-eof.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-http://lists.gnu.org/archive/html/bug-bash/2014-12/msg00152.html
-
-*** ../bash-4.3-patched/lib/readline/readline.c 2014-10-01 13:08:28.000000000 -0400
---- lib/readline/readline.c 2014-12-20 22:37:28.000000000 -0500
-***************
-*** 580,592 ****
- }
-
-! /* EOF typed to a non-blank line is a <NL>. If we want to change this,
-! to force any existing line to be ignored when read(2) reads EOF,
-! for example, this is the place to change. */
- if (c == EOF && rl_end)
-! c = NEWLINE;
-
- /* The character _rl_eof_char typed to blank line, and not as the
-! previous character is interpreted as EOF. */
-! if (((c == _rl_eof_char && lastc != c) || c == EOF) && !rl_end)
- {
- #if defined (READLINE_CALLBACKS)
---- 587,620 ----
- }
-
-! /* EOF typed to a non-blank line is ^D the first time, EOF the second
-! time in a row. This won't return any partial line read from the tty.
-! If we want to change this, to force any existing line to be returned
-! when read(2) reads EOF, for example, this is the place to change. */
- if (c == EOF && rl_end)
-! {
-! if (RL_SIG_RECEIVED ())
-! {
-! RL_CHECK_SIGNALS ();
-! if (rl_signal_event_hook)
-! (*rl_signal_event_hook) (); /* XXX */
-! }
-!
-! /* XXX - reading two consecutive EOFs returns EOF */
-! if (RL_ISSTATE (RL_STATE_TERMPREPPED))
-! {
-! if (lastc == _rl_eof_char || lastc == EOF)
-! rl_end = 0;
-! else
-! c = _rl_eof_char;
-! }
-! else
-! c = NEWLINE;
-! }
-
- /* The character _rl_eof_char typed to blank line, and not as the
-! previous character is interpreted as EOF. This doesn't work when
-! READLINE_CALLBACKS is defined, so hitting a series of ^Ds will
-! erase all the chars on the line and then return EOF. */
-! if (((c == _rl_eof_char && lastc != c) || c == EOF) && rl_end == 0)
- {
- #if defined (READLINE_CALLBACKS)
diff --git a/sys-libs/readline/files/readline-7.0-mingw.patch b/sys-libs/readline/files/readline-7.0-mingw.patch
deleted file mode 100644
index f003038d2c0f..000000000000
--- a/sys-libs/readline/files/readline-7.0-mingw.patch
+++ /dev/null
@@ -1,152 +0,0 @@
---- a/colors.c
-+++ b/colors.c
-@@ -37,6 +37,10 @@
- #include "posixstat.h" // stat related macros (S_ISREG, ...)
- #include <fcntl.h> // S_ISUID
-
-+#ifndef S_ISDIR
-+#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
-+#endif
-+
- // strlen()
- #if defined (HAVE_STRING_H)
- # include <string.h>
-@@ -182,12 +186,17 @@ _rl_print_color_indicator (const char *f
- if (S_ISREG (mode))
- {
- colored_filetype = C_FILE;
--
-+#ifdef S_ISUID
- if ((mode & S_ISUID) != 0 && is_colored (C_SETUID))
- colored_filetype = C_SETUID;
-- else if ((mode & S_ISGID) != 0 && is_colored (C_SETGID))
-+ else
-+#endif
-+#ifdef S_ISGID
-+ if ((mode & S_ISGID) != 0 && is_colored (C_SETGID))
- colored_filetype = C_SETGID;
-- else if (is_colored (C_CAP) && 0) //f->has_capability)
-+ else
-+#endif
-+ if (is_colored (C_CAP) && 0) //f->has_capability)
- colored_filetype = C_CAP;
- else if ((mode & S_IXUGO) != 0 && is_colored (C_EXEC))
- colored_filetype = C_EXEC;
-@@ -211,12 +220,16 @@ _rl_print_color_indicator (const char *f
- colored_filetype = C_STICKY;
- #endif
- }
-+#if defined (S_ISLNK)
- else if (S_ISLNK (mode))
- colored_filetype = C_LINK;
-+#endif
- else if (S_ISFIFO (mode))
- colored_filetype = C_FIFO;
-+#if defined (S_ISSOCK)
- else if (S_ISSOCK (mode))
- colored_filetype = C_SOCK;
-+#endif
- else if (S_ISBLK (mode))
- colored_filetype = C_BLK;
- else if (S_ISCHR (mode))
---- a/histfile.c
-+++ b/histfile.c
-@@ -606,12 +606,14 @@ history_truncate_file (fname, lines)
- history_lines_written_to_file = 0;
- }
-
-+#if defined (HAVE_CHOWN)
- /* Make sure the new filename is owned by the same user as the old. If one
- user is running this, it's a no-op. If the shell is running after sudo
- with a shared history file, we don't want to leave the history file
- owned by root. */
- if (rv == 0 && exists)
- r = chown (filename, finfo.st_uid, finfo.st_gid);
-+#endif
-
- xfree (filename);
- FREE (tempname);
-@@ -753,12 +755,14 @@ mmap_error:
- history_lines_written_to_file = 0;
- }
-
-+#if defined (HAVE_CHOWN)
- /* Make sure the new filename is owned by the same user as the old. If one
- user is running this, it's a no-op. If the shell is running after sudo
- with a shared history file, we don't want to leave the history file
- owned by root. */
- if (rv == 0 && exists)
- mode = chown (histname, finfo.st_uid, finfo.st_gid);
-+#endif
-
- FREE (histname);
- FREE (tempname);
---- a/input.c
-+++ b/input.c
-@@ -71,6 +71,10 @@ extern int errno;
- #include "rlshell.h"
- #include "xmalloc.h"
-
-+#if defined (__MINGW32__)
-+#include <conio.h>
-+#endif
-+
- /* What kind of non-blocking I/O do we have? */
- #if !defined (O_NDELAY) && defined (O_NONBLOCK)
- # define O_NDELAY O_NONBLOCK /* Posix style */
---- a/posixstat.h
-+++ b/posixstat.h
-@@ -78,30 +78,44 @@
-
- #if defined (S_IFBLK) && !defined (S_ISBLK)
- #define S_ISBLK(m) (((m)&S_IFMT) == S_IFBLK) /* block device */
-+#elif !defined (S_IFBLK)
-+#define S_ISBLK(m) 0
- #endif
-
- #if defined (S_IFCHR) && !defined (S_ISCHR)
- #define S_ISCHR(m) (((m)&S_IFMT) == S_IFCHR) /* character device */
-+#elif !defined (S_IFCHR)
-+#define S_ISCHR(m) 0
- #endif
-
- #if defined (S_IFDIR) && !defined (S_ISDIR)
- #define S_ISDIR(m) (((m)&S_IFMT) == S_IFDIR) /* directory */
-+#elif !defined (S_IFDIR)
-+#define S_ISDIR(m) 0
- #endif
-
- #if defined (S_IFREG) && !defined (S_ISREG)
- #define S_ISREG(m) (((m)&S_IFMT) == S_IFREG) /* file */
-+#elif !defined (S_IFREG)
-+#define S_ISREG(m) 0
- #endif
-
- #if defined (S_IFIFO) && !defined (S_ISFIFO)
- #define S_ISFIFO(m) (((m)&S_IFMT) == S_IFIFO) /* fifo - named pipe */
-+#elif !defined (S_IFIFO)
-+#define S_ISFIFO(m) 0
- #endif
-
- #if defined (S_IFLNK) && !defined (S_ISLNK)
- #define S_ISLNK(m) (((m)&S_IFMT) == S_IFLNK) /* symbolic link */
-+#elif !defined (S_IFLNK)
-+#define S_ISLNK(m) 0
- #endif
-
- #if defined (S_IFSOCK) && !defined (S_ISSOCK)
- #define S_ISSOCK(m) (((m)&S_IFMT) == S_IFSOCK) /* socket */
-+#elif !defined (S_IFSOCK)
-+#define S_ISSOCK(m) 0
- #endif
-
- /*
-@@ -137,6 +151,8 @@
- /* These are non-standard, but are used in builtins.c$symbolic_umask() */
- #define S_IRUGO (S_IRUSR | S_IRGRP | S_IROTH)
- #define S_IWUGO (S_IWUSR | S_IWGRP | S_IWOTH)
-+#if defined(S_IXUSR) && defined(S_IXOTH)
- #define S_IXUGO (S_IXUSR | S_IXGRP | S_IXOTH)
-+#endif
-
- #endif /* _POSIXSTAT_H_ */
diff --git a/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch b/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch
deleted file mode 100644
index cad3c8ca2c44..000000000000
--- a/sys-libs/readline/files/readline-7.0-missing-echo-proto.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-https://lists.gnu.org/archive/html/bug-readline/2016-11/msg00000.html
-
-fix from upstream
-
---- a/readline.h
-+++ b/readline.h
-@@ -413,6 +413,7 @@
- extern void rl_tty_set_default_bindings PARAMS((Keymap));
- extern void rl_tty_unset_default_bindings PARAMS((Keymap));
-
-+extern int rl_tty_set_echoing PARAMS((int));
- extern int rl_reset_terminal PARAMS((const char *));
- extern void rl_resize_terminal PARAMS((void));
- extern void rl_set_screen_size PARAMS((int, int));
diff --git a/sys-libs/readline/readline-6.3_p8-r3.ebuild b/sys-libs/readline/readline-6.3_p8-r3.ebuild
deleted file mode 100644
index 009f74e037f7..000000000000
--- a/sys-libs/readline/readline-6.3_p8-r3.ebuild
+++ /dev/null
@@ -1,163 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib toolchain-funcs flag-o-matic multilib-minimal preserve-libs usr-ldscript
-
-# Official patches
-# See ftp://ftp.cwru.edu/pub/bash/readline-6.3-patches/
-PLEVEL=${PV##*_p}
-MY_PV=${PV/_p*}
-MY_PV=${MY_PV/_/-}
-MY_P=${PN}-${MY_PV}
-[[ ${PV} != *_p* ]] && PLEVEL=0
-patches() {
- [[ ${PLEVEL} -eq 0 ]] && return 1
- local opt=$1
- eval set -- {1..${PLEVEL}}
- set -- $(printf "${PN}${MY_PV/\.}-%03d " "$@")
- if [[ ${opt} == -s ]] ; then
- echo "${@/#/${DISTDIR}/}"
- else
- local u
- for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${PN} ; do
- printf "${u}/${PN}-${MY_PV}-patches/%s " "$@"
- done
- fi
-}
-
-DESCRIPTION="Another cute console display library"
-HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html"
-SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="static-libs utils"
-
-RDEPEND=">=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}]"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-S=${WORKDIR}/${MY_P}
-
-PATCHES=(
- "${FILESDIR}"/${PN}-5.0-no_rpath.patch
- "${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091
- "${FILESDIR}"/${PN}-6.3-fix-long-prompt-vi-search.patch
- "${FILESDIR}"/${PN}-6.3-read-eof.patch
-)
-
-src_unpack() {
- unpack ${MY_P}.tar.gz
-}
-
-src_prepare() {
- [[ ${PLEVEL} -gt 0 ]] && epatch $(patches -s)
- epatch "${PATCHES[@]}"
-
- # Force ncurses linking. #71420
- # Use pkg-config to get the right values. #457558
- local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses --libs)
- sed -i \
- -e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \
- support/shobj-conf || die
- sed -i \
- -e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \
- examples/rlfe/configure || die
-
- # fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated
- # objformat for years, so we don't want to rely on that.
- sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die
-
- ln -s ../.. examples/rlfe/readline # for local readline headers
-}
-
-src_configure() {
- # fix implicit decls with widechar funcs
- append-cppflags -D_GNU_SOURCE
- # https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html
- append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free
-
- # Make sure configure picks a better ar than `ar`. #484866
- export ac_cv_prog_AR=$(tc-getAR)
-
- # Force the test since we used sed above to force it.
- export bash_cv_termcap_lib=ncurses
-
- # Control cross-compiling cases when we know the right answer.
- # In cases where the C library doesn't support wide characters, readline
- # itself won't work correctly, so forcing the answer below should be OK.
- if tc-is-cross-compiler ; then
- export bash_cv_func_sigsetjmp='present'
- export bash_cv_func_ctype_nonascii='yes'
- export bash_cv_wcwidth_broken='no' #503312
- fi
-
- # This is for rlfe, but we need to make sure LDFLAGS doesn't change
- # so we can re-use the config cache file between the two.
- append-ldflags -L.
-
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- ECONF_SOURCE=${S} \
- econf \
- --cache-file="${BUILD_DIR}"/config.cache \
- --docdir='$(datarootdir)'/doc/${PF} \
- --with-curses \
- $(use_enable static-libs static)
-
- if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
- # code is full of AC_TRY_RUN()
- mkdir -p examples/rlfe || die
- cd examples/rlfe || die
- ECONF_SOURCE=${S}/examples/rlfe \
- econf --cache-file="${BUILD_DIR}"/config.cache
- fi
-}
-
-multilib_src_compile() {
- emake
-
- if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
- # code is full of AC_TRY_RUN()
- cd examples/rlfe || die
- local l
- for l in readline history ; do
- ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname)
- ln -sf ../../lib${l}.a lib${l}.a
- done
- emake
- fi
-}
-
-multilib_src_install() {
- default
-
- if multilib_is_native_abi ; then
- gen_usr_ldscript -a readline history #4411
-
- if use utils && ! tc-is-cross-compiler; then
- dobin examples/rlfe/rlfe
- fi
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
- dodoc USAGE
- dohtml -r doc/.
- docinto ps
- dodoc doc/*.ps
-}
-
-pkg_preinst() {
- preserve_old_lib /$(get_libdir)/lib{history,readline}.so.{4,5} #29865
-}
-
-pkg_postinst() {
- preserve_old_lib_notify /$(get_libdir)/lib{history,readline}.so.{4,5}
-}
diff --git a/sys-libs/readline/readline-7.0_p5-r1.ebuild b/sys-libs/readline/readline-7.0_p5-r1.ebuild
deleted file mode 100644
index 00c928489ece..000000000000
--- a/sys-libs/readline/readline-7.0_p5-r1.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic multilib-minimal toolchain-funcs preserve-libs usr-ldscript
-
-# Official patches
-# See ftp://ftp.cwru.edu/pub/bash/readline-7.0-patches/
-PLEVEL="${PV##*_p}"
-MY_PV="${PV/_p*}"
-MY_PV="${MY_PV/_/-}"
-MY_P="${PN}-${MY_PV}"
-[[ ${PV} != *_p* ]] && PLEVEL=0
-patches() {
- [[ ${PLEVEL} -eq 0 ]] && return 1
- local opt=$1
- eval set -- {1..${PLEVEL}}
- set -- $(printf "${PN}${MY_PV/\.}-%03d " "$@")
- if [[ ${opt} == -s ]] ; then
- echo "${@/#/${DISTDIR}/}"
- else
- local u
- for u in ftp://ftp.cwru.edu/pub/bash mirror://gnu/${PN} ; do
- printf "${u}/${PN}-${MY_PV}-patches/%s " "$@"
- done
- fi
-}
-
-DESCRIPTION="Another cute console display library"
-HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html"
-
-case ${PV} in
- *_alpha*|*_beta*|*_rc*)
- SRC_URI+=" ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
- ;;
- *)
- SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)"
- ;;
-esac
-
-LICENSE="GPL-3"
-SLOT="0/7" # subslot matches SONAME major
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="static-libs +unicode utils"
-
-RDEPEND=">=sys-libs/ncurses-5.9-r3:0=[static-libs?,unicode?,${MULTILIB_USEDEP}]"
-DEPEND="${RDEPEND}
- virtual/pkgconfig"
-
-S=${WORKDIR}/${MY_P}
-
-PATCHES=(
- "${FILESDIR}"/${PN}-5.0-no_rpath.patch
- "${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091
- "${FILESDIR}"/${PN}-7.0-headers.patch
- "${FILESDIR}"/${PN}-7.0-missing-echo-proto.patch
- "${FILESDIR}"/${PN}-7.0-mingw.patch
-)
-
-# Needed because we don't want the patches being unpacked
-# (which emits annoying and useless error messages)
-src_unpack() {
- unpack ${MY_P}.tar.gz
-}
-
-src_prepare() {
- [[ ${PLEVEL} -gt 0 ]] && eapply -p0 $(patches -s)
- default
-
- # Force ncurses linking. #71420
- # Use pkg-config to get the right values. #457558
- local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs)
- sed -i \
- -e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \
- support/shobj-conf || die
- sed -i \
- -e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \
- examples/rlfe/configure || die
-
- # fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated
- # objformat for years, so we don't want to rely on that.
- sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die
-
- ln -s ../.. examples/rlfe/readline || die # for local readline headers
-}
-
-src_configure() {
- # fix implicit decls with widechar funcs
- append-cppflags -D_GNU_SOURCE
- # https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html
- append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free
-
- # Make sure configure picks a better ar than `ar`. #484866
- export ac_cv_prog_AR=$(tc-getAR)
-
- # Force the test since we used sed above to force it.
- export bash_cv_termcap_lib=ncurses
-
- # Control cross-compiling cases when we know the right answer.
- # In cases where the C library doesn't support wide characters, readline
- # itself won't work correctly, so forcing the answer below should be OK.
- if tc-is-cross-compiler ; then
- use kernel_Winnt || export bash_cv_func_sigsetjmp='present'
- export bash_cv_func_ctype_nonascii='yes'
- export bash_cv_wcwidth_broken='no' #503312
- fi
-
- # This is for rlfe, but we need to make sure LDFLAGS doesn't change
- # so we can re-use the config cache file between the two.
- append-ldflags -L.
-
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- --cache-file="${BUILD_DIR}"/config.cache
- --with-curses
- $(use_enable static-libs static)
- )
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-
- if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
- # code is full of AC_TRY_RUN()
- mkdir -p examples/rlfe || die
- cd examples/rlfe || die
- ECONF_SOURCE="${S}"/examples/rlfe \
- econf --cache-file="${BUILD_DIR}"/config.cache
- fi
-}
-
-multilib_src_compile() {
- emake
-
- if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
- # code is full of AC_TRY_RUN()
- cd examples/rlfe || die
- local l
- for l in readline history ; do
- ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die
- ln -s ../../lib${l}.a lib${l}.a || die
- done
- emake
- fi
-}
-
-multilib_src_install() {
- default
-
- if multilib_is_native_abi ; then
- gen_usr_ldscript -a readline history #4411
-
- if use utils && ! tc-is-cross-compiler; then
- dobin examples/rlfe/rlfe
- fi
- fi
-}
-
-multilib_src_install_all() {
- HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs
- dodoc USAGE
- docinto ps
- dodoc doc/*.ps
-}
-pkg_preinst() {
- # bug #29865
- # Reappeared in #595324 with paludis so keeping this for now...
- preserve_old_lib /$(get_libdir)/lib{history,readline}.so.{4,5,6}
-}
-
-pkg_postinst() {
- preserve_old_lib_notify /$(get_libdir)/lib{history,readline}.so.{4,5,6}
-}