summaryrefslogtreecommitdiff
path: root/sys-libs
diff options
context:
space:
mode:
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/Manifest.gzbin14224 -> 14229 bytes
-rw-r--r--sys-libs/binutils-libs/Manifest10
-rw-r--r--sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild2
-rw-r--r--sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild2
-rw-r--r--sys-libs/binutils-libs/binutils-libs-2.36.1-r2.ebuild2
-rw-r--r--sys-libs/binutils-libs/binutils-libs-2.37_p1-r1.ebuild2
-rw-r--r--sys-libs/binutils-libs/binutils-libs-2.37_p1.ebuild2
-rw-r--r--sys-libs/db/Manifest12
-rw-r--r--sys-libs/db/db-18.1.32-r1.ebuild6
-rw-r--r--sys-libs/db/db-18.1.40-r1.ebuild6
-rw-r--r--sys-libs/db/db-4.8.30-r6.ebuild6
-rw-r--r--sys-libs/db/db-5.3.28-r8.ebuild6
-rw-r--r--sys-libs/db/db-6.0.35-r4.ebuild6
-rw-r--r--sys-libs/db/db-6.1.38-r1.ebuild6
-rw-r--r--sys-libs/glibc/Manifest8
-rw-r--r--sys-libs/glibc/glibc-2.33-r1.ebuild1521
-rw-r--r--sys-libs/glibc/glibc-2.33-r7.ebuild4
-rw-r--r--sys-libs/glibc/glibc-2.34-r6.ebuild (renamed from sys-libs/glibc/glibc-2.34-r3.ebuild)166
-rw-r--r--sys-libs/kpmcore/Manifest4
-rw-r--r--sys-libs/kpmcore/kpmcore-21.12.1.ebuild (renamed from sys-libs/kpmcore/kpmcore-21.12.0.ebuild)2
-rw-r--r--sys-libs/libcap/Manifest6
-rw-r--r--sys-libs/libcap/files/libcap-2.21-include.patch10
-rw-r--r--sys-libs/libcap/files/libcap-2.25-ignore-RAISE_SETFCAP-install-failures.patch24
-rw-r--r--sys-libs/libcap/files/libcap-2.38-no_perl.patch62
-rw-r--r--sys-libs/libcap/files/libcap-2.48-build-system-fixes.patch175
-rw-r--r--sys-libs/libcap/libcap-2.49-r1.ebuild87
-rw-r--r--sys-libs/libomp/Manifest12
-rw-r--r--sys-libs/libomp/libomp-11.1.0.ebuild4
-rw-r--r--sys-libs/libomp/libomp-12.0.1.ebuild4
-rw-r--r--sys-libs/libomp/libomp-13.0.0-r2.ebuild4
-rw-r--r--sys-libs/libomp/libomp-13.0.1.9999.ebuild4
-rw-r--r--sys-libs/libomp/libomp-13.0.1_rc1.ebuild4
-rw-r--r--sys-libs/libomp/libomp-14.0.0.9999.ebuild4
-rw-r--r--sys-libs/libxcrypt/Manifest8
-rw-r--r--sys-libs/libxcrypt/libxcrypt-4.4.20.ebuild3
-rw-r--r--sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild5
-rw-r--r--sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild3
-rw-r--r--sys-libs/libxcrypt/libxcrypt-4.4.27.ebuild3
-rw-r--r--sys-libs/readline/Manifest2
-rw-r--r--sys-libs/readline/readline-8.1_p2.ebuild199
40 files changed, 369 insertions, 2027 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz
index 657305a65407..de9dde5f6ed0 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 d8de0c0b06be..2f77ba1265fd 100644
--- a/sys-libs/binutils-libs/Manifest
+++ b/sys-libs/binutils-libs/Manifest
@@ -8,9 +8,9 @@ DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a5
DIST binutils-2.37_p1-patches-0.tar.xz 1392 BLAKE2B 128930a381022fea5d1fcb0695953e8dada2513b088b8540fe08d4e0da93ec18b6bf9c78acad6ec5a8982ae2c115d143462ef0bb7bfd63cfeb06c10ad472c2f8 SHA512 44666821f96349e96685ffcfd53a80a94659e38fc63eeeb980d0eed13aab03ae3e2d5059b4932cd9018f2f7698cdb5e15b443d60c01b2bd1385eeb0c698e0e24
DIST binutils-2.37_p1-patches-1.tar.xz 28956 BLAKE2B 3bc14fcc52a6d11992ad9ed88fa3347ca3d5facd59de094a178a5f720d0eed6297dadf9a8fea7189076eb81274612c0b71c01f15a8f58deeaed8c8f6135ef50d SHA512 f6b2a09bfc692cf90f6cd56be81f424a68831db48054dc150eb6ec28bfa18d35933203c2d3b502f0c80e38771353c373446aec2488469fe2df20d8066033f59e
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
-EBUILD binutils-libs-2.34-r2.ebuild 3680 BLAKE2B 96fbeb96af93c6db271250870c4df85773db022aa7dd070ccfa33ed2dae57ecb0d543d93cb2ff0666e1b403f325e035a1f9988a05a16f53c167d168e3d6bec4a SHA512 9d540bd681a08451091742e9dba7044ab77a9d8c7920b8f078146fa7eacaa31b872f20c30477a33ec5bec3070408e1b2ac51e145af86d56fae794ace5f2972a2
-EBUILD binutils-libs-2.35.2.ebuild 4102 BLAKE2B e988ab2daeb4f77f469f76af9a56d5509100d6dda39cbebfd41e554d944ef2f4aba2f4c320477947b2979ede808dc4b9a06747e10f878d885e8339e58e7e4f24 SHA512 384c2b9e3819516b9191e65793e32c54b492f31fefbe17c6cb61357452ffb5e6916f9b1dc6bb90ae8c9603f805e3c601aca12b7bd66ebafb2b3106f436185a03
-EBUILD binutils-libs-2.36.1-r2.ebuild 4055 BLAKE2B 3131fe7e6474a1dd1cccd360287395d4d700f745bdb4020a3d7577145cd26eb02406df2e5151069b9d8147f9f1c60d36912c37acfe4af970e799c0701726ab8d SHA512 4db97077101d8852fe80dd4c11b0a9eb660797271dcc4c62f4ed86a55564b8a988a447183cf219d6fb404dd8acbebaf9fa48dca8d1c0ec8ffaefbde25c58cb33
-EBUILD binutils-libs-2.37_p1-r1.ebuild 4136 BLAKE2B ed003ab1363e5b7ca577c6fdd714cb4c34ed3f874103766ba4a4bc267c9ab3efb4e7443ff127fae75c6cd4e1d6fc2a2b0fd3cd2b2712fd180d91e538c2379b2a SHA512 00bcf138499808e9dafe94edfbda6febe6fd17e3fff0be646195336c5842829738639f20db079a0cc33630bc1881d429e8c9594782fc7626123303cbbf31df59
-EBUILD binutils-libs-2.37_p1.ebuild 4128 BLAKE2B f1f81bfe2c221329c7ae4ba43e0506f49e875febdbb69a668a98aebc454345b0e9747c28024e08b6e2d28d8ece4e7e524b31d9b6921b1387d01c6836e72f7854 SHA512 f649fc052ec6341c3cd23fe73df9d366588ddbb5854d6dcfaeea89f6892100cd0c69d80b90c33b7daf08329b6c8f8f02a2763d02ca11a50d08fffec02967d782
+EBUILD binutils-libs-2.34-r2.ebuild 3678 BLAKE2B 2ecd619f2dd9968a11a3c8c2cf8f65d30d7191163bc6fd5ae1fc7d6dfad4bb30b061e5029fc7d2a23c1b7d0a4ca142532b8175b593d9d0ac408338c39cc02e60 SHA512 3ae489fa333ea206ce758f102a56ebbde7a59fa817720503eb1287c4d1d156598cbe7bc78beb2f0ab85f6f60c32f753d4c66cb0428dcbeb13d873407a4c86335
+EBUILD binutils-libs-2.35.2.ebuild 4100 BLAKE2B 521acb4f160e171efd6500aba598825f50c19b62f77689b208dcca260396aa1a2c769937db49b147a51e7645baa1fd72f13559fa15e5fced7c8bd57088575027 SHA512 628c171049d6fae374538a96ad7cc76463d78e562d16fbd5877ab7b0800b026e9c72f3b346ec2e3e92a9c5836c483e0eec226c5ac2ecc8e71c2c66c6c8c5b844
+EBUILD binutils-libs-2.36.1-r2.ebuild 4053 BLAKE2B 1d2c9609ce0fa3aff3222d89ee237ba73d31515bb0032ffd8d6b6a9a04060aec1df32cb727572a0a20b9ba64834dc43c2260f3401703cb711d0d5516e136a3d1 SHA512 e355a34921f4a260f2f61a222365703b1afc103fc993e255801a8c2deec42409ba1aec8a22d734c38a4440c385b29f81eac52c4584431ee54d0cf0cfe611ff6c
+EBUILD binutils-libs-2.37_p1-r1.ebuild 4134 BLAKE2B 4bc3a7ae5d6dab7faa9e9112269aab9bb15b1ce6ce1fc0fe6ca791c4d116ae17195f7675785694bc24150248890e85cfa1fd60a2b9b95af1afb1d7fbd020250b SHA512 e664580c0e455d38a134d2a61c0609e5a526b7e498590ee18f8a01641036f6afd601bab3be6f5ee2a7b1903dd258459c62b9d9504f727db59d24412450d67d60
+EBUILD binutils-libs-2.37_p1.ebuild 4126 BLAKE2B 26d0a255e17da4d283be59c5c8626d71dde2aff9f88506b7b9230c2fbddeb3a96ede1988b37a981e7c37e62127611037fa42da503ca2edb15a3dae4827d48fae SHA512 432fa6b750e2d45c7e8a0164b68a98eaf4fa777cb61aa3040dba66a3f29d80170a7a3bd76c1c0e44e0b10c383d15b832d0097a1469fcf0161f3ddbbeeb211b7c
MISC metadata.xml 612 BLAKE2B ceaafd9fd1421e9f3993e003d0029c92a78054c7a2b90bd78afc05370ad19c931c6a7c150545cfb7d57165168e0fdaf3a00dde1905b328826a91cbc70d9548a8 SHA512 c8d33bb8d1c62c7e95758624ed0febbc9d40e9f141bfd280837b3207bcd771412158d71c0cb5548d60be0b236f6fe103621daf7efa8875191982859b566ffa8d
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 de8fcddd332e..7e32691cabaa 100644
--- a/sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild
+++ b/sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild
@@ -37,7 +37,7 @@ MULTILIB_WRAPPED_HEADERS=(
)
src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
+ if [[ -n ${PATCH_VER} ]] ; then
einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
fi
diff --git a/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild b/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild
index cf18b9ed65f9..49b5b73255c0 100644
--- a/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild
+++ b/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild
@@ -39,7 +39,7 @@ MULTILIB_WRAPPED_HEADERS=(
)
src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
+ if [[ -n ${PATCH_VER} ]] ; then
einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
fi
diff --git a/sys-libs/binutils-libs/binutils-libs-2.36.1-r2.ebuild b/sys-libs/binutils-libs/binutils-libs-2.36.1-r2.ebuild
index 46715c376659..14ef733b104a 100644
--- a/sys-libs/binutils-libs/binutils-libs-2.36.1-r2.ebuild
+++ b/sys-libs/binutils-libs/binutils-libs-2.36.1-r2.ebuild
@@ -37,7 +37,7 @@ MULTILIB_WRAPPED_HEADERS=(
)
src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
+ if [[ -n ${PATCH_VER} ]] ; then
einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
fi
diff --git a/sys-libs/binutils-libs/binutils-libs-2.37_p1-r1.ebuild b/sys-libs/binutils-libs/binutils-libs-2.37_p1-r1.ebuild
index c6195ef2ed9b..c12ce21427b7 100644
--- a/sys-libs/binutils-libs/binutils-libs-2.37_p1-r1.ebuild
+++ b/sys-libs/binutils-libs/binutils-libs-2.37_p1-r1.ebuild
@@ -38,7 +38,7 @@ MULTILIB_WRAPPED_HEADERS=(
)
src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
+ if [[ -n ${PATCH_VER} ]] ; then
einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
fi
diff --git a/sys-libs/binutils-libs/binutils-libs-2.37_p1.ebuild b/sys-libs/binutils-libs/binutils-libs-2.37_p1.ebuild
index 82bfad52299f..e49b2f9fb7ea 100644
--- a/sys-libs/binutils-libs/binutils-libs-2.37_p1.ebuild
+++ b/sys-libs/binutils-libs/binutils-libs-2.37_p1.ebuild
@@ -38,7 +38,7 @@ MULTILIB_WRAPPED_HEADERS=(
)
src_prepare() {
- if [[ ! -z ${PATCH_VER} ]] ; then
+ if [[ -n ${PATCH_VER} ]] ; then
einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
eapply "${WORKDIR}/patch"/*.patch
fi
diff --git a/sys-libs/db/Manifest b/sys-libs/db/Manifest
index a07dbf2f16c2..c4be38f2320d 100644
--- a/sys-libs/db/Manifest
+++ b/sys-libs/db/Manifest
@@ -19,11 +19,11 @@ DIST db-5.3.28.tar.gz 35090431 BLAKE2B 5b77a4ec0945fa96ce6c2b452fb4b029295e037fa
DIST db-6.0.35.tar.gz 36532251 BLAKE2B 22fbe557ccc13e4b936db8ca7d6ba11ce42e477bbf39f7e472067e06fb5910b1147fa58a44ac944c24a51ea839f1c61edda6bd8f3c450acac0c13d7fdba11e89 SHA512 002db1553def44efa715095b04b2bac2de7450cdc7142586d1d8b5d8ce79ee5e98f824b3bd276cd586ca932dc51ed35a9ffbed95b2b9847264f262cfa092479d
DIST db-6.1.38.tar.gz 37644337 BLAKE2B 32b3f65bef04bb18e45c3c0c9110d5d0bf58f4761bee5bf07949e192f4b9f5fa28117b1696c17863da0affe408bd6c81eeee32c472c46d31c17693519959ff03 SHA512 5760d1e441bea11c371825ac47203b1eb9f188f9cb2ea0e3d547b3d3b15620d27cb0b3333d617eb7b89c53407fb7ed79cad27477d714b5b797869f8bf4b1808b
DIST db-6.2.38.tar.gz 41298311 BLAKE2B a04a3344058b1d9982f39628c1114aded8f8c860753853c8b487e9ea14bd69a0391301620396d22204b3c8f25945c3f5485ea4792567e2d903a657541204d297 SHA512 b357932e4a5856b9cf8cf42050a307977eee8483d24a32ad938611545178fb1e6be597c1542a11466b1fb31ef4ef47b519deea1c5310a6460495281539083a19
-EBUILD db-18.1.32-r1.ebuild 6945 BLAKE2B e881cc49d0a16735af5c94d790ced1ccdb68c0c0877edf0e3285e1c3e0866a1105bf416cd2afe7038a613ea70173bae506a775c81da1e09878268237b4311383 SHA512 6a0474f69e6933f442bb7b9cdbae707f393b328c770258ba7b9254d1720e9baf26456b7e24502a8bf176c199f1d8d070b744f231932447d019c1660339965b2e
-EBUILD db-18.1.40-r1.ebuild 6877 BLAKE2B 9d71572f1b2aad96b324b178ccece60ca5c0a11cbd540584fed6cb0ee1f66577c14ca685c0431c3f9b75207bfa0a05a0debb183ca277f3c91503b25bb408a553 SHA512 6fee61949c5a8b28c2ff446069edd4a2ae3fc651ac3c39e3b3a43ccf312252f4927f27639ab382b920bfa2aa8a821c75ac3fb480b923ae5204c1e2c23c0b4579
-EBUILD db-4.8.30-r6.ebuild 5267 BLAKE2B 58c9c2c1abc102f940f7b86ad6b513350ad5532a81d0a4bb6288fe3a8529b4242d31426f6b58e8a31a6064990f7a28b8808612518676ea489759ecbc911e64f9 SHA512 377c4d4a0bf93d0b0de80fc1bd52bfd9487846e2fff5ce38b372175aadd2452fd16c507eead847d05056d7bb9e8af1d0d97a446c09554cef62bd8942ab0ece9e
-EBUILD db-5.3.28-r8.ebuild 7191 BLAKE2B fa97fbb74f47de0e94e6616de6403bcf35a281ad9a88031130fa4e608f25d2c394774621cd4fa4c00b9b5a7d9e3d26610a3b3351acfb26bb4adb4fb8e416e029 SHA512 80b1a3781401f2b1d941ff8b80fb89cae6a1e0588a0615fb92e592b294178796f2e52330d03a38d439c88d36a81c8623032e77209261ec8b7c5f05fd4cd3e331
-EBUILD db-6.0.35-r4.ebuild 7204 BLAKE2B 03972ccaf500cc7672bbc720959f9f96a7fb704925990b353920276537879f3273cdfcf0f4691ebeb721b4bfa6e6b7c38bb4c89c0ce722aa3a50f9cc300e97a0 SHA512 c6a39885e9149c8615599403129dc8b948ad4afd997f680f868919c6823fbd318174fffd83ad3cef692b3672b78e05ca59b481c67887345010aa1abe9525a52f
-EBUILD db-6.1.38-r1.ebuild 6994 BLAKE2B 56473fd89c18fbf475bb95802c19a9ecba67b9bc4749f986a684f39da755e3509d183252bca1c4afd73c84db35758b91cc33f9cbaaa6434ce938e48447836253 SHA512 3edfc11463f76723f179f5a683cab25ca67b3a4dbd38a1d0f0b149879b420fbf2c328f622269a63e113a7e542e3454f2ee3b350c8bfa75f65a635ae671508456
+EBUILD db-18.1.32-r1.ebuild 6912 BLAKE2B ac4bec54fedf37e5f093bc3d8ae60e020ac9252e2547a2ef080c19454edafc1a499046bbd8d805580a37f5ec23f8726b55fd8da7f3caab73286a186833f5e6c5 SHA512 24e3b227716ed725b434d3da0c7a6b174c4964d9b26be389087376c1d98614bde66c83b59dbaad9440b93d2749f4dcf8f05c10f12c0c6672edb34179284d0059
+EBUILD db-18.1.40-r1.ebuild 6844 BLAKE2B 91d803f6c72eeae01410ddbcadad18d5bffc321123f374d3599bbadb7d4c69ab2071f7134814c69f158815317640a779257b93706fd07d6ef1dd8939ff7ff296 SHA512 e006904a600c7907a621fd6af91b5d6c1b9c70cc55fb19df80d16629a2815fbbb5c3932d903f01e5a269addbdb5cc03915e20b21571cf8360ba1c58c5ad30bec
+EBUILD db-4.8.30-r6.ebuild 5234 BLAKE2B c8f8b141eb5d9c2d1ff25b9faf7df72878874395aa73e401c7ed8c229479fd52757c0111e7865a63a38fcf62950e5ce9212ea64e5be93417fdd0ab5e5ae812d8 SHA512 f56d829b4166ffe5d2fa44396ee2c05543b2cc8885e62e75f04b2503973feb7d7361e610ede6a1f0425d64233e777a12aadd5d61c769bcff1ecce96d5d477839
+EBUILD db-5.3.28-r8.ebuild 7158 BLAKE2B e13767e068447cf4ceb49d1497e4006469a5cb98cacaa08463ba29a84b19a6c594895068ff94e7b61e2c72b3765a7dbe844a9de5514b732e1726c5531dec7af2 SHA512 898cef2b4da5e145416d716e8c363ec7f32faa878662f64c9a50513713b916c8fe27ac96049814ceccae5efaeaffd440c95894092377e7621eb3a60869cda404
+EBUILD db-6.0.35-r4.ebuild 7171 BLAKE2B ff986f36576a53a417d2099fe384766bff9ac9325ffa919d3edf69e81460f4f3e9ed7d296f039d4e76fea1c62a72dd6f6623a1901620e3aaf4b808da74d6f0aa SHA512 ea324b57f6cf094ecd4d8e56ced05c78e6d97efb9cc6f645b35a15d9bb4bad980fea54bb2fd37e3248948d0e139c8f861ebec1a31e7695dd2a8c104e7d8cbc55
+EBUILD db-6.1.38-r1.ebuild 6961 BLAKE2B 7507744c38b054e4bfd929e576ae6f5a34dc1c5377407b76c5d7525f6ecfb4799cb2cd618c6eae9343f587110d27d954bd5d1385d8c71aea908e10081ccd1aef SHA512 d6aae878dc7707672c4b8e4af1827a001ae5fa0070959ead6552711d09d45c9d7f0e48eb87459a94e5944341fa8d97dd8541df5c475e039e479dc249512179b4
EBUILD db-6.2.38-r1.ebuild 7174 BLAKE2B d66ce4b678328c88a8c97f899780177e3ba3a369f42ab50bde09d1097434cd9210639356797559cd88069f70d69d40e98a82c964c84b8ad6966ae5b18fb9ba2f SHA512 59bd01603384927a3a45846b9064a3a63522113ff3d9f9384d4b6eb7c1edbe272495104b4c45582e2e35aef295ea80f81a25e3346bac4a8264eef7d0a3f034ad
MISC metadata.xml 1261 BLAKE2B 81cfdd965f4e2e0342d812c6c1fd602c43ca8bbbb23bd12f230444d26bee578f9ba2af781a8390bb754b66b4699c6aada379dea90397798f8a489a7fd11b85fb SHA512 08d43450d54a8718639ae2637f13da7626415e99a8fa5948c5107b7a973161f31b3b0cf58dc538dd48a18db996f020d57d20edefbcdd8e37c6e58c206c3aab6e
diff --git a/sys-libs/db/db-18.1.32-r1.ebuild b/sys-libs/db/db-18.1.32-r1.ebuild
index ba0c4dac5df2..76b018c57445 100644
--- a/sys-libs/db/db-18.1.32-r1.ebuild
+++ b/sys-libs/db/db-18.1.32-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -150,9 +150,7 @@ multilib_src_configure() {
# Add linker versions to the symbols. Easier to do, and safer than header file
# mumbo jumbo.
- if use userland_GNU ; then
- append-ldflags -Wl,--default-symver
- fi
+ append-ldflags -Wl,--default-symver
# use `set` here since the java opts will contain whitespace
if multilib_is_native_abi && use java ; then
diff --git a/sys-libs/db/db-18.1.40-r1.ebuild b/sys-libs/db/db-18.1.40-r1.ebuild
index 0ec531491511..407d361673f7 100644
--- a/sys-libs/db/db-18.1.40-r1.ebuild
+++ b/sys-libs/db/db-18.1.40-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -148,9 +148,7 @@ multilib_src_configure() {
# Add linker versions to the symbols. Easier to do, and safer than header file
# mumbo jumbo.
- if use userland_GNU ; then
- append-ldflags -Wl,--default-symver
- fi
+ append-ldflags -Wl,--default-symver
# use `set` here since the java opts will contain whitespace
if multilib_is_native_abi && use java ; then
diff --git a/sys-libs/db/db-4.8.30-r6.ebuild b/sys-libs/db/db-4.8.30-r6.ebuild
index e26ebc8ebfa8..3bc178287279 100644
--- a/sys-libs/db/db-4.8.30-r6.ebuild
+++ b/sys-libs/db/db-4.8.30-r6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -116,9 +116,7 @@ multilib_src_configure() {
# Add linker versions to the symbols. Easier to do, and safer than header file
# mumbo jumbo.
- if use userland_GNU ; then
- append-ldflags -Wl,--default-symver
- fi
+ append-ldflags -Wl,--default-symver
# use `set` here since the java opts will contain whitespace
if multilib_is_native_abi && use java ; then
diff --git a/sys-libs/db/db-5.3.28-r8.ebuild b/sys-libs/db/db-5.3.28-r8.ebuild
index 982f14a543a5..91d4a786cf4c 100644
--- a/sys-libs/db/db-5.3.28-r8.ebuild
+++ b/sys-libs/db/db-5.3.28-r8.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -151,9 +151,7 @@ multilib_src_configure() {
# Add linker versions to the symbols. Easier to do, and safer than header file
# mumbo jumbo.
- if use userland_GNU ; then
- append-ldflags -Wl,--default-symver
- fi
+ append-ldflags -Wl,--default-symver
if multilib_is_native_abi && use java ; then
myconf+=(
diff --git a/sys-libs/db/db-6.0.35-r4.ebuild b/sys-libs/db/db-6.0.35-r4.ebuild
index 282cf0680da4..261cbcd2b8c0 100644
--- a/sys-libs/db/db-6.0.35-r4.ebuild
+++ b/sys-libs/db/db-6.0.35-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -145,9 +145,7 @@ multilib_src_configure() {
# Add linker versions to the symbols. Easier to do, and safer than header file
# mumbo jumbo.
- if use userland_GNU ; then
- append-ldflags -Wl,--default-symver
- fi
+ append-ldflags -Wl,--default-symver
# use `set` here since the java opts will contain whitespace
if multilib_is_native_abi && use java ; then
diff --git a/sys-libs/db/db-6.1.38-r1.ebuild b/sys-libs/db/db-6.1.38-r1.ebuild
index 9c01f35ac797..74fb45257401 100644
--- a/sys-libs/db/db-6.1.38-r1.ebuild
+++ b/sys-libs/db/db-6.1.38-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -148,9 +148,7 @@ multilib_src_configure() {
# Add linker versions to the symbols. Easier to do, and safer than header file
# mumbo jumbo.
- if use userland_GNU ; then
- append-ldflags -Wl,--default-symver
- fi
+ append-ldflags -Wl,--default-symver
# use `set` here since the java opts will contain whitespace
if multilib_is_native_abi && use java ; then
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index dfdd45e57288..252fad3e54e0 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -21,10 +21,9 @@ 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-8.tar.xz 65532 BLAKE2B 00c572cff396e52313d0324f7bc28192a65f06b22fc5a04aa631b76b3016842365006399715531ee693f3519720edcebef7884247f2f8c19e3518c1ddafab7cc SHA512 5240bc3a6df46d12c03ea4ce7b1a0df85301256ae3bd003fd04c61dadaaec34998873bf20544d891f6eedf896302bb916010aebc1d8d646a3cce09a93b533d0b
DIST glibc-2.32.tar.xz 16744512 BLAKE2B a56b4afbb35315c5cd6dca0f62e44455dceae3e6e88a8453621f9a5394a60ddf10ca9309b2db0911830c7fd77e3faa5d94694eb94d5b2c05fc5285cef52255da SHA512 8460c155b7003e04f18dabece4ed9ad77445fa2288a7dc08e80a8fc4c418828af29e0649951bd71a54ea2ad2d4da7570aafd9bdfe4a37e9951b772b442afe50b
-DIST glibc-2.33-patches-4.tar.xz 60124 BLAKE2B a7a99f39c16df241745772c31b10946dc44c51e6c09f8a447b905e7dd6ba529aee08f66a581431453c6665485ac1848861559aa3f0aaba8c2061c1f1eb77d9be SHA512 05c33dc465a98097f836783bb5037dfa14b3a2c0c140014f642ea72954222ae919fe2db9573ee70ca9c1881b3b59dd4b815a8f39f331494fa12951c9012797ef
DIST glibc-2.33-patches-6.tar.xz 64632 BLAKE2B f04ca4320d65c8796c67471cb56d3bf002cc34fb6a81075b85948e41c94df46cb2a3a944cced42d6d2c17ffc11e32a9840810864e655cc0fe18e6e0fe9f3c985 SHA512 b95746cd3415ec9ca275e542a2b5fddd5ce5680aa3bda08e94e96cf431191f7488ef6b7999ff0dfaf7405a4212531a75283e9bd7f5ae65bf572912038877a6df
DIST glibc-2.33.tar.xz 17031280 BLAKE2B 703d12121c1e2c5d9e0c6ba5341f5fb5c4d9111611a83f2360029b5de9c6e5a5611249d1833684a58ed4afdf49cae614365d87ec8721ba0e5d218f593b1f229d SHA512 4cb5777b68b22b746cc51669e0e9282b43c83f6944e42656e6db7195ebb68f2f9260f130fdeb4e3cfc64efae4f58d96c43d388f52be1eb024ca448084684abdb
-DIST glibc-2.34-patches-6.tar.xz 58396 BLAKE2B c25696e2aceef9ea4724716acde377d91b8a76b2edca2b293fcd6c89f635f63a612f8c1ecd861367b1394ebacc4b0151b0c6b68c2b08a7bde3a54a76400f35c5 SHA512 343922492e448d978dbcad1718804f892d002b6d4ce366da4cf571d97145ed850fb4b2862645681f487a9a18a77ea48f23010c0c61ea7cf914d26fd149b8271d
+DIST glibc-2.34-patches-10.tar.xz 89816 BLAKE2B c396c568804a17cf78a0da945a3db7b3740eebcd676cbb9b007bb7226c209620e5aaf533c397b7276c0a02f577d58e5f84c167a3ac6cea336d73cbe47aceb3c6 SHA512 7aa72816ef7f46f206ef6c18825423dd48e4bfe9bfbe9c2a4f760c53fc28bf6894374ee14d3212ef9478359e2c25cbdda2c062c7c41de5025850699b41661b95
DIST glibc-2.34-patches-8.tar.xz 61284 BLAKE2B a042d3bfd85cb9732f033eb1489fc4a9d5b42ec599bb320a97a9633047819d1d02b2f00dce601ddb02036f8bf0d67f9b0d6463785965db72d9ac2ce13765fa07 SHA512 1d92abb82ae404b90841217bba3b1ccb7e03799e5f21656b0a2eaaf06bd4a5a2f0fd7ebf927acc72fce0e2af6bb1a2e8658bac431423d07e75dce1f2868bd029
DIST glibc-2.34.tar.xz 17301232 BLAKE2B 874031192f2f5a3b35c3f5b044a467d4be4e67e8593e070e5b49b901ce8ea6bde2f8d2f6c92fa33b3f61eb723572a9e5f2b45e56064168df80a96d3fdb6fa30c SHA512 15252affd9ef4523a8001db16d497f4fdcb3ddf4cde7fe80e075df0bd3cc6524dc29fbe20229dbf5f97af580556e6b1fac0de321a5fe25322bc3e72f93beb624
DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238
@@ -36,9 +35,8 @@ EBUILD glibc-2.19-r2.ebuild 38454 BLAKE2B 6019c17c3cd333132abd3d88afd019367d451e
EBUILD glibc-2.30-r9.ebuild 43400 BLAKE2B 01cbb9398dbe5d93f110f7c7ffe24d40719d86a3c75cea84c9bdf935613cc6ca91739c296956bb7e79bdbf2c5777922781cffc6cfb49ab5b2c02bf37562da11f SHA512 52607c950351f65b55ba702e3509748807a9eb8ff0d1eefb58369fb24ce49e2e0f00a0a74418877190c68d85d514d479a6f91fb6b868fe949a8be77a9bbce1db
EBUILD glibc-2.31-r7.ebuild 44522 BLAKE2B 1adfba68c35d3af5ec8476b2fe5d3bebf13880eeacb5aaa8438b41b98f5b275f0816a0e654446f62ee2f34f412c5c6e72befcc0deb8988b6faec2c53a07601a9 SHA512 5247b1d75efa86b1a1c85a09219f54d402aae8aaecf0e377ca663a984daf7c69ea97b3072fe83a20002ec7d72661ec7737fbc72982122b58c26cb5bc89997548
EBUILD glibc-2.32-r8.ebuild 44853 BLAKE2B 724f95c0ed2cda18dc2edcaa03b0783a2bc603b72a67e1451535040ddc83be6d1a90ad4b30f9623140b5c0a329ecafb6f19793390137e629d43a3c26e202b28a SHA512 0973b86c266e40203e301cf0c6f8fddc4273c002ffb8fd6c16f6e78f2cfdfbea95fda04adfebb8ee84a14dc950763ba706eadadb2e83f7982b800bee636d5d8f
-EBUILD glibc-2.33-r1.ebuild 45233 BLAKE2B 881f8eebb4c7e4e78760b92bd6cb64de2372abed3f15b916ab0d47f60d5cbceaaedf2624db92aec97a2742f205e7b243a02f7ddd3932a83ba8d0de3b40f72caf SHA512 54978040ee64ccc03bf8aea55af21775d8e360fcf5eeddad61b36c51dcc016849e9650270463e46edbd35e7eb6ffa1c72f1068031c80b6fca316980674c22dce
-EBUILD glibc-2.33-r7.ebuild 46954 BLAKE2B da9c95ef74942a7261b8fb32b5ac926f71315e7197c8b235e4892bbdbbce1a4e3ad2c26c4587695dc54dd61f8cdbac274d1fb620815daec286ae8b682937ea2a SHA512 4861947122e6ccd3ddbdfe1f750dec174902ebf3778b6ac40dbda1b5e8598782800bfa40887a795858a7094ecb691f3647941d0dced05c3bedd113480c558c6e
-EBUILD glibc-2.34-r3.ebuild 48801 BLAKE2B dc3a516595b2e88b7635d2e80ebeed3bbb212391a751d4ae61c84dbd6ff9f4b47d4b5cc2dbba4dd87b204d7ed3be85ceb7f33bb53f3b33ec22b7be34c409e0b1 SHA512 3c002a12b8d17161959e7b0601911d06ec342306a01dbe9cb5c99ead8bc110e40cea65aad66f505b069cef281e2bc8167c52d05c376fc2133cdf70b791bdddc5
+EBUILD glibc-2.33-r7.ebuild 46953 BLAKE2B 471614f6ad36d99057e29cfd6287db80bc232dfd6fc1bb54dfd3e5ef17ee725b5a94f54c76f228c610383d7de923e938037f959b4b64de21b9309b68d3cbb022 SHA512 5908adbf27b9a7e931d3f3cb27db2baccaa86ab634128b7ea64ab9742197211d49db13e9a65eb001b78cf31b3d62c9b4ae391e1be6ec5b109af2b33896253217
EBUILD glibc-2.34-r4.ebuild 50241 BLAKE2B 76fea2a181a0dbe434f9c1fc44aecb048962315e7d3f3a52bffffba0cdcd10ebf0a1898e1e7a30df54d9cdf0c570e1cfd475951d2e772f9792827fab8c6f8fb6 SHA512 a118339632c4a450c43b70c8c4e1351bb184fae261780b15c683fcf0dceed16728eb686ce7e3d7df0f0b1442b3a6a2e747c32bf3f95cfa75d632e00a6644ea57
+EBUILD glibc-2.34-r6.ebuild 50256 BLAKE2B b50baf3459489a4685e6b7294b3db5268affd9dc3de09b608002e4f9900c7327b5abf77d90758948aabe5dac980c79db960fee0d459b9bb7f8bc4528c6d36911 SHA512 8695e10b5cdcd2eb8975ac68346166e4daf42c7094080c1ef5b0a50991c5eba9a4cc27aef810a7db710be7d95879d5c4c76c4f4f96dcafc034d407b0a46f3f7b
EBUILD glibc-9999.ebuild 49746 BLAKE2B eddfed69a3cad48efd83011e6d0f91eee58be4ddb969e36cbd70cf9694ab098c86357ec7d9451c56a18c9497372ac6d85935ad6ee56be91a6466f0fe38bdb23a SHA512 166a9c4524c586dfe5d9f9e5ad18d701835aa488656a1b56aa26989e8eefde29a1c3ccd5a4019efeb1481807aba4bc331eacd0de7087db4d6a1962a6e0a8089f
MISC metadata.xml 1701 BLAKE2B 91bd245d0a3685d76e3f874b50db872660054767fca5181871022fbdef9a18c4e674890bfed52cc3332c9557430ae8eec64505e67cdbedff000987406ab69ac5 SHA512 524edc37a01a47958ef557d586e8f06c6132481734ea28ed57e146969503fd129ad1da813a4d2d143a9bb8abe8810b0d8c920ab3c422a729287838435c44743a
diff --git a/sys-libs/glibc/glibc-2.33-r1.ebuild b/sys-libs/glibc/glibc-2.33-r1.ebuild
deleted file mode 100644
index cdbca06cc5d5..000000000000
--- a/sys-libs/glibc/glibc-2.33-r1.ebuild
+++ /dev/null
@@ -1,1521 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9,10} )
-TMPFILES_OPTIONAL=1
-
-inherit python-any-r1 prefix toolchain-funcs flag-o-matic gnuconfig \
- multilib systemd multiprocessing tmpfiles
-
-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=4
-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"
- SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
- SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
-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-bootstrap? ( 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 multilib-bootstrap 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-1.3.1
- 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 )
-"
-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
- !<app-misc/pax-utils-1.3.1
- !<net-misc/openssh-8.1_p1-r2
-"
-
-RESTRICT="!test? ( test )"
-
-if [[ ${CATEGORY} == cross-* ]] ; then
- BDEPEND+=" !headers-only? (
- >=${CATEGORY}/binutils-2.27
- >=${CATEGORY}/gcc-6
- )"
- [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
-else
- BDEPEND+="
- >=sys-devel/binutils-2.27
- >=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=*'
-
- # ld can't use -r & --relax at the same time, bug #788901
- # https://sourceware.org/PR27837
- filter-ldflags '-Wl,--relax'
-
- # #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
-
- # 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-bootstrap && 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
-}
-
-src_prepare() {
- local patchsetname
- if ! use vanilla ; then
- if [[ ${PV} == 9999* ]] ; then
- patchsetname="from git master"
- else
- patchsetname="${RELEASE_VER}-${PATCH_VER}"
- fi
- einfo "Applying Gentoo Glibc Patchset ${patchsetname}"
- eapply "${WORKDIR}"/patches
- einfo "Done."
- 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 )
- ;;
- *)
- # 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'
-
- # -march= option tricks build system to infer too
- # high ISA level: https://sourceware.org/PR27318
- libc_cv_include_x86_isa_level=no
- # Explicit override of https://sourceware.org/PR27991
- # exposes a bug in glibc's configure:
- # https://sourceware.org/PR27991
- libc_cv_have_x86_lahf_sahf=no
- libc_cv_have_x86_movbe=no
-
- ${EXTRA_ECONF}
- )
-
- # 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-bootstrap ; 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
- # 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
- # ELFv2 (glibc does not support ELFv1 on LE)
- ppc64 /lib64/ld64.so.2
- )
- ;;
- big)
- ldso_abi_list+=(
- # arm
- arm64 /lib/ld-linux-aarch64_be.so.1
- # ELFv1 (glibc does not support ELFv2 on BE)
- ppc64 /lib64/ld64.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
-
- # In the LSB 5.0 definition, someone had the excellent idea to "standardize"
- # the runtime loader name, see also https://xkcd.com/927/
- # Normally, in Gentoo one should never come across executables that require this.
- # However, binary commercial packages are known to adhere to weird practices.
- # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB
- local lsb_ldso_name native_ldso_name lsb_ldso_abi
- local lsb_ldso_abi_list=(
- # x86
- amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3
- )
- for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do
- lsb_ldso_abi=${lsb_ldso_abi_list[i]}
- native_ldso_name=${lsb_ldso_abi_list[i+1]}
- lsb_ldso_name=${lsb_ldso_abi_list[i+2]}
- has ${lsb_ldso_abi} $(get_install_abis) || continue
-
- if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then
- dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_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
- newtmpfiles 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
- einfo "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/glibc/glibc-2.33-r7.ebuild b/sys-libs/glibc/glibc-2.33-r7.ebuild
index 20390ea8ba2a..9c12fe15458e 100644
--- a/sys-libs/glibc/glibc-2.33-r7.ebuild
+++ b/sys-libs/glibc/glibc-2.33-r7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -26,7 +26,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"
fi
diff --git a/sys-libs/glibc/glibc-2.34-r3.ebuild b/sys-libs/glibc/glibc-2.34-r6.ebuild
index b65194c38f6f..791edb245a0f 100644
--- a/sys-libs/glibc/glibc-2.34-r3.ebuild
+++ b/sys-libs/glibc/glibc-2.34-r6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -23,13 +23,14 @@ SLOT="2.2"
EMULTILIB_PKG="true"
# Gentoo patchset (ignored for live ebuilds)
-PATCH_VER=6
+PATCH_VER=10
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"
+ KEYWORDS=""
SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
fi
@@ -408,6 +409,7 @@ setup_flags() {
filter-flags '-O?'
append-flags -O2
fi
+
strip-unsupported-flags
filter-flags -m32 -m64 '-mabi=*'
@@ -421,6 +423,9 @@ setup_flags() {
# #492892
filter-flags -frecord-gcc-switches
+ # #829583
+ filter-lfs-flags
+
unset CBUILD_OPT CTARGET_OPT
if use multilib ; then
CTARGET_OPT=$(get_abi_CTARGET)
@@ -522,14 +527,104 @@ setup_env() {
einfo "Skip CC ABI injection. We can't use (cross-)compiler yet."
return 0
fi
- local VAR=CFLAGS_${ABI}
+
+ # Glibc does not work with gold (for various reasons) #269274.
+ tc-ld-disable-gold
+
+ if use doc ; then
+ export MAKEINFO=makeinfo
+ else
+ export MAKEINFO=/dev/null
+ fi
+
+ # Reset CC and CXX to the value at start of emerge
+ export CC=${__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
+ export CXX=${__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
+
+ # and make sure __ORIC_CC and __ORIG_CXX is defined now.
+ export __ORIG_CC=${CC}
+ export __ORIG_CXX=${CXX}
+
+ if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
+
+ # If we are running in an otherwise clang/llvm environment, we need to
+ # recover the proper gcc and binutils settings here, at least until glibc
+ # is finally building with clang. So let's override everything that is
+ # set in the clang profiles.
+ # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always
+ # a good start into that direction.
+ # Also, if you're crosscompiling, let's assume you know what you are doing.
+ # Hopefully.
+
+ local current_binutils_path=$(binutils-config -B)
+ local current_gcc_path=$(gcc-config -B)
+ einfo "Overriding clang configuration, since it won't work here"
+
+ export CC="${current_gcc_path}/gcc"
+ export CXX="${current_gcc_path}/g++"
+ export LD="${current_binutils_path}/ld.bfd"
+ export AR="${current_binutils_path}/ar"
+ export AS="${current_binutils_path}/as"
+ export NM="${current_binutils_path}/nm"
+ export STRIP="${current_binutils_path}/strip"
+ export RANLIB="${current_binutils_path}/ranlib"
+ export OBJCOPY="${current_binutils_path}/objcopy"
+ export STRINGS="${current_binutils_path}/strings"
+ export OBJDUMP="${current_binutils_path}/objdump"
+ export READELF="${current_binutils_path}/readelf"
+ export ADDR2LINE="${current_binutils_path}/addr2line"
+
+ # do we need to also do flags munging here? yes! at least...
+ filter-flags '-fuse-ld=*'
+ filter-flags '-D_FORTIFY_SOURCE=*'
+
+ else
+
+ # this is the "normal" case
+
+ export CC="$(tc-getCC ${CTARGET})"
+ export CXX="$(tc-getCXX ${CTARGET})"
+
+ # 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})"
+
+ fi
+
# 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}"
+ # top of each other. (Why does the comment talk about CFLAGS if the code
+ # acts on CC?)
+ export __GLIBC_CC=${CC}
+ export __GLIBC_CXX=${CXX}
+
+ export __abi_CFLAGS="$(get_abi_CFLAGS)"
+
+ # 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="${__GLIBC_CC} ${__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}"
+
+ # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548
+ export CXX="${__GLIBC_CXX} ${__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
}
foreach_abi() {
@@ -806,9 +901,6 @@ src_prepare() {
einfo "Done."
fi
- # Apply patch to allow conditional disabling of clone3
- eapply "${FILESDIR}"/${PN}-2.34-make-clone3-syscall-optional.patch
-
if use clone3 ; then
append-cppflags -DGENTOO_USE_CLONE3
else
@@ -837,61 +929,13 @@ src_prepare() {
}
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
+ for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP 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
@@ -1503,7 +1547,7 @@ glibc_sanity_check() {
# first let's find the actual dynamic linker here
# symlinks may point to the wrong abi
- local newldso=$(find . -name 'ld*so.?' -type f -print -quit)
+ local newldso=$(find . -maxdepth 1 -name 'ld*so.?' -type f -print -quit)
einfo Last-minute run tests with ${newldso} in /$(get_libdir) ...
diff --git a/sys-libs/kpmcore/Manifest b/sys-libs/kpmcore/Manifest
index a4ddb49a5f54..4ba84748291f 100644
--- a/sys-libs/kpmcore/Manifest
+++ b/sys-libs/kpmcore/Manifest
@@ -1,7 +1,7 @@
AUX kpmcore-21.08.3-dont-destroy-zfs-pool.patch 1539 BLAKE2B 926b93a359383686e341a52ac5a74b20b48e9c8e66ff0b61ebaeaf39137ea1f96600951c41b503c903d778767547717b271d7052f688e46964873e8ba3e2c81e SHA512 3da2cadc6ab753edaf502dbca775cd96700096b2b28d9ad63039872e6728d111b855b77d77b9b2481ff439945f094f35e071425584e752c92ddc53ed5b5ae96e
AUX kpmcore-21.08.3-fix-seek-error-when-shred-partition.patch 1017 BLAKE2B 88775e15a0d7ab025645f3423675cc6a141ce343eb91c8f352cc5e32dbb4e02c11763c777fb7eccea653eeec49adaefe407261d3415745d4c561a00999ffbcb6 SHA512 2321b77cb3f80de4ff94dc886f06317bb6f3a09080d71b9e3ffbc87c6091332e6dc4e01b7c33da4724683c860f6df7b547a3c10be38f48310cbd707707e9688d
DIST kpmcore-21.08.3.tar.xz 589464 BLAKE2B 188a702b21976c352bea49c3e40e86c6d3f85b398c3dc9577301471c49cbbf8f161a5f6b62acfc020bcd9530aab2739a39023170c7586a1f18e52add4b2d6ecd SHA512 16570fe9b5e4e83d26b1c2e591d797cd23f37a2195ac5f043ee921d038d0e10d63f9d2c72c4d710e10eeb05d81a6df577f9ddb48b762b034154e399560daa7a7
-DIST kpmcore-21.12.0.tar.xz 594228 BLAKE2B 51276e449367a9bfe219d792994eb9a3d0f149276fccb2915d09f07ab52c035d3559f963334bf7a37b075060df3d62e2bfa64cd3d80d9e278a2f7c9d30d6bec7 SHA512 107fafb12544a2a109bbdf02635dc65e98b90d049b265837bb276365a2c9d7c6b4d9898dc88b6dc138120a5068ef3904cc0c16d763669cf5bad4ea6ef6338cac
+DIST kpmcore-21.12.1.tar.xz 594168 BLAKE2B 2eff6a30d9143be7fe9ca9fd1d2aed9f8a97d9810644c61e801c06f9a7aa6c0184b3c3c4bf731f57ca02459033a1a444281d62d5ddb68e33402d7cc2f1ca79da SHA512 ab9d22adfd5d3a0e6e58f2bb63e6d26b8aad1cf33b24c3f6b39a358d5e0e939a3ac11ce95c8bee0d8443fc506f27673a5daecd0ba430f02435fbf1d7d4c3af83
EBUILD kpmcore-21.08.3-r1.ebuild 859 BLAKE2B ce8a1d8701008c122a79d78d39f3b744015848db11202201493ced6b342da5cc4cf40fe02f9ba75862c6f2f3f2a473695676d85ea44b588bc212e8e2e2259824 SHA512 dc3bc3f41ac00c73c4403dd4b07cb4be14e63ed30a78d0228391a5b40abdcd51bdbc9faa4c3359e3dff029a5c5ed26aced47f3dd3af9431933c161749b55b8dd
-EBUILD kpmcore-21.12.0.ebuild 739 BLAKE2B d61b51f7d4f75c83a52ecbb5aef0db9bb96992ef84783079cd2f58d094a99bda659756b140988bfc27137eb641f14ab1d904a3af2b3ee64fb3efce2207440354 SHA512 fa9f6bc514b18cfa9b737d1c4223d2dbf312d95d5d46dfa10a0b1b5b0530e5441803c8c70e5766ca4d1526b149613fabff2e18e58eb77292fb87975250eeef57
+EBUILD kpmcore-21.12.1.ebuild 739 BLAKE2B d73fabe4bc47708ebd958e834e5a1509e98e2a7e6a06333a011fecb9a53e34887e6e7834bcc6bd6383bf3e8d5bb47e19203d7c8bbbd7aa20aa8b179dd3c3e721 SHA512 97e618212dbfcee5a6c3758591818a67e08f6cb88cdb3f31a95aeb0c645401b477fc539f1f9a9934479aa9883c10dccd8638ff15c67599bb0e402849f154d25e
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
diff --git a/sys-libs/kpmcore/kpmcore-21.12.0.ebuild b/sys-libs/kpmcore/kpmcore-21.12.1.ebuild
index 9cf2587af684..d0800f0fc763 100644
--- a/sys-libs/kpmcore/kpmcore-21.12.0.ebuild
+++ b/sys-libs/kpmcore/kpmcore-21.12.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/sys-libs/libcap/Manifest b/sys-libs/libcap/Manifest
index 209f04752858..10637d702a32 100644
--- a/sys-libs/libcap/Manifest
+++ b/sys-libs/libcap/Manifest
@@ -1,11 +1,5 @@
-AUX libcap-2.21-include.patch 218 BLAKE2B 536be33e749bc818efb29e3a7a010029025520c4694178aa1d85bf0c48abfca4c77f940b4fbb9bd08464edc31af657960fc41cab71d112ebf3573d1aa1f23148 SHA512 637f5dc2d7ead44a19a57db436ddf7e8afa1b368c72e5520a1ac77633c20b0f9a2af9defdafed1edb7209474798d1bcd236c712a160b5c6920d8864411baefed
-AUX libcap-2.25-ignore-RAISE_SETFCAP-install-failures.patch 827 BLAKE2B 0ed207a478c50dd9f3590cd36ab4b37e6c41ddb266709b1bf012cf11dec0c2f8e3f0cbb0918f3be72831321aa8953f936a2706f1038c4ce5287c73dc83887e43 SHA512 d0302604e28ed2354214d315a812422355f98cd69d2b3089dd20cef1e243e4ac433ae47026b57a8f6db66572693ce2523af6cb2a8e4715af266442de7dd33e9b
-AUX libcap-2.38-no_perl.patch 2856 BLAKE2B f10169dab10a60973a5fbbbe55a14342a7a582dd79a40a0ca33f3cc3cbd5c695ef7cfcce28d6448df8875903f53e265b85c6738d8fe8800bfa1e596748deecbe SHA512 6b3fdebe763b7f7300c4e6c16140f95c490e8fdd9a8d7b6ddf250299a32dcbd78b3a3936cf8bbeb381cd305966b37f381a26965e3ff91944ebdac22e810ec49f
-AUX libcap-2.48-build-system-fixes.patch 5591 BLAKE2B 20fce03037ffbd59e3000f7c757d698c412d5709d2a575b5b59197b263097a445684509b2d0b8d77ea0e3e39f7660147e676a12b8e56fc1e2204f8c8a8da1fe7 SHA512 a7e22630b2690b039f9b257dc148868ee9c5b397bab2bd9d6591ab57929be7fb9c75db2a51f08815a618756743299b08537d93eb7507a984eb7bcf086e82ff10
AUX libcap-2.62-ignore-RAISE_SETFCAP-install-failures.patch 901 BLAKE2B 8b4795bfff00f3c42d22bfb748c60109c9fb210082bd0553d5d12c098008900d478a07455251228041be3448cf547ee4ec61217b1fa302feb86175592972bb08 SHA512 c6338a21bd66a4248ea3d35c0c39f864a9cd9c0cb0dd26860739fe3828282ff7e068888b3e39b1439f75f8f57db64cfd3a88542dfbb27ed04f65677e7f8ce632
-DIST libcap-2.49.tar.xz 139568 BLAKE2B 5746dcdf2a737e747450bd50a701ee8543277b17b7fbf1304b79f707a088ea74dc6dc79c61ff89b55b718a460a7b0814f960f44d07944a97b832b78f4e14e07f SHA512 2934a2ded1370edeb9603dbf43d8ca23a2eb5d67efc5cec5d4ba96c707a8db2702da8aa9be0cb86c5ff100d37ec96115c7777a7566ad0ab2e0b4a288bbe357d0
DIST libcap-2.62.tar.xz 174772 BLAKE2B e3c86a5b88b9be932802ec8612f79e5f04912bf3e66f673eae2add85362292f4737c544d21b9e5adfd1a7a33c073568301b6532cdf0ea6c8b834d895b84323f1 SHA512 61ac004920c5cd3382a5443db2eacfc2041b7a8c0814b27084c1d111125639fe3950dea4325d0f7fb6bfb0d5de114452c3a62230cc958edb05ffdb83b213f9b3
-EBUILD libcap-2.49-r1.ebuild 2127 BLAKE2B d77712422b1cb13b04b1a18e573c20151b03098a9effaee4a62b51f4035eac2f3dcc2760f6050d05220dca63edbd978df79299e6be4c885a73ec7a079d1cd558 SHA512 fb01c7f3c68d3fa55221bc0602c21ddb399121f97a0a3c9ef5788bbecb3912cc9f9924bd0339e27acc3103d3a1e110b4029f99c27a7232fd83229075383d898b
EBUILD libcap-2.62.ebuild 2239 BLAKE2B 611e112d0305490791390c3db0af7f6a03b34b0518e4159fe7d2366e95242d6da779fff50cc36a6f62cdf32db9c65ec8ecbfba46ce54738e67c4790048d302c4 SHA512 41cd064b3e53b7d888cb91a74c7572f6e7dc2ee2b6eebe8683b24b836be871e0e12928bf88587b8a2cd5526bec0246eb2e100654ae6a9fc5dd6c7840eb128d2d
EBUILD libcap-9999.ebuild 2164 BLAKE2B 6d44b9aadf000c40c8dd9c77fb88623fd24f7ea5f14c13515b3a3c06b1d1f615f8cf33876c51a17e553f3c76c553e1f1387f7caa7dc1dc333926616972e4ccfe SHA512 701d3d42487dc00e88a9101846b0f59976dc6baba977c045806c7986c08700496e5596019c1b7de084125ec1380252219dce86b3cf9461a7350c75d779762a24
MISC metadata.xml 438 BLAKE2B b5260cc84a3fe6b992bb6218846c738af296522d7a467337c05a6240fd07fc9d6cece779bd9fcf24a11486a70874e17acae8182647d307a31cf43e1c19c3a2d3 SHA512 fa3713dcf6b7bb2ea6d4c2fdefc05e92ae345c76a6187ebcb40dab8c4ce0148650a8301f236efcb8cf53fff25730977a385578dbaa160b800159c6d6abbf37a9
diff --git a/sys-libs/libcap/files/libcap-2.21-include.patch b/sys-libs/libcap/files/libcap-2.21-include.patch
deleted file mode 100644
index 8ea6545659e3..000000000000
--- a/sys-libs/libcap/files/libcap-2.21-include.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/libcap/libcap.h
-+++ b/libcap/libcap.h
-@@ -13,6 +13,7 @@
- #include <stdlib.h>
- #include <string.h>
- #include <sys/capability.h>
-+#include <sys/prctl.h> /* prctl() */
-
- #ifndef __u8
- #define __u8 unsigned char
diff --git a/sys-libs/libcap/files/libcap-2.25-ignore-RAISE_SETFCAP-install-failures.patch b/sys-libs/libcap/files/libcap-2.25-ignore-RAISE_SETFCAP-install-failures.patch
deleted file mode 100644
index e5455cd1ebb6..000000000000
--- a/sys-libs/libcap/files/libcap-2.25-ignore-RAISE_SETFCAP-install-failures.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 8dfcdcfdcb9c462a05566aa8d3c6eca871f0ddbf Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Wed, 10 Feb 2016 09:52:45 +0100
-Subject: [PATCH] ignore RAISE_SETFCAP install failures
-
-While the new RAISE_SETFCAP feature is nifty, its failure to run (often
-due to the fs not supporting it) shouldn't impair the default install.
-
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
-
-Forward ported from libcap-2.20 to libcap-2.25
-
-Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
---- a/progs/Makefile
-+++ b/progs/Makefile
-@@ -27,7 +27,7 @@ install: all
- install -m 0755 $$p $(FAKEROOT)$(SBINDIR) ; \
- done
- ifeq ($(RAISE_SETFCAP),yes)
-- $(FAKEROOT)$(SBINDIR)/setcap cap_setfcap=i $(FAKEROOT)$(SBINDIR)/setcap
-+ -$(FAKEROOT)$(SBINDIR)/setcap cap_setfcap=i $(FAKEROOT)$(SBINDIR)/setcap
- endif
-
- clean:
diff --git a/sys-libs/libcap/files/libcap-2.38-no_perl.patch b/sys-libs/libcap/files/libcap-2.38-no_perl.patch
deleted file mode 100644
index 9104484d5770..000000000000
--- a/sys-libs/libcap/files/libcap-2.38-no_perl.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 3f76418eaf73896489129c529fac021e4f3a03c0 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Wed, 21 Nov 2018 11:00:54 +0100
-Subject: [PATCH] use awk/sed instead of perl for creating header files
-
-More systems should have awk/sed than perl.
-
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
-
-Forward ported from libcap-2.22 to libcap-2.26
-and incorporated the gperf-3.1 fix provided by Mike Gilbert
-<floppym@gentoo.org>
-Forward ported from libcap-2.26 to libcap-2.28
-Forward ported from libcap-2.28 to libcap-2.38
-
-Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
---- a/libcap/Makefile
-+++ b/libcap/Makefile
-@@ -22,6 +22,8 @@ MAJLIBNAME=$(LIBNAME).$(VERSION)
- MINLIBNAME=$(MAJLIBNAME).$(MINOR)
- GPERF_OUTPUT = _caps_output.gperf
- CFLAGS += -fPIC
-+AWK = awk
-+SED = sed
-
- all: $(MINLIBNAME) $(STACAPLIBNAME) libcap.pc libpsx.pc $(STAPSXLIBNAME)
-
-@@ -55,17 +57,27 @@ cap_names.h: _makenames
- ./_makenames > cap_names.h
-
- $(GPERF_OUTPUT): cap_names.list.h
-- perl -e 'print "struct __cap_token_s { const char *name; int index; };\n%{\nconst struct __cap_token_s *__cap_lookup_name(const char *, size_t);\n%}\n%%\n"; while ($$l = <>) { $$l =~ s/[\{\"]//g; $$l =~ s/\}.*// ; print $$l; }' < $< | gperf --ignore-case --language=ANSI-C --readonly --null-strings --global-table --hash-function-name=__cap_hash_name --lookup-function-name="__cap_lookup_name" -c -t -m20 $(INDENT) > $@
-- sed -e 's/unsigned int len/size_t len/' -i $@
-+ (printf "%b" "struct __cap_token_s { const char *name; int index; };\n%%\n"; \
-+ $(SED) -e 's:["{}]::g' -e 's:,$$::' $<) | \
-+ gperf \
-+ --ignore-case \
-+ --language=ANSI-C \
-+ --includes \
-+ --readonly \
-+ --null-strings \
-+ --global-table \
-+ --hash-function-name=__cap_hash_name \
-+ --lookup-function-name="__cap_lookup_name" \
-+ -c -t -m20 $(INDENT) > $@
-
--# Intention is that libcap keeps up with torvalds' tree, as reflected
--# by this maintained version of the kernel header. libcap dynamically
--# trims the meaning of "all" capabilities down to that of the running
--# kernel as of 2.30.
- UAPI_HEADER := $(topdir)/libcap/include/uapi/linux/capability.h
- cap_names.list.h: Makefile $(UAPI_HEADER)
- @echo "=> making $@ from $(UAPI_HEADER)"
-- perl -e 'while ($$l=<>) { if ($$l =~ /^\#define[ \t](CAP[_A-Z]+)[ \t]+([0-9]+)\s+$$/) { $$tok=$$1; $$val=$$2; $$tok =~ tr/A-Z/a-z/; print "{\"$$tok\",$$val},\n"; } }' $(UAPI_HEADER) | fgrep -v 0x > $@
-+ $(AWK) '($$0 ~ /^#define[[:space:]]+CAP[_A-Z]+[[:space:]]+[0-9]+[[:space:]]*$$/) { printf "{\"%s\",%s},\n", tolower($$2), $$3 }' $(UAPI_HEADER) > $@
-+
-+cap_names.list.h: $(KERNEL_HEADERS)/linux/capability.h Makefile
-+ @echo "=> making $@ from $<"
-+ $(AWK) '($$0 ~ /^#define[[:space:]]+CAP[_A-Z]+[[:space:]]+[0-9]+[[:space:]]*$$/) { printf "{\"%s\",%s},\n", tolower($$2), $$3 }' $< > $@
-
- $(STACAPLIBNAME): $(CAPOBJS)
- $(AR) rcs $@ $^
diff --git a/sys-libs/libcap/files/libcap-2.48-build-system-fixes.patch b/sys-libs/libcap/files/libcap-2.48-build-system-fixes.patch
deleted file mode 100644
index b3986e19546c..000000000000
--- a/sys-libs/libcap/files/libcap-2.48-build-system-fixes.patch
+++ /dev/null
@@ -1,175 +0,0 @@
-From d0e5c20fda92fcc48109bce7055d5fad458579ca Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Wed, 4 Nov 2020 22:46:20 +0100
-Subject: [PATCH] build system fixes
-
-This touches up the homebrewed build system to work much better "out of the
-box" for people. Specifically:
- - allow toolchain vars to be set via environment
- - CC / BUILD_CC / AR / RANLIB
- - CFLAGS / CPPFLAGS / LDFLAGS
- - split CPPFLAGS out of CFLAGS
- - break -fPIC out of global CFLAGS and only use where needed
- - use LDLIBS for libraries, not LDFLAGS
-
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
-
-Forward ported from libcap-2.24 to libcap-2.25
-Forward ported from libcap-2.25 to libcap-2.28
-Forward ported from libcap-2.28 to libcap-2.29
-Forward ported from libcap-2.29 to libcap-2.33
-Forward ported from libcap-2.33 to libcap-2.34
-Forward ported from libcap-2.34 to libcap-2.37
-Forward ported from libcap-2.37 to libcap-2.39
-Forward ported from libcap-2.39 to libcap-2.42
-Forward ported from libcap-2.42 to libcap-2.44
-Forward ported from libcap-2.44 to libcap-2.45
-Forward ported from libcap-2.45 to libcap-2.48
-
-Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
---- a/Make.Rules
-+++ b/Make.Rules
-@@ -52,7 +52,6 @@ GOMAJOR=0
- # Compilation specifics
-
- KERNEL_HEADERS := $(topdir)/libcap/include/uapi
--IPATH += -fPIC -I$(KERNEL_HEADERS) -I$(topdir)/libcap/include
-
- CC := $(CROSS_COMPILE)gcc
- DEFINES := -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-@@ -60,7 +59,7 @@ COPTS ?= -O2
- CFLAGS ?= $(COPTS) $(DEFINES)
- BUILD_CC ?= $(CC)
- BUILD_COPTS ?= -O2
--BUILD_CFLAGS ?= $(BUILD_COPTS) $(DEFINES) $(IPATH)
-+BUILD_CFLAGS ?= $(CFLAGS)
- AR := $(CROSS_COMPILE)ar
- RANLIB := $(CROSS_COMPILE)ranlib
- DEBUG = -g #-DDEBUG
-@@ -76,10 +75,13 @@ LIBPSXLIB := -L$(topdir)/libcap -lpsx $(PSXLINKFLAGS)
-
- BUILD_GPERF := $(shell which gperf >/dev/null 2>/dev/null && echo yes)
-
--SYSTEM_HEADERS = /usr/include
-+LIBCAP_CPPFLAGS = -I$(KERNEL_HEADERS) -I$(topdir)/libcap/include $(DEFINES)
-+CPPFLAGS += $(LIBCAP_CPPFLAGS)
-+BUILD_CPPFLAGS += $(LIBCAP_CPPFLAGS)
- INCS=$(topdir)/libcap/include/sys/capability.h
- LDFLAGS += -L$(topdir)/libcap
--CFLAGS += -Dlinux $(WARNINGS) $(DEBUG)
-+CPPFLAGS += -Dlinux
-+CFLAGS += $(WARNINGS) $(DEBUG)
- INDENT := $(shell if [ -n "$$(which indent 2>/dev/null)" ]; then echo "| indent -kr" ; fi)
-
- # SHARED tracks whether or not the SHARED libraries (libcap.so,
---- a/Makefile
-+++ b/Makefile
-@@ -17,7 +17,6 @@ ifeq ($(GOLANG),yes)
- $(MAKE) -C go $@
- rm -f cap/go.sum
- endif
-- $(MAKE) -C tests $@
- $(MAKE) -C progs $@
- $(MAKE) -C doc $@
- $(MAKE) -C kdebug $@
---- a/libcap/Makefile
-+++ b/libcap/Makefile
-@@ -25,6 +25,7 @@ MINCAPLIBNAME=$(MAJCAPLIBNAME).$(MINOR)
- PSXOBJS=$(addsuffix .o, $(PSXFILES))
- MAJPSXLIBNAME=$(PSXLIBNAME).$(VERSION)
- MINPSXLIBNAME=$(MAJPSXLIBNAME).$(MINOR)
-+CFLAGS += -fPIC
-
- all: pcs $(STACAPLIBNAME)
- ifeq ($(SHARED),yes)
-@@ -66,7 +67,7 @@ libpsx.pc: libpsx.pc.in
- $< >$@
-
- _makenames: _makenames.c cap_names.list.h
-- $(BUILD_CC) $(BUILD_CFLAGS) $< -o $@
-+ $(BUILD_CC) $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $< -o $@
-
- cap_names.h: _makenames
- ./_makenames > cap_names.h
-@@ -105,10 +106,10 @@ $(PSXLIBNAME) $(MAJPSXLIBNAME) $(MINPSXLIBNAME): $(PSXOBJS) include/sys/psx_sysc
- endif
-
- %.o: %.c $(INCLS)
-- $(CC) $(CFLAGS) $(IPATH) -c $< -o $@
-+ $(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
-
- cap_text.o: cap_text.c $(USE_GPERF_OUTPUT) $(INCLS)
-- $(CC) $(CFLAGS) $(IPATH) $(INCLUDE_GPERF_OUTPUT) -c $< -o $@
-+ $(CC) $(CFLAGS) $(CPPFLAGS) $(INCLUDE_GPERF_OUTPUT) -c $< -o $@
-
- cap_test: cap_test.c libcap.h
- $(CC) $(CFLAGS) $(IPATH) $< -o $@
---- a/pam_cap/Makefile
-+++ b/pam_cap/Makefile
-@@ -3,6 +3,8 @@
- topdir=$(shell pwd)/..
- include ../Make.Rules
-
-+CFLAGS += -fPIC
-+
- all: pam_cap.so
- $(MAKE) testlink
-
-@@ -16,16 +18,16 @@ install: all
- # written (and you know why it fails), email me and explain why. Thanks!
-
- pam_cap.so: pam_cap.o
-- $(LD) -o pam_cap.so $< $(LIBCAPLIB) $(LDFLAGS)
-+ $(LD) $(CFLAGS) -o pam_cap.so $< $(LIBCAPLIB) $(LDFLAGS)
-
- pam_cap.o: pam_cap.c
-- $(CC) $(CFLAGS) $(IPATH) -c $< -o $@
-+ $(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
-
- test_pam_cap: test_pam_cap.c pam_cap.c
- $(CC) $(CFLAGS) $(IPATH) -o $@ test_pam_cap.c $(LIBCAPLIB) $(LDFLAGS) --static
-
- testlink: test.c pam_cap.o
-- $(CC) $(CFLAGS) -o $@ $+ -lpam -ldl $(LIBCAPLIB) $(LDFLAGS)
-+ $(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $+ -lpam -ldl $(LIBCAPLIB) $(LDFLAGS)
-
- test: pam_cap.so
- make testlink
---- a/progs/Makefile
-+++ b/progs/Makefile
-@@ -28,7 +28,7 @@ $(BUILD): %: %.o $(DEPS)
- $(CC) $(CFLAGS) -o $@ $< $(LIBCAPLIB) $(LDFLAGS)
-
- %.o: %.c $(INCS)
-- $(CC) $(IPATH) $(CAPSH_SHELL) $(CFLAGS) -c $< -o $@
-+ $(CC) $(CAPSH_SHELL) $(CFLAGS) $(CPPFLAGS) -c $< -o $@
-
- install: all
- mkdir -p -m 0755 $(FAKEROOT)$(SBINDIR)
---- a/tests/Makefile
-+++ b/tests/Makefile
-@@ -13,6 +13,8 @@ ifeq ($(PTHREADS),yes)
- make psx_test libcap_psx_test libcap_psx_launch_test
- endif
-
-+CFLAGS += -fPIC
-+
- install: all
-
- ifeq ($(DYNAMIC),yes)
-@@ -62,13 +64,13 @@ run_psx_test: psx_test
- ./psx_test
-
- psx_test: psx_test.c $(DEPS)
-- $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LINKEXTRA) $(LIBPSXLIB) $(LDFLAGS)
-+ $(CC) $(CFLAGS) $(CPPFLAGS) $< -o $@ $(LINKEXTRA) $(LIBPSXLIB) $(LDFLAGS)
-
- run_libcap_psx_test: libcap_psx_test
- ./libcap_psx_test
-
- libcap_psx_test: libcap_psx_test.c $(DEPS)
-- $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LINKEXTRA) $(LIBCAPLIB) $(LIBPSXLIB) $(LDFLAGS)
-+ $(CC) $(CFLAGS) $(CPPFLAGS) $< -o $@ $(LINKEXTRA) $(LIBCAPLIB) $(LIBPSXLIB) $(LDFLAGS)
-
- # privileged
- run_libcap_launch_test: libcap_launch_test noop ../progs/tcapsh-static
diff --git a/sys-libs/libcap/libcap-2.49-r1.ebuild b/sys-libs/libcap/libcap-2.49-r1.ebuild
deleted file mode 100644
index 993d6f47b1c0..000000000000
--- a/sys-libs/libcap/libcap-2.49-r1.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib-minimal toolchain-funcs pam usr-ldscript
-
-DESCRIPTION="POSIX 1003.1e capabilities"
-HOMEPAGE="https://sites.google.com/site/fullycapable/"
-SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
-
-# it's available under either of the licenses
-LICENSE="|| ( GPL-2 BSD )"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="pam static-libs"
-
-# While the build system optionally uses gperf, we don't DEPEND on it because
-# the build automatically falls back when it's unavailable. #604802
-PDEPEND="pam? ( sys-libs/pam[${MULTILIB_USEDEP}] )"
-DEPEND="${PDEPEND}
- sys-kernel/linux-headers"
-
-# Requires test suite being run as root (via sudo)
-RESTRICT="test"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.48-build-system-fixes.patch
- "${FILESDIR}"/${PN}-2.38-no_perl.patch
- "${FILESDIR}"/${PN}-2.25-ignore-RAISE_SETFCAP-install-failures.patch
- "${FILESDIR}"/${PN}-2.21-include.patch
-)
-
-src_prepare() {
- default
- multilib_copy_sources
-}
-
-run_emake() {
- local args=(
- exec_prefix="${EPREFIX}"
- lib_prefix="${EPREFIX}/usr"
- lib="$(get_libdir)"
- prefix="${EPREFIX}/usr"
- PAM_CAP="$(usex pam yes no)"
- DYNAMIC=yes
- GOLANG=no
- CC="$(tc-getCC)"
- AR="$(tc-getAR)"
- RANLIB="$(tc-getRANLIB)"
- )
- emake "${args[@]}" "$@"
-}
-
-src_configure() {
- tc-export AR CC RANLIB
- tc-export_build_env BUILD_CC
- multilib-minimal_src_configure
-}
-
-multilib_src_compile() {
- run_emake
-}
-
-multilib_src_install() {
- # no configure, needs explicit install line #444724#c3
- run_emake DESTDIR="${D}" install
-
- gen_usr_ldscript -a cap
- gen_usr_ldscript -a psx
- if ! use static-libs ; then
- rm "${ED}"/usr/$(get_libdir)/lib{cap,psx}.a || die
- fi
-
- if [[ -d "${ED}"/usr/$(get_libdir)/security ]] ; then
- rm -r "${ED}"/usr/$(get_libdir)/security || die
- fi
-
- if use pam ; then
- dopammod pam_cap/pam_cap.so
- dopamsecurity '' pam_cap/capability.conf
- fi
-}
-
-multilib_src_install_all() {
- dodoc CHANGELOG README doc/capability.notes
-}
diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest
index c72215143607..370b0fa8742e 100644
--- a/sys-libs/libomp/Manifest
+++ b/sys-libs/libomp/Manifest
@@ -5,10 +5,10 @@ DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45c
DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1
DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2
DIST llvmorg-13.0.1-rc1.tar.gz 147284646 BLAKE2B 3a1d8d382de633b7f8fc998f8ad1e03c24b733aefc591615cbd34115d1d6d74962ae33bbf2224527b521a76930ffee425527225563a558a04173e9aa9487c781 SHA512 d487bfc9b898ad0046e0c94338d7757d8a05a1a84d683abfbc9ed4994c6d12caf88fd18575225e284070fc67b3ac0970ca6639e61b1a7cc2948b216a5364a22d
-EBUILD libomp-11.1.0.ebuild 2901 BLAKE2B e18155f24e5d0aa2de9a1976c818777e8d2d16092aa5e58b5c38197461a0b4ca5967ec161140b2a63835a0cfa601eb31fc08cbaa492088269808d6d803c7a47a SHA512 23a429ded341114ea3c4282b974520146ea0734e01b5863c837d119517b39365b537126091f5efcf752ca7860bccf0e0e2d763b507e903321532db87bcd42b79
-EBUILD libomp-12.0.1.ebuild 2968 BLAKE2B 4e5511872021796bc51f8544a9f6ca5372650297c3c805a1bb16696def4901b34ad6ecbb7fcd4ce87a192e04aacda3d121b8dd62175e3ab3fab7d2a28095fe09 SHA512 d1f169993b83021c8c31b1911d827b62be19b916f2c53b7ef7b59d82b88c241d36eb054947d56bea13cf064f8737050d988ab6379be8a09e81bb04d7e333e3ff
-EBUILD libomp-13.0.0-r2.ebuild 3821 BLAKE2B 602575af9707ee4318eca2c4df01c9bfd5352e14fae9bbca21c8c9641bbdc3006bc88d279ff3029bf4ef27d92f05fb54fb39d0a539cd378c467b903e6e5235fa SHA512 29ad1828dd6b711db49ef0bc997f15bc59d80a70bd82aadebedc8ff134edbaca9652d906125247d691b67b800d248610ebf7c0ce30773d7ebd05dbed4bd0184c
-EBUILD libomp-13.0.1.9999.ebuild 3733 BLAKE2B 0475691284b18d69815ac7c7dd34e612eb54a388f51c8c1ef04f189a9f6901fd87357fb1bf2217727bbd5abe9dd74106a96b3456281eca0631602c64654069f9 SHA512 14238c95322345b420c21dce58afd929b08f6a559370fae05fa28c01da366921cde7c588dec49ddf24796f2c15a35fb01e2dcdbe6fead666f0dcd727924d178b
-EBUILD libomp-13.0.1_rc1.ebuild 3757 BLAKE2B 56349165f3026f299e75cbe15a5efe08f7bbc72efc97941dccef06d1efffeffbdc3d2d7ab81899652d415036ea2edf8fe7400d768c09fdecdc3f688866b8a0cb SHA512 fcb2a1d9d5be7f8f7a5d442d9b92f47f3e8a5027744c3ceb85f49d2d6b06425d76aa8b073f75ff9a9c651d67b7940107ed9eed38d84a974c181442d2f490c56e
-EBUILD libomp-14.0.0.9999.ebuild 3733 BLAKE2B 0475691284b18d69815ac7c7dd34e612eb54a388f51c8c1ef04f189a9f6901fd87357fb1bf2217727bbd5abe9dd74106a96b3456281eca0631602c64654069f9 SHA512 14238c95322345b420c21dce58afd929b08f6a559370fae05fa28c01da366921cde7c588dec49ddf24796f2c15a35fb01e2dcdbe6fead666f0dcd727924d178b
+EBUILD libomp-11.1.0.ebuild 2888 BLAKE2B fa9005fa8b8d26e264ac7555ab755fe0402c93c82205dbcc1802ac0ae54b245f33ebef8aa7d17c125652acd08f59bcd1efaca169e28fd5e5fcf266c4cbf0d1ba SHA512 24e44ea53c7b6238f3de78088076b3c4d426cc6039dbac5c2bbb1694f9b1e4088b7bf8ada2ad51eca525c4f6fff772178511fe07f449c200e95206c828a2095a
+EBUILD libomp-12.0.1.ebuild 2955 BLAKE2B 731a206c38d7c982b1b746517061de539c64e1d3bd5afd24c2e1d441bbcd7e91d80e6b20920d64eabaf0c3de85d5e269ef59c17ebdbe30c8808f1deeff495b88 SHA512 0d27c7374062a9831edcadbbea0787998184fca979637da1bab9b8848b3c7165e5e558fc9ef388a1f8d9e20e913b61e7fd19c3e9f2ecf885990a041a0f436156
+EBUILD libomp-13.0.0-r2.ebuild 3808 BLAKE2B a24b4436e0547b1f7d7becb8866288c19da6e345f0fd8b5ffb6c016634f3891833de79864bc85f0e310c48ab1eada3d3d59cc7658ef8c96995fd8340a0a1b179 SHA512 decaeeda70320eee804dd6d2320e464d3d4b744c4c5a8ee9bf9a191e80f72ca1e97a1251d0ef69a6608740da2706dc1eea8a379b1e3b0ef06858dc043a2529c7
+EBUILD libomp-13.0.1.9999.ebuild 3720 BLAKE2B b06a9a498165e06f2d54b9d7511feb30c1bb40b5e530a75523b3fa3c2a31f9aae323fa2079f8441e132029bbe43a20860a381f935e59483e93e8a2f50e33bfbd SHA512 1ea61f7616276152c2aed3507b64cd8fd2900362a2b6c27f352b555536fc4f9690e36b95b5bf42c067bc062c8b632bc4892e59af21cfdc7d674a63d891542016
+EBUILD libomp-13.0.1_rc1.ebuild 3744 BLAKE2B bd637b54a2f61a4c3b78b46bb592e45f6168aaae7d4e0329ef67c7026f60253e1db33be577dd819e04551d936bb653eea0e66562e00e38ff0890087282bd70e9 SHA512 897fcf1c1aed0c3fda24258364bf08a15c5ecc7c95c00f1fbf55fd7408ed868a2dfbece665442812797766828a40031736b710eb2ce5f73014aa98ea0af269b0
+EBUILD libomp-14.0.0.9999.ebuild 3720 BLAKE2B b06a9a498165e06f2d54b9d7511feb30c1bb40b5e530a75523b3fa3c2a31f9aae323fa2079f8441e132029bbe43a20860a381f935e59483e93e8a2f50e33bfbd SHA512 1ea61f7616276152c2aed3507b64cd8fd2900362a2b6c27f352b555536fc4f9690e36b95b5bf42c067bc062c8b632bc4892e59af21cfdc7d674a63d891542016
MISC metadata.xml 826 BLAKE2B 94bad2982b52156c2755f4fcdc534648e30b45b514f486028d7beba9af050c3c6847a33fdc11cbf26195794b8e8a7cbeb4e110b8b4398f784c7b7c3edeea02ca SHA512 60de2890b1edc3d60feb5b04dbce840b17e0812ff301f00fd7c12242d3b81cdb3b8ad7afeb3624d70526a93cf8285c96a65b5fcd0384dd093b722c1ae645fa2f
diff --git a/sys-libs/libomp/libomp-11.1.0.ebuild b/sys-libs/libomp/libomp-11.1.0.ebuild
index 5e55d6e82803..5c983795cfff 100644
--- a/sys-libs/libomp/libomp-11.1.0.ebuild
+++ b/sys-libs/libomp/libomp-11.1.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ HOMEPAGE="https://openmp.llvm.org"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~x64-macos"
-IUSE="cuda hwloc kernel_linux offload ompt test"
+IUSE="cuda hwloc offload ompt test"
# CUDA works only with the x86_64 ABI
REQUIRED_USE="offload? ( cuda? ( abi_x86_64 ) )"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/libomp/libomp-12.0.1.ebuild b/sys-libs/libomp/libomp-12.0.1.ebuild
index 5df3ce76c7cb..6f0a864fcf48 100644
--- a/sys-libs/libomp/libomp-12.0.1.ebuild
+++ b/sys-libs/libomp/libomp-12.0.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ HOMEPAGE="https://openmp.llvm.org"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86 ~amd64-linux ~x64-macos"
-IUSE="cuda hwloc kernel_linux offload ompt test"
+IUSE="cuda hwloc offload ompt test"
# CUDA works only with the x86_64 ABI
REQUIRED_USE="offload? ( cuda? ( abi_x86_64 ) )"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/libomp/libomp-13.0.0-r2.ebuild b/sys-libs/libomp/libomp-13.0.0-r2.ebuild
index 5f801a554c82..725187193ff6 100644
--- a/sys-libs/libomp/libomp-13.0.0-r2.ebuild
+++ b/sys-libs/libomp/libomp-13.0.0-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ HOMEPAGE="https://openmp.llvm.org"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86 ~amd64-linux ~x64-macos"
-IUSE="cuda debug hwloc kernel_linux offload ompt test
+IUSE="cuda debug hwloc offload ompt test
llvm_targets_AMDGPU llvm_targets_NVPTX"
# CUDA works only with the x86_64 ABI
REQUIRED_USE="
diff --git a/sys-libs/libomp/libomp-13.0.1.9999.ebuild b/sys-libs/libomp/libomp-13.0.1.9999.ebuild
index f1c1f78f6e9d..81e776270450 100644
--- a/sys-libs/libomp/libomp-13.0.1.9999.ebuild
+++ b/sys-libs/libomp/libomp-13.0.1.9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ HOMEPAGE="https://openmp.llvm.org"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
KEYWORDS=""
-IUSE="cuda debug hwloc kernel_linux offload ompt test
+IUSE="cuda debug hwloc offload ompt test
llvm_targets_AMDGPU llvm_targets_NVPTX"
# CUDA works only with the x86_64 ABI
REQUIRED_USE="
diff --git a/sys-libs/libomp/libomp-13.0.1_rc1.ebuild b/sys-libs/libomp/libomp-13.0.1_rc1.ebuild
index 6a8ad8fb455b..6447245880b8 100644
--- a/sys-libs/libomp/libomp-13.0.1_rc1.ebuild
+++ b/sys-libs/libomp/libomp-13.0.1_rc1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ HOMEPAGE="https://openmp.llvm.org"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
KEYWORDS=""
-IUSE="cuda debug hwloc kernel_linux offload ompt test
+IUSE="cuda debug hwloc offload ompt test
llvm_targets_AMDGPU llvm_targets_NVPTX"
# CUDA works only with the x86_64 ABI
REQUIRED_USE="
diff --git a/sys-libs/libomp/libomp-14.0.0.9999.ebuild b/sys-libs/libomp/libomp-14.0.0.9999.ebuild
index f1c1f78f6e9d..81e776270450 100644
--- a/sys-libs/libomp/libomp-14.0.0.9999.ebuild
+++ b/sys-libs/libomp/libomp-14.0.0.9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ HOMEPAGE="https://openmp.llvm.org"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
KEYWORDS=""
-IUSE="cuda debug hwloc kernel_linux offload ompt test
+IUSE="cuda debug hwloc offload ompt test
llvm_targets_AMDGPU llvm_targets_NVPTX"
# CUDA works only with the x86_64 ABI
REQUIRED_USE="
diff --git a/sys-libs/libxcrypt/Manifest b/sys-libs/libxcrypt/Manifest
index 96e3853bb36d..e211b022f112 100644
--- a/sys-libs/libxcrypt/Manifest
+++ b/sys-libs/libxcrypt/Manifest
@@ -3,8 +3,8 @@ DIST libxcrypt-4.4.20-autotools.tar.xz 628688 BLAKE2B 4c23af2a765495758e52c8e95d
DIST libxcrypt-4.4.25-autotools.tar.xz 614652 BLAKE2B f0f4fbf92585fdd8d328aaa68811ea15bdf75778363ea4bc46a75fb76bb065f044708446d655356ebbf2834f8b14bac40fbe700b510b09ce101f750667a04298 SHA512 30f38a54c8e5cbd31c463223913079f9869d38ed38a2f64c57778ac4cf1b6f557caa527073df54ca8396bb7220807b84afcae2f9790f6604af1561a4b277874e
DIST libxcrypt-4.4.26-autotools.tar.xz 617808 BLAKE2B 9fb8e31b22a085c0d0d5ab2ee3fb69fbebaccee2281e9be7d745218b5b92d949ffd3aa9c385671d58c93a654e16b943a33284b0b4737d52d26e43e2f7840fe74 SHA512 22c72cacd87c5751c4160413738fdf52c8fee300dcad01b289a6eaf892439883b9478103f791f5f53c8e5e2f2dd81057e5fda45e7cf7fdfd3ba93dd811bc01e3
DIST libxcrypt-4.4.27-autotools.tar.xz 619240 BLAKE2B 13dd5730fded0684c8e7321fee8a786663ff1080a6ca248bd718c4f6c9f6bd2853689c347be9f9ae51ebc1281aaa2143dfc020149382d259e7eefe66ac8b675e SHA512 f13ae1e69bf5850abb47a28f9ac3e3b0a8b3123adc53d39fd39a26d53847bf6e3fdca751e086cd80ce4e5d9ee419b09148c247cbe5f663b3019b66f82cdc5f5c
-EBUILD libxcrypt-4.4.20.ebuild 5817 BLAKE2B 5eee19a41bd26045175765c8bff8aecd0e035e5c46dd8b73a11f4f8ffd1360c91921c2881e058da504414eb33156511f07e3673fc321b36e49010e00a2294669 SHA512 181e26ade031ddc3a93103348326dca9ab7a546e69a00168b7e19b9cf5f148bffeba7dd6bdaf2e11649303305a72ca2bfd24360c005704930d5ef8f444881673
-EBUILD libxcrypt-4.4.25-r1.ebuild 6415 BLAKE2B 312440866d2309feba7c1a29a3dcb61daf7e87fb8b01e58e959941d533cb07a67ca6119e1c470c229f8cbd04966bd97273d4d8a69d1a31dd0baa946d52623608 SHA512 0094b2031e3d7563bc4afc8c98f926777f8973c9e55b747cde01d6efcae1f799d7eb96fb7073c0ee42932fcc371d072a2c6ae0417c7c6eb70b6429dbf7cd4921
-EBUILD libxcrypt-4.4.26-r1.ebuild 6422 BLAKE2B e3b0ded6e80bbcc3f3279ae0cf18ac88d634a640b30ef4523d81fb74125d61718cf0a179361ad5e6a69fc658226660348b72279be49d446e2c995d6a584e1847 SHA512 0e3c0e99430ff8e068bc056315735b54192cf572cc7045e1a9ceb498ce8a51d0ea106079f9d6dd55f911445d87a1b93da878f4e4e8286981f4f97c32df6fd3eb
-EBUILD libxcrypt-4.4.27.ebuild 6422 BLAKE2B e3b0ded6e80bbcc3f3279ae0cf18ac88d634a640b30ef4523d81fb74125d61718cf0a179361ad5e6a69fc658226660348b72279be49d446e2c995d6a584e1847 SHA512 0e3c0e99430ff8e068bc056315735b54192cf572cc7045e1a9ceb498ce8a51d0ea106079f9d6dd55f911445d87a1b93da878f4e4e8286981f4f97c32df6fd3eb
+EBUILD libxcrypt-4.4.20.ebuild 5797 BLAKE2B 888564715e7df7e8d19461ec5e9654ec6b0423148bfd6c9169d61cd12ebe30a6c8384092748bc5459be370b7bad0d615883dbfc51a5dff28abbd43ad57e79199 SHA512 dde0ff01e886294442779aea22148a8ccf17c47357b379f7d3c93ea49412233536a61972197909759b4957deac66afd703056a8c658f6b40fe78b85b85d0c930
+EBUILD libxcrypt-4.4.25-r1.ebuild 6394 BLAKE2B eb7f84bae0267f33a4f3ea17af79891802395eb361cf04565de6d9fafd31f8ca58bada24cb9c54bbae5ef171b822f4a63c94d777a8f81b69369faf40cc1ae2d0 SHA512 415b9151344e36ea65262fcdf51e3dd37c6e3ab11a2ecf15a575b2cf18740aee168c61f4502409d5d7617b8bc17f38c5decacc013125018ec72841f094b63fc6
+EBUILD libxcrypt-4.4.26-r1.ebuild 6402 BLAKE2B 72b434330bc6e591fb053fa472a64e40c45fa34a5c8c355fd3236f62a024c36bd49bb7420239f559cd3fce87931551d2c5340c705e91a6219d0e0c9f3e976041 SHA512 01fced1a1a1cf6838cd8b57ed141a1df3c30843e29b6b4b93bc1656cb729d79882a2d28916e917aa8c0b687bd6c8d6aab51cfc5e3d0b744a74ba59430049fba3
+EBUILD libxcrypt-4.4.27.ebuild 6402 BLAKE2B 72b434330bc6e591fb053fa472a64e40c45fa34a5c8c355fd3236f62a024c36bd49bb7420239f559cd3fce87931551d2c5340c705e91a6219d0e0c9f3e976041 SHA512 01fced1a1a1cf6838cd8b57ed141a1df3c30843e29b6b4b93bc1656cb729d79882a2d28916e917aa8c0b687bd6c8d6aab51cfc5e3d0b744a74ba59430049fba3
MISC metadata.xml 831 BLAKE2B f8761f3758acf79afea36926a6488afb73c433a8faa599aa09a3bbc01b6c733d7264d7b584606158312825f099a1176623c70625a317a837de5bb20501f5ed22 SHA512 826ea578d9d3e651767e8f670d2bbb918c11e26ca5dc1c52ff7fbd513c39bee2d9423ecf16e47e2603f5a8c7b6979fd27eacde84182deb5a67004c9a3be281cb
diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.20.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.20.ebuild
index 6b7c1ae7612f..9d57697c9416 100644
--- a/sys-libs/libxcrypt/libxcrypt-4.4.20.ebuild
+++ b/sys-libs/libxcrypt/libxcrypt-4.4.20.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2004-2021 Gentoo Authors
+# Copyright 2004-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -31,7 +31,6 @@ DEPEND="system? (
)"
RDEPEND="${DEPEND}"
BDEPEND="dev-lang/perl
- sys-apps/findutils
test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') )"
python_check_deps() {
diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild
index 13858d396505..c9559428437e 100644
--- a/sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild
+++ b/sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2004-2021 Gentoo Authors
+# Copyright 2004-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -20,7 +20,7 @@ fi
LICENSE="LGPL-2.1+ public-domain BSD BSD-2"
SLOT="0/1"
-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"
IUSE="+compat split-usr static-libs system test"
REQUIRED_USE="split-usr? ( system )"
RESTRICT="!test? ( test )"
@@ -35,7 +35,6 @@ DEPEND="system? (
"
RDEPEND="${DEPEND}"
BDEPEND="dev-lang/perl
- sys-apps/findutils
test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') )"
python_check_deps() {
diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild
index fa017859016b..9bebb1243fee 100644
--- a/sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild
+++ b/sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2004-2021 Gentoo Authors
+# Copyright 2004-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -35,7 +35,6 @@ DEPEND="system? (
"
RDEPEND="${DEPEND}"
BDEPEND="dev-lang/perl
- sys-apps/findutils
test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') )"
python_check_deps() {
diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.27.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.27.ebuild
index fa017859016b..9bebb1243fee 100644
--- a/sys-libs/libxcrypt/libxcrypt-4.4.27.ebuild
+++ b/sys-libs/libxcrypt/libxcrypt-4.4.27.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2004-2021 Gentoo Authors
+# Copyright 2004-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -35,7 +35,6 @@ DEPEND="system? (
"
RDEPEND="${DEPEND}"
BDEPEND="dev-lang/perl
- sys-apps/findutils
test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') )"
python_check_deps() {
diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest
index 9ae2b4ac6440..13edf7000de2 100644
--- a/sys-libs/readline/Manifest
+++ b/sys-libs/readline/Manifest
@@ -6,5 +6,7 @@ AUX readline-8.0-headers.patch 577 BLAKE2B b8fe6cdf51188f68c852d3c9052e7840a0bcb
AUX readline-8.1-windows-signals.patch 569 BLAKE2B af1ad52b09a1a49e6045bd640d57f3932f2b8db450b2eb7e0787a4326f6c61445ad83395620caf489da14107e8a51aed5d5fdf8e3268fab83d8ff04d393b1a59 SHA512 37aa778a21e360708d371aaf3f08274f75b15d8b2c42b030bda8d65dda81b1713c748644e45b6662c608da14ad413d6d83e43800ea58309fa60256a18317f5ae
DIST readline-8.1.tar.gz 2993288 BLAKE2B f0feca1ea3517b2b613adacac8c997cce0e86aa2f410c82a40ce1a2e128067112b4c68dbf25b808291c28c47583345abac994ce10b8d117958afcb96ee5e7c69 SHA512 27790d0461da3093a7fee6e89a51dcab5dc61928ec42e9228ab36493b17220641d5e481ea3d8fee5ee0044c70bf960f55c7d3f1a704cf6b9c42e5c269b797e00
DIST readline81-001 2454 BLAKE2B 7ec4e5c39a224a70643b44b88bcfef5198e199c76f2a34f0b0ce24f1747dd46be49ddf93871c474cda64322b4358127fec4c2401d19422f84934546bbe1f3bf2 SHA512 cfbef10bdeb562a302ccf214878d02ebadf799343b3d2d7996a282f81bcfde83997ba6dcc9a8477af4dd7c73bca74105ca00a81e42ed13321672bd2930550e54
+DIST readline81-002 1242 BLAKE2B 4ef0404561bd8fc5559e8e5f675ae3f12c467178a8954f54f3204c2d09b88ccec960e807c7af0ec3514b489b676e3be51f98351e377fb18e3d7a14d33d4da69d SHA512 e47c029b82cf3a4d44e85c4348f7e059c56726694c190d84186822e1c893e1c006e7ec75f33c36791112f81abd792a2e2fdae9a65cd128f3c89ff4ffd9a9a1ff
EBUILD readline-8.1_p1-r1.ebuild 5901 BLAKE2B 4819d05f4e9fd9d9b737eeabf14cedb8e9879f554b5bb3cf2d1635ca2f3e07382e16dec40693aa183d51cd2d362f77942614f5129392363ce5097fd401b59795 SHA512 54c1365e53e218e3a404fffe2343627218b4230db5be183ce7c79c417ae8c083ac00cf5f619c7344284635155ff2dbf6071ba631283c0f3c2ace8aa1cd7b2581
+EBUILD readline-8.1_p2.ebuild 5909 BLAKE2B e40e0cd4b17b2320fd4a79d1b55c66e9f669bafcd621c53bc5ce4e4494633c351d998e006e3366380738d421fe07bfb285fda6bc16a56725bebe72305c50f5c3 SHA512 2cb784e27305b6d507fd980855d63fb3dbef8838e92cf14d682db6999409128bbe7b354c4a9e9c53740ba4664d2fb3967b057eb4a00a72b1aa3156f5cfb45ad4
MISC metadata.xml 473 BLAKE2B 95401399d6edc2a1a28f9c0f42123b07568d5c517c49be38eff09e1f23a9b5df4d5b302495db8880c8ed65081ea2920f194e6b32402ab0d6049221e9ee6a4eed SHA512 e54e4ce57f3178aa8646acb6798f46074eb33173ab63d61f62bc9ab1d35ef823ce9ee3e173234f8866e2cb635519869c76a449f5073c3a5b7cfd29cd23c16462
diff --git a/sys-libs/readline/readline-8.1_p2.ebuild b/sys-libs/readline/readline-8.1_p2.ebuild
new file mode 100644
index 000000000000..f27175df6017
--- /dev/null
+++ b/sys-libs/readline/readline-8.1_p2.ebuild
@@ -0,0 +1,199 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs usr-ldscript
+
+# Official patches
+# See ftp://ftp.cwru.edu/pub/bash/readline-8.1-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 mirror://gnu/${PN} ftp://ftp.cwru.edu/pub/bash ; 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/8" # subslot matches SONAME major
+[[ "${PV}" == *_rc* ]] || \
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="static-libs +unicode utils"
+
+RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="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}-8.0-headers.patch
+ "${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch
+ "${FILESDIR}"/${PN}-8.1-windows-signals.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
+
+ if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then
+ # If we're bootstrapping, make a guess. We don't have pkg-config
+ # around yet. bug #818103.
+ # Incorrectly populating this leads to underlinked libreadline.
+ local ncurses_libs
+ local ncurses_libs_suffix=$(usex unicode w '')
+
+ ncurses_libs="-lncurses${ncurses_libs_suffix}"
+
+ if has_version "sys-libs/ncurses[tinfo(+)]" ; then
+ ncurses_libs+=" -ltinfo${ncurses_libs_suffix}"
+ fi
+ else
+ # Force ncurses linking. #71420
+ # Use pkg-config to get the right values. #457558
+ local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs)
+ fi
+
+ 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}$(get_libname 4) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 5) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 6) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 7)
+}
+
+pkg_postinst() {
+ preserve_old_lib_notify \
+ /$(get_libdir)/lib{history,readline}$(get_libname 4) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 5) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 6) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 7)
+}