summaryrefslogtreecommitdiff
path: root/sys-libs
diff options
context:
space:
mode:
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/Manifest.gzbin14587 -> 14578 bytes
-rw-r--r--sys-libs/binutils-libs/Manifest2
-rw-r--r--sys-libs/binutils-libs/binutils-libs-2.42-r1.ebuild2
-rw-r--r--sys-libs/compiler-rt-sanitizers/Manifest21
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.5.ebuild (renamed from sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.4.ebuild)0
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.6.ebuild (renamed from sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240410.ebuild)3
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0.9999.ebuild4
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240509.ebuild (renamed from sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240427.ebuild)0
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240518.ebuild (renamed from sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240420.ebuild)7
-rw-r--r--sys-libs/compiler-rt/Manifest21
-rw-r--r--sys-libs/compiler-rt/compiler-rt-18.1.5.ebuild (renamed from sys-libs/compiler-rt/compiler-rt-18.1.4.ebuild)2
-rw-r--r--sys-libs/compiler-rt/compiler-rt-18.1.6.ebuild (renamed from sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240410.ebuild)5
-rw-r--r--sys-libs/compiler-rt/compiler-rt-19.0.0.9999.ebuild2
-rw-r--r--sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240509.ebuild (renamed from sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240427.ebuild)2
-rw-r--r--sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240518.ebuild (renamed from sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240420.ebuild)3
-rw-r--r--sys-libs/cracklib/Manifest3
-rw-r--r--sys-libs/cracklib/cracklib-2.9.11.ebuild10
-rw-r--r--sys-libs/cracklib/files/cracklib-2.9.11-py3.12-tests.patch80
-rw-r--r--sys-libs/glibc/Manifest28
-rw-r--r--sys-libs/glibc/glibc-2.19-r3.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.31-r7.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.32-r8.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.33-r14.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.34-r14.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.35-r11.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.36-r8.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.37-r10.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.38-r10.ebuild1723
-rw-r--r--sys-libs/glibc/glibc-2.38-r12.ebuild1729
-rw-r--r--sys-libs/glibc/glibc-2.38-r13.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.39-r6.ebuild (renamed from sys-libs/glibc/glibc-2.39-r4.ebuild)15
-rw-r--r--sys-libs/glibc/glibc-9999.ebuild11
-rw-r--r--sys-libs/kpmcore/Manifest4
-rw-r--r--sys-libs/kpmcore/kpmcore-24.04.90.ebuild (renamed from sys-libs/kpmcore/kpmcore-24.02.2.ebuild)0
-rw-r--r--sys-libs/ldb/Manifest14
-rw-r--r--sys-libs/ldb/ldb-2.4.4.ebuild122
-rw-r--r--sys-libs/ldb/ldb-2.5.2.ebuild122
-rw-r--r--sys-libs/ldb/ldb-2.5.3.ebuild129
-rw-r--r--sys-libs/ldb/ldb-2.6.2.ebuild174
-rw-r--r--sys-libs/ldb/ldb-2.7.2.ebuild2
-rw-r--r--sys-libs/ldb/ldb-2.8.0.ebuild2
-rw-r--r--sys-libs/ldb/ldb-2.9.0.ebuild2
-rw-r--r--sys-libs/libcap/Manifest2
-rw-r--r--sys-libs/libcap/libcap-2.70.ebuild94
-rw-r--r--sys-libs/libcxx/Manifest19
-rw-r--r--sys-libs/libcxx/libcxx-18.1.5.ebuild (renamed from sys-libs/libcxx/libcxx-18.1.4.ebuild)0
-rw-r--r--sys-libs/libcxx/libcxx-18.1.6.ebuild (renamed from sys-libs/libcxx/libcxx-19.0.0_pre20240427.ebuild)2
-rw-r--r--sys-libs/libcxx/libcxx-19.0.0_pre20240509.ebuild (renamed from sys-libs/libcxx/libcxx-19.0.0_pre20240410.ebuild)0
-rw-r--r--sys-libs/libcxx/libcxx-19.0.0_pre20240518.ebuild (renamed from sys-libs/libcxx/libcxx-19.0.0_pre20240420.ebuild)0
-rw-r--r--sys-libs/libcxxabi/Manifest19
-rw-r--r--sys-libs/libcxxabi/libcxxabi-18.1.5.ebuild (renamed from sys-libs/libcxxabi/libcxxabi-18.1.4.ebuild)0
-rw-r--r--sys-libs/libcxxabi/libcxxabi-18.1.6.ebuild (renamed from sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240427.ebuild)1
-rw-r--r--sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240509.ebuild (renamed from sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240410.ebuild)0
-rw-r--r--sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240518.ebuild (renamed from sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240420.ebuild)0
-rw-r--r--sys-libs/libieee1284/Manifest2
-rw-r--r--sys-libs/libieee1284/files/libieee1284-0.2.11-don-t-blindly-assume-outb_p-to-be-available.patch27
-rw-r--r--sys-libs/libieee1284/libieee1284-0.2.11-r9.ebuild53
-rw-r--r--sys-libs/libnvme/Manifest5
-rw-r--r--sys-libs/libnvme/files/libnvme-1.9-musl-stdint.patch59
-rw-r--r--sys-libs/libnvme/libnvme-1.8.ebuild2
-rw-r--r--sys-libs/libnvme/libnvme-1.9.ebuild4
-rw-r--r--sys-libs/libomp/Manifest19
-rw-r--r--sys-libs/libomp/libomp-18.1.5.ebuild (renamed from sys-libs/libomp/libomp-18.1.4.ebuild)0
-rw-r--r--sys-libs/libomp/libomp-18.1.6.ebuild (renamed from sys-libs/libomp/libomp-19.0.0_pre20240410.ebuild)3
-rw-r--r--sys-libs/libomp/libomp-19.0.0_pre20240420.ebuild160
-rw-r--r--sys-libs/libomp/libomp-19.0.0_pre20240509.ebuild (renamed from sys-libs/libomp/libomp-19.0.0_pre20240427.ebuild)0
-rw-r--r--sys-libs/libomp/libomp-19.0.0_pre20240518.ebuild88
-rw-r--r--sys-libs/libseccomp/Manifest2
-rw-r--r--sys-libs/libseccomp/libseccomp-2.5.5-r1.ebuild4
-rw-r--r--sys-libs/liburing/Manifest10
-rw-r--r--sys-libs/liburing/files/liburing-2.1-arm-syscall.patch54
-rw-r--r--sys-libs/liburing/files/liburing-2.1-gnu_source-musl-cpuset.patch42
-rw-r--r--sys-libs/liburing/liburing-2.1-r2.ebuild74
-rw-r--r--sys-libs/liburing/liburing-2.4.ebuild83
-rw-r--r--sys-libs/liburing/liburing-2.5-r1.ebuild87
-rw-r--r--sys-libs/liburing/liburing-2.6.ebuild (renamed from sys-libs/liburing/liburing-2.5.ebuild)2
-rw-r--r--sys-libs/llvm-libunwind/Manifest19
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-18.1.5.ebuild (renamed from sys-libs/llvm-libunwind/llvm-libunwind-18.1.4.ebuild)0
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-18.1.6.ebuild (renamed from sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240427.ebuild)3
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240509.ebuild (renamed from sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240410.ebuild)0
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240518.ebuild (renamed from sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240420.ebuild)0
-rw-r--r--sys-libs/mtdev/Manifest4
-rw-r--r--sys-libs/mtdev/mtdev-1.1.6.ebuild24
-rw-r--r--sys-libs/mtdev/mtdev-1.1.7.ebuild2
-rw-r--r--sys-libs/musl/Manifest3
-rw-r--r--sys-libs/musl/files/musl-1.2.4-arm64-crti-alignment.patch32
-rw-r--r--sys-libs/musl/musl-1.2.4-r2.ebuild205
-rw-r--r--sys-libs/musl/musl-1.2.5-r1.ebuild207
-rw-r--r--sys-libs/ncurses/Manifest6
-rw-r--r--sys-libs/ncurses/ncurses-6.4_p20230527.ebuild431
-rw-r--r--sys-libs/ncurses/ncurses-6.4_p20240330.ebuild478
-rw-r--r--sys-libs/ncurses/ncurses-6.4_p20240414.ebuild2
-rw-r--r--sys-libs/openipmi/Manifest2
-rw-r--r--sys-libs/openipmi/openipmi-2.0.33-r1.ebuild3
-rw-r--r--sys-libs/readline/Manifest11
-rw-r--r--sys-libs/readline/files/readline-6.2-rlfe-tgoto.patch14
-rw-r--r--sys-libs/readline/readline-8.1_p2-r1.ebuild220
-rw-r--r--sys-libs/readline/readline-8.1_p2-r2.ebuild26
-rw-r--r--sys-libs/readline/readline-8.2_p10.ebuild25
-rw-r--r--sys-libs/readline/readline-8.3_alpha.ebuild25
-rw-r--r--sys-libs/readline/readline-9999.ebuild21
-rw-r--r--sys-libs/tevent/Manifest12
-rw-r--r--sys-libs/tevent/tevent-0.12.1.ebuild78
-rw-r--r--sys-libs/tevent/tevent-0.13.0.ebuild107
-rw-r--r--sys-libs/tevent/tevent-0.14.0.ebuild102
-rw-r--r--sys-libs/tevent/tevent-0.14.1.ebuild4
-rw-r--r--sys-libs/tevent/tevent-0.15.0.ebuild4
-rw-r--r--sys-libs/tevent/tevent-0.16.1.ebuild2
108 files changed, 1107 insertions, 6144 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz
index 14f4a0995f99..6512c4b50d42 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 7057352352a4..6276e5388445 100644
--- a/sys-libs/binutils-libs/Manifest
+++ b/sys-libs/binutils-libs/Manifest
@@ -25,5 +25,5 @@ EBUILD binutils-libs-2.38-r2.ebuild 4784 BLAKE2B 468b3cfd01e4ec3b9543cbe001f98b3
EBUILD binutils-libs-2.39-r5.ebuild 4792 BLAKE2B afbecc0ee2e52b99eff9a25194d36d1a3e51c984723b154d39297231fb5c099d85d75aecfd4c271ae4c0c4d891a9393e8402f90b1a61dc81c433d72bc39c4512 SHA512 e31e70d39ed2e09b87ef3149f4e1f4bf00f3ef2b66fc08cffd635a342db31229b44bf9cd011a0a2b802686a4ba43bbaf738120eea4b17380520f08950c05db9e
EBUILD binutils-libs-2.40-r7.ebuild 5030 BLAKE2B 3d4d3e70abf61164fe100d7e6d51febbefbf65d3d998075c598da8ab2b613ad9f3bfb9f6de57f014b95798f9fc54316e2084c740dabc68d1bb7d09286b89f903 SHA512 38350894368bf21bd544a69dab70f5dd2792d63dc065418716a3eb96c080700c6462fd300eda6fb83d450fd8c811df55e1b8452736e9e8c5750e139211eb4254
EBUILD binutils-libs-2.41-r5.ebuild 5212 BLAKE2B a32307783cf1db07a2f70b8400f968c5122f6bda2bf9dd14ef2ed2af17bae1ea895ea3c55733cdaf3c6a1c3bc087e369556df39de28234ae2210e2d142e1621f SHA512 76992ea90e534b80d502638227b315af07af32e2150413a89690b8936477452d8622993de7a1fb87fc971fefd9708b55969a1d207a6931981123d66f518cb924
-EBUILD binutils-libs-2.42-r1.ebuild 5220 BLAKE2B 5cdcba96e04121c3ba899f9348bf00aac8fa03bf5a01e8b5699a3f8c2008b7e4184fabf930618f5b394b6a40baa1f5ef3dc6e020fefa631afbcd58eafc21e636 SHA512 4c75e1f82f562e921532cb8da80534400c819a37a7060a0ab27cb00922dbc14fe999f0fbd1f752006edb5768453cac551f4916f19fe4f36c01b815a10685e031
+EBUILD binutils-libs-2.42-r1.ebuild 5218 BLAKE2B ad857f0d6c62be2c75caa893ea3f104304f271db89a174ac7325d71dc2cc73902f0daac9f2b73874ae900e3a7bae2c1ee21f0240a4394ed55a3cb62519c26932 SHA512 05b983b6db581eb7893a095ad0d036b749815c6a6faff9b336ff6134a4f4cd6eedbe538692a466e566b8c1f1bd6b7ff8001f99da3e9dfb1acf6b0035f25608d7
MISC metadata.xml 612 BLAKE2B ceaafd9fd1421e9f3993e003d0029c92a78054c7a2b90bd78afc05370ad19c931c6a7c150545cfb7d57165168e0fdaf3a00dde1905b328826a91cbc70d9548a8 SHA512 c8d33bb8d1c62c7e95758624ed0febbc9d40e9f141bfd280837b3207bcd771412158d71c0cb5548d60be0b236f6fe103621daf7efa8875191982859b566ffa8d
diff --git a/sys-libs/binutils-libs/binutils-libs-2.42-r1.ebuild b/sys-libs/binutils-libs/binutils-libs-2.42-r1.ebuild
index ab160f032db0..aa7ecc0d4311 100644
--- a/sys-libs/binutils-libs/binutils-libs-2.42-r1.ebuild
+++ b/sys-libs/binutils-libs/binutils-libs-2.42-r1.ebuild
@@ -24,7 +24,7 @@ LICENSE="|| ( GPL-3 LGPL-3 )"
SLOT="0/${PV%_p?}.0"
IUSE="64-bit-bfd cet multitarget nls static-libs test"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
RESTRICT="!test? ( test )"
BDEPEND="
diff --git a/sys-libs/compiler-rt-sanitizers/Manifest b/sys-libs/compiler-rt-sanitizers/Manifest
index 4b897e2ce7da..54a5bf84027c 100644
--- a/sys-libs/compiler-rt-sanitizers/Manifest
+++ b/sys-libs/compiler-rt-sanitizers/Manifest
@@ -5,17 +5,18 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659
DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
-DIST llvm-project-18.1.4.src.tar.xz 132054668 BLAKE2B 94bbad3b185fd07cbace4eff79aba80fbdd5e072739250e3927fe1848bcf3f8d355eb1f384e57306707eb702acc7ab01b732590735be7950221607664d04b0a6 SHA512 b1b214ae91f3705d8ea345547ad53f1e5d7d884c1eb6958bc41c14ac4b3e407771ccc2b693686ff103c8232c2c3942731d6db9a9cb4f735e6c6a0674739d0b29
-DIST llvm-project-18.1.4.src.tar.xz.sig 566 BLAKE2B b74fd219d7bcdf197b4e711cfbb25c40e9d8d2c7341de0215d8c31f330f396e9c166ff63513829cdc9cef349f08238f66a4dc949fa97958a7af496abae369eaa SHA512 4f456edf4fb454815acaef6855b1a0991f229810a32e9369af83388e37f0ef8964308e1e93bd6216024cdd67e86caaadc8d5794467857cc6fe561c9fa6ca7386
-DIST llvm-project-338561657685c1831a53563b1bc36ffc7470239e.tar.gz 209715501 BLAKE2B 49152479d4f2cae430e783784d0cfcc129134f5cc0bf12c72701cd15e59cb3e1be2f61385ba9baa93d1d1193e89374ac8877b909650c163b681d1fcd26732cdc SHA512 d34bbe82e85c5b9d493029ad7b46e802f06f7e7a8a48515d0043c58c3251271f8f3e1e11c47eb91bd3db2477f819d33b43ddebb276eb9601c5ad141e463c9682
-DIST llvm-project-ee284d2da0720dc21191d6f545504cbfcf5dcbcf.tar.gz 208883034 BLAKE2B e37c9f1a6a4d0caa9a3091f979dd09f509d458f8b7b30286c77dd2385aea748b7aac6dd488c79573f82feb655aa321717bd2fb46bba4a12b388b52064f6e13bf SHA512 1335ade87cd2accc47ac47ed2ab302999e375808b158b6c9d31fac9059cbb992d2bdaaadf1fd9a1b37268c1123d43346ea4d150894d6d2e6f80ba790b65b93b1
-DIST llvm-project-f03cd2db91956456f1c5e2da86d3c50183eebd28.tar.gz 209375254 BLAKE2B 1d7e043d04323edb64b2ef2309fbcb4f82a959f45391e815133cc0891d5a497bbb81101aab460e9bf67e75aa906e13ad1877c3850829dcad397ed626dc8f2792 SHA512 6775e03a44b2133bd4a4b473ab007599321daa19dc7f3cc47f95cf9d110e83e982bf48a6b1d43038b0f0a2c0fef2f689aefd20132b25a90ef19342683e2d2e50
+DIST llvm-project-18.1.5.src.tar.xz 132061072 BLAKE2B bfdd987d5992a4d94ae8b14792df3be67a8e8fdf1daef9834cdaa2132df1b7ddb72ba0aabbb34b171a73d0f3b2b0f61e7160f0b278a67fd4850e3f501fd21531 SHA512 9e2f1e251b3754a24a0b39676d78c98692887c05c85cf0bee50fd44d9635290019930d4dabd1ff4ba3c9c1067e7e0e09aa1bbcd3d76687f919a1d44ba85eee20
+DIST llvm-project-18.1.5.src.tar.xz.sig 566 BLAKE2B ad935db71ec3b9fc885d696af440764a71fe7cafc5b3ca0b25a2963100d9cb3790392daebcac1341716c95a8da3c6243f5a8667fea1ed18b93fc8baa495414c9 SHA512 3cbca1059d940f3bd7bd72d68f2828039b66304980cc5f43769649e5494fc7d71117bf8aba5cc7f7a2ffca52f60ba30fadf3b28f984fd49ddb14300e30b45237
+DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c68c8e441a126cf8e89e55a965f3b9e3a629a37d5743fd7859a60bedaddf27ff2da1e0f08c81806871ef542cb7c3f40b23b22cf5 SHA512 89ec276aa41bb2d76cfc3a72d8e728a9ce9176e02c085338b704790524fe329904cf311381805814faa8a6c79637620c01627bf122a51f89e0f3adb47e5df34c
+DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
+DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
+DIST llvm-project-a7ee81e8279e0bf6e05617a4a638e5f2f8e45022.tar.gz 210384692 BLAKE2B 28b85b08a42c173e1c3bf530483112b1629c7e6684a83a016fbe9f132774f7b864d793581873a6529defeabb4479ad9a3d7c025b781b2fa4952c239b6d567b11 SHA512 1d593818347452f96611a62fa3aa22ce4355a4ee5d5dcfcb54a286a1aa980e9531d5fb6cbee3b0ee5943c6d0f4e2ba2245e13262fe7859e5b114f9c5d5cf1417
EBUILD compiler-rt-sanitizers-15.0.7.ebuild 6648 BLAKE2B 89d90e750bc9c3c35e8a42a259fd84bc147ed9b7ed66168435f0010ef8adaf35e04e2cd43c1acc144668e04f5c229ca3cfd99aeb01b4ba2e46f10dd4615e131d SHA512 4f290993d65b7a17280c5ea9a9d19e13cefdde3aebc2236271e02bb1517655895e8eb3adc2047a849ce11dbacf8d7eddec715ab14523122089d856c21ae123a0
EBUILD compiler-rt-sanitizers-16.0.6.ebuild 6615 BLAKE2B 3ca63eefd87ce02510afa912e809895da7356a8e248f402f3fca1583048feebf80cba20f076e1b28fa4ad7f7c06781910948fc49d980b03276a900dc75114e06 SHA512 7f34e0416b520c75457f8267f28630f7a665f05e22d3f5c2d96ea631fcda79a584b6c0e75cba8b7fba7bf28b87a6b19b49be3b4b8770393caabc5ebc83831ebe
EBUILD compiler-rt-sanitizers-17.0.6.ebuild 6447 BLAKE2B 553a762d6dd06dafca05953f4d60e5e3dd215d813da29053d5c4c44750554e3ed90c187390196eeee3bc85bb1e3fbdac7aa2e100b623271898478003792a1302 SHA512 6beaa92bf1ba5213dc9c73395ecdae737f1a84119da6e3f8f008f9f21cf7d7b08b3634ad8768af6b19992fd49d964344c7d37e19b7c7bfec02af644bdc730bbd
-EBUILD compiler-rt-sanitizers-18.1.4.ebuild 6358 BLAKE2B d68fe00a7d79a022d2c66f03d1987491c7d382158426a5f27923f84df05cf5d27697abacad984e94a5b5f333bcd1e60d080ebbc4708f4abe77086bc777aeaaf5 SHA512 fcaf7d7203ede21db563de3b24bbf4d2939856913ba5ee3fff4f29eef18d6e93789791bc3e0d0b4ecd761fd7e8772b3a9f7ea5149300a22f99ee46e6caafbcd9
-EBUILD compiler-rt-sanitizers-19.0.0.9999.ebuild 6335 BLAKE2B b74231a4a699e5414119180f38a291bc2542515a38acd376082657fcbafb2ad23e5719bccfc291136e2be6dd7bdff4f816fbb7443f92026b44cdb3cd21b3a270 SHA512 e82fa8ab8d047863b21a7aebad39d891c67d1f763b565861070b3d8bb257cf70bf0be85ee6b0affafe9ca508399e3f5301c7299fb1c8e66466a4c687955200a4
-EBUILD compiler-rt-sanitizers-19.0.0_pre20240410.ebuild 6268 BLAKE2B 98422f1f8be179031ffed4ea9176843521842aff5be2cbdcb21f6ea2020a8d13a1c6fc4810e769c0ec0775f92af45831c4385cc70680765f474885c5ad5b389f SHA512 8677df281de24325290cb99cc4f6087460443c716ac2eea7b3c8175281daad874cd7aab0dda8f4d60213a1b73a8f1a921ae7ad0733d104a7db0e8e5f2ac35127
-EBUILD compiler-rt-sanitizers-19.0.0_pre20240420.ebuild 6268 BLAKE2B 98422f1f8be179031ffed4ea9176843521842aff5be2cbdcb21f6ea2020a8d13a1c6fc4810e769c0ec0775f92af45831c4385cc70680765f474885c5ad5b389f SHA512 8677df281de24325290cb99cc4f6087460443c716ac2eea7b3c8175281daad874cd7aab0dda8f4d60213a1b73a8f1a921ae7ad0733d104a7db0e8e5f2ac35127
-EBUILD compiler-rt-sanitizers-19.0.0_pre20240427.ebuild 6335 BLAKE2B b74231a4a699e5414119180f38a291bc2542515a38acd376082657fcbafb2ad23e5719bccfc291136e2be6dd7bdff4f816fbb7443f92026b44cdb3cd21b3a270 SHA512 e82fa8ab8d047863b21a7aebad39d891c67d1f763b565861070b3d8bb257cf70bf0be85ee6b0affafe9ca508399e3f5301c7299fb1c8e66466a4c687955200a4
+EBUILD compiler-rt-sanitizers-18.1.5.ebuild 6358 BLAKE2B d68fe00a7d79a022d2c66f03d1987491c7d382158426a5f27923f84df05cf5d27697abacad984e94a5b5f333bcd1e60d080ebbc4708f4abe77086bc777aeaaf5 SHA512 fcaf7d7203ede21db563de3b24bbf4d2939856913ba5ee3fff4f29eef18d6e93789791bc3e0d0b4ecd761fd7e8772b3a9f7ea5149300a22f99ee46e6caafbcd9
+EBUILD compiler-rt-sanitizers-18.1.6.ebuild 6358 BLAKE2B d68fe00a7d79a022d2c66f03d1987491c7d382158426a5f27923f84df05cf5d27697abacad984e94a5b5f333bcd1e60d080ebbc4708f4abe77086bc777aeaaf5 SHA512 fcaf7d7203ede21db563de3b24bbf4d2939856913ba5ee3fff4f29eef18d6e93789791bc3e0d0b4ecd761fd7e8772b3a9f7ea5149300a22f99ee46e6caafbcd9
+EBUILD compiler-rt-sanitizers-19.0.0.9999.ebuild 6366 BLAKE2B 1be7b5b920c35f8922f29640e074a2d5603114ccc0120b51edab59a4160bf88c0f6fc06b5cee1f99f11f2eaf82dd1b8c1bcd91d3f135012c5a965f0cf5f1bb6e SHA512 793f8d3642034024acabc720772d0f38dcfe775766765ab83cd000e230bf30d7a00bee29e23202e4706c28f2265938ba1ec3cd3c1589f4153252e73208e3072e
+EBUILD compiler-rt-sanitizers-19.0.0_pre20240509.ebuild 6335 BLAKE2B b74231a4a699e5414119180f38a291bc2542515a38acd376082657fcbafb2ad23e5719bccfc291136e2be6dd7bdff4f816fbb7443f92026b44cdb3cd21b3a270 SHA512 e82fa8ab8d047863b21a7aebad39d891c67d1f763b565861070b3d8bb257cf70bf0be85ee6b0affafe9ca508399e3f5301c7299fb1c8e66466a4c687955200a4
+EBUILD compiler-rt-sanitizers-19.0.0_pre20240518.ebuild 6366 BLAKE2B 1be7b5b920c35f8922f29640e074a2d5603114ccc0120b51edab59a4160bf88c0f6fc06b5cee1f99f11f2eaf82dd1b8c1bcd91d3f135012c5a965f0cf5f1bb6e SHA512 793f8d3642034024acabc720772d0f38dcfe775766765ab83cd000e230bf30d7a00bee29e23202e4706c28f2265938ba1ec3cd3c1589f4153252e73208e3072e
MISC metadata.xml 1475 BLAKE2B f7ea99e3103e42a2c79fe6c86ad174297e56bcffa7b164ac3ab0a239ba5adf2265b7fc458ce8b22c9c3bd647bb03d674abf842443cb32bf8d88c683746650a19 SHA512 8e52479d3b040718a3fdaa811030bc45ef33ce74daae3e365281074cdf6d586ba11ae5f14d87dbb456f00fe4b9ae6057f3bf30eb0973cc16cbdcc3eba01ff9f8
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.4.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.5.ebuild
index 192ead8311f8..192ead8311f8 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.4.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.5.ebuild
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240410.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.6.ebuild
index 57f868d54be6..192ead8311f8 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240410.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.6.ebuild
@@ -11,7 +11,8 @@ HOMEPAGE="https://llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="${LLVM_MAJOR}"
-IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+IUSE="+abi_x86_32 abi_x86_64 +clang debug test"
# base targets
IUSE+=" +libfuzzer +memprof +orc +profile +xray"
# sanitizer targets, keep in sync with config-ix.cmake
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0.9999.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0.9999.ebuild
index d1fd7251ab83..5bd3f6221799 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0.9999.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0.9999.ebuild
@@ -51,7 +51,9 @@ BDEPEND="
"
LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
-LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support third-party )
+LLVM_TEST_COMPONENTS=(
+ llvm/include/llvm/ProfileData llvm/lib/Testing/Support third-party
+)
llvm.org_set_globals
python_check_deps() {
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240427.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240509.ebuild
index d1fd7251ab83..d1fd7251ab83 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240427.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240509.ebuild
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240420.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240518.ebuild
index 57f868d54be6..5bd3f6221799 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240420.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240518.ebuild
@@ -13,7 +13,7 @@ LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="${LLVM_MAJOR}"
IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
# base targets
-IUSE+=" +libfuzzer +memprof +orc +profile +xray"
+IUSE+=" +ctx-profile +libfuzzer +memprof +orc +profile +xray"
# sanitizer targets, keep in sync with config-ix.cmake
# NB: ubsan, scudo deliberately match two entries
SANITIZER_FLAGS=(
@@ -51,7 +51,9 @@ BDEPEND="
"
LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
-LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support third-party )
+LLVM_TEST_COMPONENTS=(
+ llvm/include/llvm/ProfileData llvm/lib/Testing/Support third-party
+)
llvm.org_set_globals
python_check_deps() {
@@ -133,6 +135,7 @@ src_configure() {
# builtins & crt installed by sys-libs/compiler-rt
-DCOMPILER_RT_BUILD_BUILTINS=OFF
-DCOMPILER_RT_BUILD_CRT=OFF
+ -DCOMPILER_RT_BUILD_CTX_PROFILE=$(usex ctx-profile)
-DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer)
-DCOMPILER_RT_BUILD_MEMPROF=$(usex memprof)
-DCOMPILER_RT_BUILD_ORC=$(usex orc)
diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest
index 14540f1a8a9f..904580047377 100644
--- a/sys-libs/compiler-rt/Manifest
+++ b/sys-libs/compiler-rt/Manifest
@@ -7,18 +7,19 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659
DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
-DIST llvm-project-18.1.4.src.tar.xz 132054668 BLAKE2B 94bbad3b185fd07cbace4eff79aba80fbdd5e072739250e3927fe1848bcf3f8d355eb1f384e57306707eb702acc7ab01b732590735be7950221607664d04b0a6 SHA512 b1b214ae91f3705d8ea345547ad53f1e5d7d884c1eb6958bc41c14ac4b3e407771ccc2b693686ff103c8232c2c3942731d6db9a9cb4f735e6c6a0674739d0b29
-DIST llvm-project-18.1.4.src.tar.xz.sig 566 BLAKE2B b74fd219d7bcdf197b4e711cfbb25c40e9d8d2c7341de0215d8c31f330f396e9c166ff63513829cdc9cef349f08238f66a4dc949fa97958a7af496abae369eaa SHA512 4f456edf4fb454815acaef6855b1a0991f229810a32e9369af83388e37f0ef8964308e1e93bd6216024cdd67e86caaadc8d5794467857cc6fe561c9fa6ca7386
-DIST llvm-project-338561657685c1831a53563b1bc36ffc7470239e.tar.gz 209715501 BLAKE2B 49152479d4f2cae430e783784d0cfcc129134f5cc0bf12c72701cd15e59cb3e1be2f61385ba9baa93d1d1193e89374ac8877b909650c163b681d1fcd26732cdc SHA512 d34bbe82e85c5b9d493029ad7b46e802f06f7e7a8a48515d0043c58c3251271f8f3e1e11c47eb91bd3db2477f819d33b43ddebb276eb9601c5ad141e463c9682
-DIST llvm-project-ee284d2da0720dc21191d6f545504cbfcf5dcbcf.tar.gz 208883034 BLAKE2B e37c9f1a6a4d0caa9a3091f979dd09f509d458f8b7b30286c77dd2385aea748b7aac6dd488c79573f82feb655aa321717bd2fb46bba4a12b388b52064f6e13bf SHA512 1335ade87cd2accc47ac47ed2ab302999e375808b158b6c9d31fac9059cbb992d2bdaaadf1fd9a1b37268c1123d43346ea4d150894d6d2e6f80ba790b65b93b1
-DIST llvm-project-f03cd2db91956456f1c5e2da86d3c50183eebd28.tar.gz 209375254 BLAKE2B 1d7e043d04323edb64b2ef2309fbcb4f82a959f45391e815133cc0891d5a497bbb81101aab460e9bf67e75aa906e13ad1877c3850829dcad397ed626dc8f2792 SHA512 6775e03a44b2133bd4a4b473ab007599321daa19dc7f3cc47f95cf9d110e83e982bf48a6b1d43038b0f0a2c0fef2f689aefd20132b25a90ef19342683e2d2e50
+DIST llvm-project-18.1.5.src.tar.xz 132061072 BLAKE2B bfdd987d5992a4d94ae8b14792df3be67a8e8fdf1daef9834cdaa2132df1b7ddb72ba0aabbb34b171a73d0f3b2b0f61e7160f0b278a67fd4850e3f501fd21531 SHA512 9e2f1e251b3754a24a0b39676d78c98692887c05c85cf0bee50fd44d9635290019930d4dabd1ff4ba3c9c1067e7e0e09aa1bbcd3d76687f919a1d44ba85eee20
+DIST llvm-project-18.1.5.src.tar.xz.sig 566 BLAKE2B ad935db71ec3b9fc885d696af440764a71fe7cafc5b3ca0b25a2963100d9cb3790392daebcac1341716c95a8da3c6243f5a8667fea1ed18b93fc8baa495414c9 SHA512 3cbca1059d940f3bd7bd72d68f2828039b66304980cc5f43769649e5494fc7d71117bf8aba5cc7f7a2ffca52f60ba30fadf3b28f984fd49ddb14300e30b45237
+DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c68c8e441a126cf8e89e55a965f3b9e3a629a37d5743fd7859a60bedaddf27ff2da1e0f08c81806871ef542cb7c3f40b23b22cf5 SHA512 89ec276aa41bb2d76cfc3a72d8e728a9ce9176e02c085338b704790524fe329904cf311381805814faa8a6c79637620c01627bf122a51f89e0f3adb47e5df34c
+DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
+DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
+DIST llvm-project-a7ee81e8279e0bf6e05617a4a638e5f2f8e45022.tar.gz 210384692 BLAKE2B 28b85b08a42c173e1c3bf530483112b1629c7e6684a83a016fbe9f132774f7b864d793581873a6529defeabb4479ad9a3d7c025b781b2fa4952c239b6d567b11 SHA512 1d593818347452f96611a62fa3aa22ce4355a4ee5d5dcfcb54a286a1aa980e9531d5fb6cbee3b0ee5943c6d0f4e2ba2245e13262fe7859e5b114f9c5d5cf1417
EBUILD compiler-rt-15.0.7.ebuild 4238 BLAKE2B 22d56dbe24c92400bf58942390b06af70fddba89d8fecc9b85162dd7a41c6ee592eaaf883f5ad483f65f74fabccc28f94528688410ee36e2d5279efcc6066de0 SHA512 ca49d23def580d4dcfc4058768eeb9deb6e59ea44575da272d1c142fffe0bf4e3d3c7c9fa6182ab348a3aab11879af116a549cb1a3a03b27b4bf4151cf892aaa
EBUILD compiler-rt-16.0.6-r4.ebuild 5226 BLAKE2B 7d2d76d79ce49f3d175de87fa982439ceade80787a4f4f96cbda9a0e7c161e89fc49646908e32fd35ed3629956ed0ff79ff2f74754a705264f2d6e2f02f831cb SHA512 14ba6b2644e4b0bcab31e686d395b859eab9ee8ba7adb2242e4fd80d07290cff1243cd644ee8fec53f536dd13d150a16761255ff938ed0c6e717f26165e93945
EBUILD compiler-rt-16.0.6.ebuild 5198 BLAKE2B 2fe2310703d44d330d97b1fa1b407d99898070604037be31ca762fe65043e1d3d1e046298dc74f3d0cbb3493f985661e362b217170cbe1bf74a47dddfe8987ca SHA512 cc9aabc22f689bfc677ceb74793441674aeca2586a28ff96b812af4822d1b8b5a4147484e41f0bf95ae995488d3e8ee77684fd684b9dab8ade4f1fa57e80c709
EBUILD compiler-rt-17.0.6.ebuild 5218 BLAKE2B 3f488320228fd2a3d1caed790e8e21c7c363769c4d8b912fd5a964b4e802e1b58b297336c527b451edb74ff42c4bdd236795210c4f225ca98a6980fed95d6771 SHA512 abbe2f679a1af7c012ecae32b57b244f7ad84a5d44151a4b7ad799524061f8b65504bd6aa169a91d1a16b878845f40b47e4a1f0253a3ff9ccbe8dbb736db1fb1
-EBUILD compiler-rt-18.1.4.ebuild 4971 BLAKE2B 74a850ae9ab5c05d0806f6fb6403b7b54141cb0fe43b0e2bfca44d0eb7a25579d390988082fc277b21a66e3b978a37ad9ed1c39ace261aeabf1ab230427e5f3e SHA512 23283ed4a7b7704a4237ec2628633ce81554d501fae10391b90e1983dfb64d86c9dc0d7cbe8d3ae2525591377fac783ae6c1dae8093596ad2ac7d6dda911433b
-EBUILD compiler-rt-19.0.0.9999.ebuild 4906 BLAKE2B b07f8f1b33ed63ac9cb5809a996925c03389a0f122604f80c4f6922e7c7f3fa23e57003a334ce803eb22a7b898881f508647607d5444b050c04010d180be9f8b SHA512 063c7d176df9d6608cfc9a7d76f249595b5f23dbec53716e34586b79aa22fc585cdd6a0a1a294f7db4c1d9e1dd00223465f7caa64037fed42f8371f49fffaa81
-EBUILD compiler-rt-19.0.0_pre20240410.ebuild 4868 BLAKE2B 479ff19239f03c3bcb25cde41a2cb5c6a9a8569e376fc08a2a5affd62bc766a85d68ea080570a373d6f3258c0b1f96211bbe552e82255186ad105fca88f597a0 SHA512 4e19eaf37ca1d3d140be8a4d2bad0f3d69d62c0884d131aac9b3ee4bc58a5e1dd4ca0540cc1153cc293c9bd9521bea1688f7f2b298ca8a24c4c0aedc20d3d753
-EBUILD compiler-rt-19.0.0_pre20240420.ebuild 4868 BLAKE2B 479ff19239f03c3bcb25cde41a2cb5c6a9a8569e376fc08a2a5affd62bc766a85d68ea080570a373d6f3258c0b1f96211bbe552e82255186ad105fca88f597a0 SHA512 4e19eaf37ca1d3d140be8a4d2bad0f3d69d62c0884d131aac9b3ee4bc58a5e1dd4ca0540cc1153cc293c9bd9521bea1688f7f2b298ca8a24c4c0aedc20d3d753
-EBUILD compiler-rt-19.0.0_pre20240427.ebuild 4906 BLAKE2B b07f8f1b33ed63ac9cb5809a996925c03389a0f122604f80c4f6922e7c7f3fa23e57003a334ce803eb22a7b898881f508647607d5444b050c04010d180be9f8b SHA512 063c7d176df9d6608cfc9a7d76f249595b5f23dbec53716e34586b79aa22fc585cdd6a0a1a294f7db4c1d9e1dd00223465f7caa64037fed42f8371f49fffaa81
+EBUILD compiler-rt-18.1.5.ebuild 4972 BLAKE2B 57c3b46220e996bb5f4bf22b557b6891a311ba6995ba5e0b59dc1f6913a704a6f44e27d89eeb8fc88ce22dc38b4b16ee8efead72e2728d31088d487619625148 SHA512 024629f4752e45677c96ab0f367ef02f6b64b0229fc6bca991d698fef2a2e4d196cb2e51293562e838d14b605cf784e0bf99e69c7b48877c06c562e8bc70ab37
+EBUILD compiler-rt-18.1.6.ebuild 4972 BLAKE2B 57c3b46220e996bb5f4bf22b557b6891a311ba6995ba5e0b59dc1f6913a704a6f44e27d89eeb8fc88ce22dc38b4b16ee8efead72e2728d31088d487619625148 SHA512 024629f4752e45677c96ab0f367ef02f6b64b0229fc6bca991d698fef2a2e4d196cb2e51293562e838d14b605cf784e0bf99e69c7b48877c06c562e8bc70ab37
+EBUILD compiler-rt-19.0.0.9999.ebuild 4907 BLAKE2B fc7c7f546021b87d3ddfc7ece44df1b743df77044c5537f73530f612f17ee0db1281733066c22510c5fe7caba2d493d6ec2753ab7256875068f412f7eca586c4 SHA512 5bba47a9926a8cc5efa7e1d82573feed2b8d97c15e1dd0064bb85398723011f173352e89af88176aa6eab81cbef2d4d7dca54dc64afd1a4673a4b233775299a2
+EBUILD compiler-rt-19.0.0_pre20240509.ebuild 4907 BLAKE2B fc7c7f546021b87d3ddfc7ece44df1b743df77044c5537f73530f612f17ee0db1281733066c22510c5fe7caba2d493d6ec2753ab7256875068f412f7eca586c4 SHA512 5bba47a9926a8cc5efa7e1d82573feed2b8d97c15e1dd0064bb85398723011f173352e89af88176aa6eab81cbef2d4d7dca54dc64afd1a4673a4b233775299a2
+EBUILD compiler-rt-19.0.0_pre20240518.ebuild 4907 BLAKE2B fc7c7f546021b87d3ddfc7ece44df1b743df77044c5537f73530f612f17ee0db1281733066c22510c5fe7caba2d493d6ec2753ab7256875068f412f7eca586c4 SHA512 5bba47a9926a8cc5efa7e1d82573feed2b8d97c15e1dd0064bb85398723011f173352e89af88176aa6eab81cbef2d4d7dca54dc64afd1a4673a4b233775299a2
MISC metadata.xml 416 BLAKE2B 79a58249c94b605ba57f346c4e05b43853cf6cfb8bb65a4f4e3c44039cccfdb83dd31bfaaaf398bcbdc393efabdfc7ed186fe775976c46227e74decf2c8f4fb2 SHA512 ce30c79a575e5933effb1fec36f9a4ef02d9f97f312feb39c55a88cbda9a1bae1d7af2ec4ad5f66212cbb2cdbfb26f1a436689f16f410153c9d65eb010264c48
diff --git a/sys-libs/compiler-rt/compiler-rt-18.1.4.ebuild b/sys-libs/compiler-rt/compiler-rt-18.1.5.ebuild
index e2a452caad61..2a724ca7dd8c 100644
--- a/sys-libs/compiler-rt/compiler-rt-18.1.4.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-18.1.5.ebuild
@@ -90,7 +90,7 @@ src_configure() {
elif test_compiler "${nolib_flags[@]}" -nostartfiles; then
# Avoiding -nostartfiles earlier on for bug #862540,
# and set available entry symbol for bug #862798.
- nolib_flags+=( -nostartfiles -emain )
+ nolib_flags+=( -nostartfiles -e main )
local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
diff --git a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240410.ebuild b/sys-libs/compiler-rt/compiler-rt-18.1.6.ebuild
index 75ff3c155c03..2a724ca7dd8c 100644
--- a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240410.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-18.1.6.ebuild
@@ -12,7 +12,8 @@ HOMEPAGE="https://llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="${LLVM_MAJOR}"
-IUSE="+abi_x86_32 abi_x86_64 +clang +debug test"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos"
+IUSE="+abi_x86_32 abi_x86_64 +clang debug test"
RESTRICT="!test? ( test ) !clang? ( test )"
DEPEND="
@@ -89,7 +90,7 @@ src_configure() {
elif test_compiler "${nolib_flags[@]}" -nostartfiles; then
# Avoiding -nostartfiles earlier on for bug #862540,
# and set available entry symbol for bug #862798.
- nolib_flags+=( -nostartfiles -emain )
+ nolib_flags+=( -nostartfiles -e main )
local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
diff --git a/sys-libs/compiler-rt/compiler-rt-19.0.0.9999.ebuild b/sys-libs/compiler-rt/compiler-rt-19.0.0.9999.ebuild
index 46de84f27ba9..ec82b06b9c24 100644
--- a/sys-libs/compiler-rt/compiler-rt-19.0.0.9999.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-19.0.0.9999.ebuild
@@ -89,7 +89,7 @@ src_configure() {
elif test_compiler "${nolib_flags[@]}" -nostartfiles; then
# Avoiding -nostartfiles earlier on for bug #862540,
# and set available entry symbol for bug #862798.
- nolib_flags+=( -nostartfiles -emain )
+ nolib_flags+=( -nostartfiles -e main )
local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
diff --git a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240427.ebuild b/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240509.ebuild
index 46de84f27ba9..ec82b06b9c24 100644
--- a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240427.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240509.ebuild
@@ -89,7 +89,7 @@ src_configure() {
elif test_compiler "${nolib_flags[@]}" -nostartfiles; then
# Avoiding -nostartfiles earlier on for bug #862540,
# and set available entry symbol for bug #862798.
- nolib_flags+=( -nostartfiles -emain )
+ nolib_flags+=( -nostartfiles -e main )
local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
diff --git a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240420.ebuild b/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240518.ebuild
index 75ff3c155c03..ec82b06b9c24 100644
--- a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240420.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240518.ebuild
@@ -89,7 +89,7 @@ src_configure() {
elif test_compiler "${nolib_flags[@]}" -nostartfiles; then
# Avoiding -nostartfiles earlier on for bug #862540,
# and set available entry symbol for bug #862798.
- nolib_flags+=( -nostartfiles -emain )
+ nolib_flags+=( -nostartfiles -e main )
local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}"
@@ -100,6 +100,7 @@ src_configure() {
-DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${LLVM_MAJOR}"
-DCOMPILER_RT_INCLUDE_TESTS=$(usex test)
+ -DCOMPILER_RT_BUILD_CTX_PROFILE=OFF
-DCOMPILER_RT_BUILD_LIBFUZZER=OFF
-DCOMPILER_RT_BUILD_MEMPROF=OFF
-DCOMPILER_RT_BUILD_ORC=OFF
diff --git a/sys-libs/cracklib/Manifest b/sys-libs/cracklib/Manifest
index 54e90d032926..1104bbd3b7d4 100644
--- a/sys-libs/cracklib/Manifest
+++ b/sys-libs/cracklib/Manifest
@@ -1,3 +1,4 @@
+AUX cracklib-2.9.11-py3.12-tests.patch 3388 BLAKE2B af1ad743eea771cbd3465aa0c5cc3ba9832bf3f3aab0c6fc229f65c14f4e1b056d2655e0af4d02ff0edc033e79f7f7a884fec4bc4e579dd13fb7cad0bf4bf91d SHA512 c8b0e532af7c518d5c87ecc161ae2fa9380f2b5ab61b658a839d1629f7441f8079ca00979332825e195fc5ae7c194bf03a9dac3852a1f5de94dff2c97eb989b6
DIST cracklib-2.9.11.tar.xz 461116 BLAKE2B 46b499e465c1c268b772781a9c8ce573a5167ae2e0ac919b403acdb9a14c35140dfb53909eef6e41600e26c2f87d905b3d6d05380c66f053d091765b58a264f4 SHA512 c32e509f757344a1f0b7032ad3b6dc47a8759852a94e511c92073d85bce55f45d48c389d9eb34c993e1d61ad5c1542150672f3e8bc147148ebbb04d3319a2409
-EBUILD cracklib-2.9.11.ebuild 2965 BLAKE2B 45d4ce00f9865292088adc3545c2510da4c5fa8d4aea3a9fbe3a03a8a1cdb1ee8d05b0146800dd504d6c6129d40d805d5d1015bcc51d6e87fba20c372103644f SHA512 15b3125d572877c095412a1c73842296c7e5244adc1bdc5fe35dff7e7764f865510b8971f14db9ce46bee02fffca4ccc37332ded7acef71967ec84638c6aee12
+EBUILD cracklib-2.9.11.ebuild 3033 BLAKE2B 14aa0a6000c604e0e16ffe828d80bc539452dba55982c09ca17e1dee33675acfa151562a6ef0eb66f1df3bef23014a68dbd088e92a3eb31cda13359d8d915fa6 SHA512 6a26776f7c509d9110ed6cb6e3222863efae7808ea22b8c78aec7e7a137fc8e78d2350349d7b649d4f1b1a3ce119993ceef2bd63a43806f71dedbd3da91df582
MISC metadata.xml 385 BLAKE2B f81e1ac44f5a4c3f647473385363eed564accca3b62ecde3cb35fab14112af1ceb2a25dc2816fc096aee9c3ed15006252f32491583861689ed70d49218684360 SHA512 6d9908f12c310ef22feeae2216236f9b632dc5204916fbb5693cc53bb58e592dc44f49c45d2c8bc22addd69cc5e4e63df463a23299d09a637f4f0f7379e7b796
diff --git a/sys-libs/cracklib/cracklib-2.9.11.ebuild b/sys-libs/cracklib/cracklib-2.9.11.ebuild
index 8be12c0d3441..185419828d79 100644
--- a/sys-libs/cracklib/cracklib-2.9.11.ebuild
+++ b/sys-libs/cracklib/cracklib-2.9.11.ebuild
@@ -1,13 +1,13 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Note: ideally bump with sys-apps/cracklib-words
-
+DISTUTILS_EXT=1
DISTUTILS_OPTIONAL=1
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9..11} )
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1 libtool multilib-minimal usr-ldscript
MY_P=${P/_}
@@ -35,6 +35,10 @@ BDEPEND="
python? ( ${DISTUTILS_DEPS} )
"
+PATCHES=(
+ "${FILESDIR}"/${P}-py3.12-tests.patch
+)
+
distutils_enable_tests unittest
pkg_setup() {
diff --git a/sys-libs/cracklib/files/cracklib-2.9.11-py3.12-tests.patch b/sys-libs/cracklib/files/cracklib-2.9.11-py3.12-tests.patch
new file mode 100644
index 000000000000..f0e1cd29a005
--- /dev/null
+++ b/sys-libs/cracklib/files/cracklib-2.9.11-py3.12-tests.patch
@@ -0,0 +1,80 @@
+https://github.com/cracklib/cracklib/commit/a77a392272df3677f71c68e81fcdad1bc722732e
+
+From a77a392272df3677f71c68e81fcdad1bc722732e Mon Sep 17 00:00:00 2001
+From: Olivier Gayot <olivier.gayot@canonical.com>
+Date: Thu, 30 Nov 2023 18:36:17 +0100
+Subject: [PATCH] Fix test-suite so it can run with Python 3.12
+
+The test suite still used the obsolete assertEquals() function which was
+a deprecated alias for assertEqual() (without the s) and got dropped
+from Python 3.12.
+
+Use the replacement instead so the test-suite can run with Python 3.12.
+
+Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
+--- a/python/test_cracklib.py
++++ b/python/test_cracklib.py
+@@ -69,52 +69,52 @@ def test_simple(self):
+ def test_simple_lower(self):
+ for passwd in ['t' * i for i in range(
+ cracklib.MIN_LENGTH - cracklib.LOW_CREDIT)]:
+- self.assertEquals(
++ self.assertEqual(
+ 1, cracklib.simple(passwd),
+ 'password {0} should be detected as too simple'.format(
+ passwd))
+- self.assertEquals(0, cracklib.simple(
++ self.assertEqual(0, cracklib.simple(
+ 't' * (cracklib.MIN_LENGTH - cracklib.LOW_CREDIT)))
+
+ def test_simple_upper(self):
+ for passwd in ['T' * i for i in range(
+ cracklib.MIN_LENGTH - cracklib.UP_CREDIT)]:
+- self.assertEquals(
++ self.assertEqual(
+ 1, cracklib.simple(passwd),
+ 'password {0} should be detected as too simple'.format(
+ passwd))
+- self.assertEquals(0, cracklib.simple(
++ self.assertEqual(0, cracklib.simple(
+ 'T' * (cracklib.MIN_LENGTH - cracklib.UP_CREDIT)))
+
+ def test_simple_digit(self):
+ for passwd in ['1' * i for i in range(
+ cracklib.MIN_LENGTH - cracklib.DIG_CREDIT)]:
+- self.assertEquals(
++ self.assertEqual(
+ 1, cracklib.simple(passwd),
+ 'password {0} should be detected as too simple'.format(
+ passwd))
+- self.assertEquals(0, cracklib.simple(
++ self.assertEqual(0, cracklib.simple(
+ '1' * (cracklib.MIN_LENGTH - cracklib.DIG_CREDIT)))
+
+ def test_simple_other(self):
+ for passwd in ['#' * i for i in range(
+ cracklib.MIN_LENGTH - cracklib.OTH_CREDIT)]:
+- self.assertEquals(
++ self.assertEqual(
+ 1, cracklib.simple(passwd),
+ 'password {0} should be detected as too simple'.format(
+ passwd))
+- self.assertEquals(0, cracklib.simple(
++ self.assertEqual(0, cracklib.simple(
+ '#' * (cracklib.MIN_LENGTH - cracklib.OTH_CREDIT)))
+
+ def test_simple_combinations(self):
+ testset = '#a' * (cracklib.MIN_LENGTH // 2)
+ for passwd in [testset[:i] for i in range(
+ cracklib.MIN_LENGTH - cracklib.LOW_CREDIT - cracklib.OTH_CREDIT)]:
+- self.assertEquals(
++ self.assertEqual(
+ 1, cracklib.simple(passwd),
+ 'password {0} should be detected as too simple'.format(
+ passwd))
+- self.assertEquals(0, cracklib.simple(
++ self.assertEqual(0, cracklib.simple(
+ testset[:(cracklib.MIN_LENGTH - cracklib.LOW_CREDIT -
+ cracklib.OTH_CREDIT)]))
+
+
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index f7dcd3396640..4297165118ab 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -30,11 +30,9 @@ DIST glibc-2.36-patches-10.tar.xz 118268 BLAKE2B 3d1bdb6c1a9e10ba78a344ca8940f68
DIST glibc-2.36.tar.xz 18610836 BLAKE2B f8375e084043f032609e66fd98c234249df57a595c59672acb1bb8c69aed64d339d526611553449492b097cda900ad1d9bae8873d7f5932b10a9a0d8c9210c55 SHA512 9ea0bbda32f83a85b7da0c34f169607fb8a102f0a11a914e6bf531be47d1bef4f5307128286cffa1e2dc5879f0e6ccaef527dd353486883fa332a0b44bde8b3e
DIST glibc-2.37-patches-12.tar.xz 83716 BLAKE2B 123951d94dad6c22150c4ef2299bcaafc080322d6eeb58b49b0525a7f5c6867e99e96cd5c065578632d9a73b5527e2b2742bc29162da487894ecea6aff75df2e SHA512 b53c06e157b23f5fae1cd15eb90fdbf3076c79f295a687bdfd285689f94417267f167ff2d6a55c4d3c3b2e08dd6406c36fed4a5fee33378dd69976c1102c01a2
DIST glibc-2.37.tar.xz 18674604 BLAKE2B 8139cd977b2ed3bfdbde5ffb1cda8f759763dbb83071167272fef798cfbdc0d17cfd1ec893d126c52c91511b7961f3ad12eed34534b99412dfa04a1cdd5b4ea3 SHA512 4fc5932f206bb1b8b54828a28af1a681616b838bbab60c81c82155f3629cbfe1301d271af65511ed917f4c6949a025429221fe6035753282f15346919f15b90c
-DIST glibc-2.38-patches-10.tar.xz 60792 BLAKE2B e228568f9e9cfa719ee9f2f91d220efa53e4eba617377fdf37bf7381b9f7c43036dfe62dd284b4228e9a99d41223ed0416ed058407a630b84064962518cba90b SHA512 573661299d75b63b7e2f771e9032193492e762e64cbb495b42bb7ad1021532f54f19d829a721e8070c79b2ad5edef077584cc4c76896d951cc93275592cf255c
-DIST glibc-2.38-patches-12.tar.xz 83568 BLAKE2B 051f32976d82cfe510084a94a4a40f328531eab8601454685c906405a96bb92527780378ccf6bfa42ab9cbadc405545d3bd28d0c4a15927d1a1c18a7a23c513f SHA512 a66d567680f5b34e35d1e4c5c2a4a9b0af67450cc0ea4a03074ec66953d79e4d0e9e921ca44717b3ca45f5910a8cdb033818bc111efd93b41666610cc8478b67
DIST glibc-2.38-patches-13.tar.xz 92708 BLAKE2B b2f05a793c92ea0b7901d2124fcd968fa846fdf687f8cbdbc17795c33fae2d538133fae66d575c5b98a7a05a29f9f816e7ecd45f3be5ed10ef65adbf92c7fc4d SHA512 24e45a88fa7676ef22a7e2bb864dff27262f69900c4ef76d21c6fee498d728949b6f5d03dd094d1774a66a8a47b779bf4b16ee31e5306bcdb55cedcc0a1c5e9f
DIST glibc-2.38.tar.xz 18913712 BLAKE2B f9b039f0ef98a7dd8e1cba228ed10286b9e4fbe4dd89af4d26fa5c4e4cf266f19c2746b44d797ce54739d86499e74cf334aaf311bcf6e30120fd7748453e653f SHA512 a6dd5e42dcd63d58e2820c783522c8c895890b6e8c8e6c83b025553de0cc77cdf227e7044e431ead98c89c68a9ce4dd63509b47e647775fb2075f011849c1900
-DIST glibc-2.39-patches-4.tar.xz 77228 BLAKE2B 64ead3c5f20092cde8ccd91692e556e412cfbe8ec22917db29a752ac9d8df2b1bcd20ce288253790ce391dcf82fcfec1f2a0895ae7d17842d45246d8d8881a6a SHA512 a84b76131a5c7c5c4d242dbefc124932a24177095a6447c715f9f8654cdd83190434d492c7ae3bf47b6e6eb717aae046b76647d653854add3d32e9e4b9fbefbe
+DIST glibc-2.39-patches-6.tar.xz 87600 BLAKE2B 7bb24a16fb64ed07a7477dad075dfedd59ab8d0d4ab3032273684405fd690a863a84fe1f859a07faab3ccd4663ba4f896ca37303cf2a4658ab1662732c50e860 SHA512 d48de19e9e33ef334cdbd63b6ceaddff12424477193f6bb0876105e193f2aba44cb48c33aebc47546db76dc229849cc22f884a68971bbc23994769b64bcd345c
DIST glibc-2.39.tar.xz 18520988 BLAKE2B 9d98459a2d58401e07c081e0d841935b23998da75a7eb5a7ebd23a1f9ebab99dee623fe166397c1b6c926960c570f62dbca5cb3b5ce84a918adff6b7a15e16bb SHA512 818f58172a52815b4338ea9f2a69ecaa3335492b9f8f64cbf8afb24c0d737982341968ecd79631cae3d3074ab0ae4bc6056fc4ba3ffe790849dc374835cd57e2
DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238
DIST glibc-systemd-20210814.tar.gz 1469 BLAKE2B 10fa7bcb46d4fdce9c0ab353cbd30871e9b09a347a13a9c9a3b5777f931aa3c826c158d2e49532c604d4a834f2fab4089b67495fb88d0398945dc50d45ad9ef1 SHA512 5346a9ea459a1e6ccf665389f2a294de1e16f1e3e05cdf07e3dd99ed0e4f6f8b52cc333d4bff3c75ac90ab6ce70cd4ab2b3e126f920ce7979abd6dda56315efc
@@ -42,17 +40,15 @@ DIST locale-gen-2.00.tar.gz 7738 BLAKE2B cde6de5ba3400aea24d0d5f1b79471f89f09fb7
DIST locale-gen-2.10.tar.gz 7747 BLAKE2B 49f569c5ae5260fca128503bc6f22d6f6f1cda817920c41fdadadf1527bbb4f3eb161f79fa729830666a4673e9092f99f4685ec8fcac8ddea0b8242bca9c1f4f SHA512 e350e60d458d67638e3090711fca05af6fafac06c51b97648244549f8a0621dab7543f09dc7ad4c62392f13bdae8e5875dc6d0b6c3d83efc29d116bc2eef92db
DIST locale-gen-2.22.tar.gz 7971 BLAKE2B 2dc66fa69bf51799d0c34459b654fba6998b80a7e322e9b670036c967e269ad921f50195e6e34c4a83c1f0bad191fd5aa3f37defb82271b73acbca07b7e49d08 SHA512 9798b10dbbc792345a7b7a121dec5f4bba9839a8aec010f01a09f3402fd5bf2376f79e03a6a19bc357010db780037a8811c381136ce19be1f1370374906dff38
DIST locale-gen-2.23.tar.gz 7977 BLAKE2B bf2cc1fa05828a9133789133ce2d910662f1b5979269869cd76dac45831c45917700fc81357441fc7691af23196c6a6c3a28bb4440ceb6a5a3b17dbdc55c2bcc SHA512 f6b3daf3e2f10bc2f68626d8e7edc0f27eb0fe16bfe8840904a1b13d8fc76318d9f83277ee7fcb7a6db177413ba8a2cda94493e56d01df3a20ca37fed64e469c
-EBUILD glibc-2.19-r3.ebuild 38599 BLAKE2B 302822c8e111dc22d6c418c48e11d2859108d2c740302000da3e9ccc2225981795f9e9e02b0f7cb24dd19261dac97f6c70688ebf14298c0330c8c5de2f249a34 SHA512 20e140c2135165f56d0b4e85dec7e0d8a8d80190f3badb6618f36c43928d8aadfc4ba3585ec4ace0a47f05b0f9b58671c653a344c61d7c448c17d5c397d0bb7c
-EBUILD glibc-2.31-r7.ebuild 44540 BLAKE2B e58942849756f670ab7d352024b78e80289bae9b80677602793060492f4e844d873df66f2d5af5a5455e5fbd28b16489185107d932fa9a162dca10950c204943 SHA512 0480ca977f7da49b0a116a3d2d20a6af2034eb7397afcb52474bfc5fd79da2d9b0bbc703f90d970b1abcf09e6ebb95d0c9072f59b84b04209742d84d5e1469b0
-EBUILD glibc-2.32-r8.ebuild 44898 BLAKE2B 609506ffe5fbb5729b82658fd2171a08833e5dbf216a3d3d0b3972f6dfe7b4edf6c8312d06e210c80bc86726f828607ac6d2aeae2d81bb8fce2a3cbab84680a2 SHA512 50f6169aea07f624ec2ef10ff495a2af6774a12650d750f302879f7b696a650fcfa13e62abf2f78e0bee9dd883132ea78fc2574a4d7438cb02560483924c2bd5
-EBUILD glibc-2.33-r14.ebuild 48434 BLAKE2B 21d94337d2587488292d5f58d5fb1c957878cae1dccb8a5bb922add747f4da8e2423eed9c5df8847d8cf3c8ac97f9d4a3ce3d85464479abde9b3e7e3d9d0265d SHA512 54b98774ca35555359ca4150358dfcfbffc358c831fc5ee3ea6079613dd2bd97ec53350d996f97bc85eeca85b552564f4b80712fbcccf69ab3b3742104a44d7d
-EBUILD glibc-2.34-r14.ebuild 49649 BLAKE2B 5d9b2af3ca240608fc4dc7e880bd1f6dc1300f0081ef7b447b9ddecec31669208aefed53806b32d4e8ee4bfd49c7c6bd8e60b91be6ba8e76f9a1178073e84405 SHA512 8e0c859169dd4bf238b9cfa9db7a01399d052a60730f5434f1f24fe50642a8d45add7810a5471f79f7edc574ea96d79866ab3b4cae94d55f1d4090b99de4de41
-EBUILD glibc-2.35-r11.ebuild 50190 BLAKE2B 29f06ac1b489b7c75e022f5044d723f05a23ed44e5f7c472ccaba6a5a427bf154574deb2930730b270a6c19ae9d2fa4f3d67e3a69fdf2b1969d4e1dab9325284 SHA512 0b978d29feeabef05fce8b8d15caa9c443afbfa1ec4d23cb1bcbc0bbcea15682da17791930b2a4549c1160a8c8b9fe2ee5a896b19db412ee109a3f1104af5656
-EBUILD glibc-2.36-r8.ebuild 52468 BLAKE2B 005a5537d1cbcc1ba128174c06aa9fe797b2f1a86c1f21b174ed5d41807e869b96a311a4f9d9c1d471f9afd24c49b0ef976f3015b13de5fea7f65d4ec9a7edc9 SHA512 a0b65b2736c7a649c3b3b2b41d8b47264d60a4074dfa4f3eb93790b26786d2cdb91667d9c49f3ce10ba987c8b5d0e4b541e426e096f2aa296fe9b55e391a3296
-EBUILD glibc-2.37-r10.ebuild 52997 BLAKE2B 5302881267c59582fbdb775dd789597c199461735a92cf91d2609e1827b80fdfd5514d836867a917895ab2f0c1ea61d4a899321ae490e68af33c17456b20c164 SHA512 c0010d3a73918e95ab9cfc50c3cf452b528a028e78a4522659df3be3f8f753094bd2ba5542d539a83a76d51608d563054a3560f25ee0a862757730e1cd18adad
-EBUILD glibc-2.38-r10.ebuild 54475 BLAKE2B cc0c21bdcc427c6f23ca49595790b3931afd6c511dd60396c4fbff7d2ab709834e83ca223083b698c8b197d8d66f833c7d56c568fd21e38081b0a085a166ccbd SHA512 f00ceffc4be93abc0c56bc28a794f7704d7a65b63e53b9e39197f197ac98a648a5e7e0a56473b050b882c12e5b81542855ac80d421f9add9cf7fffd3fc671fb8
-EBUILD glibc-2.38-r12.ebuild 54709 BLAKE2B b56f9341cf1cef50a13a5a342e5dd39f459de7772707a9674d3938935edaa85946cc7d208a3475e10bacb6825cc1638fef416e395b3bf1571597338b71fc8583 SHA512 fafc8e138643f46983dfe3de19522ac2b93f5264fcf27e78d7abdfdadbe70d30f2a1b070baccb2581c0851b6416804f5f4a8ec5ea6898f2a5c9bb93e565fb169
-EBUILD glibc-2.38-r13.ebuild 54709 BLAKE2B 38d901830041438f392acef9482c11daf4ee1d75c49d9083358e835289622ae5d0dd2125bddf2d8e624eeae7efff44e3a7a4deabab4675b536cb60ac39f47a88 SHA512 e41da34f0d42b4835a534abb468b052c8e5c25d83c10989cc170234840495b7cfbeed6efe696dd65244f6ae265ef6e480fc518f7b9237039070b1d9fe1a3c91c
-EBUILD glibc-2.39-r4.ebuild 54531 BLAKE2B 4116a8c5c54095e1e4465204638d782c37bb26896be6eda9b6f0de9e14e9637f12cf1ed11d732b18944ea734099a29f986bb67add7c47dfba7195485a6e4397f SHA512 62b3db68cb335d4e393b8ccbf01946efb0c180b365c0cd0842ad28a5aee854bf6b1ff65cb8c4d3564d3ed544819ce1dba212fe87fa170702b24d183d35046baf
-EBUILD glibc-9999.ebuild 54532 BLAKE2B cde70b41e08a67cf51a33b052b6a444a3b86235c5844da90653eca4b91a7c1e3022bb837587c679e4fe29e2ac0a624d59117c4446b6374b15358716f159fd5ee SHA512 0a78b337f3c32fec274c8db0cdb0b0258d5ddcf284b547f41b1c02863c393c4a0ea339f556b164da82e1db08d832c2bf85449f2a7e7ade35ae9a93d9b9c38f81
+EBUILD glibc-2.19-r3.ebuild 38603 BLAKE2B 279300b875da362375ee97c0cc2695010c16364de464036d428575698abb29721a627584e2df74b6f5eafb574274d8aef0cc892211ea6c65e61d0b09c133ab1e SHA512 521cff08cd41072d5bebe85473a72b047de0c8884eb499a541646beddcde1fdd7a667dc1d65256c05da3fadfdca95adf2cd6c92362fa015ea0876733e4af7192
+EBUILD glibc-2.31-r7.ebuild 44544 BLAKE2B c83058ac77d10f70f75498fcc970fa607dd3c5882a4fe66b64294759361ce578eda01f97bd134bdbea9a879789319e7d265536e212ffd3d490e30a65af416033 SHA512 6a7835964662a8ec17b31998f246df87a1b425ca9186bedf34beb2f822b50766a3ac3bf9bd85ec823838bffcfab90b8646d70c0c071dcdd342acd6ad7948c51d
+EBUILD glibc-2.32-r8.ebuild 44902 BLAKE2B af327dd4cdfe104e3d74e9cd5b2b04df4588537a81a238f627ae7e06acabaf3c03efff0788e8daf8bdc5d44bcd25619b079f76c5a9a90a3d234aeb8f5a5c469c SHA512 34be9a3308f2157c0608a1eb396dcc30c72472d09196c0125542d9879356d45c44cc6c4b08f2b08433780cfa1f12880a22806ee76251c0db5b04fdf529cc7b19
+EBUILD glibc-2.33-r14.ebuild 48438 BLAKE2B 23ede2168d245fc1380744fe729036b4e926b4aba5265c8d0161da1d9f0789daa7949197b94cf89e3df3387f7bfbce374364812879c8a0d4c0c727817754039a SHA512 f87dd4daa941d3e1b149f62928b66647feee2ed5bb6efff14d1eeaa681734affdbf2f150217115f915dcf715c28b94874800ccd53d50c105c2100e5f1018b4eb
+EBUILD glibc-2.34-r14.ebuild 49653 BLAKE2B ed23d0c7ba543544bee2888ec6538e4777b5dd745a9cc93becb9f7f3d91cbe6bff3a63834f6b1ac6802635540f5497332457f8c23facaa2f98866758d9ca42ba SHA512 b50e4478c8ee4d3d49f0771ff8a10bea1d49a56483c32c438b7ae9949d35db36b9c2003a2ea166b627ac4b4e15c38382af83762c84a73357be2110fba970f4ea
+EBUILD glibc-2.35-r11.ebuild 50194 BLAKE2B d1fb2a06d6dc89505c23d79bfb2af4eba67d87483ef059400229f42d6e8343a03ff63821ea3ebd7f65345823392003f18be1641e16ae4ab6960dc0a126b04a31 SHA512 82e8a52f1b870977ac00f440a3b3d64e4df776dd8bc866c5074abfd6c7424ea85b871d9a46ca726f1539b96a14dd92fb7aa949b42619e58a974481785a94cd06
+EBUILD glibc-2.36-r8.ebuild 52472 BLAKE2B aabb6ac48125f43726e4aa68ca9f82f73e348ec1341dc16dce2fa7c27c1565daf96ec9ca5be64ced1668543698d3870e9dc0f08d1eb45f6f7923e13a8e29c429 SHA512 40bd2c57454756bc4187f45b81eb15adf2f6e831147d324e5efa47e64c33133a35bd0a0fabbe2d379c64d715ec4cc6b3e32ee76a6975fb0d0914831cbf0a2cf1
+EBUILD glibc-2.37-r10.ebuild 53001 BLAKE2B cd9831be3a13f887777a31604d2f07182f1059ad20604c71dde40b312e665ed9e356b1196e6a0b3d12e30b4a4d8769281b273e3f465449d99d6648256acfebcf SHA512 dab7115f2249248d43003bfdd107bc1231315f14a2f1180bb6fafcb862e3558c75d13a3702fc38d57b87bb58f51c794aa8093fb29a529105b8e87c3a4ee5d71c
+EBUILD glibc-2.38-r13.ebuild 54707 BLAKE2B f1418b6bb2a438c65520cdd3e48723a1f3d0e9845b379e54368a98a0b907a9b2a061b2796e4f98430a477632646d3eab05c673397e1d28bb2c4501c43e249371 SHA512 6506084a6b51d6dbfb485dce760018ddd45f91957f502a12f60d683f4da050685f8c9ac0441a4267767972a8a891cf790a1f3838109e99b87052a965b6a786e3
+EBUILD glibc-2.39-r6.ebuild 54643 BLAKE2B df4095eca332ecdc14c61dc1b88cd9391d0e6b4afd16ab86446434e84a352d57843d46c27252a750d9e45fabb981af13f71ae1f3fd706898709e751ccc8f0bc3 SHA512 2e33551e53069e58100f7fe1bc5a5f07a867f342be97730a81324dc524194b6db1b1c56109191af4c67a84f5bb2917fea8b48ecb55a8e5f936ab88f409087a85
+EBUILD glibc-9999.ebuild 54649 BLAKE2B 64821ba5eec780d19965a1926ded622d08a4d6727824b4d4ecc1549d47f39030d6d3b81e827f1b5eb62a417ff6c6367348a63ebe81e62656396b4bd592abc224 SHA512 8b886cbc8f797acd55787c4cbf12c1595e6b27b4eceb822a9811eeb489dbddd652b9d52b248feeeb2b1136ba2c184821def28cb92443f24aff139635dc7976c3
MISC metadata.xml 2142 BLAKE2B 765ba540eb10afccd1bade4de56f0c13ce269225500a62d1d17328194de69e7fa15d359a14eac6bfa8a36df45344db3d52f5e1811b174cf1fa2bfb95ad7760a7 SHA512 2f4a148c076a0967663d14e76b85a698ddae7093ff299b0dc95a6c3b00957c9bf73443f2bace9670eb62a45465efbcca892bb52b6aac8577acb2bc5f74a7397c
diff --git a/sys-libs/glibc/glibc-2.19-r3.ebuild b/sys-libs/glibc/glibc-2.19-r3.ebuild
index 692c93b9e4cd..4098211ce0aa 100644
--- a/sys-libs/glibc/glibc-2.19-r3.ebuild
+++ b/sys-libs/glibc/glibc-2.19-r3.ebuild
@@ -887,7 +887,7 @@ glibc_do_configure() {
# add x32 to it, gcc/glibc don't yet support x32.
#
if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then
- echo 'main(){}' > "${T}"/test.c
+ echo 'int 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-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
fi
diff --git a/sys-libs/glibc/glibc-2.31-r7.ebuild b/sys-libs/glibc/glibc-2.31-r7.ebuild
index b9666e9e7e59..2625a376cfa0 100644
--- a/sys-libs/glibc/glibc-2.31-r7.ebuild
+++ b/sys-libs/glibc/glibc-2.31-r7.ebuild
@@ -979,7 +979,7 @@ glibc_do_configure() {
# add x32 to it, gcc/glibc don't yet support x32.
#
if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then
- echo 'main(){}' > "${T}"/test.c
+ echo 'int 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
diff --git a/sys-libs/glibc/glibc-2.32-r8.ebuild b/sys-libs/glibc/glibc-2.32-r8.ebuild
index c2a242aa11ed..977997ef0840 100644
--- a/sys-libs/glibc/glibc-2.32-r8.ebuild
+++ b/sys-libs/glibc/glibc-2.32-r8.ebuild
@@ -1008,7 +1008,7 @@ glibc_do_configure() {
# add x32 to it, gcc/glibc don't yet support x32.
#
if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then
- echo 'main(){}' > "${T}"/test.c
+ echo 'int 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
diff --git a/sys-libs/glibc/glibc-2.33-r14.ebuild b/sys-libs/glibc/glibc-2.33-r14.ebuild
index c9d2f2586f87..a9012e350120 100644
--- a/sys-libs/glibc/glibc-2.33-r14.ebuild
+++ b/sys-libs/glibc/glibc-2.33-r14.ebuild
@@ -1029,7 +1029,7 @@ glibc_do_configure() {
# 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
+ echo 'int 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
diff --git a/sys-libs/glibc/glibc-2.34-r14.ebuild b/sys-libs/glibc/glibc-2.34-r14.ebuild
index e0d9f9970c12..9d92b5e3783f 100644
--- a/sys-libs/glibc/glibc-2.34-r14.ebuild
+++ b/sys-libs/glibc/glibc-2.34-r14.ebuild
@@ -1050,7 +1050,7 @@ glibc_do_configure() {
# 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
+ echo 'int 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
diff --git a/sys-libs/glibc/glibc-2.35-r11.ebuild b/sys-libs/glibc/glibc-2.35-r11.ebuild
index 57474eb0373f..86a7d2673b22 100644
--- a/sys-libs/glibc/glibc-2.35-r11.ebuild
+++ b/sys-libs/glibc/glibc-2.35-r11.ebuild
@@ -1056,7 +1056,7 @@ glibc_do_configure() {
# 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
+ echo 'int 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
diff --git a/sys-libs/glibc/glibc-2.36-r8.ebuild b/sys-libs/glibc/glibc-2.36-r8.ebuild
index fe8428a2490e..caac3e58f9b6 100644
--- a/sys-libs/glibc/glibc-2.36-r8.ebuild
+++ b/sys-libs/glibc/glibc-2.36-r8.ebuild
@@ -1086,7 +1086,7 @@ glibc_do_configure() {
# 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
+ echo 'int 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
diff --git a/sys-libs/glibc/glibc-2.37-r10.ebuild b/sys-libs/glibc/glibc-2.37-r10.ebuild
index 053cfe2b0f85..53335dbbd2f7 100644
--- a/sys-libs/glibc/glibc-2.37-r10.ebuild
+++ b/sys-libs/glibc/glibc-2.37-r10.ebuild
@@ -1097,7 +1097,7 @@ glibc_do_configure() {
# 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
+ echo 'int 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
diff --git a/sys-libs/glibc/glibc-2.38-r10.ebuild b/sys-libs/glibc/glibc-2.38-r10.ebuild
deleted file mode 100644
index a60562d5f8ce..000000000000
--- a/sys-libs/glibc/glibc-2.38-r10.ebuild
+++ /dev/null
@@ -1,1723 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc
-# Please read & adapt the page as necessary if obsolete.
-
-PYTHON_COMPAT=( python3_{10..12} )
-TMPFILES_OPTIONAL=1
-
-inherit python-any-r1 prefix preserve-libs 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=10
-PATCH_DEV=dilfridge
-
-# gcc mulitilib bootstrap files version
-GCC_BOOTSTRAP_VER=20201208
-
-# systemd integration version
-GLIBC_SYSTEMD_VER=20210729
-
-# Minimum kernel version that glibc requires
-MIN_KERN_VER="3.2.0"
-
-# Minimum pax-utils version needed (which contains any new syscall changes for
-# its seccomp filter!). Please double check this!
-MIN_PAX_UTILS_VER="1.3.3"
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
-else
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~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
-
-SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
-SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )"
-
-IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd hash-sysv-compat headers-only +multiarch multilib multilib-bootstrap nscd perl profile selinux +ssp stack-realign +static-libs suid systemd systemtap test vanilla"
-
-# 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.
-# - similarly, valgrind requires knowledge about symbols in ld.so:
-# bug #920753
-# 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.
-
-IDEPEND="
- !compile-locales? ( sys-apps/locale-gen )
-"
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- sys-devel/bison
- compile-locales? ( sys-apps/locale-gen )
- doc? (
- dev-lang/perl
- sys-apps/texinfo
- )
- test? (
- dev-lang/perl
- >=net-dns/libidn2-2.3.0
- )
-"
-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-debug/systemtap )
-"
-DEPEND="${COMMON_DEPEND}
-"
-RDEPEND="${COMMON_DEPEND}
- !<app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- perl? ( dev-lang/perl )
-"
-
-RESTRICT="!test? ( test )"
-
-if [[ ${CATEGORY} == cross-* ]] ; then
- BDEPEND+=" !headers-only? (
- >=${CATEGORY}/binutils-2.27
- >=${CATEGORY}/gcc-6.2
- )"
- [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
-else
- BDEPEND+="
- >=sys-devel/binutils-2.27
- >=sys-devel/gcc-6.2
- "
- 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=(
- # 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
-
- # The following tests fail only inside portage
- # https://bugs.gentoo.org/831267
- tst-system
- tst-strerror
- tst-strsignal
- # Fails with certain PORTAGE_NICENESS/PORTAGE_SCHEDULING_POLICY
- tst-sched1
-)
-
-XFAIL_NSPAWN_TEST_LIST=(
- # These tests need to be adapted to handle EPERM/ENOSYS(?) properly
- # upstream, as systemd-nspawn's default seccomp whitelist is too strict.
- # https://sourceware.org/PR30603
- test-errno-linux
- tst-bz21269
- tst-mlock2
- tst-ntp_gettime
- tst-ntp_gettime-time64
- tst-ntp_gettimex
- tst-ntp_gettimex-time64
- tst-pkey
- tst-process_mrelease
- tst-adjtime
- tst-adjtime-time64
- tst-clock2
- tst-clock2-time64
-
- # These fail if --suppress-sync and/or low priority is set
- tst-sync_file_range
- test-errno
-)
-
-#
-# Small helper functions
-#
-
-dump_build_environment() {
- einfo ==== glibc build environment ========================================================
- local v
- for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX CPP LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do
- einfo " $(printf '%15s' ${v}:) ${!v}"
- done
- einfo =====================================================================================
-}
-
-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
-
- # We assume CC is already set up.
- nonfatal emake glibc-test
- 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
- # For compatibility with older binaries at slight performance cost.
- use stack-realign && export CFLAGS+=" -mstackrealign"
- ;;
- amd64)
- # -march needed for #185404 #199334
- # TODO: See cross-compile issues listed above for x86.
- if [[ ${ABI} == x86 ]]; then
- 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
- # For compatibility with older binaries at slight performance cost.
- use stack-realign && export CFLAGS_x86+=" -mstackrealign"
-
- # Workaround for bug #823780.
- # Need to save/restore CC because earlier on, we stuff it full of CFLAGS, and tc-getCPP doesn't like that.
- CC_mangled=${CC}
- CC=${glibc__GLIBC_CC}
- if tc-is-gcc && (($(gcc-major-version) == 11)) && (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)) ; then
- export CFLAGS_x86="${CFLAGS_x86} -mno-avx512f"
- einfo "Auto adding -mno-avx512f to CFLAGS_x86 for buggy GCC version (bug #823780) (ABI=${ABI})"
- fi
- CC=${CC_mangled}
- 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-lto
- 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'
-
- # Flag added for cross-prefix, but causes ldconfig to segfault. Not needed
- # anyway because glibc already handles this by itself.
- filter-ldflags '-Wl,--dynamic-linker=*'
-
- # some weird software relies on sysv hashes in glibc, bug 863863, bug 864100
- # we have to do that here already so mips can filter it out again :P
- if use hash-sysv-compat ; then
- append-ldflags '-Wl,--hash-style=both'
- fi
-
- # #492892
- filter-flags -frecord-gcc-switches
-
- # #898098
- filter-flags -fno-builtin
-
- # #829583
- filter-lfs-flags
-
- 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"
- # https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F
- replace-flags -O0 -O1
-
- # glibc handles this internally already where it's appropriate;
- # can't always have SSP when we're the ones setting it up, etc
- filter-flags '-fstack-protector*'
-
- # Similar issues as with SSP. Can't inject yourself that early.
- filter-flags '-fsanitize=*'
-
- # See end of bug #830454; we handle this via USE=cet
- filter-flags '-fcf-protection=*'
-
- # When bootstrapping, we may have a situation where
- # CET-enabled gcc from seed is used to build CET-disabled
- # glibc. As such, gcc implicitly enables CET if no
- # -fcf-protection flag is passed. For a typical package it
- # should not be a problem, but for glibc it matters as it is
- # dealing with CET in ld.so. So if CET is supposed to be
- # disabled for glibc, be explicit about it.
- if (use amd64 || use x86) && ! use cet; then
- append-flags '-fcf-protection=none'
- fi
-}
-
-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
-
- # 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=${glibc__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
- export CXX=${glibc__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
-
- # and make sure glibc__ORIG_CC and glibc__ORIG_CXX is defined now.
- export glibc__ORIG_CC=${CC}
- export glibc__ORIG_CXX=${CXX}
-
- if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
- export glibc__force_gcc=yes
- # once this is toggled on, it needs to stay on, since with CPP manipulated
- # tc-is-clang does not work correctly anymore...
- fi
-
- if [[ ${glibc__force_gcc} == "yes" ]] ; 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.
- # Last, we need the settings of the *build* environment, not of the
- # target environment...
-
- local current_binutils_path=$(env ROOT="${BROOT}" binutils-config -B)
- local current_gcc_path=$(env ROOT="${BROOT}" gcc-config -B)
- einfo "Overriding clang configuration, since it won't work here"
-
- export CC="${current_gcc_path}/gcc"
- export CPP="${current_gcc_path}/cpp"
- 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. (Why does the comment talk about CFLAGS if the code
- # acts on CC?)
- export glibc__GLIBC_CC=${CC}
- export glibc__GLIBC_CXX=${CXX}
-
- export glibc__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__GLIBC_CC} ${glibc__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__GLIBC_CXX} ${glibc__abi_CFLAGS} ${CFLAGS}"
-
- if is_crosscompile; then
- # Assume worst-case bootstrap: glibc is built for the first time
- # with ${CTARGET}-g++ 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() {
- 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+=" (patchset ${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
-
- 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 && [[ ${MERGE_TYPE} != "binary" ]] ; then
- if [[ -d "${ESYSROOT}"/usr/lib/include ]] ; then
- # bug #833620, bug #643302
- eerror "Found ${ESYSROOT}/usr/lib/include directory!"
- eerror "This is known to break glibc's build."
- eerror "Please backup its contents then remove the directory."
- die "Found directory (${ESYSROOT}/usr/lib/include) which will break build (bug #833620)!"
- 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
-
- # Do not run this check for pkg_pretend, just pkg_setup and friends (if we ever get used there).
- # It's plausible (seen it in the wild) that Portage will (correctly) schedule a linux-headers
- # upgrade before glibc, but because pkg_pretend gets run before any packages are merged at all (not
- # just glibc), the whole emerge gets aborted without a good reason. We probably don't
- # need to run this check at all given we have a dependency on the right headers,
- # but let's leave it as-is for now.
- if [[ ${EBUILD_PHASE_FUNC} != pkg_pretend ]] ; then
- 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
- fi
-}
-
-upgrade_warning() {
- is_crosscompile && return
-
- if [[ ${MERGE_TYPE} != buildonly && -n ${REPLACING_VERSIONS} && -z ${ROOT} ]]; then
- local oldv newv=$(ver_cut 1-2 ${PV})
- for oldv in ${REPLACING_VERSIONS}; do
- if ver_test ${oldv} -lt ${newv}; then
- ewarn "After upgrading glibc, please restart all running processes."
- ewarn "Be sure to include init (telinit u) or systemd (systemctl daemon-reexec)."
- ewarn "Alternatively, reboot your system."
- ewarn "(See bug #660556, bug #741116, bug #823756, etc)"
- break
- fi
- done
- fi
-}
-
-#
-# the phases
-#
-
-# pkg_pretend
-
-pkg_pretend() {
- upgrade_warning
-}
-
-# pkg_setup
-
-pkg_setup() {
- # see bug 682570
- [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup
-}
-
-# src_unpack
-
-src_unpack() {
- setup_env
-
- einfo "Checking general environment sanity."
- sanity_prechecks
-
- use multilib-bootstrap && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz
-
- 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-${PV}-patches-${PATCH_VER}.tar.xz
- fi
-
- cd "${WORKDIR}" || die
- use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz
-}
-
-# src_prepare
-
-src_prepare() {
- local patchsetname
- if ! use vanilla ; then
- if [[ ${PV} == 9999* ]] ; then
- patchsetname="from git master"
- else
- patchsetname="${PV}-${PATCH_VER}"
- fi
- einfo "Applying Gentoo Glibc patchset ${patchsetname}"
- eapply "${WORKDIR}"/patches
- einfo "Done."
- fi
-
- default
-
- gnuconfig_update
-
- cd "${WORKDIR}" || die
- find . -name configure -exec touch {} +
-
- # Fix permissions on some of the scripts.
- chmod u+x "${S}"/scripts/*.sh
-
- cd "${S}" || die
-}
-
-# src_configure
-
-glibc_do_configure() {
- dump_build_environment
-
- local myconf=()
-
- # Use '=strong' instead of '=all' to protect only functions
- # worth protecting from stack smashes.
- myconf+=( --enable-stack-protector=$(usex ssp strong no) )
-
- # 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|riscv|loong) ;;
- # 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+=(
- --disable-werror
- --enable-bind-now
- --enable-fortify-source
- --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 systemtap)
- $(use_enable nscd)
-
- # /usr/bin/mtrace has a Perl shebang. Gentoo Prefix QA checks fail if
- # Perl hasn't been installed inside the prefix yet and configure picks
- # up a Perl from outside the prefix instead. configure will fail to
- # execute Perl during configure if we're cross-compiling a prefix, but
- # it will just disable mtrace in that case.
- # Note: mtrace is needed by the test suite.
- ac_cv_path_PERL="$(usex perl "${EPREFIX}"/usr/bin/perl $(usex test "${EPREFIX}"/usr/bin/perl $(usex doc "${EPREFIX}"/usr/bin/perl no)))"
-
- # locale data is arch-independent
- # https://bugs.gentoo.org/753740
- libc_cv_complocaledir='${exec_prefix}/lib/locale'
-
- # On aarch64 there is no way to override -mcpu=native, and if
- # the current cpu does not support SVE configure fails.
- # Let's boldly assume our toolchain can always build SVE instructions.
- libc_cv_aarch64_sve_asm=yes
-
- ${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)"
-
- 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 'int main(void){}' > "${T}"/test.c || die
- 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
-
- local myconf=()
-
- case ${CTARGET} in
- aarch64*)
- # The configure checks fail during cross-build, so disable here
- # for headers-only
- myconf+=(
- --disable-mathvec
- ) ;;
- 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
-
- myconf+=(
- --disable-sanity-checks
- --enable-hacker-mode
- --disable-werror
- --enable-bind-now
- --build=${CBUILD_OPT:-${CBUILD}}
- --host=${CTARGET_OPT:-${CTARGET}}
- --with-headers=$(build_eprefix)$(alt_build_headers)
- --prefix="$(host_eprefix)/usr"
- $(use_enable crypt)
- ${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
-}
-
-# src_compile
-
-do_src_compile() {
- emake -C "$(builddir nptl)"
-}
-
-src_compile() {
- if just_headers ; then
- return
- fi
-
- foreach_abi do_src_compile
-}
-
-# src_test
-
-glibc_src_test() {
- cd "$(builddir nptl)"
-
- local myxfailparams=""
- if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then
- local virt=$(systemd-detect-virt 2>/dev/null)
- if [[ ${virt} == systemd-nspawn ]] ; then
- ewarn "Skipping extra tests because in systemd-nspawn container"
- XFAIL_TEST_LIST+=( "${XFAIL_NSPAWN_TEST_LIST[@]}" )
- fi
- if [[ "$(nice)" == "19" ]] ; then
- # Expects to be able to increase niceness, which it can't do if
- # already at the highest nice value
- XFAIL_TEST_LIST+=( "tst-nice" )
- fi
-
- 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
-
- # we give the tests a bit more time to avoid spurious
- # bug reports on slow arches
-
- SANDBOX_ON=0 LD_PRELOAD= TIMEOUTFACTOR=32 emake ${myxfailparams} check
-}
-
-src_test() {
- if just_headers ; then
- return
- fi
-
- foreach_abi glibc_src_test || die "tests failed"
-}
-
-# src_install
-
-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
-
- # bug 736794: we need to be careful with the parallelization... the number of
- # processors saved in the environment of a binary package may differ strongly
- # from the number of processes available during postinst
- local mygenjobs="$(makeopts_jobs)"
- if [[ "${EMERGE_FROM}" == "binary" ]] ; then
- mygenjobs="$(nproc)"
- fi
-
- set -- locale-gen ${inplace} --jobs "${mygenjobs}" --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 libpthreads symbols. stripping breaks it
- # See Note [Disable automatic stripping]
- dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so
- # valgrind requires knowledge about ld.so symbols.
- dostrip -x $(alt_libdir)/ld-*.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 configure toolchains for standalone prefix systems with a sysroot,
- # which is prepended to paths in ld scripts, so strip the prefix from these.
- # Before: GROUP ( /foo/lib64/libc.so.6 /foo/usr/lib64/libc_nonshared.a AS_NEEDED ( /foo/lib64/ld-linux-x86-64.so.2 ) )
- # After: GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib64/ld-linux-x86-64.so.2 ) )
- if [[ -n $(host_eprefix) ]] ; then
- local file
- grep -lZIF "ld script" "${ED}/$(alt_usrlibdir)"/lib*.{a,so} 2>/dev/null | while read -rd '' file ; do
- sed -i "s|$(host_eprefix)/|/|g" "${file}" || die
- done
- 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 "${S}" || die
-
- # Install misc network config files
- insinto /etc
- doins posix/gai.conf
-
- if use systemd ; then
- doins "${WORKDIR}/glibc-systemd-${GLIBC_SYSTEMD_VER}/gentoo-config/nsswitch.conf"
- else
- doins nss/nsswitch.conf
- fi
-
- # 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
-
- use systemd && 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}/"
- 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
-
- # first let's find the actual dynamic linker here
- # symlinks may point to the wrong abi
- local newldso=$(find . -maxdepth 1 -name 'ld*so.?' -type f -print -quit)
-
- einfo Last-minute run tests with ${newldso} in /$(get_libdir) ...
-
- 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 \
- ${newldso} --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
-
- einfo "Checking general environment sanity."
- sanity_prechecks
-
- # 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
-
- # Keep around libcrypt so that Perl doesn't break when merging libxcrypt
- # (libxcrypt is the new provider for now of libcrypt.so.{1,2}).
- # bug #802207
- if ! use crypt && has_version "${CATEGORY}/${PN}[crypt]" && ! has preserve-libs ${FEATURES}; then
- PRESERVED_OLD_LIBCRYPT=1
- cp -p "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" "${T}/libcrypt$(get_libname 1)" || die
- else
- PRESERVED_OLD_LIBCRYPT=0
- fi
-}
-
-glibc_refresh_ldconfig() {
- if [[ ${MERGE_TYPE} == buildonly ]]; then
- return
- fi
-
- # Version check could be added to avoid unnecessary work, but ldconfig
- # should finish quickly enough to not matter.
- ebegin "Refreshing ld.so.cache"
- ldconfig -i
- if ! eend $?; then
- ewarn "Failed to refresh the ld.so.cache for you. Some programs may be broken"
- ewarn "before you manually do so (ldconfig -i)."
- 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
- # glibc-2.38+ on loong has ldconfig support added, but the ELF e_flags
- # handling has changed as well, which means stale ldconfig auxiliary
- # cache entries and failure to lookup libgcc_s / libstdc++ (breaking
- # every C++ application) / libgomp etc., among other breakages.
- #
- # To fix this, simply refresh the ld.so.cache without using the
- # auxiliary cache if we're natively installing on loong. This should
- # be done relatively soon because we want to minimize the breakage
- # window for the affected programs.
- use loong && glibc_refresh_ldconfig
-
- use compile-locales || run_locale_gen "${EROOT}/"
- fi
-
- upgrade_warning
-
- # 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 grep -E -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
-
- if [[ ${PRESERVED_OLD_LIBCRYPT} -eq 1 ]] ; then
- cp -p "${T}/libcrypt$(get_libname 1)" "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" || die
- preserve_old_lib_notify /$(get_libdir)/libcrypt$(get_libname 1)
-
- elog "Please ignore a possible later error message about a file collision involving"
- elog "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1). We need to preserve this file for the moment to keep"
- elog "the upgrade working, but it also needs to be overwritten when"
- elog "sys-libs/libxcrypt is installed. See bug 802210 for more details."
- fi
-}
diff --git a/sys-libs/glibc/glibc-2.38-r12.ebuild b/sys-libs/glibc/glibc-2.38-r12.ebuild
deleted file mode 100644
index 3faaa1af693c..000000000000
--- a/sys-libs/glibc/glibc-2.38-r12.ebuild
+++ /dev/null
@@ -1,1729 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc
-# Please read & adapt the page as necessary if obsolete.
-
-PYTHON_COMPAT=( python3_{10..12} )
-TMPFILES_OPTIONAL=1
-
-inherit python-any-r1 prefix preserve-libs 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=12
-PATCH_DEV=dilfridge
-
-# gcc mulitilib bootstrap files version
-GCC_BOOTSTRAP_VER=20201208
-
-# systemd integration version
-GLIBC_SYSTEMD_VER=20210729
-
-# Minimum kernel version that glibc requires
-MIN_KERN_VER="3.2.0"
-
-# Minimum pax-utils version needed (which contains any new syscall changes for
-# its seccomp filter!). Please double check this!
-MIN_PAX_UTILS_VER="1.3.3"
-
-if [[ ${PV} == 9999* ]]; then
- inherit git-r3
-else
- KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~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
-
-SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
-SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )"
-
-IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd hash-sysv-compat headers-only +multiarch multilib multilib-bootstrap nscd perl profile selinux +ssp stack-realign +static-libs suid systemd systemtap test vanilla"
-
-# 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.
-# - similarly, valgrind requires knowledge about symbols in ld.so:
-# bug #920753
-# 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.
-
-IDEPEND="
- !compile-locales? ( sys-apps/locale-gen )
-"
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- sys-devel/bison
- compile-locales? ( sys-apps/locale-gen )
- doc? (
- dev-lang/perl
- sys-apps/texinfo
- )
- test? (
- dev-lang/perl
- >=net-dns/libidn2-2.3.0
- )
-"
-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-debug/systemtap )
-"
-DEPEND="${COMMON_DEPEND}
-"
-RDEPEND="${COMMON_DEPEND}
- !<app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- perl? ( dev-lang/perl )
-"
-
-RESTRICT="!test? ( test )"
-
-if [[ ${CATEGORY} == cross-* ]] ; then
- BDEPEND+=" !headers-only? (
- >=${CATEGORY}/binutils-2.27
- >=${CATEGORY}/gcc-6.2
- )"
- [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
-else
- BDEPEND+="
- >=sys-devel/binutils-2.27
- >=sys-devel/gcc-6.2
- "
- 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=(
- # 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
-
- # The following tests fail only inside portage
- # https://bugs.gentoo.org/831267
- tst-system
- tst-strerror
- tst-strsignal
- # Fails with certain PORTAGE_NICENESS/PORTAGE_SCHEDULING_POLICY
- tst-sched1
-)
-
-XFAIL_NSPAWN_TEST_LIST=(
- # These tests need to be adapted to handle EPERM/ENOSYS(?) properly
- # upstream, as systemd-nspawn's default seccomp whitelist is too strict.
- # https://sourceware.org/PR30603
- test-errno-linux
- tst-bz21269
- tst-mlock2
- tst-ntp_gettime
- tst-ntp_gettime-time64
- tst-ntp_gettimex
- tst-ntp_gettimex-time64
- tst-pkey
- tst-process_mrelease
- tst-adjtime
- tst-adjtime-time64
- tst-clock2
- tst-clock2-time64
-
- # These fail if --suppress-sync and/or low priority is set
- tst-sync_file_range
- test-errno
-)
-
-#
-# Small helper functions
-#
-
-dump_build_environment() {
- einfo ==== glibc build environment ========================================================
- local v
- for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX CPP LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do
- einfo " $(printf '%15s' ${v}:) ${!v}"
- done
- einfo =====================================================================================
-}
-
-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
-
- # We assume CC is already set up.
- nonfatal emake glibc-test
- 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
- # For compatibility with older binaries at slight performance cost.
- use stack-realign && export CFLAGS+=" -mstackrealign"
- ;;
- amd64)
- # -march needed for #185404 #199334
- # TODO: See cross-compile issues listed above for x86.
- if [[ ${ABI} == x86 ]]; then
- 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
- # For compatibility with older binaries at slight performance cost.
- use stack-realign && export CFLAGS_x86+=" -mstackrealign"
-
- # Workaround for bug #823780.
- # Need to save/restore CC because earlier on, we stuff it full of CFLAGS, and tc-getCPP doesn't like that.
- CC_mangled=${CC}
- CC=${glibc__GLIBC_CC}
- if tc-is-gcc && (($(gcc-major-version) == 11)) && (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)) ; then
- export CFLAGS_x86="${CFLAGS_x86} -mno-avx512f"
- einfo "Auto adding -mno-avx512f to CFLAGS_x86 for buggy GCC version (bug #823780) (ABI=${ABI})"
- fi
- CC=${CC_mangled}
- 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-lto
- 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'
-
- # Flag added for cross-prefix, but causes ldconfig to segfault. Not needed
- # anyway because glibc already handles this by itself.
- filter-ldflags '-Wl,--dynamic-linker=*'
-
- # some weird software relies on sysv hashes in glibc, bug 863863, bug 864100
- # we have to do that here already so mips can filter it out again :P
- if use hash-sysv-compat ; then
- append-ldflags '-Wl,--hash-style=both'
- fi
-
- # #492892
- filter-flags -frecord-gcc-switches
-
- # #898098
- filter-flags -fno-builtin
-
- # #829583
- filter-lfs-flags
-
- 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"
- # https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F
- replace-flags -O0 -O1
-
- # glibc handles this internally already where it's appropriate;
- # can't always have SSP when we're the ones setting it up, etc
- filter-flags '-fstack-protector*'
-
- # Similar issues as with SSP. Can't inject yourself that early.
- filter-flags '-fsanitize=*'
-
- # See end of bug #830454; we handle this via USE=cet
- filter-flags '-fcf-protection=*'
-
- # When bootstrapping, we may have a situation where
- # CET-enabled gcc from seed is used to build CET-disabled
- # glibc. As such, gcc implicitly enables CET if no
- # -fcf-protection flag is passed. For a typical package it
- # should not be a problem, but for glibc it matters as it is
- # dealing with CET in ld.so. So if CET is supposed to be
- # disabled for glibc, be explicit about it.
- if (use amd64 || use x86) && ! use cet; then
- append-flags '-fcf-protection=none'
- fi
-}
-
-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
-
- # 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=${glibc__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
- export CXX=${glibc__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
- export CPP=${glibc__ORIG_CPP:-${CPP:-$(tc-getCPP ${CTARGET})}}
-
- # and make sure glibc__ORIG_CC and glibc__ORIG_CXX is defined now.
- export glibc__ORIG_CC=${CC}
- export glibc__ORIG_CXX=${CXX}
- export glibc__ORIG_CPP=${CPP}
-
- if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
- export glibc__force_gcc=yes
- # once this is toggled on, it needs to stay on, since with CPP manipulated
- # tc-is-clang does not work correctly anymore...
- fi
-
- if [[ ${glibc__force_gcc} == "yes" ]] ; 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.
- # Last, we need the settings of the *build* environment, not of the
- # target environment...
-
- local current_binutils_path=$(env ROOT="${BROOT}" binutils-config -B)
- local current_gcc_path=$(env ROOT="${BROOT}" gcc-config -B)
- einfo "Overriding clang configuration, since it won't work here"
-
- export CC="${current_gcc_path}/gcc"
- export CPP="${current_gcc_path}/cpp"
- export CXX="${current_gcc_path}/g++"
- export CPP="$(tc-getCPP ${CTARGET})"
- 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. (Why does the comment talk about CFLAGS if the code
- # acts on CC?)
- export glibc__GLIBC_CC=${CC}
- export glibc__GLIBC_CXX=${CXX}
- export glibc__GLIBC_CPP=${CPP}
-
- export glibc__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__GLIBC_CC} ${glibc__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__GLIBC_CXX} ${glibc__abi_CFLAGS} ${CFLAGS}"
-
- export CPP="${glibc__GLIBC_CPP} ${glibc__abi_CFLAGS} ${CFLAGS}"
-
- if is_crosscompile; then
- # Assume worst-case bootstrap: glibc is built for the first time
- # with ${CTARGET}-g++ 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() {
- 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+=" (patchset ${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
-
- 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 && [[ ${MERGE_TYPE} != "binary" ]] ; then
- if [[ -d "${ESYSROOT}"/usr/lib/include ]] ; then
- # bug #833620, bug #643302
- eerror "Found ${ESYSROOT}/usr/lib/include directory!"
- eerror "This is known to break glibc's build."
- eerror "Please backup its contents then remove the directory."
- die "Found directory (${ESYSROOT}/usr/lib/include) which will break build (bug #833620)!"
- 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
-
- # Do not run this check for pkg_pretend, just pkg_setup and friends (if we ever get used there).
- # It's plausible (seen it in the wild) that Portage will (correctly) schedule a linux-headers
- # upgrade before glibc, but because pkg_pretend gets run before any packages are merged at all (not
- # just glibc), the whole emerge gets aborted without a good reason. We probably don't
- # need to run this check at all given we have a dependency on the right headers,
- # but let's leave it as-is for now.
- if [[ ${EBUILD_PHASE_FUNC} != pkg_pretend ]] ; then
- 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
- fi
-}
-
-upgrade_warning() {
- is_crosscompile && return
-
- if [[ ${MERGE_TYPE} != buildonly && -n ${REPLACING_VERSIONS} && -z ${ROOT} ]]; then
- local oldv newv=$(ver_cut 1-2 ${PV})
- for oldv in ${REPLACING_VERSIONS}; do
- if ver_test ${oldv} -lt ${newv}; then
- ewarn "After upgrading glibc, please restart all running processes."
- ewarn "Be sure to include init (telinit u) or systemd (systemctl daemon-reexec)."
- ewarn "Alternatively, reboot your system."
- ewarn "(See bug #660556, bug #741116, bug #823756, etc)"
- break
- fi
- done
- fi
-}
-
-#
-# the phases
-#
-
-# pkg_pretend
-
-pkg_pretend() {
- upgrade_warning
-}
-
-# pkg_setup
-
-pkg_setup() {
- # see bug 682570
- [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup
-}
-
-# src_unpack
-
-src_unpack() {
- setup_env
-
- einfo "Checking general environment sanity."
- sanity_prechecks
-
- use multilib-bootstrap && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz
-
- 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-${PV}-patches-${PATCH_VER}.tar.xz
- fi
-
- cd "${WORKDIR}" || die
- use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz
-}
-
-# src_prepare
-
-src_prepare() {
- local patchsetname
- if ! use vanilla ; then
- if [[ ${PV} == 9999* ]] ; then
- patchsetname="from git master"
- else
- patchsetname="${PV}-${PATCH_VER}"
- fi
- einfo "Applying Gentoo Glibc patchset ${patchsetname}"
- eapply "${WORKDIR}"/patches
- einfo "Done."
- fi
-
- default
-
- gnuconfig_update
-
- cd "${WORKDIR}" || die
- find . -name configure -exec touch {} +
-
- # Fix permissions on some of the scripts.
- chmod u+x "${S}"/scripts/*.sh
-
- cd "${S}" || die
-}
-
-# src_configure
-
-glibc_do_configure() {
- dump_build_environment
-
- local myconf=()
-
- # Use '=strong' instead of '=all' to protect only functions
- # worth protecting from stack smashes.
- myconf+=( --enable-stack-protector=$(usex ssp strong no) )
-
- # 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|riscv|loong) ;;
- # 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+=(
- --disable-werror
- --enable-bind-now
- --enable-fortify-source
- --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 systemtap)
- $(use_enable nscd)
-
- # /usr/bin/mtrace has a Perl shebang. Gentoo Prefix QA checks fail if
- # Perl hasn't been installed inside the prefix yet and configure picks
- # up a Perl from outside the prefix instead. configure will fail to
- # execute Perl during configure if we're cross-compiling a prefix, but
- # it will just disable mtrace in that case.
- # Note: mtrace is needed by the test suite.
- ac_cv_path_PERL="$(usex perl "${EPREFIX}"/usr/bin/perl $(usex test "${EPREFIX}"/usr/bin/perl $(usex doc "${EPREFIX}"/usr/bin/perl no)))"
-
- # locale data is arch-independent
- # https://bugs.gentoo.org/753740
- libc_cv_complocaledir='${exec_prefix}/lib/locale'
-
- # On aarch64 there is no way to override -mcpu=native, and if
- # the current cpu does not support SVE configure fails.
- # Let's boldly assume our toolchain can always build SVE instructions.
- libc_cv_aarch64_sve_asm=yes
-
- ${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)"
-
- 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 'int main(void){}' > "${T}"/test.c || die
- 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
-
- local myconf=()
-
- case ${CTARGET} in
- aarch64*)
- # The configure checks fail during cross-build, so disable here
- # for headers-only
- myconf+=(
- --disable-mathvec
- ) ;;
- 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
-
- myconf+=(
- --disable-sanity-checks
- --enable-hacker-mode
- --disable-werror
- --enable-bind-now
- --build=${CBUILD_OPT:-${CBUILD}}
- --host=${CTARGET_OPT:-${CTARGET}}
- --with-headers=$(build_eprefix)$(alt_build_headers)
- --prefix="$(host_eprefix)/usr"
- $(use_enable crypt)
- ${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
-}
-
-# src_compile
-
-do_src_compile() {
- emake -C "$(builddir nptl)"
-}
-
-src_compile() {
- if just_headers ; then
- return
- fi
-
- foreach_abi do_src_compile
-}
-
-# src_test
-
-glibc_src_test() {
- cd "$(builddir nptl)"
-
- local myxfailparams=""
- if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then
- local virt=$(systemd-detect-virt 2>/dev/null)
- if [[ ${virt} == systemd-nspawn ]] ; then
- ewarn "Skipping extra tests because in systemd-nspawn container"
- XFAIL_TEST_LIST+=( "${XFAIL_NSPAWN_TEST_LIST[@]}" )
- fi
- if [[ "$(nice)" == "19" ]] ; then
- # Expects to be able to increase niceness, which it can't do if
- # already at the highest nice value
- XFAIL_TEST_LIST+=( "tst-nice" )
- fi
-
- 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
-
- # we give the tests a bit more time to avoid spurious
- # bug reports on slow arches
-
- SANDBOX_ON=0 LD_PRELOAD= TIMEOUTFACTOR=32 emake ${myxfailparams} check
-}
-
-src_test() {
- if just_headers ; then
- return
- fi
-
- foreach_abi glibc_src_test || die "tests failed"
-}
-
-# src_install
-
-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
-
- # bug 736794: we need to be careful with the parallelization... the number of
- # processors saved in the environment of a binary package may differ strongly
- # from the number of processes available during postinst
- local mygenjobs="$(makeopts_jobs)"
- if [[ "${EMERGE_FROM}" == "binary" ]] ; then
- mygenjobs="$(nproc)"
- fi
-
- set -- locale-gen ${inplace} --jobs "${mygenjobs}" --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 libpthreads symbols. stripping breaks it
- # See Note [Disable automatic stripping]
- dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so
- # valgrind requires knowledge about ld.so symbols.
- dostrip -x $(alt_libdir)/ld-*.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 configure toolchains for standalone prefix systems with a sysroot,
- # which is prepended to paths in ld scripts, so strip the prefix from these.
- # Before: GROUP ( /foo/lib64/libc.so.6 /foo/usr/lib64/libc_nonshared.a AS_NEEDED ( /foo/lib64/ld-linux-x86-64.so.2 ) )
- # After: GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib64/ld-linux-x86-64.so.2 ) )
- if [[ -n $(host_eprefix) ]] ; then
- local file
- grep -lZIF "ld script" "${ED}/$(alt_usrlibdir)"/lib*.{a,so} 2>/dev/null | while read -rd '' file ; do
- sed -i "s|$(host_eprefix)/|/|g" "${file}" || die
- done
- 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 "${S}" || die
-
- # Install misc network config files
- insinto /etc
- doins posix/gai.conf
-
- if use systemd ; then
- doins "${WORKDIR}/glibc-systemd-${GLIBC_SYSTEMD_VER}/gentoo-config/nsswitch.conf"
- else
- doins nss/nsswitch.conf
- fi
-
- # 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
-
- use systemd && 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}/"
- 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
-
- # first let's find the actual dynamic linker here
- # symlinks may point to the wrong abi
- local newldso=$(find . -maxdepth 1 -name 'ld*so.?' -type f -print -quit)
-
- einfo Last-minute run tests with ${newldso} in /$(get_libdir) ...
-
- 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 \
- ${newldso} --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
-
- einfo "Checking general environment sanity."
- sanity_prechecks
-
- # 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
-
- # Keep around libcrypt so that Perl doesn't break when merging libxcrypt
- # (libxcrypt is the new provider for now of libcrypt.so.{1,2}).
- # bug #802207
- if ! use crypt && has_version "${CATEGORY}/${PN}[crypt]" && ! has preserve-libs ${FEATURES}; then
- PRESERVED_OLD_LIBCRYPT=1
- cp -p "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" "${T}/libcrypt$(get_libname 1)" || die
- else
- PRESERVED_OLD_LIBCRYPT=0
- fi
-}
-
-glibc_refresh_ldconfig() {
- if [[ ${MERGE_TYPE} == buildonly ]]; then
- return
- fi
-
- # Version check could be added to avoid unnecessary work, but ldconfig
- # should finish quickly enough to not matter.
- ebegin "Refreshing ld.so.cache"
- ldconfig -i
- if ! eend $?; then
- ewarn "Failed to refresh the ld.so.cache for you. Some programs may be broken"
- ewarn "before you manually do so (ldconfig -i)."
- 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
- # glibc-2.38+ on loong has ldconfig support added, but the ELF e_flags
- # handling has changed as well, which means stale ldconfig auxiliary
- # cache entries and failure to lookup libgcc_s / libstdc++ (breaking
- # every C++ application) / libgomp etc., among other breakages.
- #
- # To fix this, simply refresh the ld.so.cache without using the
- # auxiliary cache if we're natively installing on loong. This should
- # be done relatively soon because we want to minimize the breakage
- # window for the affected programs.
- use loong && glibc_refresh_ldconfig
-
- use compile-locales || run_locale_gen "${EROOT}/"
- fi
-
- upgrade_warning
-
- # 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 grep -E -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
-
- if [[ ${PRESERVED_OLD_LIBCRYPT} -eq 1 ]] ; then
- cp -p "${T}/libcrypt$(get_libname 1)" "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" || die
- preserve_old_lib_notify /$(get_libdir)/libcrypt$(get_libname 1)
-
- elog "Please ignore a possible later error message about a file collision involving"
- elog "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1). We need to preserve this file for the moment to keep"
- elog "the upgrade working, but it also needs to be overwritten when"
- elog "sys-libs/libxcrypt is installed. See bug 802210 for more details."
- fi
-}
diff --git a/sys-libs/glibc/glibc-2.38-r13.ebuild b/sys-libs/glibc/glibc-2.38-r13.ebuild
index beddfe4b0def..1de5a90ac29b 100644
--- a/sys-libs/glibc/glibc-2.38-r13.ebuild
+++ b/sys-libs/glibc/glibc-2.38-r13.ebuild
@@ -39,7 +39,7 @@ MIN_PAX_UTILS_VER="1.3.3"
if [[ ${PV} == 9999* ]]; then
inherit git-r3
else
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~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.39-r4.ebuild b/sys-libs/glibc/glibc-2.39-r6.ebuild
index 8fe8030a9e56..c360c6cb921a 100644
--- a/sys-libs/glibc/glibc-2.39-r4.ebuild
+++ b/sys-libs/glibc/glibc-2.39-r6.ebuild
@@ -12,7 +12,7 @@ TMPFILES_OPTIONAL=1
EMULTILIB_PKG="true"
# Gentoo patchset (ignored for live ebuilds)
-PATCH_VER=4
+PATCH_VER=6
PATCH_DEV=dilfridge
# gcc mulitilib bootstrap files version
@@ -41,7 +41,7 @@ HOMEPAGE="https://www.gnu.org/software/libc/"
if [[ ${PV} == 9999* ]]; then
inherit git-r3
else
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa -ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 ~arm arm64 ~hppa -ia64 ~loong ~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
@@ -447,9 +447,14 @@ setup_flags() {
# 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
+
+ # Allow -O2 and -O3, but nothing else for now.
+ # TODO: Test -Os, -Oz.
+ if ! is-flagq '-O@(2|3)' ; then
+ # Lock glibc at -O2. We want to be conservative here.
+ filter-flags '-O?'
+ append-flags -O2
+ fi
fi
strip-unsupported-flags
diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild
index 3a053a9de724..0cbc0a06f45e 100644
--- a/sys-libs/glibc/glibc-9999.ebuild
+++ b/sys-libs/glibc/glibc-9999.ebuild
@@ -447,9 +447,14 @@ setup_flags() {
# 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
+
+ # Allow -O2 and -O3, but nothing else for now.
+ # TODO: Test -Os, -Oz.
+ if ! is-flagq '-O@(2|3)' ; then
+ # Lock glibc at -O2. We want to be conservative here.
+ filter-flags '-O?'
+ append-flags -O2
+ fi
fi
strip-unsupported-flags
diff --git a/sys-libs/kpmcore/Manifest b/sys-libs/kpmcore/Manifest
index b2c079f7f173..4e694e6e7df8 100644
--- a/sys-libs/kpmcore/Manifest
+++ b/sys-libs/kpmcore/Manifest
@@ -1,5 +1,5 @@
DIST kpmcore-23.08.5.tar.xz 630396 BLAKE2B f5a470c9b54663b9f52467519046646de9ea20b83c8afaf199e3877ecc3f9de47139c9d44e8b23a2d49bfb00ae624b9117cf1adf83092f141a8e46d02adfaf8f SHA512 30ddbe62412df5645e034b745159b7c8db7801340225653d05856032083181d482379415a56d4e6f703c4f6c4a1a79c252a3b549beba227ab70dfc673cc59acd
-DIST kpmcore-24.02.2.tar.xz 633412 BLAKE2B b270bbb8c41b9b1821b6bb4761faf3d17efd19b137a2283cc31eb91efd362b0c3ba5c795edc468744a678674997b345038989fe3124bf5f69504c86272740ae4 SHA512 24664d79e4fbc630ecdbc08006de2bc6a1d42abd1eeeb842b00c45a17742ae651c0c5a490310d99803b6dfe757f4fcc0a66c211dd2afbbafd4cd8cfb30050bd0
+DIST kpmcore-24.04.90.tar.xz 637972 BLAKE2B 60356c4d8db29cc5240809053d83069ec1b5d2db0aa69f741b9e939daf10552788e231af76a6df52bd014c9a43a75197e26153dfc5579b5ff00c448d5cf8eab3 SHA512 d7772ac8e443db3ded7de74fab3a3c11cf435adf3c3b0c31f8d7534f9321f1805bddc7b5666b1620f6aa92ee0473f41847672d31b7530daf3d6bead03ef6b9f1
EBUILD kpmcore-23.08.5.ebuild 751 BLAKE2B 213a0bcdd1fe60de05ef4759d4a2e750ed3bfdc19d7c20ea3981243efefa36248592b9699972749e117d415326b29846bb5c59e2643e2ec7c4a6dcada5f4d1a6 SHA512 a0085e7c8e3ad6aace56fa13d0032433b2fa21bc43ff4fe3b76e2f1bf4f08b13b31c63ab3e5a645bfc5fd9f527076bc03ad9739a6b220b1ecd905f267694cd13
-EBUILD kpmcore-24.02.2.ebuild 677 BLAKE2B 5e428ac7bd2b50067ef6a52350db6db98cbae9bb2bed6efc389abffa85dd7f59123631b31b3d3405c5fbcddda250ac664c9bd7e1c36bd7440da48089077b2735 SHA512 1090d23327d8895ad7f913054d1604a7eaa1a516799c12b8508a4202b5f3d982506c84a6355307fb283e190113f70e85522e9c3b87a0e48f4f6f17d431c0fb35
+EBUILD kpmcore-24.04.90.ebuild 677 BLAKE2B 5e428ac7bd2b50067ef6a52350db6db98cbae9bb2bed6efc389abffa85dd7f59123631b31b3d3405c5fbcddda250ac664c9bd7e1c36bd7440da48089077b2735 SHA512 1090d23327d8895ad7f913054d1604a7eaa1a516799c12b8508a4202b5f3d982506c84a6355307fb283e190113f70e85522e9c3b87a0e48f4f6f17d431c0fb35
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
diff --git a/sys-libs/kpmcore/kpmcore-24.02.2.ebuild b/sys-libs/kpmcore/kpmcore-24.04.90.ebuild
index 981859e0e0f5..981859e0e0f5 100644
--- a/sys-libs/kpmcore/kpmcore-24.02.2.ebuild
+++ b/sys-libs/kpmcore/kpmcore-24.04.90.ebuild
diff --git a/sys-libs/ldb/Manifest b/sys-libs/ldb/Manifest
index f54b66f21d8e..144ccbb5ecdf 100644
--- a/sys-libs/ldb/Manifest
+++ b/sys-libs/ldb/Manifest
@@ -4,18 +4,10 @@ AUX ldb-1.5.2-optional_packages.patch 1441 BLAKE2B 0b9413cd9690aae2b2eb26f097d25
AUX ldb-2.4.2-skip-32bit-time_t-tests.patch 1308 BLAKE2B 1ff687160b92c5395c7838ade8af32ba77637a2b18153d146b9e1496f96ec9c411cc5e5f9721a8dea1730118e6574a091ee7fd1edca1830cc54c5d4fddb007ab SHA512 27a35123cb9a1f6e39b88c91de8241ecfc0f0ed125a235ba26b95767dc3121d176b267ba97b1579e5b68cfb9e3879f40326f0163a31e311f01a1b2eb7751caf4
AUX ldb-2.5.2-skip-waf-tevent-check.patch 606 BLAKE2B 9cfe1afd1adfca20e1fcdead2f2a60f52a64f181b85c227be6cf9c9373a64528afbe4e9db1970e8316d5bddf76ba9395a75b194f27bcf25eb4d2e7695c5530eb SHA512 19028447cbde09a425f1a07fe2d9a2a6f16cada1785e6e9684a8b573db5705b6694a29cd6f5480047360920562fcc654fc10faad39e73c565f7d475558cb57c8
AUX ldb-2.9.0-optional_packages.patch 1568 BLAKE2B 723a36ca839e085dd264c9a00895f2be8dbc65dce4a523e07da2c177372cb70557bbe337e9fcfe2b7dbbedcb684e565607ddd80ce4d9e0c936f74cc8fa30c94d SHA512 9321a12f927163c95658c2a4c03e2ade3c6506bced8663a48d6ef3bbca57708fa1570a96be180b7844bc22bb5f6d4b73b722ab9bb12ded66678d8ba12f624e46
-DIST ldb-2.4.4.tar.gz 1726595 BLAKE2B c01440e7032dbd3f7b735cb8d2078d7e1dbb56370bd1defe5f170eff006d3979daa654698e6e046c0583288dacd2cda9a5cde249fd6382db52c4aadb83f55e34 SHA512 2e4c762525eee9db40083b21e2a23f9cdfad5d2969cc628b3ea5414f9ec1be2c12d0aa65137cd8d8a5395c0414166ba14fc3dd57d53c533596762d80b9c561f4
-DIST ldb-2.5.2.tar.gz 1730347 BLAKE2B a0d3a9ae02f79c27b396314b804195ecd37b8bcd843fb94f9813a69fb15773db94ed2210f4102e395333562c2dccebabde1c2dcc0c2fceac97dfa31b2ad97e3d SHA512 02ae1246f99d9b6d6b33c5030488aa46c6abb535b4da4b13799a62b49d32c490b7c088ef41c0bc5a1b2f7263c680faceb8033827834cb6f66916adcdb5be421c
-DIST ldb-2.5.3.tar.gz 1736354 BLAKE2B dcd4d33f7a0ce3583bc96762b274d195c20e868337a29fd7793d6edf092069632f5c4f7f805693e3b330bbda1cc24540a989e2937f6325ac68bacf15d0f12db4 SHA512 b6f62dfb4887927514a98f01771b2178ac781886fc361600be0f59e513fc5762e3a421e48f452b1dd4452795f04b5c7c95e4dd4a9cc97573e563f5f528af4a35
-DIST ldb-2.6.2.tar.gz 1738908 BLAKE2B 44998efdff46486f94deb115225119cb3f6f23e15192672a5ac59c27e06c074fbcf2e1dba7d89d5ce273748cf08bc2261a10f7818cc2d02c4b25fd5403b158a9 SHA512 091111b8cf6cd93d662737890dacb64439e930b287d29299d2fc2cb18709f61d1e8a8c17d44f7224d8370dda6dc89af91e4ce8959816903ad5363388d8e37d8f
DIST ldb-2.7.2.tar.gz 1737849 BLAKE2B 0aa70d8a4827448e41874db97130f18d17683c800b8f03f9940b4852e24fd6092052f6e70aae845c587939b9be16c80d7a920f6b874a746f923c4513b73d2afc SHA512 beb2cd83a8f128713e0b43ec6e80d0f87ab0883c6c8f0cefbbf5bf49e29dfa327b245b78467d1906917cb5f3f11e01cb76cc6bcca58a47c5deac4f05c2e9dfbd
DIST ldb-2.8.0.tar.gz 1747616 BLAKE2B 19fd4cc0893ca36e7aa65eb605b050e3faeb7add6c00a2dfd8415334c58b7dc644ffaad41c24fe358b39292aaa581e3231e6b8161b03c073e903cdae16050ac5 SHA512 b6f289af3137e02a8e3ee0588bc300d1756b8980558e0b3a3a9eee4449100ccd42ed873187dbdb334e7e7834a8bff8478cd4f20588d4ca834d9ea14c0ee2c2f9
DIST ldb-2.9.0.tar.gz 1757213 BLAKE2B 6d24ced193a64e723da65f26a055b97e5c5645b0ce17263073db997e9310509c788e7739136b70d099d171d1d0cbbe43bb43ea50746d876d74a1be06fa2fc36f SHA512 b5cfbbcb2c35d6830bf1a7c85e1d4363728ae474504441add54c4c8569316b26aedbf6fb9f561ec4f187eb5a847ac76af07396e38d00e6f7632b63e02d7b64a1
-EBUILD ldb-2.4.4.ebuild 3062 BLAKE2B 1a8abbc3daaf7a811039a51df74bcd77694ef2667928b5c0e10f97415a4fe63135a2906efdc8271fb02c5f523b9b6db26115456ede481adb518a443e57fb2563 SHA512 119081ff7523d62c7219fc719ee93f0b7ffbbfceecb10f1cbdc57552449e1df3146c702c08cde2e8ec053248d1f5b562e8ee28b09eae343c05ad98f87b88f78d
-EBUILD ldb-2.5.2.ebuild 3069 BLAKE2B 1f82ac443260c0893ed29e5a166e9b1f529ba78bb2a79e7ee27063cbb6c2e54d412a475b46ec19af7c24a5f797d290d327cbd94ffbd61e876dacaa0586b34050 SHA512 3679ed7914b32d25e151fab8cd9005778b93336dd095250fb37a80ed7e02b1790d8ef7a912e442cca8c01126d2febab0a7d06e9cbbb906a7894252ad229fda33
-EBUILD ldb-2.5.3.ebuild 3305 BLAKE2B a3375495cd0b66857a98d78fbc9432237c6943c91e636a618f7a0e5d1baac7032b4283ee87d237e6a6710761f2bc06cf854f78aa9615d52db0b7028bbaa8e06c SHA512 1afeb66c24d00f65a68225341c6ce292539591db10bc02500764880debc0b141425e9ce5d926f368aec3a0ce68d1824d064d26711a0bf313cbf8ac3eda4d769b
-EBUILD ldb-2.6.2.ebuild 4812 BLAKE2B 6bf55d6cee7e159430672a96181cc0775feedf97b93cb96fdfb2787aa73321fff6fdcefba721155bf7febefa3e02806a5dd4b5d0a8489861de6785b9345ff04d SHA512 7311e57f151d46b99238cc35059d0c4587e1742d5728da627b4bf07e809590f03cd5fa0817cff3c1524b35b7a406e40fe66f7dd41860395fdddfd179171cd6de
-EBUILD ldb-2.7.2.ebuild 4805 BLAKE2B 1593b9535f229d81269946bd8dd3810d39ec5ac697ff69b3a87d7e2edcbd0c40cd4174f4fe0645fcacdbee36ab35678004c0a5bdfe25876eeb87cbbe70b1250a SHA512 415e3ec6d32b1ab02d6b491d4d59ecf700d0cc7bfadb8d32ee132157f943d4c79b2300861207af0606b529881e11eb639f73c12ff9e2c1339cd1bdbd89b8c775
-EBUILD ldb-2.8.0.ebuild 4812 BLAKE2B 0571caa6149113c0dd5a3c32bb5c2ec3605e96358d5fe9d16af9528dc1598f59d721bed54a88da3ca362886a38ffd23bc913fd47da2ab15863f2626d1cde3d2b SHA512 ba2a79402d4ed437b3aceb580bad5fc4f964f9f1f12d56c2947cd6458c0297ee9a904de2b40cca440e65787ac0443c7cdd9965a02dd7bd1fdbab5dbe4ef501c4
-EBUILD ldb-2.9.0.ebuild 4776 BLAKE2B b73c3ae7ff90a1e8fe3afe252d2c95d69f25cc7fb1cdf3e2a58a7a18f0f2e65a64c52f26275eecbf8ba53037a7328fd1a84d3a5c9b41775163a58db9dd265ac5 SHA512 3210ca98621d1497c2e9317afe1b2c083485ab4fd6490f29f9f60e93f3f381d1713e898bedfd4651256b1d93c943c6b01c83480174711d2d9bdce419af10071b
+EBUILD ldb-2.7.2.ebuild 4805 BLAKE2B f3774a3641412e1e6bbde4b80f62d361a0b6308c53e1d446d1f96cd8d04117fd3bb33fc17de666382eed33ead62fea08e4c94e417b06d0e8116bc8fb92abb54f SHA512 5e8ecd2fbd1d9c4ab1b60ebc8c60e347d8e2ee86facdd560352af908ccfa3027b5bd6705a864825482da3a7b4e10fedcf50244f457f541724f0d0ac910541500
+EBUILD ldb-2.8.0.ebuild 4812 BLAKE2B a6eae9bc6da34510bab4a99ee074f99065b0882e132063d2f48a6e472c9b6dc736d7029e145ee7c1719ef6532ae8332f04b2273a65679321f5c829d2916adad3 SHA512 81cd671292722fa1d62062946dccdd7e0026dd790da48e66a0fc53c301cd92c63acaf927cf6d85f3c3ea2697e01e6af5be927fad01895db982a73ab69dd389f6
+EBUILD ldb-2.9.0.ebuild 4776 BLAKE2B 5b551a17a57194207e80e29aa2fec99ffc6591386d0e49cf9d4345832d27dda7072c3e7c2df61cca85ad5e803d262e4ba5b8be0f8eccf3025d2b25d79c3fdf13 SHA512 5da8a3d45fb84ed23491873ecb0469fe9ed7c4b19366fcf2c2373a85e4a4a1be395b013d9fd0a9e70cbc25caf72f07594664ca56cc0df8e32afc39814c5cf3a4
MISC metadata.xml 446 BLAKE2B 4ee524096a438d9cbf73faea3207715f6570b763715578b74289732677c1a159955783b3d81beb775612f15f1a58f10fe9ee68406bb22484faddabb302680620 SHA512 beffe8e4143ba8a595dabfe3e9c0ed7e1093b4e92dded1a6d7dd27e2bde7928d26e95ba048e421ab17d506ede92675764732388aa8edb454cd7753a0e0094c49
diff --git a/sys-libs/ldb/ldb-2.4.4.ebuild b/sys-libs/ldb/ldb-2.4.4.ebuild
deleted file mode 100644
index fbcda7f37ac1..000000000000
--- a/sys-libs/ldb/ldb-2.4.4.ebuild
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+)"
-inherit python-single-r1 waf-utils multilib-minimal
-
-DESCRIPTION="LDAP-like embedded database"
-HOMEPAGE="https://ldb.samba.org"
-SRC_URI="https://samba.org/ftp/pub/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-3"
-SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="doc ldap +lmdb python test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- test? ( lmdb python )"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-libs/libbsd[${MULTILIB_USEDEP}]
- dev-libs/popt[${MULTILIB_USEDEP}]
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- >=sys-libs/talloc-2.3.3[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-1.4.4[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-0.11.0[${MULTILIB_USEDEP}]
- ldap? ( net-nds/openldap:= )
- lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] )
- python? (
- ${PYTHON_DEPS}
- sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
- sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}]
- sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}]
- )
-"
-DEPEND="${RDEPEND}
- virtual/libcrypt
-"
-BDEPEND="${PYTHON_DEPS}
- dev-libs/libxslt
- virtual/pkgconfig
- doc? ( app-text/doxygen )
-"
-
-WAF_BINARY="${S}/buildtools/bin/waf"
-
-MULTILIB_WRAPPED_HEADERS=( /usr/include/pyldb.h )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.5.2-optional_packages.patch
- "${FILESDIR}"/${PN}-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch
- "${FILESDIR}"/${PN}-2.4.2-skip-32bit-time_t-tests.patch
- "${FILESDIR}"/${PN}-2.5.2-skip-waf-tevent-check.patch
-)
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
-
- # waf requires a python interpreter
- python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- local myconf=(
- $(usex ldap '' --disable-ldap)
- $(usex lmdb '' --without-ldb-lmdb)
- --disable-rpath
- --disable-rpath-install --bundled-libraries=NONE
- --with-modulesdir="${EPREFIX}"/usr/$(get_libdir)/samba
- --builtin-libraries=NONE
- )
- if ! multilib_is_native_abi; then
- myconf+=( --disable-python )
- else
- use python || myconf+=( --disable-python )
- fi
- waf-utils_src_configure "${myconf[@]}"
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
- multilib_is_native_abi && use doc && doxygen Doxyfile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi; then
- WAF_MAKE=1 \
- PATH=buildtools/bin:../../../buildtools/bin:$PATH:"${BUILD_DIR}"/bin/shared/private/ \
- LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"${BUILD_DIR}"/bin/shared/private/:"${BUILD_DIR}"/bin/shared \
- waf test || die
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- if multilib_is_native_abi && use doc; then
- doman apidocs/man/man3/*.3
- docinto html
- dodoc -r apidocs/html/.
- fi
-
- use python && python_optimize #726454
-}
-
-pkg_postinst() {
- if has_version sys-auth/sssd; then
- ewarn "You have sssd installed. It is known to break after ldb upgrades,"
- ewarn "so please try to rebuild it before reporting bugs."
- ewarn "See https://bugs.gentoo.org/404281"
- fi
-}
diff --git a/sys-libs/ldb/ldb-2.5.2.ebuild b/sys-libs/ldb/ldb-2.5.2.ebuild
deleted file mode 100644
index 180e90208d90..000000000000
--- a/sys-libs/ldb/ldb-2.5.2.ebuild
+++ /dev/null
@@ -1,122 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+)"
-inherit python-single-r1 waf-utils multilib-minimal
-
-DESCRIPTION="LDAP-like embedded database"
-HOMEPAGE="https://ldb.samba.org"
-SRC_URI="https://samba.org/ftp/pub/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-3"
-SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="doc ldap +lmdb python test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- test? ( lmdb python )"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-libs/libbsd[${MULTILIB_USEDEP}]
- dev-libs/popt[${MULTILIB_USEDEP}]
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- >=sys-libs/talloc-2.3.3[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-1.4.6[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-0.11.0[${MULTILIB_USEDEP}]
- ldap? ( net-nds/openldap:= )
- lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] )
- python? (
- ${PYTHON_DEPS}
- sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
- sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}]
- sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}]
- )
-"
-DEPEND="${RDEPEND}
- virtual/libcrypt
-"
-BDEPEND="${PYTHON_DEPS}
- dev-libs/libxslt
- virtual/pkgconfig
- doc? ( app-text/doxygen )
-"
-
-WAF_BINARY="${S}/buildtools/bin/waf"
-
-MULTILIB_WRAPPED_HEADERS=( /usr/include/pyldb.h )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.5.2-optional_packages.patch
- "${FILESDIR}"/${PN}-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch
- "${FILESDIR}"/${PN}-2.4.2-skip-32bit-time_t-tests.patch
- "${FILESDIR}"/${PN}-2.5.2-skip-waf-tevent-check.patch
-)
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
-
- # waf requires a python interpreter
- python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- local myconf=(
- $(usex ldap '' --disable-ldap)
- $(usex lmdb '' --without-ldb-lmdb)
- --disable-rpath
- --disable-rpath-install --bundled-libraries=NONE
- --with-modulesdir="${EPREFIX}"/usr/$(get_libdir)/samba
- --builtin-libraries=NONE
- )
- if ! multilib_is_native_abi; then
- myconf+=( --disable-python )
- else
- use python || myconf+=( --disable-python )
- fi
- waf-utils_src_configure "${myconf[@]}"
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
- multilib_is_native_abi && use doc && doxygen Doxyfile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi; then
- WAF_MAKE=1 \
- PATH=buildtools/bin:../../../buildtools/bin:$PATH:"${BUILD_DIR}"/bin/shared/private/ \
- LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"${BUILD_DIR}"/bin/shared/private/:"${BUILD_DIR}"/bin/shared \
- waf test || die
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- if multilib_is_native_abi && use doc; then
- doman apidocs/man/man3/*.3
- docinto html
- dodoc -r apidocs/html/.
- fi
-
- use python && python_optimize #726454
-}
-
-pkg_postinst() {
- if has_version sys-auth/sssd; then
- ewarn "You have sssd installed. It is known to break after ldb upgrades,"
- ewarn "so please try to rebuild it before reporting bugs."
- ewarn "See https://bugs.gentoo.org/404281"
- fi
-}
diff --git a/sys-libs/ldb/ldb-2.5.3.ebuild b/sys-libs/ldb/ldb-2.5.3.ebuild
deleted file mode 100644
index 8ec35b8dee3a..000000000000
--- a/sys-libs/ldb/ldb-2.5.3.ebuild
+++ /dev/null
@@ -1,129 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+)"
-inherit python-single-r1 waf-utils multilib-minimal
-
-DESCRIPTION="LDAP-like embedded database"
-HOMEPAGE="https://ldb.samba.org"
-SRC_URI="https://samba.org/ftp/pub/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-3"
-SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="doc ldap +lmdb python test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- test? ( lmdb )"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-libs/libbsd[${MULTILIB_USEDEP}]
- dev-libs/popt[${MULTILIB_USEDEP}]
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- >=sys-libs/talloc-2.3.3[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-1.4.6[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-0.11.0[${MULTILIB_USEDEP}]
- ldap? ( net-nds/openldap:= )
- lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] )
- python? (
- ${PYTHON_DEPS}
- sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
- sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}]
- sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}]
- )
-"
-DEPEND="${RDEPEND}
- virtual/libcrypt
-"
-BDEPEND="${PYTHON_DEPS}
- dev-libs/libxslt
- virtual/pkgconfig
- doc? ( app-text/doxygen )
-"
-
-WAF_BINARY="${S}/buildtools/bin/waf"
-
-MULTILIB_WRAPPED_HEADERS=( /usr/include/pyldb.h )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.5.2-optional_packages.patch
- "${FILESDIR}"/${PN}-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch
- "${FILESDIR}"/${PN}-2.4.2-skip-32bit-time_t-tests.patch
- "${FILESDIR}"/${PN}-2.5.2-skip-waf-tevent-check.patch
-)
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
-
- # waf requires a python interpreter
- python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
-
- if use test && ! use python ; then
- # We want to be able to run tests w/o Python as it makes
- # automated testing much easier (as USE=python isn't default-enabled).
- truncate -s0 tests/python/{repack,index,api,crash}.py || die
- fi
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- local myconf=(
- $(usex ldap '' --disable-ldap)
- $(usex lmdb '' --without-ldb-lmdb)
- --disable-rpath
- --disable-rpath-install --bundled-libraries=NONE
- --with-modulesdir="${EPREFIX}"/usr/$(get_libdir)/samba
- --builtin-libraries=NONE
- )
- if ! multilib_is_native_abi; then
- myconf+=( --disable-python )
- else
- use python || myconf+=( --disable-python )
- fi
- waf-utils_src_configure "${myconf[@]}"
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
- multilib_is_native_abi && use doc && doxygen Doxyfile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi; then
- WAF_MAKE=1 \
- PATH=buildtools/bin:../../../buildtools/bin:$PATH:"${BUILD_DIR}"/bin/shared/private/ \
- LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"${BUILD_DIR}"/bin/shared/private/:"${BUILD_DIR}"/bin/shared \
- waf test || die
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- if multilib_is_native_abi && use doc; then
- doman apidocs/man/man3/*.3
- docinto html
- dodoc -r apidocs/html/.
- fi
-
- use python && python_optimize #726454
-}
-
-pkg_postinst() {
- if has_version sys-auth/sssd; then
- ewarn "You have sssd installed. It is known to break after ldb upgrades,"
- ewarn "so please try to rebuild it before reporting bugs."
- ewarn "See https://bugs.gentoo.org/404281"
- fi
-}
diff --git a/sys-libs/ldb/ldb-2.6.2.ebuild b/sys-libs/ldb/ldb-2.6.2.ebuild
deleted file mode 100644
index dd88cd473194..000000000000
--- a/sys-libs/ldb/ldb-2.6.2.ebuild
+++ /dev/null
@@ -1,174 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="threads(+)"
-inherit python-single-r1 waf-utils multilib-minimal
-
-DESCRIPTION="LDAP-like embedded database"
-HOMEPAGE="https://ldb.samba.org"
-SRC_URI="https://samba.org/ftp/pub/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-3"
-SLOT="0/${PV}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="doc ldap +lmdb python test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- test? ( lmdb )"
-
-RESTRICT="!test? ( test )"
-
-TALLOC_VERSION="2.3.4"
-TDB_VERSION="1.4.7"
-TEVENT_VERSION="0.13.0"
-
-RDEPEND="
- dev-libs/libbsd[${MULTILIB_USEDEP}]
- dev-libs/popt[${MULTILIB_USEDEP}]
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-${TDB_VERSION}[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-${TEVENT_VERSION}[${MULTILIB_USEDEP}]
- ldap? ( net-nds/openldap:= )
- lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] )
- python? (
- ${PYTHON_DEPS}
- sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
- sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}]
- sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}]
- )
-"
-DEPEND="
- ${RDEPEND}
- virtual/libcrypt
- test? ( >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}] )
-"
-BDEPEND="${PYTHON_DEPS}
- dev-libs/libxslt
- virtual/pkgconfig
- doc? ( app-text/doxygen )
-"
-
-WAF_BINARY="${S}/buildtools/bin/waf"
-
-MULTILIB_WRAPPED_HEADERS=( /usr/include/pyldb.h )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.5.2-optional_packages.patch
- "${FILESDIR}"/${PN}-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch
- "${FILESDIR}"/${PN}-2.4.2-skip-32bit-time_t-tests.patch
- "${FILESDIR}"/${PN}-2.5.2-skip-waf-tevent-check.patch
- "${FILESDIR}"/cmocka-config_h.patch
-)
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
- export PYTHONHASHSEED=1
-
- # waf requires a python interpreter
- python-single-r1_pkg_setup
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-
- actual_tdb_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tdb/wscript || die)
- if [[ ${actual_tdb_version} != ${TDB_VERSION} ]] ; then
- eerror "Source tdb version: ${TDB_VERSION}"
- eerror "Ebuild tdb version: ${actual_tdb_version}"
- die "Ebuild needs to fix TDB_VERSION!"
- fi
-
- actual_tevent_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/tevent/wscript || die)
- if [[ ${actual_tevent_version} != ${TEVENT_VERSION} ]] ; then
- eerror "Source tevent version: ${TEVENT_VERSION}"
- eerror "Ebuild tevent version: ${actual_tevent_version}"
- die "Ebuild needs to fix TEVENT_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- if use test && ! use python ; then
- # We want to be able to run tests w/o Python as it makes
- # automated testing much easier (as USE=python isn't default-enabled).
- truncate -s0 tests/python/{repack,index,api,crash}.py || die
- fi
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- # When specifying libs for samba build you must append NONE to the end to
- # stop it automatically including things
- local bundled_libs="NONE"
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- local myconf=(
- $(usex ldap '' --disable-ldap)
- $(usex lmdb '' --without-ldb-lmdb)
- --disable-rpath
- --disable-rpath-install
- --with-modulesdir="${EPREFIX}"/usr/$(get_libdir)/samba
- --bundled-libraries="${bundled_libs}"
- --builtin-libraries=NONE
- )
-
- if ! use python || ! multilib_is_native_abi; then
- myconf+=( --disable-python )
- fi
-
- waf-utils_src_configure "${myconf[@]}"
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
- multilib_is_native_abi && use doc && doxygen Doxyfile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi; then
- WAF_MAKE=1 \
- PATH=buildtools/bin:../../../buildtools/bin:${PATH}:"${BUILD_DIR}"/bin/shared/private/ \
- LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:"${BUILD_DIR}"/bin/shared/private/:"${BUILD_DIR}"/bin/shared \
- waf test || die
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- if multilib_is_native_abi && use doc; then
- doman apidocs/man/man3/*.3
- docinto html
- dodoc -r apidocs/html/.
- fi
-
- # bug #726454
- use python && python_optimize
-}
-
-pkg_postinst() {
- if has_version sys-auth/sssd; then
- ewarn "You have sssd installed. It is known to break after ldb upgrades,"
- ewarn "so please try to rebuild it before reporting bugs."
- ewarn "See https://bugs.gentoo.org/404281"
- fi
-}
diff --git a/sys-libs/ldb/ldb-2.7.2.ebuild b/sys-libs/ldb/ldb-2.7.2.ebuild
index 7efbfffe0bcc..215b17a2db26 100644
--- a/sys-libs/ldb/ldb-2.7.2.ebuild
+++ b/sys-libs/ldb/ldb-2.7.2.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_COMPAT=( python3_{10..12} )
PYTHON_REQ_USE="threads(+)"
inherit python-single-r1 waf-utils multilib-minimal
diff --git a/sys-libs/ldb/ldb-2.8.0.ebuild b/sys-libs/ldb/ldb-2.8.0.ebuild
index 9a9ef754e6f3..1150a03d4d03 100644
--- a/sys-libs/ldb/ldb-2.8.0.ebuild
+++ b/sys-libs/ldb/ldb-2.8.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_COMPAT=( python3_{10..12} )
PYTHON_REQ_USE="threads(+)"
inherit python-single-r1 waf-utils multilib-minimal
diff --git a/sys-libs/ldb/ldb-2.9.0.ebuild b/sys-libs/ldb/ldb-2.9.0.ebuild
index c0dac63c7137..c1161904910d 100644
--- a/sys-libs/ldb/ldb-2.9.0.ebuild
+++ b/sys-libs/ldb/ldb-2.9.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_COMPAT=( python3_{10..12} )
PYTHON_REQ_USE="threads(+)"
inherit python-single-r1 waf-utils multilib-minimal
diff --git a/sys-libs/libcap/Manifest b/sys-libs/libcap/Manifest
index 21df47a64389..b4c8132dbd81 100644
--- a/sys-libs/libcap/Manifest
+++ b/sys-libs/libcap/Manifest
@@ -1,5 +1,7 @@
AUX libcap-2.62-ignore-RAISE_SETFCAP-install-failures.patch 724 BLAKE2B 39b2924071c9c6b1ffba3acf2fbeea6196c20da175ed4a5ddd6fac5375d604df3823bf183c36da6eb03e1b9cd918d107fd7e5b30f2f3746ce17b589a77f3dec5 SHA512 11ca33d7f1a352cce9dad179be415b6282efdbb9049a92ba945cbfbee2b6c263af39adb3a93f62e5077d9b33e0f098f9125362432bd333601345d8c3671d40bd
DIST libcap-2.69.tar.xz 189200 BLAKE2B 94d1fef7666a1c383a8b96f1f6092bd242164631532868b628d2f5de71b42a371d041a978ef7fbadfee3eeb433165444995d1078cd790275bc0433a7875a697e SHA512 647c307dc451517da9d089495ab959b4a6fbbe41c79f4e1e9bb663569dad630ead0c2e413dfb393319e3ea14dc9848c81b392107fe3382ce1813d278c3394a7f
+DIST libcap-2.70.tar.xz 191388 BLAKE2B 77b72acee53032117ea481e3380d1b497f9264b6193b9523542508c7c3e46070248ca4ed910d35809ce6e52caa60cbb31edb125c47221627eeda35c61bd0914b SHA512 4e0bf0efeccb654c409afe9727b2b53c1d4da8190d7a0a9848fc52550ff3e13502add3eacde04a68a5b7bec09e91df487f64c5746ba987f873236a9e53b3d4e8
EBUILD libcap-2.69-r1.ebuild 2180 BLAKE2B f97553d779b1432b5af33493afad8fbdd65f1c2ff40b8d74038922cc1452c97b7796ed164a112444be315abfecc734959cf3d1f2398694c1c97303dd1df0f759 SHA512 ee63fb73be7d7dc94d881dbf004ea1f44d566719c1afcc5c36455d85fef9bd70a0175e9b57b92e7454ffc6be7c0e1451d61a5c7f56944987fb2f7267f82b3b21
+EBUILD libcap-2.70.ebuild 2188 BLAKE2B c090d7a6d384cb1e0298b57eb3ff5ff36912b6dc68995058df2cd12a30b83e9ebbfb37738f248e67e57c68baf2ea3f2f5d1572d4d093b9c56db47f6289d6f28f SHA512 ec9fb399a62a915d2626835e0edfdcea841642ea93d4f0531294832b29bee000f973e96659a8bdebf96c6b541b3c67d5add8edc25acc1fe1ec12d39e6e925e6f
EBUILD libcap-9999.ebuild 2188 BLAKE2B c090d7a6d384cb1e0298b57eb3ff5ff36912b6dc68995058df2cd12a30b83e9ebbfb37738f248e67e57c68baf2ea3f2f5d1572d4d093b9c56db47f6289d6f28f SHA512 ec9fb399a62a915d2626835e0edfdcea841642ea93d4f0531294832b29bee000f973e96659a8bdebf96c6b541b3c67d5add8edc25acc1fe1ec12d39e6e925e6f
MISC metadata.xml 438 BLAKE2B b5260cc84a3fe6b992bb6218846c738af296522d7a467337c05a6240fd07fc9d6cece779bd9fcf24a11486a70874e17acae8182647d307a31cf43e1c19c3a2d3 SHA512 fa3713dcf6b7bb2ea6d4c2fdefc05e92ae345c76a6187ebcb40dab8c4ce0148650a8301f236efcb8cf53fff25730977a385578dbaa160b800159c6d6abbf37a9
diff --git a/sys-libs/libcap/libcap-2.70.ebuild b/sys-libs/libcap/libcap-2.70.ebuild
new file mode 100644
index 000000000000..ee91b8f42d9c
--- /dev/null
+++ b/sys-libs/libcap/libcap-2.70.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib-minimal toolchain-funcs pam
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://git.kernel.org/pub/scm/libs/libcap/libcap.git"
+else
+ SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
+
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+DESCRIPTION="POSIX 1003.1e capabilities"
+HOMEPAGE="https://sites.google.com/site/fullycapable/"
+
+# it's available under either of the licenses
+LICENSE="|| ( GPL-2 BSD )"
+SLOT="0"
+IUSE="pam static-libs tools"
+
+# 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"
+BDEPEND="
+ sys-apps/diffutils
+ tools? ( dev-lang/go )"
+
+QA_FLAGS_IGNORED="sbin/captree" # go binaries don't use LDFLAGS
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.62-ignore-RAISE_SETFCAP-install-failures.patch
+)
+
+src_prepare() {
+ default
+ multilib_copy_sources
+}
+
+run_emake() {
+ local args=(
+ AR="$(tc-getAR)"
+ CC="$(tc-getCC)"
+ OBJCOPY="$(tc-getOBJCOPY)"
+ RANLIB="$(tc-getRANLIB)"
+ exec_prefix="${EPREFIX}"
+ lib_prefix="${EPREFIX}/usr"
+ lib="$(get_libdir)"
+ prefix="${EPREFIX}/usr"
+ PAM_CAP="$(usex pam yes no)"
+ DYNAMIC=yes
+ GOLANG="$(multilib_native_usex tools yes no)"
+ )
+ emake "${args[@]}" "$@"
+}
+
+src_configure() {
+ tc-export_build_env BUILD_CC
+ multilib-minimal_src_configure
+}
+
+multilib_src_compile() {
+ run_emake
+}
+
+multilib_src_test() {
+ run_emake test
+}
+
+multilib_src_install() {
+ # no configure, needs explicit install line #444724#c3
+ run_emake DESTDIR="${D}" install
+
+ if ! use static-libs ; then
+ rm "${ED}"/usr/$(get_libdir)/lib{cap,psx}.a || die
+ fi
+
+ # install pam plugins ourselves
+ rm -rf "${ED}"/usr/$(get_libdir)/security || die
+
+ 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.md
+}
diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest
index d18401f3df66..c36d1b0e6bd0 100644
--- a/sys-libs/libcxx/Manifest
+++ b/sys-libs/libcxx/Manifest
@@ -6,17 +6,18 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659
DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
-DIST llvm-project-18.1.4.src.tar.xz 132054668 BLAKE2B 94bbad3b185fd07cbace4eff79aba80fbdd5e072739250e3927fe1848bcf3f8d355eb1f384e57306707eb702acc7ab01b732590735be7950221607664d04b0a6 SHA512 b1b214ae91f3705d8ea345547ad53f1e5d7d884c1eb6958bc41c14ac4b3e407771ccc2b693686ff103c8232c2c3942731d6db9a9cb4f735e6c6a0674739d0b29
-DIST llvm-project-18.1.4.src.tar.xz.sig 566 BLAKE2B b74fd219d7bcdf197b4e711cfbb25c40e9d8d2c7341de0215d8c31f330f396e9c166ff63513829cdc9cef349f08238f66a4dc949fa97958a7af496abae369eaa SHA512 4f456edf4fb454815acaef6855b1a0991f229810a32e9369af83388e37f0ef8964308e1e93bd6216024cdd67e86caaadc8d5794467857cc6fe561c9fa6ca7386
-DIST llvm-project-338561657685c1831a53563b1bc36ffc7470239e.tar.gz 209715501 BLAKE2B 49152479d4f2cae430e783784d0cfcc129134f5cc0bf12c72701cd15e59cb3e1be2f61385ba9baa93d1d1193e89374ac8877b909650c163b681d1fcd26732cdc SHA512 d34bbe82e85c5b9d493029ad7b46e802f06f7e7a8a48515d0043c58c3251271f8f3e1e11c47eb91bd3db2477f819d33b43ddebb276eb9601c5ad141e463c9682
-DIST llvm-project-ee284d2da0720dc21191d6f545504cbfcf5dcbcf.tar.gz 208883034 BLAKE2B e37c9f1a6a4d0caa9a3091f979dd09f509d458f8b7b30286c77dd2385aea748b7aac6dd488c79573f82feb655aa321717bd2fb46bba4a12b388b52064f6e13bf SHA512 1335ade87cd2accc47ac47ed2ab302999e375808b158b6c9d31fac9059cbb992d2bdaaadf1fd9a1b37268c1123d43346ea4d150894d6d2e6f80ba790b65b93b1
-DIST llvm-project-f03cd2db91956456f1c5e2da86d3c50183eebd28.tar.gz 209375254 BLAKE2B 1d7e043d04323edb64b2ef2309fbcb4f82a959f45391e815133cc0891d5a497bbb81101aab460e9bf67e75aa906e13ad1877c3850829dcad397ed626dc8f2792 SHA512 6775e03a44b2133bd4a4b473ab007599321daa19dc7f3cc47f95cf9d110e83e982bf48a6b1d43038b0f0a2c0fef2f689aefd20132b25a90ef19342683e2d2e50
+DIST llvm-project-18.1.5.src.tar.xz 132061072 BLAKE2B bfdd987d5992a4d94ae8b14792df3be67a8e8fdf1daef9834cdaa2132df1b7ddb72ba0aabbb34b171a73d0f3b2b0f61e7160f0b278a67fd4850e3f501fd21531 SHA512 9e2f1e251b3754a24a0b39676d78c98692887c05c85cf0bee50fd44d9635290019930d4dabd1ff4ba3c9c1067e7e0e09aa1bbcd3d76687f919a1d44ba85eee20
+DIST llvm-project-18.1.5.src.tar.xz.sig 566 BLAKE2B ad935db71ec3b9fc885d696af440764a71fe7cafc5b3ca0b25a2963100d9cb3790392daebcac1341716c95a8da3c6243f5a8667fea1ed18b93fc8baa495414c9 SHA512 3cbca1059d940f3bd7bd72d68f2828039b66304980cc5f43769649e5494fc7d71117bf8aba5cc7f7a2ffca52f60ba30fadf3b28f984fd49ddb14300e30b45237
+DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c68c8e441a126cf8e89e55a965f3b9e3a629a37d5743fd7859a60bedaddf27ff2da1e0f08c81806871ef542cb7c3f40b23b22cf5 SHA512 89ec276aa41bb2d76cfc3a72d8e728a9ce9176e02c085338b704790524fe329904cf311381805814faa8a6c79637620c01627bf122a51f89e0f3adb47e5df34c
+DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
+DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
+DIST llvm-project-a7ee81e8279e0bf6e05617a4a638e5f2f8e45022.tar.gz 210384692 BLAKE2B 28b85b08a42c173e1c3bf530483112b1629c7e6684a83a016fbe9f132774f7b864d793581873a6529defeabb4479ad9a3d7c025b781b2fa4952c239b6d567b11 SHA512 1d593818347452f96611a62fa3aa22ce4355a4ee5d5dcfcb54a286a1aa980e9531d5fb6cbee3b0ee5943c6d0f4e2ba2245e13262fe7859e5b114f9c5d5cf1417
EBUILD libcxx-15.0.7-r1.ebuild 5283 BLAKE2B 4380fc5b851054a5ec226ee4c92a2b79511d73ac9b3f8bccc977211601eca36113fc0ae605854da53898507021f24a8b319197605c556244d84253bede7b84f4 SHA512 0a5859269422e794deb43ed960651a1dea830af28b5e395f32e28de8e67a1f399507340230af1c84248853f554e751709a60a9a78aeb0eb42804cb41907dbfce
EBUILD libcxx-16.0.6.ebuild 5300 BLAKE2B 4714e22ad2fdcb07c62ead4cfa47fb4734e45dc055700b63a0f24cd6e93dde960c638fa16f55f4c04c6130fc2a7fa5729814c4aee12e9953f603ea5ccb706cc1 SHA512 3eab779107b5c737d971abe29b7bd9f44a73570957bd7d54d6aaa98ec78a6045d7d69272d611f7f09c60e1aa30bbad46b4bd1358b0b2c69e5bc686ab21444857
EBUILD libcxx-17.0.6.ebuild 5280 BLAKE2B a882313471af07942a0772efa642800ba85545227f7dfe281cd7fcdc686ecda82692d273550b28cca2de47b1b9fda87717c98c52ffafdf1155d5269a3733f48a SHA512 d9a2932d7b9e26dea0e62dfd3aeac08ad0206a242d3d42d83e55b93cc767195a67bc0eb3da38cb8d51930175f94bac6496184d6d4be516014e0208c3f852d427
-EBUILD libcxx-18.1.4.ebuild 5447 BLAKE2B 262f4dd0ccb046dcdf7f6970350381a9a48530f7db546f1b6cef5493b5e2a657a403bb0b5fda0d2d100420c6f8f1bac82f635efa8ad6c70d4476ad101c35eb13 SHA512 74ddb2227a2c8cd3d106861dc8155720f757011933835a36b8a5c133de68db80c14d93ad0cd8c3fa62232ce1e0871889b6db15c4bd53d2c1ea34762d93addc0c
+EBUILD libcxx-18.1.5.ebuild 5447 BLAKE2B 262f4dd0ccb046dcdf7f6970350381a9a48530f7db546f1b6cef5493b5e2a657a403bb0b5fda0d2d100420c6f8f1bac82f635efa8ad6c70d4476ad101c35eb13 SHA512 74ddb2227a2c8cd3d106861dc8155720f757011933835a36b8a5c133de68db80c14d93ad0cd8c3fa62232ce1e0871889b6db15c4bd53d2c1ea34762d93addc0c
+EBUILD libcxx-18.1.6.ebuild 5447 BLAKE2B 262f4dd0ccb046dcdf7f6970350381a9a48530f7db546f1b6cef5493b5e2a657a403bb0b5fda0d2d100420c6f8f1bac82f635efa8ad6c70d4476ad101c35eb13 SHA512 74ddb2227a2c8cd3d106861dc8155720f757011933835a36b8a5c133de68db80c14d93ad0cd8c3fa62232ce1e0871889b6db15c4bd53d2c1ea34762d93addc0c
EBUILD libcxx-19.0.0.9999.ebuild 5397 BLAKE2B 800024bbb9b69c7c159d05bf481db08bfb4c89b93a517410a892cd80a0a0bbf07119d0babcc952283bfc4dff51dd4ea4253a63cbc3f301db6e281074e4a2061a SHA512 61a3676d06d6e5f44e5a6f0de8f05c0af5384c3e940b2f504bddbe6b9a806ae5c5ff8311f6986a284338761e554894ddb1bec7f5e1b324a6e211b1d60f0eb635
-EBUILD libcxx-19.0.0_pre20240410.ebuild 5397 BLAKE2B 800024bbb9b69c7c159d05bf481db08bfb4c89b93a517410a892cd80a0a0bbf07119d0babcc952283bfc4dff51dd4ea4253a63cbc3f301db6e281074e4a2061a SHA512 61a3676d06d6e5f44e5a6f0de8f05c0af5384c3e940b2f504bddbe6b9a806ae5c5ff8311f6986a284338761e554894ddb1bec7f5e1b324a6e211b1d60f0eb635
-EBUILD libcxx-19.0.0_pre20240420.ebuild 5397 BLAKE2B 800024bbb9b69c7c159d05bf481db08bfb4c89b93a517410a892cd80a0a0bbf07119d0babcc952283bfc4dff51dd4ea4253a63cbc3f301db6e281074e4a2061a SHA512 61a3676d06d6e5f44e5a6f0de8f05c0af5384c3e940b2f504bddbe6b9a806ae5c5ff8311f6986a284338761e554894ddb1bec7f5e1b324a6e211b1d60f0eb635
-EBUILD libcxx-19.0.0_pre20240427.ebuild 5397 BLAKE2B 800024bbb9b69c7c159d05bf481db08bfb4c89b93a517410a892cd80a0a0bbf07119d0babcc952283bfc4dff51dd4ea4253a63cbc3f301db6e281074e4a2061a SHA512 61a3676d06d6e5f44e5a6f0de8f05c0af5384c3e940b2f504bddbe6b9a806ae5c5ff8311f6986a284338761e554894ddb1bec7f5e1b324a6e211b1d60f0eb635
+EBUILD libcxx-19.0.0_pre20240509.ebuild 5397 BLAKE2B 800024bbb9b69c7c159d05bf481db08bfb4c89b93a517410a892cd80a0a0bbf07119d0babcc952283bfc4dff51dd4ea4253a63cbc3f301db6e281074e4a2061a SHA512 61a3676d06d6e5f44e5a6f0de8f05c0af5384c3e940b2f504bddbe6b9a806ae5c5ff8311f6986a284338761e554894ddb1bec7f5e1b324a6e211b1d60f0eb635
+EBUILD libcxx-19.0.0_pre20240518.ebuild 5397 BLAKE2B 800024bbb9b69c7c159d05bf481db08bfb4c89b93a517410a892cd80a0a0bbf07119d0babcc952283bfc4dff51dd4ea4253a63cbc3f301db6e281074e4a2061a SHA512 61a3676d06d6e5f44e5a6f0de8f05c0af5384c3e940b2f504bddbe6b9a806ae5c5ff8311f6986a284338761e554894ddb1bec7f5e1b324a6e211b1d60f0eb635
MISC metadata.xml 598 BLAKE2B b7a60449e0d8e4e7605ec203dfaa45b17a265b024e21a3bcfe05a3aeb6c3d19a1d2a218cb1f9ac9ed52296f0d6e723fed251f364341fb70cbd91b747962db580 SHA512 a23f912efff52c4687767023da826ace8c6e5dcd5e69ece86aabbea99da89e48ba81cdc292f03193e2e8a05743e62ebf4d4735d038e0cc4b42714fa277569335
diff --git a/sys-libs/libcxx/libcxx-18.1.4.ebuild b/sys-libs/libcxx/libcxx-18.1.5.ebuild
index a6fca47e6c29..a6fca47e6c29 100644
--- a/sys-libs/libcxx/libcxx-18.1.4.ebuild
+++ b/sys-libs/libcxx/libcxx-18.1.5.ebuild
diff --git a/sys-libs/libcxx/libcxx-19.0.0_pre20240427.ebuild b/sys-libs/libcxx/libcxx-18.1.6.ebuild
index e29d57a316d3..a6fca47e6c29 100644
--- a/sys-libs/libcxx/libcxx-19.0.0_pre20240427.ebuild
+++ b/sys-libs/libcxx/libcxx-18.1.6.ebuild
@@ -12,6 +12,7 @@ HOMEPAGE="https://libcxx.llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
IUSE="+clang +libcxxabi +static-libs test"
REQUIRED_USE="test? ( clang )"
RESTRICT="!test? ( test )"
@@ -127,7 +128,6 @@ multilib_src_configure() {
-DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl)
-DLIBCXX_INCLUDE_BENCHMARKS=OFF
-DLIBCXX_INCLUDE_TESTS=$(usex test)
- -DLIBCXX_INSTALL_MODULES=ON
-DLIBCXX_USE_COMPILER_RT=${use_compiler_rt}
# this is broken with standalone builds, and also meaningless
-DLIBCXXABI_USE_LLVM_UNWINDER=OFF
diff --git a/sys-libs/libcxx/libcxx-19.0.0_pre20240410.ebuild b/sys-libs/libcxx/libcxx-19.0.0_pre20240509.ebuild
index e29d57a316d3..e29d57a316d3 100644
--- a/sys-libs/libcxx/libcxx-19.0.0_pre20240410.ebuild
+++ b/sys-libs/libcxx/libcxx-19.0.0_pre20240509.ebuild
diff --git a/sys-libs/libcxx/libcxx-19.0.0_pre20240420.ebuild b/sys-libs/libcxx/libcxx-19.0.0_pre20240518.ebuild
index e29d57a316d3..e29d57a316d3 100644
--- a/sys-libs/libcxx/libcxx-19.0.0_pre20240420.ebuild
+++ b/sys-libs/libcxx/libcxx-19.0.0_pre20240518.ebuild
diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest
index a1a0ffb2b90f..b6aef8c6726c 100644
--- a/sys-libs/libcxxabi/Manifest
+++ b/sys-libs/libcxxabi/Manifest
@@ -4,17 +4,18 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659
DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
-DIST llvm-project-18.1.4.src.tar.xz 132054668 BLAKE2B 94bbad3b185fd07cbace4eff79aba80fbdd5e072739250e3927fe1848bcf3f8d355eb1f384e57306707eb702acc7ab01b732590735be7950221607664d04b0a6 SHA512 b1b214ae91f3705d8ea345547ad53f1e5d7d884c1eb6958bc41c14ac4b3e407771ccc2b693686ff103c8232c2c3942731d6db9a9cb4f735e6c6a0674739d0b29
-DIST llvm-project-18.1.4.src.tar.xz.sig 566 BLAKE2B b74fd219d7bcdf197b4e711cfbb25c40e9d8d2c7341de0215d8c31f330f396e9c166ff63513829cdc9cef349f08238f66a4dc949fa97958a7af496abae369eaa SHA512 4f456edf4fb454815acaef6855b1a0991f229810a32e9369af83388e37f0ef8964308e1e93bd6216024cdd67e86caaadc8d5794467857cc6fe561c9fa6ca7386
-DIST llvm-project-338561657685c1831a53563b1bc36ffc7470239e.tar.gz 209715501 BLAKE2B 49152479d4f2cae430e783784d0cfcc129134f5cc0bf12c72701cd15e59cb3e1be2f61385ba9baa93d1d1193e89374ac8877b909650c163b681d1fcd26732cdc SHA512 d34bbe82e85c5b9d493029ad7b46e802f06f7e7a8a48515d0043c58c3251271f8f3e1e11c47eb91bd3db2477f819d33b43ddebb276eb9601c5ad141e463c9682
-DIST llvm-project-ee284d2da0720dc21191d6f545504cbfcf5dcbcf.tar.gz 208883034 BLAKE2B e37c9f1a6a4d0caa9a3091f979dd09f509d458f8b7b30286c77dd2385aea748b7aac6dd488c79573f82feb655aa321717bd2fb46bba4a12b388b52064f6e13bf SHA512 1335ade87cd2accc47ac47ed2ab302999e375808b158b6c9d31fac9059cbb992d2bdaaadf1fd9a1b37268c1123d43346ea4d150894d6d2e6f80ba790b65b93b1
-DIST llvm-project-f03cd2db91956456f1c5e2da86d3c50183eebd28.tar.gz 209375254 BLAKE2B 1d7e043d04323edb64b2ef2309fbcb4f82a959f45391e815133cc0891d5a497bbb81101aab460e9bf67e75aa906e13ad1877c3850829dcad397ed626dc8f2792 SHA512 6775e03a44b2133bd4a4b473ab007599321daa19dc7f3cc47f95cf9d110e83e982bf48a6b1d43038b0f0a2c0fef2f689aefd20132b25a90ef19342683e2d2e50
+DIST llvm-project-18.1.5.src.tar.xz 132061072 BLAKE2B bfdd987d5992a4d94ae8b14792df3be67a8e8fdf1daef9834cdaa2132df1b7ddb72ba0aabbb34b171a73d0f3b2b0f61e7160f0b278a67fd4850e3f501fd21531 SHA512 9e2f1e251b3754a24a0b39676d78c98692887c05c85cf0bee50fd44d9635290019930d4dabd1ff4ba3c9c1067e7e0e09aa1bbcd3d76687f919a1d44ba85eee20
+DIST llvm-project-18.1.5.src.tar.xz.sig 566 BLAKE2B ad935db71ec3b9fc885d696af440764a71fe7cafc5b3ca0b25a2963100d9cb3790392daebcac1341716c95a8da3c6243f5a8667fea1ed18b93fc8baa495414c9 SHA512 3cbca1059d940f3bd7bd72d68f2828039b66304980cc5f43769649e5494fc7d71117bf8aba5cc7f7a2ffca52f60ba30fadf3b28f984fd49ddb14300e30b45237
+DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c68c8e441a126cf8e89e55a965f3b9e3a629a37d5743fd7859a60bedaddf27ff2da1e0f08c81806871ef542cb7c3f40b23b22cf5 SHA512 89ec276aa41bb2d76cfc3a72d8e728a9ce9176e02c085338b704790524fe329904cf311381805814faa8a6c79637620c01627bf122a51f89e0f3adb47e5df34c
+DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
+DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
+DIST llvm-project-a7ee81e8279e0bf6e05617a4a638e5f2f8e45022.tar.gz 210384692 BLAKE2B 28b85b08a42c173e1c3bf530483112b1629c7e6684a83a016fbe9f132774f7b864d793581873a6529defeabb4479ad9a3d7c025b781b2fa4952c239b6d567b11 SHA512 1d593818347452f96611a62fa3aa22ce4355a4ee5d5dcfcb54a286a1aa980e9531d5fb6cbee3b0ee5943c6d0f4e2ba2245e13262fe7859e5b114f9c5d5cf1417
EBUILD libcxxabi-15.0.7.ebuild 2911 BLAKE2B 5f2004d2f68fe4eddb0b22be82d28fcca7954d0e3ad9a5510744adc4d0dfd7a1ab9fd928404adcd3eeecc58703f51117d0a80e5895b53e0ae7b71621ad5a435c SHA512 5b8e2c6abdec785649aa41b7f05ab86ecab30ff0631d6078c9b1052b406c320c5847b8f16ffa6d9e62ba4a6bca5959b18770810924d6e6da264fb08d6ff738d0
EBUILD libcxxabi-16.0.6.ebuild 2932 BLAKE2B 837ab88ee88d5497b8bddb9f001d4b4ddd44ed982ef47114c965174135ed136abd0e3a6f3848a4aba53d0ca3748c54674cb28de8d46fda3bb7a90f326d41c7c6 SHA512 e4ebf7f35d2cad3bf3ba02754c85fee1cd1c4e52887770698ebaa3ef2fe66873f468677d307ea2d6956c2f6d3ac9b61943461193a5315f1e8a2846f2463b0581
EBUILD libcxxabi-17.0.6.ebuild 2932 BLAKE2B 837ab88ee88d5497b8bddb9f001d4b4ddd44ed982ef47114c965174135ed136abd0e3a6f3848a4aba53d0ca3748c54674cb28de8d46fda3bb7a90f326d41c7c6 SHA512 e4ebf7f35d2cad3bf3ba02754c85fee1cd1c4e52887770698ebaa3ef2fe66873f468677d307ea2d6956c2f6d3ac9b61943461193a5315f1e8a2846f2463b0581
-EBUILD libcxxabi-18.1.4.ebuild 2764 BLAKE2B 1d716983ec2cf1f3ad73b9a3947feb5deddd91750495d7fe5eb9d3ecea9545c7dd4bde00a348272e92aec46845286f9a844077ece2b91a80222bae44c22a514b SHA512 7d94d2fe04acbbc8651c1b7588f9b94603de10aaefc949aaa408d7e7f8d53ccca9b411a2a7f3af7edc2a4f05008977dddd039c7ac1cf17968ba59c7484b3bb68
+EBUILD libcxxabi-18.1.5.ebuild 2764 BLAKE2B 1d716983ec2cf1f3ad73b9a3947feb5deddd91750495d7fe5eb9d3ecea9545c7dd4bde00a348272e92aec46845286f9a844077ece2b91a80222bae44c22a514b SHA512 7d94d2fe04acbbc8651c1b7588f9b94603de10aaefc949aaa408d7e7f8d53ccca9b411a2a7f3af7edc2a4f05008977dddd039c7ac1cf17968ba59c7484b3bb68
+EBUILD libcxxabi-18.1.6.ebuild 2764 BLAKE2B 1d716983ec2cf1f3ad73b9a3947feb5deddd91750495d7fe5eb9d3ecea9545c7dd4bde00a348272e92aec46845286f9a844077ece2b91a80222bae44c22a514b SHA512 7d94d2fe04acbbc8651c1b7588f9b94603de10aaefc949aaa408d7e7f8d53ccca9b411a2a7f3af7edc2a4f05008977dddd039c7ac1cf17968ba59c7484b3bb68
EBUILD libcxxabi-19.0.0.9999.ebuild 2684 BLAKE2B d72cf1584537afd3d13263975a4f903819f6844cac728daab626b269f460865cac59c3199d38ced179ce041294db940b31f07ca74eeabd452f8e2f775e3e206d SHA512 ac7f20fa097c17349959154cce8c75a2083b04d4fb1241d6917c0fd14348a848f9158d050b9791754fc02ec4cd1bc2d82a8ef678a7b025e15524e5af945c9bc1
-EBUILD libcxxabi-19.0.0_pre20240410.ebuild 2684 BLAKE2B d72cf1584537afd3d13263975a4f903819f6844cac728daab626b269f460865cac59c3199d38ced179ce041294db940b31f07ca74eeabd452f8e2f775e3e206d SHA512 ac7f20fa097c17349959154cce8c75a2083b04d4fb1241d6917c0fd14348a848f9158d050b9791754fc02ec4cd1bc2d82a8ef678a7b025e15524e5af945c9bc1
-EBUILD libcxxabi-19.0.0_pre20240420.ebuild 2684 BLAKE2B d72cf1584537afd3d13263975a4f903819f6844cac728daab626b269f460865cac59c3199d38ced179ce041294db940b31f07ca74eeabd452f8e2f775e3e206d SHA512 ac7f20fa097c17349959154cce8c75a2083b04d4fb1241d6917c0fd14348a848f9158d050b9791754fc02ec4cd1bc2d82a8ef678a7b025e15524e5af945c9bc1
-EBUILD libcxxabi-19.0.0_pre20240427.ebuild 2684 BLAKE2B d72cf1584537afd3d13263975a4f903819f6844cac728daab626b269f460865cac59c3199d38ced179ce041294db940b31f07ca74eeabd452f8e2f775e3e206d SHA512 ac7f20fa097c17349959154cce8c75a2083b04d4fb1241d6917c0fd14348a848f9158d050b9791754fc02ec4cd1bc2d82a8ef678a7b025e15524e5af945c9bc1
+EBUILD libcxxabi-19.0.0_pre20240509.ebuild 2684 BLAKE2B d72cf1584537afd3d13263975a4f903819f6844cac728daab626b269f460865cac59c3199d38ced179ce041294db940b31f07ca74eeabd452f8e2f775e3e206d SHA512 ac7f20fa097c17349959154cce8c75a2083b04d4fb1241d6917c0fd14348a848f9158d050b9791754fc02ec4cd1bc2d82a8ef678a7b025e15524e5af945c9bc1
+EBUILD libcxxabi-19.0.0_pre20240518.ebuild 2684 BLAKE2B d72cf1584537afd3d13263975a4f903819f6844cac728daab626b269f460865cac59c3199d38ced179ce041294db940b31f07ca74eeabd452f8e2f775e3e206d SHA512 ac7f20fa097c17349959154cce8c75a2083b04d4fb1241d6917c0fd14348a848f9158d050b9791754fc02ec4cd1bc2d82a8ef678a7b025e15524e5af945c9bc1
MISC metadata.xml 438 BLAKE2B 0a830a06a53a6cdaf138ad7620fe366fae05c1c1451267d6a58caf7da5ce8f5a26d302fab53b9460920074ab5a65991d3bd24fde087809e8dc12188dd94c7676 SHA512 d53e13c497569636fb453a159c5ca5ddfabf8e5debd5f92e5149c52d54c876753842ab73293d6d08e2d9b279363b4f0c743eed3a5027a61246c6b60496be8e87
diff --git a/sys-libs/libcxxabi/libcxxabi-18.1.4.ebuild b/sys-libs/libcxxabi/libcxxabi-18.1.5.ebuild
index 8865a2ce4c2c..8865a2ce4c2c 100644
--- a/sys-libs/libcxxabi/libcxxabi-18.1.4.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-18.1.5.ebuild
diff --git a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240427.ebuild b/sys-libs/libcxxabi/libcxxabi-18.1.6.ebuild
index d45de5993114..8865a2ce4c2c 100644
--- a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240427.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-18.1.6.ebuild
@@ -12,6 +12,7 @@ HOMEPAGE="https://libcxxabi.llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
IUSE="+clang +static-libs test"
REQUIRED_USE="test? ( clang )"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240410.ebuild b/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240509.ebuild
index d45de5993114..d45de5993114 100644
--- a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240410.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240509.ebuild
diff --git a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240420.ebuild b/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240518.ebuild
index d45de5993114..d45de5993114 100644
--- a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240420.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240518.ebuild
diff --git a/sys-libs/libieee1284/Manifest b/sys-libs/libieee1284/Manifest
index 3c7b5341aa65..0e50716e0de9 100644
--- a/sys-libs/libieee1284/Manifest
+++ b/sys-libs/libieee1284/Manifest
@@ -1,3 +1,5 @@
+AUX libieee1284-0.2.11-don-t-blindly-assume-outb_p-to-be-available.patch 1114 BLAKE2B cfc35b9dec4cb0cc08f9128f8f735b0843aa77c534c2707a888388805af60583eb8ab55dd5f8ab04be2b152beef9ca7d798da3346c65a8c479b994dc3068a2cc SHA512 cd63304e5002105cf47d7c12212aa70aaf9b3ec6e7c87d67a4b5a32d3be7d41155968b1b8558bf2d126d0446223025ccccb1ded166789d355640637b9ed5ea7b
DIST libieee1284-0.2.11.tar.bz2 278804 BLAKE2B 6bdc7051c91c7d1b7e601eb17823c4dbd17ca1f049a2af8487518649ec33fd5948d184b97764934371ea11d3871e82059cb0a5bd5501e1881e191791992e9d7b SHA512 06cc3049ce15613d34e39dc71bc572843c61ab64077c29ef9a6257edb0849c98565ff612a4cf787bc9642a39f1c89b7c47a20fb27f2318105be82aad8d472bb9
EBUILD libieee1284-0.2.11-r8.ebuild 945 BLAKE2B c3762b30ec3e5f959c6dc4e8c827100cc33727759d48b1f5735b78ca0ce14bb76c2c4334c871eacea0f2b68bf3a777e61dc9a83f7fe4aad061d2cd7b15277f08 SHA512 a265b08e661166b56f4e1520eceb540f439d8e35bc5e37bddfb4a9be34423b23562071eb438444fcbbfbb1a0cc5627106eb285dc22ecd38dbfd63b80c1aa2586
+EBUILD libieee1284-0.2.11-r9.ebuild 1037 BLAKE2B c0de2a45c1e53e8c580b6d8a0320f77e87532836a4162b60d98c0ce8b8f46107ba0a9fe9b365a63f82e3d1eaf016ac34cbbe320976aa146eab80fcf5b4f74883 SHA512 3d2ec595efe91a8849d0b1529d9aca53c6fa994f67320e24044079ea5a0f597850879ffcfeff18e8946cde867beae2b0a3919d72212a34c7bb3247ca3950e5af
MISC metadata.xml 332 BLAKE2B c2c4da67b3d2e5d1324702d5337f5069becc86d7fba6f4f8a0b5a827a290fd54d5439cdf299f20f0a8586d332bc59dc13098f0b8a310e5ff5ec75cdf72d38989 SHA512 d6fde1d953667b89149bb7259f2bcb98682d4ff9c8fe21d94626c7a835f6e2b50b253209e7f1cd4917bb187a2d15d660dba5a146f0b06fbcae7701e77d274cf0
diff --git a/sys-libs/libieee1284/files/libieee1284-0.2.11-don-t-blindly-assume-outb_p-to-be-available.patch b/sys-libs/libieee1284/files/libieee1284-0.2.11-don-t-blindly-assume-outb_p-to-be-available.patch
new file mode 100644
index 000000000000..0eb7d1bf217b
--- /dev/null
+++ b/sys-libs/libieee1284/files/libieee1284-0.2.11-don-t-blindly-assume-outb_p-to-be-available.patch
@@ -0,0 +1,27 @@
+Bug: https://bugs.gentoo.org/898080
+Also refer: https://bugs.gentoo.org/590094
+From: Brahmajit Das <brahmajit.xyz@gmail.com>
+Date: Thu, 15 Jun 2023 17:39:11 +0000
+Subject: [PATCH 1/1] access_io.c: don't blindly assume outb_p to be available
+
+outb_p is not available in musl libc, the condition using the fuction
+was if __i386__ or __x86_64__ was defined. This is not enough, for
+example when using musl libc both the conditions are meet but the
+function is not available. Hence the addtional check for __GLIBC__ being
+defined is added.
+
+Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>
+--- a/src/access_io.c
++++ b/src/access_io.c
+@@ -147,7 +147,7 @@ raw_outb (struct parport_internal *port, unsigned char val, unsigned long addr)
+ {
+ #if (defined(HAVE_LINUX) && defined(HAVE_SYS_IO_H)) || defined(HAVE_CYGWIN_9X) \
+ || defined(HAVE_OBSD_I386) || defined(HAVE_FBSD_I386)
+-#if defined(__i386__) || defined(__x86_64__) || defined(_MSC_VER)
++#if (defined(__i386__) || defined(__x86_64__)) && defined(__GLIBC__) || defined(_MSC_VER)
+ outb_p (val, (unsigned short)addr);
+ #else
+ outb (val, addr);
+--
+2.41.0
+
diff --git a/sys-libs/libieee1284/libieee1284-0.2.11-r9.ebuild b/sys-libs/libieee1284/libieee1284-0.2.11-r9.ebuild
new file mode 100644
index 000000000000..79b45ba51525
--- /dev/null
+++ b/sys-libs/libieee1284/libieee1284-0.2.11-r9.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools multilib-minimal
+
+DESCRIPTION="Library to query devices using IEEE1284"
+HOMEPAGE="http://cyberelk.net/tim/software/libieee1284/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86"
+IUSE="doc static-libs"
+
+BDEPEND="doc? (
+ app-text/docbook-sgml-utils
+ >=app-text/docbook-sgml-dtd-4.1
+ app-text/docbook-dsssl-stylesheets
+ dev-perl/XML-RegExp
+ )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.2.11-don-t-blindly-assume-outb_p-to-be-available.patch
+)
+
+src_prepare() {
+ default
+
+ mv configure.{in,ac} || die
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --enable-shared
+ --without-python
+ $(use_enable static-libs static)
+ )
+
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ dodoc doc/interface*
+
+ if ! use static-libs; then
+ find "${ED}" -name '*.la' -delete || die
+ fi
+}
diff --git a/sys-libs/libnvme/Manifest b/sys-libs/libnvme/Manifest
index f987f0ec26f4..1d79d76c9830 100644
--- a/sys-libs/libnvme/Manifest
+++ b/sys-libs/libnvme/Manifest
@@ -1,7 +1,8 @@
+AUX libnvme-1.9-musl-stdint.patch 1873 BLAKE2B 44be4e9068286f32c8f4e9fc32f02fae7c70df4043db1418b1f889cccaa57d66769d3aa41b30e824a988e5635179be7a2a02676ce385b33dca877b0ff472c29b SHA512 5eb38bae6c38a97f108dff7be8a8c914392b1f3d4a2e26debd00fb62551101061824220b64c3aa791bb980185decf0a0fbc6d228b16c9cdcce6199d121764789
DIST libnvme-1.7.1.tar.gz 604220 BLAKE2B b02bf0914be73f5877f418bebdbed31dfb019484fb9f6e169c3474d90306706b8e787003a472f13bedb72e90eff39a30ba35df252a3cdf4ea08a362c3f9e221b SHA512 aea986ae35eafa17482e07015228d5a7d529d41148f4cee9e4619adc2460abb5460d60cd91177462cbcaf2e94e5870026ff9e45548f91d9f90b65a6268eb3abb
DIST libnvme-1.8.tar.gz 629032 BLAKE2B cba5215983fa14e485156cf68613a7acca07b7e0fdac41663ebf2246c9f6fd6d1bfcebc7c1457ab4217705769ebea382e85726eb302fd9af6f6b85cec7b2e14d SHA512 ba0cec72fd6c9bb29b29c4342be7b25aec1f31157a094ad387a1105cbd1961ab600e1448a2462d8be2af91d5251b2970d6d06d4871ce96604c5be204d6096bcb
DIST libnvme-1.9.tar.gz 657952 BLAKE2B e9d655709770f7c1d9c916cc9539b8ea096b0d5bf6b12079c2db494f070c98b6c388e2a79ed27a4932994a00d44da93fa3119ee224c48d40347a483548397349 SHA512 39a3346805143f93a17d00cfcb6fb75f82154658db6079134c09dfa989995ac5de79b1ce1ac091b4e997523d3216829ce9eac44110c9f59f9fd21636529c8b25
EBUILD libnvme-1.7.1-r1.ebuild 1494 BLAKE2B c23a1718224b17dfe7cbabc3fe63c1595dfee5748895dcc24ed58127a558fb98afe6198ac2381736da998c840f5b691781ab90730162344d210e04df5c105b3c SHA512 5c16f0b68e731480b6786c6cfb9f98c6125847da2e8f70aeb051c7706cd1d65f04a53077272019f14ed61ecb754ee514d1ee2b399a0d52cf52a265549c6e9bc7
-EBUILD libnvme-1.8.ebuild 1497 BLAKE2B 4ef6591a10cefabdd879e08e1d95612667a2148bf25fc941a3dcac782ab507a6124a39da1f4b860c171e7254b64ccdb0e911a150de9edea97a7637769dc6abf6 SHA512 d6a06f1f7b9929ea00046874d0e56ce0d23e46ef6c97cc985695cf43b0552d4ddda757a49ce84aac95cced1a09076d72226fceff306ede1fdca7038142b76663
-EBUILD libnvme-1.9.ebuild 1499 BLAKE2B 022b7ce14254156fe9315dbd4ba4aeae5101223eb7b5d778de0c0e8cfcf8270b5a16bde5a69793b18904a7cc76f2bc7d7a9908844e1299f2937a2a97c0d3db94 SHA512 95f30ad0792840f13b66dc88812f4042902a5be9adec61239e3be70c2fbb6fbd4c0ce7e6db4ef1f6a8bb238d52df22f76dcd100aacd8462265dcf5b27c2a043b
+EBUILD libnvme-1.8.ebuild 1496 BLAKE2B 1286711f1afbf75136640143cf56fc41d94380c23f815e2eade0066d151121da6b7fc3b45a660888fc27763adbc23f32bd65625e4e5f042387231ccf75a45254 SHA512 a7df1f80d82fe69fe7ac3be9c9871a92a6c80d774de0e9c379f88eedd4596859f27adb2e71f009089426a786f48cd4418bb8d0e8106f1aa621a0e7712a852780
+EBUILD libnvme-1.9.ebuild 1555 BLAKE2B 9e5fd043c9254dc13b6e57b2f079090fb653749930b06b228b7889d5080d9ac6b5c6fd1b9cd8443aaae7663a1d6a2bbefc699ccc685e3041258b129f6def47e8 SHA512 dc9994ef9b3dcda7b823ca1e2b9a2f78176d96201b134ae25eee8e410c0ec459fca1278ea41b508bfb1ea92dd54da2473a3fa6bb8abf6abcca7d3e6911d02f93
MISC metadata.xml 585 BLAKE2B 6163419190adb903fdbdef99ad53f8b14ffbc08ac3c8b56f820049468010af2a58ac204ded1b53c767759e9ac864bf85dbc3b723cd7113cb919194dd9ceaaac3 SHA512 2f5268b41676d2a61d5415de3ec62149cda53613970a1af6aface937cc635d26866c88205a6d9fcf7efd7df0c7f45308ecf5b29b6cea937966b765a222edb8f7
diff --git a/sys-libs/libnvme/files/libnvme-1.9-musl-stdint.patch b/sys-libs/libnvme/files/libnvme-1.9-musl-stdint.patch
new file mode 100644
index 000000000000..c2319b72bc96
--- /dev/null
+++ b/sys-libs/libnvme/files/libnvme-1.9-musl-stdint.patch
@@ -0,0 +1,59 @@
+https://github.com/linux-nvme/libnvme/pull/838
+
+From b3ca2923affce631bc302f0fdce565093ffe1b5b Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sat, 4 May 2024 10:59:16 +0100
+Subject: [PATCH] Use C99 types for uint32_t
+
+<stdint.h> provides `uint32_t`, while `u_int_32` is an unofficial/internal
+typedef that glibc happens to provide. This fixes the build on musl.
+
+Bug: https://bugs.gentoo.org/931194
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/src/nvme/base64.c
++++ b/src/nvme/base64.c
+@@ -7,6 +7,7 @@
+ * Author: Hannes Reinecke <hare@suse.de>
+ */
+
++#include <stdint.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <errno.h>
+@@ -29,7 +30,7 @@ static const char base64_table[65] =
+ int base64_encode(const unsigned char *src, int srclen, char *dst)
+ {
+ int i, bits = 0;
+- u_int32_t ac = 0;
++ uint32_t ac = 0;
+ char *cp = dst;
+
+ for (i = 0; i < srclen; i++) {
+@@ -64,7 +65,7 @@ int base64_encode(const unsigned char *src, int srclen, char *dst)
+ */
+ int base64_decode(const char *src, int srclen, unsigned char *dst)
+ {
+- u_int32_t ac = 0;
++ uint32_t ac = 0;
+ int i, bits = 0;
+ unsigned char *bp = dst;
+
+--- a/src/nvme/linux.c
++++ b/src/nvme/linux.c
+@@ -1513,10 +1513,10 @@ unsigned char *nvme_import_tls_key(const char *encoded_key, int *key_len,
+ return NULL;
+ }
+ crc = crc32(crc, decoded_key, decoded_len);
+- key_crc = ((u_int32_t)decoded_key[decoded_len]) |
+- ((u_int32_t)decoded_key[decoded_len + 1] << 8) |
+- ((u_int32_t)decoded_key[decoded_len + 2] << 16) |
+- ((u_int32_t)decoded_key[decoded_len + 3] << 24);
++ key_crc = ((uint32_t)decoded_key[decoded_len]) |
++ ((uint32_t)decoded_key[decoded_len + 1] << 8) |
++ ((uint32_t)decoded_key[decoded_len + 2] << 16) |
++ ((uint32_t)decoded_key[decoded_len + 3] << 24);
+ if (key_crc != crc) {
+ nvme_msg(NULL, LOG_ERR, "CRC mismatch (key %08x, crc %08x)",
+ key_crc, crc);
+
diff --git a/sys-libs/libnvme/libnvme-1.8.ebuild b/sys-libs/libnvme/libnvme-1.8.ebuild
index 79c6241197d9..f6bc3410c4e6 100644
--- a/sys-libs/libnvme/libnvme-1.8.ebuild
+++ b/sys-libs/libnvme/libnvme-1.8.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/linux-nvme/libnvme/archive/refs/tags/v${PV}.tar.gz -
LICENSE="LGPL-2.1+"
SLOT="0/1"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc x86"
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc x86"
IUSE="dbus +json keyutils python ssl test +uuid"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/libnvme/libnvme-1.9.ebuild b/sys-libs/libnvme/libnvme-1.9.ebuild
index 1cc2223f879a..3436c4d122bd 100644
--- a/sys-libs/libnvme/libnvme-1.9.ebuild
+++ b/sys-libs/libnvme/libnvme-1.9.ebuild
@@ -35,6 +35,10 @@ BDEPEND="
dev-lang/swig
"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.9-musl-stdint.patch
+)
+
src_configure() {
local emesonargs=(
-Dpython=disabled
diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest
index 8e4b29225da4..df066a8713b8 100644
--- a/sys-libs/libomp/Manifest
+++ b/sys-libs/libomp/Manifest
@@ -5,17 +5,18 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659
DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
-DIST llvm-project-18.1.4.src.tar.xz 132054668 BLAKE2B 94bbad3b185fd07cbace4eff79aba80fbdd5e072739250e3927fe1848bcf3f8d355eb1f384e57306707eb702acc7ab01b732590735be7950221607664d04b0a6 SHA512 b1b214ae91f3705d8ea345547ad53f1e5d7d884c1eb6958bc41c14ac4b3e407771ccc2b693686ff103c8232c2c3942731d6db9a9cb4f735e6c6a0674739d0b29
-DIST llvm-project-18.1.4.src.tar.xz.sig 566 BLAKE2B b74fd219d7bcdf197b4e711cfbb25c40e9d8d2c7341de0215d8c31f330f396e9c166ff63513829cdc9cef349f08238f66a4dc949fa97958a7af496abae369eaa SHA512 4f456edf4fb454815acaef6855b1a0991f229810a32e9369af83388e37f0ef8964308e1e93bd6216024cdd67e86caaadc8d5794467857cc6fe561c9fa6ca7386
-DIST llvm-project-338561657685c1831a53563b1bc36ffc7470239e.tar.gz 209715501 BLAKE2B 49152479d4f2cae430e783784d0cfcc129134f5cc0bf12c72701cd15e59cb3e1be2f61385ba9baa93d1d1193e89374ac8877b909650c163b681d1fcd26732cdc SHA512 d34bbe82e85c5b9d493029ad7b46e802f06f7e7a8a48515d0043c58c3251271f8f3e1e11c47eb91bd3db2477f819d33b43ddebb276eb9601c5ad141e463c9682
-DIST llvm-project-ee284d2da0720dc21191d6f545504cbfcf5dcbcf.tar.gz 208883034 BLAKE2B e37c9f1a6a4d0caa9a3091f979dd09f509d458f8b7b30286c77dd2385aea748b7aac6dd488c79573f82feb655aa321717bd2fb46bba4a12b388b52064f6e13bf SHA512 1335ade87cd2accc47ac47ed2ab302999e375808b158b6c9d31fac9059cbb992d2bdaaadf1fd9a1b37268c1123d43346ea4d150894d6d2e6f80ba790b65b93b1
-DIST llvm-project-f03cd2db91956456f1c5e2da86d3c50183eebd28.tar.gz 209375254 BLAKE2B 1d7e043d04323edb64b2ef2309fbcb4f82a959f45391e815133cc0891d5a497bbb81101aab460e9bf67e75aa906e13ad1877c3850829dcad397ed626dc8f2792 SHA512 6775e03a44b2133bd4a4b473ab007599321daa19dc7f3cc47f95cf9d110e83e982bf48a6b1d43038b0f0a2c0fef2f689aefd20132b25a90ef19342683e2d2e50
+DIST llvm-project-18.1.5.src.tar.xz 132061072 BLAKE2B bfdd987d5992a4d94ae8b14792df3be67a8e8fdf1daef9834cdaa2132df1b7ddb72ba0aabbb34b171a73d0f3b2b0f61e7160f0b278a67fd4850e3f501fd21531 SHA512 9e2f1e251b3754a24a0b39676d78c98692887c05c85cf0bee50fd44d9635290019930d4dabd1ff4ba3c9c1067e7e0e09aa1bbcd3d76687f919a1d44ba85eee20
+DIST llvm-project-18.1.5.src.tar.xz.sig 566 BLAKE2B ad935db71ec3b9fc885d696af440764a71fe7cafc5b3ca0b25a2963100d9cb3790392daebcac1341716c95a8da3c6243f5a8667fea1ed18b93fc8baa495414c9 SHA512 3cbca1059d940f3bd7bd72d68f2828039b66304980cc5f43769649e5494fc7d71117bf8aba5cc7f7a2ffca52f60ba30fadf3b28f984fd49ddb14300e30b45237
+DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c68c8e441a126cf8e89e55a965f3b9e3a629a37d5743fd7859a60bedaddf27ff2da1e0f08c81806871ef542cb7c3f40b23b22cf5 SHA512 89ec276aa41bb2d76cfc3a72d8e728a9ce9176e02c085338b704790524fe329904cf311381805814faa8a6c79637620c01627bf122a51f89e0f3adb47e5df34c
+DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
+DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
+DIST llvm-project-a7ee81e8279e0bf6e05617a4a638e5f2f8e45022.tar.gz 210384692 BLAKE2B 28b85b08a42c173e1c3bf530483112b1629c7e6684a83a016fbe9f132774f7b864d793581873a6529defeabb4479ad9a3d7c025b781b2fa4952c239b6d567b11 SHA512 1d593818347452f96611a62fa3aa22ce4355a4ee5d5dcfcb54a286a1aa980e9531d5fb6cbee3b0ee5943c6d0f4e2ba2245e13262fe7859e5b114f9c5d5cf1417
EBUILD libomp-15.0.7-r6.ebuild 3470 BLAKE2B 9f76ca5b080ccf01617d7dcbfe3eb424c525adbcf72f2b5f09dc7bead1e28df1a0ffdf5ef47bcc7f8cac130f1d22e804e29938cda6df0ee58359ac5ff88aea86 SHA512 1a0a4b10f9a67634ea265e6df3c3f9993ed5ee3818eba2cbb6b65d8f5c3a0d2d266134f3e276985e87eca18b47a44d6de61e4c9c3496fd36c6c338dcf79b9850
EBUILD libomp-16.0.6.ebuild 3984 BLAKE2B 8302d2776c0d8c50dcc7cac2dde8523f1abdf391d48594fdd26ebe17a089efdfee93825bdec07569878d06873b571e469411f108564df6c7eb50dc425615c255 SHA512 714da170fba4b62f3267e2530a82c583d299e8dc6c6f4037417c216c1239cc0fadc1aebf823608df37a932a7722144e67a148b58079e50560450b94c93f3e415
EBUILD libomp-17.0.6.ebuild 4052 BLAKE2B 8a05a46719120eac5495417fb6ea54b7a6a3d93aa7cc0917ca9e8f3cb2238f23348ecaefebd4c2064eac4adfbd4ef7f86b70c051cbcc009692ec790159d8883d SHA512 80b48f5a3af351ee14296aa76ba28b964eb85d84a1827af8acd35076895342a5dd743362c988e042c57f11dc9e8bbca1a9003a6752562758249062e460c73247
-EBUILD libomp-18.1.4.ebuild 4287 BLAKE2B c9d7f07576235ab057e30adee2b922250bd978e7d7877f959c08ed63abb4b6c88a84e0e9726023b0597ad9f303fefe9a7bd400c9d984828a9883bc37d8cd0b7a SHA512 4fe7c6b3a725d7f41cef543414a6f082812645342e352b8efcb466f1a257eefdec95c2a29bbc750fdf0b1e8f501923f23f0c771de20eb52bcc0cdf02bfa042a0
+EBUILD libomp-18.1.5.ebuild 4287 BLAKE2B c9d7f07576235ab057e30adee2b922250bd978e7d7877f959c08ed63abb4b6c88a84e0e9726023b0597ad9f303fefe9a7bd400c9d984828a9883bc37d8cd0b7a SHA512 4fe7c6b3a725d7f41cef543414a6f082812645342e352b8efcb466f1a257eefdec95c2a29bbc750fdf0b1e8f501923f23f0c771de20eb52bcc0cdf02bfa042a0
+EBUILD libomp-18.1.6.ebuild 4287 BLAKE2B c9d7f07576235ab057e30adee2b922250bd978e7d7877f959c08ed63abb4b6c88a84e0e9726023b0597ad9f303fefe9a7bd400c9d984828a9883bc37d8cd0b7a SHA512 4fe7c6b3a725d7f41cef543414a6f082812645342e352b8efcb466f1a257eefdec95c2a29bbc750fdf0b1e8f501923f23f0c771de20eb52bcc0cdf02bfa042a0
EBUILD libomp-19.0.0.9999.ebuild 2163 BLAKE2B 960f66b989ba1836b8cecd5d0a5680effc30f14da1c815f6f068aa4c1612468800c6c5d4bc4f7c90cc331688ef4317b612ea796f6d5a950fb212775b5a1a4ef7 SHA512 dd57f8a2741d1ba492eaec6e993ea390e5883f2053bc50af64e850b8a327af5799c1b9f74512d4417b3d6012dcb07937dab17588db537872639fc0184b75f952
-EBUILD libomp-19.0.0_pre20240410.ebuild 4208 BLAKE2B 9ed99689a6cbf2d1c3f8f384e046276247f1e3a21cfd1466ae640b21b748ae38fccf29e36be3e87c76859888670f14b8cfad29922275f2f937f284062d931462 SHA512 573165cd67e695dd9140cd8fa6e7e6324e8a7de2b35ae5d2563012eeda275edccbe9daa369752960d3c287c4e55bd767ab2b5e29db604e381c752143eb9b1a3e
-EBUILD libomp-19.0.0_pre20240420.ebuild 4208 BLAKE2B 9ed99689a6cbf2d1c3f8f384e046276247f1e3a21cfd1466ae640b21b748ae38fccf29e36be3e87c76859888670f14b8cfad29922275f2f937f284062d931462 SHA512 573165cd67e695dd9140cd8fa6e7e6324e8a7de2b35ae5d2563012eeda275edccbe9daa369752960d3c287c4e55bd767ab2b5e29db604e381c752143eb9b1a3e
-EBUILD libomp-19.0.0_pre20240427.ebuild 2163 BLAKE2B 960f66b989ba1836b8cecd5d0a5680effc30f14da1c815f6f068aa4c1612468800c6c5d4bc4f7c90cc331688ef4317b612ea796f6d5a950fb212775b5a1a4ef7 SHA512 dd57f8a2741d1ba492eaec6e993ea390e5883f2053bc50af64e850b8a327af5799c1b9f74512d4417b3d6012dcb07937dab17588db537872639fc0184b75f952
+EBUILD libomp-19.0.0_pre20240509.ebuild 2163 BLAKE2B 960f66b989ba1836b8cecd5d0a5680effc30f14da1c815f6f068aa4c1612468800c6c5d4bc4f7c90cc331688ef4317b612ea796f6d5a950fb212775b5a1a4ef7 SHA512 dd57f8a2741d1ba492eaec6e993ea390e5883f2053bc50af64e850b8a327af5799c1b9f74512d4417b3d6012dcb07937dab17588db537872639fc0184b75f952
+EBUILD libomp-19.0.0_pre20240518.ebuild 2163 BLAKE2B 960f66b989ba1836b8cecd5d0a5680effc30f14da1c815f6f068aa4c1612468800c6c5d4bc4f7c90cc331688ef4317b612ea796f6d5a950fb212775b5a1a4ef7 SHA512 dd57f8a2741d1ba492eaec6e993ea390e5883f2053bc50af64e850b8a327af5799c1b9f74512d4417b3d6012dcb07937dab17588db537872639fc0184b75f952
MISC metadata.xml 883 BLAKE2B 127e896b82a49633a6866b33ca776ebe2dd149a5d04da4484a53186f219a85db0ab9d826bc1cc61d4df9fa54c9bcc546be070a0b28985174925fd947aa09cca2 SHA512 dc32cae01401feb93eede6506b3955c766ff19b44976fcc67277559b23ac151993377daeed9ba83b2dd71dbdeea330cd1208dcb0c9c5f56be270883b31f9b15f
diff --git a/sys-libs/libomp/libomp-18.1.4.ebuild b/sys-libs/libomp/libomp-18.1.5.ebuild
index 5f6fa687234c..5f6fa687234c 100644
--- a/sys-libs/libomp/libomp-18.1.4.ebuild
+++ b/sys-libs/libomp/libomp-18.1.5.ebuild
diff --git a/sys-libs/libomp/libomp-19.0.0_pre20240410.ebuild b/sys-libs/libomp/libomp-18.1.6.ebuild
index a40d0aed1c41..5f6fa687234c 100644
--- a/sys-libs/libomp/libomp-19.0.0_pre20240410.ebuild
+++ b/sys-libs/libomp/libomp-18.1.6.ebuild
@@ -12,8 +12,9 @@ HOMEPAGE="https://openmp.llvm.org"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0/${LLVM_SOABI}"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos"
IUSE="
- +debug gdb-plugin hwloc offload ompt test
+ debug gdb-plugin hwloc offload ompt test
llvm_targets_AMDGPU llvm_targets_NVPTX
"
REQUIRED_USE="
diff --git a/sys-libs/libomp/libomp-19.0.0_pre20240420.ebuild b/sys-libs/libomp/libomp-19.0.0_pre20240420.ebuild
deleted file mode 100644
index a40d0aed1c41..000000000000
--- a/sys-libs/libomp/libomp-19.0.0_pre20240420.ebuild
+++ /dev/null
@@ -1,160 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-inherit flag-o-matic cmake-multilib linux-info llvm.org llvm-utils
-inherit python-single-r1 toolchain-funcs
-
-DESCRIPTION="OpenMP runtime library for LLVM/clang compiler"
-HOMEPAGE="https://openmp.llvm.org"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="0/${LLVM_SOABI}"
-IUSE="
- +debug gdb-plugin hwloc offload ompt test
- llvm_targets_AMDGPU llvm_targets_NVPTX
-"
-REQUIRED_USE="
- gdb-plugin? ( ${PYTHON_REQUIRED_USE} )
-"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- gdb-plugin? ( ${PYTHON_DEPS} )
- hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] )
- offload? (
- dev-libs/libffi:=[${MULTILIB_USEDEP}]
- ~sys-devel/llvm-${PV}[${MULTILIB_USEDEP}]
- llvm_targets_AMDGPU? ( dev-libs/rocr-runtime:= )
- )
-"
-# tests:
-# - dev-python/lit provides the test runner
-# - sys-devel/llvm provide test utils (e.g. FileCheck)
-# - sys-devel/clang provides the compiler to run tests
-DEPEND="
- ${RDEPEND}
-"
-BDEPEND="
- dev-lang/perl
- offload? (
- llvm_targets_AMDGPU? ( sys-devel/clang )
- llvm_targets_NVPTX? ( sys-devel/clang )
- virtual/pkgconfig
- )
- test? (
- ${PYTHON_DEPS}
- $(python_gen_cond_dep '
- dev-python/lit[${PYTHON_USEDEP}]
- ')
- sys-devel/clang
- )
-"
-
-LLVM_COMPONENTS=( openmp cmake llvm/include )
-llvm.org_set_globals
-
-kernel_pds_check() {
- if use kernel_linux && kernel_is -lt 4 15 && kernel_is -ge 4 13; then
- local CONFIG_CHECK="~!SCHED_PDS"
- local ERROR_SCHED_PDS="\
-PDS scheduler versions >= 0.98c < 0.98i (e.g. used in kernels >= 4.13-pf11
-< 4.14-pf9) do not implement sched_yield() call which may result in horrible
-performance problems with libomp. If you are using one of the specified
-kernel versions, you may want to disable the PDS scheduler."
-
- check_extra_config
- fi
-}
-
-pkg_pretend() {
- kernel_pds_check
-}
-
-pkg_setup() {
- if use gdb-plugin || use test; then
- python-single-r1_pkg_setup
- fi
-}
-
-multilib_src_configure() {
- use offload && llvm_prepend_path "${LLVM_MAJOR}"
-
- # LTO causes issues in other packages building, #870127
- filter-lto
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- local build_omptarget=OFF
- # upstream disallows building libomptarget when sizeof(void*) != 8
- if use offload &&
- "$(tc-getCC)" ${CFLAGS} ${CPPFLAGS} -c -x c - -o /dev/null \
- <<-EOF &>/dev/null
- int test[sizeof(void *) == 8 ? 1 : -1];
- EOF
- then
- build_omptarget=ON
- fi
-
- local libdir="$(get_libdir)"
- local mycmakeargs=(
- -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}"
-
- -DLIBOMP_USE_HWLOC=$(usex hwloc)
- -DLIBOMP_OMPD_GDB_SUPPORT=$(multilib_native_usex gdb-plugin)
- -DLIBOMP_OMPT_SUPPORT=$(usex ompt)
-
- -DOPENMP_ENABLE_LIBOMPTARGET=${build_omptarget}
-
- # do not install libgomp.so & libiomp5.so aliases
- -DLIBOMP_INSTALL_ALIASES=OFF
- # disable unnecessary hack copying stuff back to srcdir
- -DLIBOMP_COPY_EXPORTS=OFF
- )
-
- if [[ ${build_omptarget} == ON ]]; then
- local ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
- local ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
- mycmakeargs+=(
- -DFFI_INCLUDE_DIR="${ffi_cflags#-I}"
- -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}"
- )
-
- if has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then
- mycmakeargs+=(
- -DLIBOMPTARGET_BUILD_AMDGPU_PLUGIN=$(usex llvm_targets_AMDGPU)
- -DLIBOMPTARGET_BUILD_CUDA_PLUGIN=$(usex llvm_targets_NVPTX)
-
- # prevent trying to access the GPU
- -DLIBOMPTARGET_AMDGPU_ARCH=LIBOMPTARGET_AMDGPU_ARCH-NOTFOUND
- -DLIBOMPTARGET_NVPTX_ARCH=LIBOMPTARGET_NVPTX_ARCH-NOTFOUND
- )
- else
- mycmakeargs+=(
- -DLIBOMPTARGET_BUILD_AMDGPU_PLUGIN=OFF
- -DLIBOMPTARGET_BUILD_CUDA_PLUGIN=OFF
- )
- fi
- fi
-
- use test && mycmakeargs+=(
- # this project does not use standard LLVM cmake macros
- -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit"
- -DOPENMP_LIT_ARGS="$(get_lit_flags)"
-
- -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")"
- -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")"
- )
- addpredict /dev/nvidiactl
- cmake_src_configure
-}
-
-multilib_src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake_build check-libomp
-}
diff --git a/sys-libs/libomp/libomp-19.0.0_pre20240427.ebuild b/sys-libs/libomp/libomp-19.0.0_pre20240509.ebuild
index 0084c1ccb07c..0084c1ccb07c 100644
--- a/sys-libs/libomp/libomp-19.0.0_pre20240427.ebuild
+++ b/sys-libs/libomp/libomp-19.0.0_pre20240509.ebuild
diff --git a/sys-libs/libomp/libomp-19.0.0_pre20240518.ebuild b/sys-libs/libomp/libomp-19.0.0_pre20240518.ebuild
new file mode 100644
index 000000000000..0084c1ccb07c
--- /dev/null
+++ b/sys-libs/libomp/libomp-19.0.0_pre20240518.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit flag-o-matic cmake-multilib linux-info llvm.org python-single-r1
+
+DESCRIPTION="OpenMP runtime library for LLVM/clang compiler"
+HOMEPAGE="https://openmp.llvm.org"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
+SLOT="0/${LLVM_SOABI}"
+IUSE="+debug gdb-plugin hwloc ompt test"
+REQUIRED_USE="
+ gdb-plugin? ( ${PYTHON_REQUIRED_USE} )
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ gdb-plugin? ( ${PYTHON_DEPS} )
+ hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] )
+"
+# tests:
+# - dev-python/lit provides the test runner
+# - sys-devel/llvm provide test utils (e.g. FileCheck)
+# - sys-devel/clang provides the compiler to run tests
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ dev-lang/perl
+ test? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/lit[${PYTHON_USEDEP}]
+ ')
+ sys-devel/clang
+ )
+"
+
+LLVM_COMPONENTS=( openmp cmake llvm/include )
+llvm.org_set_globals
+
+pkg_setup() {
+ if use gdb-plugin || use test; then
+ python-single-r1_pkg_setup
+ fi
+}
+
+multilib_src_configure() {
+ # LTO causes issues in other packages building, #870127
+ filter-lto
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+ local libdir="$(get_libdir)"
+ local mycmakeargs=(
+ -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}"
+
+ -DLIBOMP_USE_HWLOC=$(usex hwloc)
+ -DLIBOMP_OMPD_GDB_SUPPORT=$(multilib_native_usex gdb-plugin)
+ -DLIBOMP_OMPT_SUPPORT=$(usex ompt)
+
+ # do not install libgomp.so & libiomp5.so aliases
+ -DLIBOMP_INSTALL_ALIASES=OFF
+ # disable unnecessary hack copying stuff back to srcdir
+ -DLIBOMP_COPY_EXPORTS=OFF
+ )
+
+ use test && mycmakeargs+=(
+ # this project does not use standard LLVM cmake macros
+ -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit"
+ -DOPENMP_LIT_ARGS="$(get_lit_flags)"
+
+ -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")"
+ -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")"
+ )
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+
+ cmake_build check-libomp
+}
diff --git a/sys-libs/libseccomp/Manifest b/sys-libs/libseccomp/Manifest
index d9e17d6a5c3c..f0119e8c3fb3 100644
--- a/sys-libs/libseccomp/Manifest
+++ b/sys-libs/libseccomp/Manifest
@@ -6,7 +6,7 @@ AUX libseccomp-python-shared.patch 759 BLAKE2B e2c42e18ca93fe5fddbc3a5b47ac0e6a2
DIST libseccomp-2.5.5-loongarch-r1.patch 119822 BLAKE2B 4aa75c1ac87b2ca25cf6be38dfd760879c7255ca8e6cf86be3ac6e354f76cdaf3c8e2f59b646254414ffb0f1ffe6b7c50478f4db895a6ce632db8782c9807e91 SHA512 f7cd768d672a25448b2a3ceda27db52e0d62b5d9ab3eeb906226b6ebc19332c89332e0b870aaf82d4ffcfd642c2deb6029a30ae9a6bd702ebad9fdd40622b582
DIST libseccomp-2.5.5-loongarch64-20231204.patch.xz 41236 BLAKE2B 7831b28c275771bb675b4b5045e657d96c254e69cee7188a19f4812bc83343e0041772c20be1e7392ec88387726b49f34aa670a906b922dba531a0d35e548b1e SHA512 7870e536d834360dfec446493815b675a305f6bec1b79d0caae6fb546d2f694e77ce52e547bbcdb22cda272272bf3d5a427960b4aa76fb987d06ab035298007d
DIST libseccomp-2.5.5.tar.gz 642445 BLAKE2B d770cee1f3e02fbbcd9f25655b360ab38160ad800e2829a67f2b9da62b095a90be99ac851a67344cf95bd6810a6268da4655dc1d37d996e58239c4999eb41998 SHA512 f630e7a7e53a21b7ccb4d3e7b37616b89aeceba916677c8e3032830411d77a14c2d74dcf594cd193b1acc11f52595072e28316dc44300e54083d5d7b314a38da
-EBUILD libseccomp-2.5.5-r1.ebuild 3245 BLAKE2B eb2bb694cd21396375879614d2c81ed15b9463d0ca5c3a44cfddc647dcc01a91ed9672bd6897831ca84a9132e113cee78a2fb8cbca58ae2aba3e42f311ead1cd SHA512 42addd2efe4aafe47e93b5f2b49a732cf33e057ae2e32e00e48841e3a6f18f4a9bc4a1535675aabeb8922626dba103469eda6dd5cfa737dc3f6c34b20a9cbe04
+EBUILD libseccomp-2.5.5-r1.ebuild 3273 BLAKE2B cade5d5eca0b4576ffb41debba45ff49e1a36b79f38b7d2fd8add821b174c9e73a7e9b20f07007e70b6b3f1d9e37ff9735ba38dcb300abf985a1c623cfb43528 SHA512 0e406903011d194f42fd1a2f4135759e89ebcc810722e8efefc1c68390e42ef4d9f26fd7df7955bd96faebedf74bbde37e04561d8b6601f2d49f1f21e790827b
EBUILD libseccomp-2.5.5.ebuild 2933 BLAKE2B d2b8b53e01877d343de0b6838b2bf4b3addeec676fbd89fae289788da03fb4b9b7af89e193e17621361bb39e33f77f80393a7807887010016dc7d49120653b1d SHA512 9f911a3647dac012b5cad4c919ba1a286fbc9348320810f7b772125da4250c4d26ae5cb870caf96a45930f3f040296f375b31818e69c0ccee826b497208d7d86
EBUILD libseccomp-9999.ebuild 2433 BLAKE2B 50afb42077d398c80404844c9d865b2b5760f157c7455f8b74ab666f16ebec647f413649091a4d1406f7b7d5e0b9daf1a0edf4a3ee83f9eb7c495b8817cf06e4 SHA512 c0abf7f041c37df9047fb4e7e9c4632978be2d90c93b5756bdfff9167d2cd11df5065266c23eefd70feb67cf731cb653d6ab9154ae077bcb714c11c38aacea18
MISC metadata.xml 506 BLAKE2B 44dc13629234226f9314270c05d5c7c87575639fe12282e73697ead63d016ee9b52a89d673be5881bfcbf4d605024ecfcc3e19510581d334a6d5737df6a36b50 SHA512 93b0a53783499eab6b6264867a049830d765ee56d19b0c60e764f6651dff9f0d11efbec0783fdeb17c2c64d3f409bb4b1b1f74f267022775b992b61a1df03100
diff --git a/sys-libs/libseccomp/libseccomp-2.5.5-r1.ebuild b/sys-libs/libseccomp/libseccomp-2.5.5-r1.ebuild
index 40a0c5635548..153293b5f8ca 100644
--- a/sys-libs/libseccomp/libseccomp-2.5.5-r1.ebuild
+++ b/sys-libs/libseccomp/libseccomp-2.5.5-r1.ebuild
@@ -20,7 +20,7 @@ if [[ ${PV} == *9999 ]] ; then
inherit autotools git-r3
else
AUTOTOOLS_AUTO_DEPEND=no
- inherit autotools
+ inherit autotools libtool
SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz
experimental-loong? ( https://github.com/matoro/libseccomp/compare/v${PV}..loongarch-r1.patch
-> ${P}-loongarch-r1.patch )"
@@ -78,6 +78,8 @@ src_prepare() {
if [[ ${PV} == *9999 ]] || use experimental-loong; then
rm -f "include/seccomp.h" || die
eautoreconf
+ else
+ elibtoolize
fi
}
diff --git a/sys-libs/liburing/Manifest b/sys-libs/liburing/Manifest
index 384b76ff565d..5d1aefeb923e 100644
--- a/sys-libs/liburing/Manifest
+++ b/sys-libs/liburing/Manifest
@@ -1,20 +1,14 @@
-AUX liburing-2.1-arm-syscall.patch 1752 BLAKE2B f2f27e9ff6f86b75808d99a0e89e2c8609f481ba3ff1f908b1f2ec670a5ab5518ea990ff4bc24506f5ce6f6d8e1083ac7e3b0aaee9d72a8fb5bc3d4577617309 SHA512 04e1c92d6b399f046c500ff3a7d78990682e60df3994431977f7a01bea0fba0fb1dea6e66340bfd79869fbc2114f4e9a9eb391ed26d81a3041accf78141fd158
-AUX liburing-2.1-gnu_source-musl-cpuset.patch 1483 BLAKE2B 4df57662e28240455795415c4de4b3047afdfcd0818d829f79c0489539d6646fa84de8ef94d15488e8d66169598bbfdd4dbbd21c90638eb5e372ecfdbb2dfe8c SHA512 a779f9077c2529c8e294ff6c22823c149d79eb84f20889583422987eec42c3e549d61041e07456a9b085284fdc5f44e8816efa837e4e8865deb6874f29f463f0
AUX liburing-2.3-liburing.map-Export-io_uring_-enable_rings-register_.patch 1233 BLAKE2B 86113d0201afc1860d240f585a392dd45ea8a1b45adbae96c2a87d18f8540bae96a6a5efc6e8a971aa1535034a859a99c75ea6e43c0744967707aebcc93e08c0 SHA512 7110eae38e18e710522211a9ab8b5a0879107dc236553b139d460a0068e44def9e28357c615665920dd86e0b70d552daeb09b677ca460adc3eb352fffe61be73
AUX liburing-2.3-remove-error-from-error_h-for-portability.patch 4160 BLAKE2B 0262d1eb46b9df94cd98df5fab24b88dd15e5e4c2d6095b3d85e308ead3f171d7960cf5046823d44ec62529e7b9c0e83260f87a41ec3a66316f29782c31ff28d SHA512 35194720209c36dfb42413441b598543f5b9691c36614a4bb7fdbf6e151fa31bced5ecf389fd50290d69746b299ae9978d102a47f0c303ca33a07a91e7bddf1b
AUX liburing-2.5-lld-17.patch 944 BLAKE2B 4369d02ca7599b28e33aee7639600546f2b1e37bc806b8d3810102915b75d81c36ee089eacd9c899299e6f71c82076688e7e66ff9014b646a565b2567a947e37 SHA512 3c7fa358837e81a791576ee1e392f947f9153cb62de3b53e5b063f5c745b477ba6754dcf7785903372e91fb8d475a46b43cc787edb66996d79c0d7fd97186687
AUX liburing-2.5-print-libgcc-file-name.patch 1900 BLAKE2B 9f4c75b8281d83cdd6b95b14b26be86a6d448562006691cd394947046ab00920ff0775ca4e7a1b8f9645135f6a9ccc4e9e73237cf8004433058d9ba95b001359 SHA512 bdc7d2bed2e331d2712d021f99b7a2f96b76ea6b6716a9d1b4a7fc1bf49eb94bb88e5d8ad392b083842517df0e9933ddd96a3bbd78198fb67c1a8d7e81f3acd5
-DIST liburing-2.1.tar.bz2 120806 BLAKE2B 3a09d1504150ed1c111f064187d868fd86ec7c3dbf661f73999f7fbb9c945b528f7ab2e0cfff5d270a1a977f04deedc7c790b6df8708ef2884fbf28c1a9ffd1b SHA512 a658454869b01752b5e499c4f0b50c342a8ff63b3dd1a473a96f9fad03f22a6e4d2354b0e658a4e7e50ea27440a84ee274856b3687803583bc80cb4bc45aec71
DIST liburing-2.2.tar.bz2 172733 BLAKE2B 19ae8a356e4fdc296bfb3ff121b777bd7c970388b31686aac5c531508e807360d58220bc27f9c62c55bd76ca687013acfceb3fa8a2162b615561f637cc50ffe1 SHA512 55b935a90c108be54393a5ab341b56e40ad8d506360fe15b3dcde5ee263356f11080f8614efdc4253f6318ea35d808ec47a9dbfc6b9f6cc2e04f7f1a75c3f621
DIST liburing-2.3.tar.bz2 197929 BLAKE2B 94ae2a79522fbac13c071ad752f5cbfae3e3b3dd6b35da24e5c756ba47a7b304e5bcb18391ca23fc2edafeb2dbcdcf143fd2cda71656396ac34248159a964fb7 SHA512 341aa13d3b560617f3710291945ec2fe35d828e0b67ee3a97555fd4eb3d2042a7f9e722080d8ebb45aa74a2ca4ef58db1e8a10c351e951a604da007ba69d2738
-DIST liburing-2.4.tar.bz2 213774 BLAKE2B 3e6c28842db6ee10e38df297e392803e0ff40ccfea774b2c473ba63b5583e760371bf0ce8e34ca4311e2bef69eee81b2b50b5e906bb328d5b321488136fc61e0 SHA512 45b5123739280835c88c1addcf99a3210a91c6e1b3e0c5a20fd4cf3ff55db5fd1475b0351806be2e86fedfa313200eecac6a9a6f410a9eca7e451081fd8eec96
DIST liburing-2.5.tar.bz2 217397 BLAKE2B cb5d0a61bc8ce5a92a1b581c5411938146a84c365598454ac8bac7ba0d7429e20a5a608cb725619cbf8b77570b2d638fc347fd9ee9cb1456361957a2a4d6e6d6 SHA512 cba62acde52c07185ade0ac0fee6bf3845f5677d061b52d179c6341a62f8581d4f8920fc09d27a3723bc3832bc84dd5475d173427ee5d8a063d079b07af96416
-EBUILD liburing-2.1-r2.ebuild 1724 BLAKE2B 900c92124e14b809a698f48b81536e4b6c37e6629169fcb0b668cefb51cdcba84d7555a3eff957b0bd1b9c37bb2f4005d9c2bae569b6a1b852043c77614f3d02 SHA512 385c3f5f1d2d5bc38463d758d317ce58ee57261b80e039772a3a050d4aa870dcd80f4a7d5247e6036aea777494edf40af6669438ea4ef9b1cad87144437789aa
+DIST liburing-2.6.tar.bz2 244371 BLAKE2B f0e05a5a82592ed45c7c7f12b437d17655989102961c3d349d18d993f21cf0f1a6eb2aa7ad863a579428a1546c307924bf368e10af96045fd40a02fd5bd5843e SHA512 bf07cc0e67498ba64d888d1a113f7c8bea3feaed6f05ce69c99a1dec9506e553a1695ab4e1ecfa86f0ba1af699769557291d5c6b125b9bf59a1452f69eac0613
EBUILD liburing-2.2.ebuild 1574 BLAKE2B 78ebce489d9b427f0832118b0e752cc8cb033a7b98bbb056b85222d69e355d01ca3c3ae3e1a9d9afbad14f0aaa4cdead017a580fc32734adb8097e0bd43f4854 SHA512 84002d4a80e24bc4516170a720f10a15d7fa94e5a7a1831c38be7e109bcc0f90423cfd9097569be4b3af45be366ea1c537fb9626012fda502377fea0438d6b83
EBUILD liburing-2.3-r4.ebuild 2142 BLAKE2B 22748487fd62608752ef8e0dda645e74c948d664818e8f755449bc53c4213f15ba83f00d4aebded5cf82da62e0f5989f4b7de18afc992ba6f3b1c4b9bb4952bf SHA512 7364fd68ba42e0eb970f52f6bb4fefa26a029378164c283ac88b251ccaab5c242c3c4cea5f0f1449bcb2f6a9eb0ba73ac477ee4f5b819f311cc78ad946c38220
-EBUILD liburing-2.4.ebuild 1896 BLAKE2B 443616eb7133f1887f69373deefc21af17dea96774a15457f906fe269f3e2c6f1bac9b929cc68684d3a3326f46fd10f1fca8efb2ef2f5c43e320a111c34346c8 SHA512 20253472f8bd1fb541cac0f21aaec4d6b3f1106ff9e61bc82370d7f6d65388739dc4246b53c6171156647b70af6c11d88d6993160e8d8088f0cce648156055ee
-EBUILD liburing-2.5-r1.ebuild 1942 BLAKE2B ec2f6c263f5770db1f90e51795cdd33f878e70ece7956c040e74276899697068518df4f038986576dc369f0b960732eb0505e391e3a889ba3d5c37f2ee40cbf2 SHA512 7ac2c344a40f294a9821b94a68a476f5dc8609f694d5a27821e6ee0d5cc1d8c2607532eee38eb64502695a6c17ee5fed2f6acd2d3b0c20396db84ec3cca7a1a4
EBUILD liburing-2.5-r2.ebuild 1991 BLAKE2B cfd589c1ed94c76f62b9b4e49fcd80da683f734cd54efe6c33c7717a07202f7b0c1e8b82691ccca52d3c3ce7f33c92040aa5c7008fdccdcd85fcd669bf86c4ec SHA512 f78dfa16671f8a168de24f596b67f2efd0ba7a5f131c907c63e226e7d72ffe9464ac04c8804cf047e1b63147fbdb566a4e75d6f9a9d7a1f722c1d406b5d0e6d1
-EBUILD liburing-2.5.ebuild 1896 BLAKE2B 443616eb7133f1887f69373deefc21af17dea96774a15457f906fe269f3e2c6f1bac9b929cc68684d3a3326f46fd10f1fca8efb2ef2f5c43e320a111c34346c8 SHA512 20253472f8bd1fb541cac0f21aaec4d6b3f1106ff9e61bc82370d7f6d65388739dc4246b53c6171156647b70af6c11d88d6993160e8d8088f0cce648156055ee
+EBUILD liburing-2.6.ebuild 1896 BLAKE2B b38551ff2a462ff1a10c71009cc7476e4f558f0083db4dbe81787048fff039bbfc88bf0d18736dffc0f370b1eb53f662bd42cf5ae5cffe1559d9947e6e7e3989 SHA512 432d775cac4f913c51aa97925ee9bcd4a5bb8c6a366ecae7a72b6b47d3bfd2b03d5ca2b8a3539f0269e335478c267bd4173a19de116a1c35a9a2a83f8909778f
EBUILD liburing-9999.ebuild 1896 BLAKE2B 443616eb7133f1887f69373deefc21af17dea96774a15457f906fe269f3e2c6f1bac9b929cc68684d3a3326f46fd10f1fca8efb2ef2f5c43e320a111c34346c8 SHA512 20253472f8bd1fb541cac0f21aaec4d6b3f1106ff9e61bc82370d7f6d65388739dc4246b53c6171156647b70af6c11d88d6993160e8d8088f0cce648156055ee
MISC metadata.xml 326 BLAKE2B 7c133a6dbb4ab4b537c0741ec9f3cd525c0803040950ee93e4c1cbc848c7618074471cc1a18ca07d6963c06252c83b66df0811ebae4c0cf9d7782f66ca5aa14a SHA512 1aacf941a9fa57429468fdfc8f546f559c5d483988ba5c6b0f4ed0fe5913f85d218b2a9eec83bae1d11a71eed36a37e76ccedc192697fbe9763fd0b09b2dcfd7
diff --git a/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch b/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch
deleted file mode 100644
index a652b052148a..000000000000
--- a/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-https://github.com/axboe/liburing/commit/cb350a8989adbd65db574325d9a86d5437d800da
-https://bugs.gentoo.org/816798
-
-From cb350a8989adbd65db574325d9a86d5437d800da Mon Sep 17 00:00:00 2001
-From: Guillem Jover <guillem@hadrons.org>
-Date: Mon, 13 Sep 2021 23:56:08 +0200
-Subject: [PATCH] test: Use syscall wrappers instead of using syscall(2)
- directly
-
-Some of these syscalls have different entry points depending on the
-architecture. Use the wrappers to avoid having to reimplement them
-portably.
-
-Fixes build failures on Debian armel and armhf builds.
-
-Signed-off-by: Guillem Jover <guillem@hadrons.org>
---- a/test/sqpoll-cancel-hang.c
-+++ b/test/sqpoll-cancel-hang.c
-@@ -4,7 +4,6 @@
- #include <stdlib.h>
- #include <string.h>
- #include <sys/mman.h>
--#include <sys/syscall.h>
- #include <sys/wait.h>
- #include <time.h>
- #include <unistd.h>
-@@ -29,8 +28,6 @@ static uint64_t current_time_ms(void)
-
- #define IORING_OFF_SQES 0x10000000ULL
-
--#define sys_io_uring_setup 425
--
- static void kill_and_wait(int pid, int* status)
- {
- kill(-pid, SIGKILL);
-@@ -53,7 +50,7 @@ a5)
- void* vma2 = (void*)a3;
- void** ring_ptr_out = (void**)a4;
- void** sqes_ptr_out = (void**)a5;
-- uint32_t fd_io_uring = syscall(sys_io_uring_setup, entries, setup_params);
-+ uint32_t fd_io_uring = __sys_io_uring_setup(entries, setup_params);
- uint32_t sq_ring_sz = setup_params->sq_off.array +
- setup_params->sq_entries * sizeof(uint32_t);
- uint32_t cq_ring_sz = setup_params->cq_off.cqes +
-@@ -135,7 +132,7 @@ void trigger_bug(void)
- }
- int main(void)
- {
-- syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul);
-+ mmap((void *)0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul);
- int pid = fork();
- if (pid < 0)
- exit(1);
-
diff --git a/sys-libs/liburing/files/liburing-2.1-gnu_source-musl-cpuset.patch b/sys-libs/liburing/files/liburing-2.1-gnu_source-musl-cpuset.patch
deleted file mode 100644
index b6486f8b140a..000000000000
--- a/sys-libs/liburing/files/liburing-2.1-gnu_source-musl-cpuset.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-https://github.com/axboe/liburing/commit/c34070e08199491fe9653617364f4aea9b9b22be
-
-From: Sam James <sam@gentoo.org>
-Date: Mon, 14 Mar 2022 14:18:55 +0000
-Subject: [PATCH] liburing.h: define GNU_SOURCE for cpu_set_t
-
-On musl, cpu_set_t is only exposed if GNU_SOURCE is defined. While in
-the liburing build system, this is set (43b7ec8d17888df0debccda27dd58f4d1b90245e),
-it can't be guaranteed that folks including the header externally will set
-that macro.
-
-Noticed while investigating a build failure for glusterfs on a musl
-system:
-```
-configure:17701: checking for liburing.h
-configure:17701: x86_64-gentoo-linux-musl-gcc -c -pipe -march=native -fno-diagnostics-color -O2 conftest.c >&5
-In file included from conftest.c:105:
-/usr/include/liburing.h:162:39: error: unknown type name 'cpu_set_t'
- 162 | const cpu_set_t *mask);
- | ^~~~~~~~~
-configure:17701: $? = 1
-```
-
-Just like _XOPEN_SOURCE, set if needed.
-
-Bug: https://bugs.gentoo.org/829293
-Bug: https://github.com/axboe/liburing/issues/422
-See: 43b7ec8d17888df0debccda27dd58f4d1b90245e
-Signed-off-by: Sam James <sam@gentoo.org>
---- a/src/include/liburing.h
-+++ b/src/include/liburing.h
-@@ -6,6 +6,10 @@
- #define _XOPEN_SOURCE 500 /* Required for glibc to expose sigset_t */
- #endif
-
-+#ifndef _GNU_SOURCE
-+#define _GNU_SOURCE /* Required for musl to expose cpu_set_t */
-+#endif
-+
- #include <sys/socket.h>
- #include <sys/stat.h>
- #include <sys/uio.h>
diff --git a/sys-libs/liburing/liburing-2.1-r2.ebuild b/sys-libs/liburing/liburing-2.1-r2.ebuild
deleted file mode 100644
index 2c652078fe04..000000000000
--- a/sys-libs/liburing/liburing-2.1-r2.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit multilib-minimal toolchain-funcs
-
-DESCRIPTION="Efficient I/O with io_uring"
-HOMEPAGE="https://github.com/axboe/liburing"
-if [[ "${PV}" == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/axboe/liburing.git"
-else
- SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
-fi
-LICENSE="MIT"
-SLOT="0/2" # liburing.so major version
-
-IUSE="static-libs"
-# fsync test hangs forever
-RESTRICT="test"
-
-# At least installed headers need <linux/*>, bug #802516
-DEPEND=">=sys-kernel/linux-headers-5.1"
-RDEPEND="${DEPEND}"
-
-PATCHES=(
- # Upstream, bug #816798
- "${FILESDIR}"/${P}-arm-syscall.patch
- # Upstream, bug #829293
- "${FILESDIR}"/${P}-gnu_source-musl-cpuset.patch
-)
-
-src_prepare() {
- default
-
- if [[ "${PV}" != *9999 ]] ; then
- # Make sure pkgconfig files contain the correct version
- # bug #809095 and #833895
- sed -i "/^Version:/s@[[:digit:]\.]\+@${PV}@" ${PN}.spec || die
- fi
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- local myconf=(
- --prefix="${EPREFIX}/usr"
- --libdir="${EPREFIX}/usr/$(get_libdir)"
- --libdevdir="${EPREFIX}/usr/$(get_libdir)"
- --mandir="${EPREFIX}/usr/share/man"
- --cc="$(tc-getCC)"
- --cxx="$(tc-getCXX)"
- )
- # No autotools configure! "econf" will fail.
- TMPDIR="${T}" ./configure "${myconf[@]}" || die
-}
-
-multilib_src_compile() {
- emake V=1 AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)"
-}
-
-multilib_src_install_all() {
- einstalldocs
-
- if ! use static-libs ; then
- find "${ED}" -type f -name "*.a" -delete || die
- fi
-}
-
-multilib_src_test() {
- emake V=1 runtests
-}
diff --git a/sys-libs/liburing/liburing-2.4.ebuild b/sys-libs/liburing/liburing-2.4.ebuild
deleted file mode 100644
index ecb77ed5b823..000000000000
--- a/sys-libs/liburing/liburing-2.4.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit multilib-minimal toolchain-funcs
-
-DESCRIPTION="Efficient I/O with io_uring"
-HOMEPAGE="https://github.com/axboe/liburing"
-if [[ "${PV}" == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/axboe/liburing.git"
-else
- SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- QA_PKGCONFIG_VERSION=${PV}
-fi
-LICENSE="MIT"
-SLOT="0/2" # liburing.so major version
-
-IUSE="examples static-libs test"
-# fsync test hangs forever
-RESTRICT="!test? ( test )"
-
-# At least installed headers need <linux/*>, bug #802516
-DEPEND=">=sys-kernel/linux-headers-5.1"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
-
- if ! use examples; then
- sed -e '/examples/d' Makefile -i || die
- fi
- if ! use test; then
- sed -e '/test/d' Makefile -i || die
- fi
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- local myconf=(
- --prefix="${EPREFIX}/usr"
- --libdir="${EPREFIX}/usr/$(get_libdir)"
- --libdevdir="${EPREFIX}/usr/$(get_libdir)"
- --mandir="${EPREFIX}/usr/share/man"
- --cc="$(tc-getCC)"
- --cxx="$(tc-getCXX)"
- )
- # No autotools configure! "econf" will fail.
- TMPDIR="${T}" ./configure "${myconf[@]}" || die
-}
-
-multilib_src_compile() {
- emake V=1 AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)"
-}
-
-multilib_src_install_all() {
- einstalldocs
-
- if ! use static-libs ; then
- find "${ED}" -type f -name "*.a" -delete || die
- fi
-}
-
-multilib_src_test() {
- local disabled_tests=(
- accept.c
- fpos.c
- io_uring_register.c
- link-timeout.c
- read-before-exit.c
- recv-msgall-stream.c
- )
- local disabled_test
- for disabled_test in "${disabled_tests[@]}"; do
- sed -i "/\s*${disabled_test}/d" test/Makefile \
- || die "Failed to remove ${disabled_test}"
- done
-
- emake -C test V=1 runtests
-}
diff --git a/sys-libs/liburing/liburing-2.5-r1.ebuild b/sys-libs/liburing/liburing-2.5-r1.ebuild
deleted file mode 100644
index 14dd58f7e6f6..000000000000
--- a/sys-libs/liburing/liburing-2.5-r1.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit multilib-minimal toolchain-funcs
-
-DESCRIPTION="Efficient I/O with io_uring"
-HOMEPAGE="https://github.com/axboe/liburing"
-if [[ "${PV}" == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/axboe/liburing.git"
-else
- SRC_URI="https://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- QA_PKGCONFIG_VERSION=${PV}
-fi
-LICENSE="MIT"
-SLOT="0/2" # liburing.so major version
-
-IUSE="examples static-libs test"
-# fsync test hangs forever
-RESTRICT="!test? ( test )"
-
-# At least installed headers need <linux/*>, bug #802516
-DEPEND=">=sys-kernel/linux-headers-5.1"
-RDEPEND="${DEPEND}"
-
-PATCHES=(
- "${FILESDIR}"/${P}-lld-17.patch
-)
-
-src_prepare() {
- default
-
- if ! use examples; then
- sed -e '/examples/d' Makefile -i || die
- fi
- if ! use test; then
- sed -e '/test/d' Makefile -i || die
- fi
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- local myconf=(
- --prefix="${EPREFIX}/usr"
- --libdir="${EPREFIX}/usr/$(get_libdir)"
- --libdevdir="${EPREFIX}/usr/$(get_libdir)"
- --mandir="${EPREFIX}/usr/share/man"
- --cc="$(tc-getCC)"
- --cxx="$(tc-getCXX)"
- )
- # No autotools configure! "econf" will fail.
- TMPDIR="${T}" ./configure "${myconf[@]}" || die
-}
-
-multilib_src_compile() {
- emake V=1 AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)"
-}
-
-multilib_src_install_all() {
- einstalldocs
-
- if ! use static-libs ; then
- find "${ED}" -type f -name "*.a" -delete || die
- fi
-}
-
-multilib_src_test() {
- local disabled_tests=(
- accept.c
- fpos.c
- io_uring_register.c
- link-timeout.c
- read-before-exit.c
- recv-msgall-stream.c
- )
- local disabled_test
- for disabled_test in "${disabled_tests[@]}"; do
- sed -i "/\s*${disabled_test}/d" test/Makefile \
- || die "Failed to remove ${disabled_test}"
- done
-
- emake -C test V=1 runtests
-}
diff --git a/sys-libs/liburing/liburing-2.5.ebuild b/sys-libs/liburing/liburing-2.6.ebuild
index ecb77ed5b823..1d6bccf1b76b 100644
--- a/sys-libs/liburing/liburing-2.5.ebuild
+++ b/sys-libs/liburing/liburing-2.6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest
index 60931f581a8f..6637e1748505 100644
--- a/sys-libs/llvm-libunwind/Manifest
+++ b/sys-libs/llvm-libunwind/Manifest
@@ -4,17 +4,18 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659
DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
-DIST llvm-project-18.1.4.src.tar.xz 132054668 BLAKE2B 94bbad3b185fd07cbace4eff79aba80fbdd5e072739250e3927fe1848bcf3f8d355eb1f384e57306707eb702acc7ab01b732590735be7950221607664d04b0a6 SHA512 b1b214ae91f3705d8ea345547ad53f1e5d7d884c1eb6958bc41c14ac4b3e407771ccc2b693686ff103c8232c2c3942731d6db9a9cb4f735e6c6a0674739d0b29
-DIST llvm-project-18.1.4.src.tar.xz.sig 566 BLAKE2B b74fd219d7bcdf197b4e711cfbb25c40e9d8d2c7341de0215d8c31f330f396e9c166ff63513829cdc9cef349f08238f66a4dc949fa97958a7af496abae369eaa SHA512 4f456edf4fb454815acaef6855b1a0991f229810a32e9369af83388e37f0ef8964308e1e93bd6216024cdd67e86caaadc8d5794467857cc6fe561c9fa6ca7386
-DIST llvm-project-338561657685c1831a53563b1bc36ffc7470239e.tar.gz 209715501 BLAKE2B 49152479d4f2cae430e783784d0cfcc129134f5cc0bf12c72701cd15e59cb3e1be2f61385ba9baa93d1d1193e89374ac8877b909650c163b681d1fcd26732cdc SHA512 d34bbe82e85c5b9d493029ad7b46e802f06f7e7a8a48515d0043c58c3251271f8f3e1e11c47eb91bd3db2477f819d33b43ddebb276eb9601c5ad141e463c9682
-DIST llvm-project-ee284d2da0720dc21191d6f545504cbfcf5dcbcf.tar.gz 208883034 BLAKE2B e37c9f1a6a4d0caa9a3091f979dd09f509d458f8b7b30286c77dd2385aea748b7aac6dd488c79573f82feb655aa321717bd2fb46bba4a12b388b52064f6e13bf SHA512 1335ade87cd2accc47ac47ed2ab302999e375808b158b6c9d31fac9059cbb992d2bdaaadf1fd9a1b37268c1123d43346ea4d150894d6d2e6f80ba790b65b93b1
-DIST llvm-project-f03cd2db91956456f1c5e2da86d3c50183eebd28.tar.gz 209375254 BLAKE2B 1d7e043d04323edb64b2ef2309fbcb4f82a959f45391e815133cc0891d5a497bbb81101aab460e9bf67e75aa906e13ad1877c3850829dcad397ed626dc8f2792 SHA512 6775e03a44b2133bd4a4b473ab007599321daa19dc7f3cc47f95cf9d110e83e982bf48a6b1d43038b0f0a2c0fef2f689aefd20132b25a90ef19342683e2d2e50
+DIST llvm-project-18.1.5.src.tar.xz 132061072 BLAKE2B bfdd987d5992a4d94ae8b14792df3be67a8e8fdf1daef9834cdaa2132df1b7ddb72ba0aabbb34b171a73d0f3b2b0f61e7160f0b278a67fd4850e3f501fd21531 SHA512 9e2f1e251b3754a24a0b39676d78c98692887c05c85cf0bee50fd44d9635290019930d4dabd1ff4ba3c9c1067e7e0e09aa1bbcd3d76687f919a1d44ba85eee20
+DIST llvm-project-18.1.5.src.tar.xz.sig 566 BLAKE2B ad935db71ec3b9fc885d696af440764a71fe7cafc5b3ca0b25a2963100d9cb3790392daebcac1341716c95a8da3c6243f5a8667fea1ed18b93fc8baa495414c9 SHA512 3cbca1059d940f3bd7bd72d68f2828039b66304980cc5f43769649e5494fc7d71117bf8aba5cc7f7a2ffca52f60ba30fadf3b28f984fd49ddb14300e30b45237
+DIST llvm-project-18.1.6.src.tar.xz 132064976 BLAKE2B d38d8026068de371dc4bc288c68c8e441a126cf8e89e55a965f3b9e3a629a37d5743fd7859a60bedaddf27ff2da1e0f08c81806871ef542cb7c3f40b23b22cf5 SHA512 89ec276aa41bb2d76cfc3a72d8e728a9ce9176e02c085338b704790524fe329904cf311381805814faa8a6c79637620c01627bf122a51f89e0f3adb47e5df34c
+DIST llvm-project-18.1.6.src.tar.xz.sig 566 BLAKE2B 4b4a1ec2f084b0728134b9c04775db5938e571f1d7c7aa45b985bed490dcfd2cceab2069a43d4ce7766faec703310a376b83565af317e5f60bf10bc06a732395 SHA512 fbae037d39f4f1c13babafd42dee719f3d79f0e2142cc319f59fb319361a1db8ce65fa736a0e2a5e702ac49e3b8323374be6cfa1003f96b0887fa1894e2b6dee
+DIST llvm-project-702198fc9ac5dba392f9d9ba7c56467996343c0a.tar.gz 211764675 BLAKE2B b28203faf5c4e51236da3e3abac969cffe6f93ce6757a81b5a577187ec236fc0b124fe6a370d1f4e803deab781606a7caf0b411780cc84ee08a8de942c4fc479 SHA512 b4217403abf4166eb8eccfd304bcaa2e15d5b67c4f996d51e0745d197e4b9eda1dd5a5b1d7c384effc25f53bb1229edda9618e172abe3be1a94a9569f7c5b0b7
+DIST llvm-project-a7ee81e8279e0bf6e05617a4a638e5f2f8e45022.tar.gz 210384692 BLAKE2B 28b85b08a42c173e1c3bf530483112b1629c7e6684a83a016fbe9f132774f7b864d793581873a6529defeabb4479ad9a3d7c025b781b2fa4952c239b6d567b11 SHA512 1d593818347452f96611a62fa3aa22ce4355a4ee5d5dcfcb54a286a1aa980e9531d5fb6cbee3b0ee5943c6d0f4e2ba2245e13262fe7859e5b114f9c5d5cf1417
EBUILD llvm-libunwind-15.0.7.ebuild 3032 BLAKE2B 9b47e894db1a764f3eca3135f4caba68261953f4433af017b7bb53181e345ad26c570733f997022c53c9ef49a0a3b823188d92cfcc16a2113825d767b1ffab2a SHA512 0b68480fb2a8e5a351574e81fbcff824cd324754ed40378f06fec12fedbba94a921043d72db6ecc37f8b0680b7f518bbbd8d63f69ce8d84f86ca522653d293fb
EBUILD llvm-libunwind-16.0.6-r1.ebuild 3440 BLAKE2B eafe21a3de172043ca0039ba27c80c64d32b02cc86bdb5a6d108ded35770e0352216337cbf24ee4fde43b699a68a85c8145be2d17510d525452bfd5a02674998 SHA512 164fdc1c62405e02c035af7997b8522b51f5b9337d2bb66d7fc9b1f45df74ec70d31b26dc5324c59792d32c543fe18abf74ed3b07a64c131e3c1bb4f9f733c5d
EBUILD llvm-libunwind-17.0.6.ebuild 3440 BLAKE2B eafe21a3de172043ca0039ba27c80c64d32b02cc86bdb5a6d108ded35770e0352216337cbf24ee4fde43b699a68a85c8145be2d17510d525452bfd5a02674998 SHA512 164fdc1c62405e02c035af7997b8522b51f5b9337d2bb66d7fc9b1f45df74ec70d31b26dc5324c59792d32c543fe18abf74ed3b07a64c131e3c1bb4f9f733c5d
-EBUILD llvm-libunwind-18.1.4.ebuild 3407 BLAKE2B 6c48a4e9caebd60890460e91e7e64324d66a97813023d582c869b0060468576de1b307160c435587f013ad632335a9968d61731ee4157c5d2272d817ee74a309 SHA512 919fda22d1de77a0db1c6fa14eeee7b6d7444af767e849aacdf952e9b66732c0ac06ae14a6dca2176a59df9738223e11ee8035d3c99bf0ea13799699fadb7d68
+EBUILD llvm-libunwind-18.1.5.ebuild 3407 BLAKE2B 6c48a4e9caebd60890460e91e7e64324d66a97813023d582c869b0060468576de1b307160c435587f013ad632335a9968d61731ee4157c5d2272d817ee74a309 SHA512 919fda22d1de77a0db1c6fa14eeee7b6d7444af767e849aacdf952e9b66732c0ac06ae14a6dca2176a59df9738223e11ee8035d3c99bf0ea13799699fadb7d68
+EBUILD llvm-libunwind-18.1.6.ebuild 3407 BLAKE2B 6c48a4e9caebd60890460e91e7e64324d66a97813023d582c869b0060468576de1b307160c435587f013ad632335a9968d61731ee4157c5d2272d817ee74a309 SHA512 919fda22d1de77a0db1c6fa14eeee7b6d7444af767e849aacdf952e9b66732c0ac06ae14a6dca2176a59df9738223e11ee8035d3c99bf0ea13799699fadb7d68
EBUILD llvm-libunwind-19.0.0.9999.ebuild 3316 BLAKE2B 013ff60e8fa1fa480e1e56c6c8c1d5a657d946264a279a8fad53e3047fcde1f439e10b25e151af0d9c3f7f6fe014c2cf3372d311f3963c78e633e986b28a33e5 SHA512 4aaa97553c0e3e5421fe5864b81fdcd0e8a1167e37bec37e8706d3b9b939b5220a171576f800bdc6ae25f2bbfd60b063c84934d1daa0bdfd6989a80d08044301
-EBUILD llvm-libunwind-19.0.0_pre20240410.ebuild 3316 BLAKE2B 013ff60e8fa1fa480e1e56c6c8c1d5a657d946264a279a8fad53e3047fcde1f439e10b25e151af0d9c3f7f6fe014c2cf3372d311f3963c78e633e986b28a33e5 SHA512 4aaa97553c0e3e5421fe5864b81fdcd0e8a1167e37bec37e8706d3b9b939b5220a171576f800bdc6ae25f2bbfd60b063c84934d1daa0bdfd6989a80d08044301
-EBUILD llvm-libunwind-19.0.0_pre20240420.ebuild 3316 BLAKE2B 013ff60e8fa1fa480e1e56c6c8c1d5a657d946264a279a8fad53e3047fcde1f439e10b25e151af0d9c3f7f6fe014c2cf3372d311f3963c78e633e986b28a33e5 SHA512 4aaa97553c0e3e5421fe5864b81fdcd0e8a1167e37bec37e8706d3b9b939b5220a171576f800bdc6ae25f2bbfd60b063c84934d1daa0bdfd6989a80d08044301
-EBUILD llvm-libunwind-19.0.0_pre20240427.ebuild 3316 BLAKE2B 013ff60e8fa1fa480e1e56c6c8c1d5a657d946264a279a8fad53e3047fcde1f439e10b25e151af0d9c3f7f6fe014c2cf3372d311f3963c78e633e986b28a33e5 SHA512 4aaa97553c0e3e5421fe5864b81fdcd0e8a1167e37bec37e8706d3b9b939b5220a171576f800bdc6ae25f2bbfd60b063c84934d1daa0bdfd6989a80d08044301
+EBUILD llvm-libunwind-19.0.0_pre20240509.ebuild 3316 BLAKE2B 013ff60e8fa1fa480e1e56c6c8c1d5a657d946264a279a8fad53e3047fcde1f439e10b25e151af0d9c3f7f6fe014c2cf3372d311f3963c78e633e986b28a33e5 SHA512 4aaa97553c0e3e5421fe5864b81fdcd0e8a1167e37bec37e8706d3b9b939b5220a171576f800bdc6ae25f2bbfd60b063c84934d1daa0bdfd6989a80d08044301
+EBUILD llvm-libunwind-19.0.0_pre20240518.ebuild 3316 BLAKE2B 013ff60e8fa1fa480e1e56c6c8c1d5a657d946264a279a8fad53e3047fcde1f439e10b25e151af0d9c3f7f6fe014c2cf3372d311f3963c78e633e986b28a33e5 SHA512 4aaa97553c0e3e5421fe5864b81fdcd0e8a1167e37bec37e8706d3b9b939b5220a171576f800bdc6ae25f2bbfd60b063c84934d1daa0bdfd6989a80d08044301
MISC metadata.xml 438 BLAKE2B 2a36fbbc59e137056029c62aef6d167d9c82531c2582d7bad5cb13cc36e5c4c9518ffe8c56d06bbcfd97ad22eda71a8b776f3984195f53d06cf45659b438dc00 SHA512 4f18b054072d00e5440faa31a59f9ef587d035b5f25e30913f0b1449debee967fa794fae2548e87db3fb2177ce853ab075e1f11f3cc763f5d7fdf06147108845
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-18.1.4.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-18.1.5.ebuild
index 944fc4144f4e..944fc4144f4e 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-18.1.4.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-18.1.5.ebuild
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240427.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-18.1.6.ebuild
index df7d3e6095bc..944fc4144f4e 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240427.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-18.1.6.ebuild
@@ -12,7 +12,8 @@ HOMEPAGE="https://llvm.org/docs/ExceptionHandling.html"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
-IUSE="+clang +debug static-libs test"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
+IUSE="+clang debug static-libs test"
REQUIRED_USE="test? ( clang )"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240410.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240509.ebuild
index df7d3e6095bc..df7d3e6095bc 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240410.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240509.ebuild
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240420.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240518.ebuild
index df7d3e6095bc..df7d3e6095bc 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240420.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240518.ebuild
diff --git a/sys-libs/mtdev/Manifest b/sys-libs/mtdev/Manifest
index fdfa1b3ff522..42c9e933d279 100644
--- a/sys-libs/mtdev/Manifest
+++ b/sys-libs/mtdev/Manifest
@@ -1,5 +1,3 @@
-DIST mtdev-1.1.6.tar.bz2 295965 BLAKE2B 212cf0f0bea0fc295528c90c6685770e88cb135a714cbf21e53b75ab2eaedd210269d073520e44c5bffafe8a5ecca521221061193725cba916bc2cf703fd5166 SHA512 859fb0803f330ecaae69f80713ff5a5235c0cb00de6d5ac2717ad82cea856a92b866f0c272ecfe743186abcf925f95585149ba4828b4c91555cfeb2f2a1c98f1
DIST mtdev-1.1.7.tar.bz2 301994 BLAKE2B 1da2c7231301ebb407fa8e58331fd080bfb026d5e32eb19af125abf36391eff26379040634d4ede995aedb78c7dba3396e9753628f5dfe0f939a8b77fc459423 SHA512 e6174a38cf67a7f12a3b91e4e27bf74a18d6b40a956950ebb748b0ff87092333daa07e647b26038a5a533f8c48e845d649848e6ba99ea009ab87fd96ed188152
-EBUILD mtdev-1.1.6.ebuild 546 BLAKE2B 8a6c844e3c94bd879a155c4c3f5807bb304cf52d0e5bbd8bb9d343e6873bd9423c895d357bdc9cc616be68a9b5c6f057722eeab3af28b4d64dd51d0ea686fa07 SHA512 479c9824f71fc5b21c82a7fe025a9cc62376cac9b7ee86bae185edca06e1e1580cebcf6c6a09adb3f4799b505bdb26703139cb2dc55bb545859df6701feb6dde
-EBUILD mtdev-1.1.7.ebuild 545 BLAKE2B 86c1d350a53a111074ed363fb3683de5566e2b13d59738df887a91eca268a9ea7d0d965017a8375a2196c039d5d777906ed8c49501f8b685fa372e329f08da14 SHA512 77681b62b85ecc45a9ad8ee1c337ca312c53d6c3eff3b0411ee923101cf129d788310e77dbe8a5ef828ca3eaff16470180953182e5cc9de2a42c40924ff8441f
+EBUILD mtdev-1.1.7.ebuild 538 BLAKE2B 00754b38a5a3def79f115d9908694c51d833c4fc254bfcf12ca4b96a3c000f07d0dbea7202d48974ac31f85d1b58c05261acb49aa16827b18d05c25de633881e SHA512 186ee26f8e98b0f3c7ed521ffe7cb77b974ad914984639d0c3b64b0d792b9c0feb2fd0bd9378b7e10ffb2c6578565e8176caeb4336d5f8eefb269458d2c3b53e
MISC metadata.xml 340 BLAKE2B ae387fc6a24b33ac775c764ad49e0989d359142010160bb61838392ee2995f994ec33db4c7952e02eb2df135cbf77e4b1fa1c1314668f07d0451234508103586 SHA512 e5b0a64cefc456ffc0403751f70a97761c8de396430256d168ab946788de18edb1bb4bb23a8d529b12d7246562b03f6ea73a618d9d136c0002f3ff7c54ef9a74
diff --git a/sys-libs/mtdev/mtdev-1.1.6.ebuild b/sys-libs/mtdev/mtdev-1.1.6.ebuild
deleted file mode 100644
index e427325f3747..000000000000
--- a/sys-libs/mtdev/mtdev-1.1.6.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DESCRIPTION="Multitouch Protocol Translation Library"
-HOMEPAGE="https://bitmath.org/code/mtdev/"
-SRC_URI="https://bitmath.org/code/mtdev/${P}.tar.bz2"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE=""
-
-DEPEND=">=sys-kernel/linux-headers-2.6.31"
-
-src_configure() {
- econf --disable-static
-}
-
-src_install() {
- default
- find "${ED}" -name '*.la' -delete
-}
diff --git a/sys-libs/mtdev/mtdev-1.1.7.ebuild b/sys-libs/mtdev/mtdev-1.1.7.ebuild
index fbfb9db211c0..02ed50bef8a7 100644
--- a/sys-libs/mtdev/mtdev-1.1.7.ebuild
+++ b/sys-libs/mtdev/mtdev-1.1.7.ebuild
@@ -9,7 +9,7 @@ SRC_URI="https://bitmath.org/code/mtdev/${P}.tar.bz2"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
DEPEND=">=sys-kernel/linux-headers-2.6.31"
diff --git a/sys-libs/musl/Manifest b/sys-libs/musl/Manifest
index abc1c105f11e..d783eddf3d22 100644
--- a/sys-libs/musl/Manifest
+++ b/sys-libs/musl/Manifest
@@ -1,4 +1,5 @@
AUX ldconfig.in-r3 3093 BLAKE2B 146374fe711c660a61e4a23f89ae066e78b8bca6884719c058981069ab92833d7f660b7bd78e7c8b86112944706823f0260d7c63f19d64960f27f44b4e95a6a3 SHA512 ba021cf7d52c001d6ef9a54a91de93240cd7eef9f7a6d7a48ae0c58f934aaea6796979ce80e1cfa9bdc6008023108f3c226440360f8e3134fc23f7fdac0e55b1
+AUX musl-1.2.4-arm64-crti-alignment.patch 847 BLAKE2B 4f652b924fd9b7a396d21cf8fef0d618c23ce14ea662290850e9a8ed78ac6303f674ac978f74e86f8671df75a7749ee54bbbe11278ae283892d1157e540a86d8 SHA512 77d6a4798a71d3593621bb8d3177b288f04bc0e5a4b2a6b91e8ad73e8a96279a4ae18344df77fafb97228931d6e6306b4b0c2adba8dded6449b7bb2565041d31
AUX musl-1.2.4-elfutils-0.190-relr.patch 2930 BLAKE2B 81bcc8932eb4ffb7cf0ae5707866d755c731e67bdcfa71e097f48ee3f13ab75fc96645bfc76e376cda700d81fbb6f7e47f83b06964ded9ea173c262965e4cb04 SHA512 47a24912f5dc16e21a0692c8f0b323dec815867dca7d65f97740a0ad2623c42cd0711e0b69609f24774db8cb26518e2ee5577b4a89d36cc2b053ba7b879cb2f8
AUX stack_chk_fail_local.c 1798 BLAKE2B 380bcbb920bd40a5185246621ba93716f27d61cd0077cd796ff267e10c534c9cc64982b2a66c89b61395dc93d67dae77e8c59908f65f2903f16016180cf94bbb SHA512 bb0bdd7f205d57771920c7ea898c1f84a55d6f90ddd1f8203bfeed98d13ccefa6f68d5fd1c0761321b2732ca928ca81b425e3fe8321c936d1316dea6f1930091
DIST getconf.c 11614 BLAKE2B ba49a573fc16d51780a0b0b81fbf7b64a1142f1dbad203c9609a59b6b07e7404f676c415383ae88c0aede95694821f6ee381bffd93cc3330501e17dc07d122bd SHA512 0d80f37b34a35e3d14b012257c50862dfeb9d2c81139ea2dfa101d981d093b009b9fa450ba27a708ac59377a48626971dfc58e20a3799084a65777a0c32cbc7d
@@ -12,6 +13,8 @@ DIST musl-1.2.5.tar.gz.asc 490 BLAKE2B f0d91b20aa7729449bd02a60adf17e8287904ed59
DIST musl-getent-93a08815f8598db442d8b766b463d0150ed8e2ab.c 11656 BLAKE2B 1b7bf7102a1eb91a8cb881ed8ca65eb8eed911dd50238e97dc2952d89d4c6ebed6bfd046a2b38776c550b2872ab54ced8cb452fcc2ad56e5616f722debda761f SHA512 7f5b9d934d82deb5f8b23e16169a5d9b99ccab3a4708df06a95d685e1b24a3a3e69b3dcf4942f2f66c12a3d4bf0c5827e2ee2e8c4d7b1997359fccc2ac212dee
EBUILD musl-1.2.3-r8.ebuild 5934 BLAKE2B 6b59d02f8163923c41f66535cd3e1fd5a476a6a7426677f65fac1be3759d2453fcd42e7e0fea522fbe90684346974910bea737c8624921f9924ad348fc7d06e4 SHA512 73894ff4988ce54113bb1d46ca53ae1be12fdf0f56209406e7931c645f250e6a8f10417d3f31906d10526dabb841535af603073e6fae7b25fe5a157d1639f94e
EBUILD musl-1.2.4-r1.ebuild 5723 BLAKE2B 2c40e6a549a79610d4c1c73d159eaa238fdbe2a965ebd781e617b7829010624c1ad38e9b2335bf77b0bf5ea2887128d3475aae4fb98cebfb9d36596bbad9e86b SHA512 25c4b6d7d09a90662aa8a2e7fd7cbab13b6439ba3a65c7f52c39e30bf4eacc224d2c3d9d81ff1088d0e32406c6513189281d6ab27788cb3a3c583cce3725f161
+EBUILD musl-1.2.4-r2.ebuild 5785 BLAKE2B 913bb167f55ba2c35ae0d1db85a67c1ef5430826a1402c3cdb91f75ff520e9f3c4e1c467d29b68a131da19644ad4cda3e4f79c840370eba6efff542b6673ac9a SHA512 6e10ce461c28516f19df9410ee3b5cf0762672c2a5c1453566df10d080829230509880b433b874aab4e268fae6a373265cb0780287607a30d1b6bc9e3c8a9e71
+EBUILD musl-1.2.5-r1.ebuild 5783 BLAKE2B 4ba1b947af8452818c3b3b5c8fdc0e63c4f2e657fd5cdd7623fb66976bc45cbf9a059d8346aa69f9e4d1038798537cd7d6a6225f1a2317c67dd679c109e20759 SHA512 f4df9f85a50ac27e7cc62aeeb348a6e3179f340f7953bcafbe9fcc953aef075ade4d518ddbce2b0fe6163dab5a6361d01e8c6aed15891fd6188cb14a6cda2abb
EBUILD musl-1.2.5.ebuild 5714 BLAKE2B 5d539f26f6bcfe43bdcfd23a3d84659a2cadf3ecc9c01a812303a0d699343689ac0d310ffea98199a21da40be61e9c8082a01162d9af57b2d8254bba5c983d77 SHA512 76c8ee66312bc1b9bc7c0d68531b92affe352301b9676e04ec776c9a91acfda43c4f6c324830e056d9753a6e11137fd57559adfbcc99ceb384dd3940b62c8841
EBUILD musl-9999.ebuild 5691 BLAKE2B 47179b9846400c4a6eefab996bfb928a10f96de3324094072c5fdc5f529e1a964f2fd2668e2386274d9f4f7d902ab234d8fc9233b903208700a9f88f044b1a41 SHA512 d4a89572ea8d6605ebb6e0b6c81cc9934da8d3be31ae4a57007d4e5bd47cfec9d1dc69a4d0411f9b076df7bf6e9248ff2da53e76ba63d9b73431663f58279d67
MISC metadata.xml 559 BLAKE2B 8b1093a5278f716b8e21467b325e373a790f54c8ab71b92adc4c87dd569a92b20e08009372065f0f27ced39e3361c9e5e5a2e1bff271753d280439fabbddd3a4 SHA512 a35c13ea32ac8f26984bdb0d70d28a4285f34e32a2b0b17ad98fe3f357fb46c87a1e853377630d4da58fd5953de3fdeb02ee89181394e1815f5e0bbba4cd9f92
diff --git a/sys-libs/musl/files/musl-1.2.4-arm64-crti-alignment.patch b/sys-libs/musl/files/musl-1.2.4-arm64-crti-alignment.patch
new file mode 100644
index 000000000000..8b548bdb255f
--- /dev/null
+++ b/sys-libs/musl/files/musl-1.2.4-arm64-crti-alignment.patch
@@ -0,0 +1,32 @@
+https://git.musl-libc.org/cgit/musl/commit/?id=cbf59dd662cea8786c2f3a5ea21f8da64f002b30
+https://github.com/rui314/mold/issues/1255
+https://bugs.gentoo.org/931782
+
+From cbf59dd662cea8786c2f3a5ea21f8da64f002b30 Mon Sep 17 00:00:00 2001
+From: mojyack <mojyack@gmail.com>
+Date: Sun, 12 May 2024 12:13:06 -0400
+Subject: aarch64 crti.o: fix alignment of _init/_fini
+
+without explicit alignment directives, whether they end up at the
+necessary alignment depends on linker/linking conditions. initially
+reported as mold issue 1255.
+--- a/crt/aarch64/crti.s
++++ b/crt/aarch64/crti.s
+@@ -1,6 +1,7 @@
+ .section .init
+ .global _init
+ .type _init,%function
++.align 2
+ _init:
+ stp x29,x30,[sp,-16]!
+ mov x29,sp
+@@ -8,6 +9,7 @@ _init:
+ .section .fini
+ .global _fini
+ .type _fini,%function
++.align 2
+ _fini:
+ stp x29,x30,[sp,-16]!
+ mov x29,sp
+--
+cgit v1.2.1
diff --git a/sys-libs/musl/musl-1.2.4-r2.ebuild b/sys-libs/musl/musl-1.2.4-r2.ebuild
new file mode 100644
index 000000000000..1ec30208d947
--- /dev/null
+++ b/sys-libs/musl/musl-1.2.4-r2.ebuild
@@ -0,0 +1,205 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit crossdev flag-o-matic toolchain-funcs prefix
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://git.musl-libc.org/git/musl"
+ inherit git-r3
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/musl.asc
+ inherit verify-sig
+
+ SRC_URI="https://musl.libc.org/releases/${P}.tar.gz"
+ SRC_URI+=" verify-sig? ( https://musl.libc.org/releases/${P}.tar.gz.asc )"
+ KEYWORDS="-* ~amd64 ~arm ~arm64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~x86"
+
+ BDEPEND="verify-sig? ( sec-keys/openpgp-keys-musl )"
+fi
+GETENT_COMMIT="93a08815f8598db442d8b766b463d0150ed8e2ab"
+GETENT_FILE="musl-getent-${GETENT_COMMIT}.c"
+SRC_URI+="
+ https://dev.gentoo.org/~blueness/musl-misc/getconf.c
+ https://gitlab.alpinelinux.org/alpine/aports/-/raw/${GETENT_COMMIT}/main/musl/getent.c -> ${GETENT_FILE}
+ https://dev.gentoo.org/~blueness/musl-misc/iconv.c
+"
+
+DESCRIPTION="Light, fast and simple C library focused on standards-conformance and safety"
+HOMEPAGE="https://musl.libc.org"
+
+LICENSE="MIT LGPL-2 GPL-2"
+SLOT="0"
+IUSE="crypt headers-only split-usr"
+
+QA_SONAME="usr/lib/libc.so"
+QA_DT_NEEDED="usr/lib/libc.so"
+# bug #830213
+QA_PRESTRIPPED="usr/lib/crtn.o"
+
+# We want crypt on by default for this as sys-libs/libxcrypt isn't (yet?)
+# built as part as crossdev. Also, elide the blockers when in cross-*,
+# as it doesn't make sense to block the normal CBUILD libxcrypt at all
+# there when we're installing into /usr/${CHOST} anyway.
+if is_crosspkg ; then
+ IUSE="${IUSE/crypt/+crypt}"
+else
+ RDEPEND="crypt? ( !sys-libs/libxcrypt[system] )"
+ PDEPEND="!crypt? ( sys-libs/libxcrypt[system] )"
+fi
+
+PATCHES=(
+ "${FILESDIR}"/${P}-elfutils-0.190-relr.patch
+ "${FILESDIR}"/${PN}-1.2.4-arm64-crti-alignment.patch
+)
+
+just_headers() {
+ use headers-only && target_is_not_host
+}
+
+pkg_setup() {
+ if [[ ${CTARGET} == ${CHOST} ]] ; then
+ case ${CHOST} in
+ *-musl*) ;;
+ *) die "Use sys-devel/crossdev to build a musl toolchain" ;;
+ esac
+ fi
+
+ # fix for #667126, copied from glibc ebuild
+ # make sure host make.conf doesn't pollute us
+ if target_is_not_host || tc-is-cross-compiler ; then
+ CHOST=${CTARGET} strip-unsupported-flags
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ elif use verify-sig ; then
+ # We only verify the release; not the additional (fixed, safe) files
+ # we download.
+ # (Seem to get IPC error on verifying in cross?)
+ ! target_is_not_host && verify-sig_verify_detached "${DISTDIR}"/${P}.tar.gz{,.asc}
+ fi
+
+ default
+}
+
+src_prepare() {
+ default
+
+ mkdir "${WORKDIR}"/misc || die
+ cp "${DISTDIR}"/getconf.c "${WORKDIR}"/misc/getconf.c || die
+ cp "${DISTDIR}/${GETENT_FILE}" "${WORKDIR}"/misc/getent.c || die
+ cp "${DISTDIR}"/iconv.c "${WORKDIR}"/misc/iconv.c || die
+}
+
+src_configure() {
+ strip-flags && filter-lto # Prevent issues caused by aggressive optimizations & bug #877343
+ tc-getCC ${CTARGET}
+
+ just_headers && export CC=true
+
+ local sysroot
+ target_is_not_host && sysroot=/usr/${CTARGET}
+ ./configure \
+ --target=${CTARGET} \
+ --prefix="${EPREFIX}${sysroot}/usr" \
+ --syslibdir="${EPREFIX}${sysroot}/lib" \
+ --disable-gcc-wrapper || die
+}
+
+src_compile() {
+ emake obj/include/bits/alltypes.h
+ just_headers && return 0
+
+ emake
+ if ! is_crosspkg ; then
+ emake -C "${T}" getconf getent iconv \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ VPATH="${WORKDIR}/misc"
+ fi
+
+ $(tc-getCC) ${CFLAGS} -c -o libssp_nonshared.o "${FILESDIR}"/stack_chk_fail_local.c || die
+ $(tc-getAR) -rcs libssp_nonshared.a libssp_nonshared.o || die
+}
+
+src_install() {
+ local target="install"
+ just_headers && target="install-headers"
+ emake DESTDIR="${D}" ${target}
+ just_headers && return 0
+
+ # musl provides ldd via a sym link to its ld.so
+ local sysroot=
+ target_is_not_host && sysroot=/usr/${CTARGET}
+ local ldso=$(basename "${ED}${sysroot}"/lib/ld-musl-*)
+ dosym -r "${sysroot}/lib/${ldso}" "${sysroot}/usr/bin/ldd"
+
+ if ! use crypt ; then
+ # Allow sys-libs/libxcrypt[system] to provide it instead
+ rm "${ED}/usr/include/crypt.h" || die
+ rm "${ED}/usr/$(get_libdir)/libcrypt.a" || die
+ fi
+
+ if ! is_crosspkg ; then
+ # Fish out of config:
+ # ARCH = ...
+ # SUBARCH = ...
+ # and print $(ARCH)$(SUBARCH).
+ local arch=$(awk '{ k[$1] = $3 } END { printf("%s%s", k["ARCH"], k["SUBARCH"]); }' config.mak)
+
+ # The musl build system seems to create a symlink:
+ # ${D}/lib/ld-musl-${arch}.so.1 -> /usr/lib/libc.so.1 (absolute)
+ # During cross or within prefix, there's no guarantee that the host is
+ # using musl so that file may not exist. Use a relative symlink within
+ # ${D} instead.
+ rm "${ED}"/lib/ld-musl-${arch}.so.1 || die
+ if use split-usr; then
+ dosym ../usr/lib/libc.so /lib/ld-musl-${arch}.so.1
+ # If it's still a dead symlink, OK, we really do need to abort.
+ [[ -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] || die
+ else
+ dosym libc.so /usr/lib/ld-musl-${arch}.so.1
+ [[ -e "${ED}"/usr/lib/ld-musl-${arch}.so.1 ]] || die
+ fi
+
+ cp "${FILESDIR}"/ldconfig.in-r3 "${T}"/ldconfig.in || die
+ sed -e "s|@@ARCH@@|${arch}|" "${T}"/ldconfig.in > "${T}"/ldconfig || die
+ eprefixify "${T}"/ldconfig
+ into /
+ dosbin "${T}"/ldconfig
+ into /usr
+ dobin "${T}"/getconf
+ dobin "${T}"/getent
+ dobin "${T}"/iconv
+ echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00musl || die
+ doenvd "${T}"/00musl
+ fi
+
+ if target_is_not_host ; then
+ into /usr/${CTARGET}
+ dolib.a libssp_nonshared.a
+ else
+ dolib.a libssp_nonshared.a
+ fi
+}
+
+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
+}
+
+pkg_postinst() {
+ target_is_not_host && return 0
+
+ [ -n "${ROOT}" ] && return 0
+
+ ldconfig || die
+}
diff --git a/sys-libs/musl/musl-1.2.5-r1.ebuild b/sys-libs/musl/musl-1.2.5-r1.ebuild
new file mode 100644
index 000000000000..9d233979f7e2
--- /dev/null
+++ b/sys-libs/musl/musl-1.2.5-r1.ebuild
@@ -0,0 +1,207 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit crossdev flag-o-matic toolchain-funcs prefix
+
+DESCRIPTION="Light, fast and, simple C library focused on standards-conformance and safety"
+HOMEPAGE="https://musl.libc.org"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.musl-libc.org/git/musl"
+ inherit git-r3
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/musl.asc
+ inherit verify-sig
+
+ SRC_URI="https://musl.libc.org/releases/${P}.tar.gz"
+ SRC_URI+=" verify-sig? ( https://musl.libc.org/releases/${P}.tar.gz.asc )"
+ KEYWORDS="-* ~riscv"
+ #KEYWORDS="-* ~amd64 ~arm ~arm64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~x86"
+
+ BDEPEND="verify-sig? ( sec-keys/openpgp-keys-musl )"
+fi
+
+GETENT_COMMIT="93a08815f8598db442d8b766b463d0150ed8e2ab"
+GETENT_FILE="musl-getent-${GETENT_COMMIT}.c"
+SRC_URI+="
+ https://dev.gentoo.org/~blueness/musl-misc/getconf.c
+ https://gitlab.alpinelinux.org/alpine/aports/-/raw/${GETENT_COMMIT}/main/musl/getent.c -> ${GETENT_FILE}
+ https://dev.gentoo.org/~blueness/musl-misc/iconv.c
+"
+
+LICENSE="MIT LGPL-2 GPL-2"
+SLOT="0"
+IUSE="crypt headers-only split-usr"
+
+QA_SONAME="usr/lib/libc.so"
+QA_DT_NEEDED="usr/lib/libc.so"
+# bug #830213
+QA_PRESTRIPPED="usr/lib/crtn.o"
+
+# We want crypt on by default for this as sys-libs/libxcrypt isn't (yet?)
+# built as part as crossdev. Also, elide the blockers when in cross-*,
+# as it doesn't make sense to block the normal CBUILD libxcrypt at all
+# there when we're installing into /usr/${CHOST} anyway.
+if is_crosspkg ; then
+ IUSE="${IUSE/crypt/+crypt}"
+else
+ RDEPEND="crypt? ( !sys-libs/libxcrypt[system] )"
+ PDEPEND="!crypt? ( sys-libs/libxcrypt[system] )"
+fi
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.2.4-arm64-crti-alignment.patch
+)
+
+just_headers() {
+ use headers-only && target_is_not_host
+}
+
+pkg_setup() {
+ if [[ ${CTARGET} == ${CHOST} ]] ; then
+ case ${CHOST} in
+ *-musl*) ;;
+ *) die "Use sys-devel/crossdev to build a musl toolchain" ;;
+ esac
+ fi
+
+ # Fix for bug #667126, copied from glibc ebuild:
+ # make sure host make.conf doesn't pollute us
+ if target_is_not_host || tc-is-cross-compiler ; then
+ CHOST=${CTARGET} strip-unsupported-flags
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ elif use verify-sig ; then
+ # We only verify the release; not the additional (fixed, safe) files
+ # we download.
+ # (Seem to get IPC error on verifying in cross?)
+ ! target_is_not_host && verify-sig_verify_detached "${DISTDIR}"/${P}.tar.gz{,.asc}
+ fi
+
+ default
+}
+
+src_prepare() {
+ default
+
+ mkdir "${WORKDIR}"/misc || die
+ cp "${DISTDIR}"/getconf.c "${WORKDIR}"/misc/getconf.c || die
+ cp "${DISTDIR}/${GETENT_FILE}" "${WORKDIR}"/misc/getent.c || die
+ cp "${DISTDIR}"/iconv.c "${WORKDIR}"/misc/iconv.c || die
+}
+
+src_configure() {
+ strip-flags && filter-lto # Prevent issues caused by aggressive optimizations & bug #877343
+ tc-getCC ${CTARGET}
+
+ just_headers && export CC=true
+
+ local sysroot
+ target_is_not_host && sysroot=/usr/${CTARGET}
+ ./configure \
+ --target=${CTARGET} \
+ --prefix="${EPREFIX}${sysroot}/usr" \
+ --syslibdir="${EPREFIX}${sysroot}/lib" \
+ --disable-gcc-wrapper || die
+}
+
+src_compile() {
+ emake obj/include/bits/alltypes.h
+ just_headers && return 0
+
+ emake
+ if ! is_crosspkg ; then
+ emake -C "${T}" getconf getent iconv \
+ CC="$(tc-getCC)" \
+ CFLAGS="${CFLAGS}" \
+ CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ VPATH="${WORKDIR}/misc"
+ fi
+
+ $(tc-getCC) ${CPPFLAGS} ${CFLAGS} -c -o libssp_nonshared.o "${FILESDIR}"/stack_chk_fail_local.c || die
+ $(tc-getAR) -rcs libssp_nonshared.a libssp_nonshared.o || die
+}
+
+src_install() {
+ local target="install"
+ just_headers && target="install-headers"
+ emake DESTDIR="${D}" ${target}
+ just_headers && return 0
+
+ # musl provides ldd via a sym link to its ld.so
+ local sysroot=
+ target_is_not_host && sysroot=/usr/${CTARGET}
+ local ldso=$(basename "${ED}${sysroot}"/lib/ld-musl-*)
+ dosym -r "${sysroot}/lib/${ldso}" "${sysroot}/usr/bin/ldd"
+
+ if ! use crypt ; then
+ # Allow sys-libs/libxcrypt[system] to provide it instead
+ rm "${ED}/usr/include/crypt.h" || die
+ rm "${ED}/usr/$(get_libdir)/libcrypt.a" || die
+ fi
+
+ if ! is_crosspkg ; then
+ # Fish out of config:
+ # ARCH = ...
+ # SUBARCH = ...
+ # and print $(ARCH)$(SUBARCH).
+ local arch=$(awk '{ k[$1] = $3 } END { printf("%s%s", k["ARCH"], k["SUBARCH"]); }' config.mak)
+
+ # The musl build system seems to create a symlink:
+ # ${D}/lib/ld-musl-${arch}.so.1 -> /usr/lib/libc.so.1 (absolute)
+ # During cross or within prefix, there's no guarantee that the host is
+ # using musl so that file may not exist. Use a relative symlink within
+ # ${D} instead.
+ rm "${ED}"/lib/ld-musl-${arch}.so.1 || die
+ if use split-usr; then
+ dosym ../usr/lib/libc.so /lib/ld-musl-${arch}.so.1
+ # If it's still a dead symlink, OK, we really do need to abort.
+ [[ -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] || die
+ else
+ dosym libc.so /usr/lib/ld-musl-${arch}.so.1
+ [[ -e "${ED}"/usr/lib/ld-musl-${arch}.so.1 ]] || die
+ fi
+
+ cp "${FILESDIR}"/ldconfig.in-r3 "${T}"/ldconfig.in || die
+ sed -e "s|@@ARCH@@|${arch}|" "${T}"/ldconfig.in > "${T}"/ldconfig || die
+ eprefixify "${T}"/ldconfig
+ into /
+ dosbin "${T}"/ldconfig
+ into /usr
+ dobin "${T}"/getconf
+ dobin "${T}"/getent
+ dobin "${T}"/iconv
+ echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00musl || die
+ doenvd "${T}"/00musl
+ fi
+
+ if target_is_not_host ; then
+ into /usr/${CTARGET}
+ dolib.a libssp_nonshared.a
+ else
+ dolib.a libssp_nonshared.a
+ fi
+}
+
+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
+}
+
+pkg_postinst() {
+ target_is_not_host && return 0
+
+ [[ -n "${ROOT}" ]] && return 0
+
+ ldconfig || die
+}
diff --git a/sys-libs/ncurses/Manifest b/sys-libs/ncurses/Manifest
index 7251dc550833..5e53ca718303 100644
--- a/sys-libs/ncurses/Manifest
+++ b/sys-libs/ncurses/Manifest
@@ -139,14 +139,10 @@ DIST ncurses-6.4-20240414.patch.gz.asc 729 BLAKE2B 8d579b2724245756947200a3e704c
DIST ncurses-6.4.tar.gz 3612591 BLAKE2B 47fd9c2d27f44fa9942552881a471e5067465dbace40bf68b28998dded0556127a1d8662b96de4de4fd76c1c8b98bdae796036553ab4b05ca9f160839d841ba3 SHA512 1c2efff87a82a57e57b0c60023c87bae93f6718114c8f9dc010d4c21119a2f7576d0225dab5f0a227c2cfc6fb6bdbd62728e407f35fce5bf351bb50cf9e0fd34
DIST ncurses-6.4.tar.gz.sig 438 BLAKE2B e6a78b8d0cbce1577205b49b0260394094632cefd95294813c7e4e51a2908e8599a9f24b3b648e42ba16c015fb9424b2a82236f58aac3bf96f5400a50482e44e SHA512 f2a7859725b4d5d62f68006338d56598ac6b38a1448983108906e192f0ec922be287cc89bcc79c1ae49ebc80c967af3dd077427f35ae579b00d445c882414fed
DIST ncurses-6.4_p20230408-patches.tar.xz 80472 BLAKE2B 0ba8156ebd4f1691fec7bc1b800ef39ce6a4210573c027dd437919cdcd7c995830116da06c69f31c65923845a4d5c88e974673fac38acce5813f7d6cdc646e3e SHA512 32960e2cc4cd9dc60c38b49f46c5ce2c02179479abb66ca29f63cd06475ae8e26299a78b5f06762d114aefbbca3ba6fbebe7093a58106eeaa40cf500d21633a4
-DIST ncurses-6.4_p20230527-patches.tar.xz 63080 BLAKE2B 9db4ac28c8936d3a9c6f3ca5cb8a4c92aa79ee4ce49789bcfc9c031a0454bf6f55a0544bc4a3dbb5c243ed9b2d0792afb98622a6a14b11675b7988100a650eb5 SHA512 3eacda173e8a177cd201ca3fef65311ac92e7e5af4039dc8a5792beae7db1d37efd06f5a55c249eebb771d1245995ff3a206a45794936b6b4299151666dbeade
-DIST ncurses-6.4_p20240330-patches.tar.xz 63796 BLAKE2B 3e6618ba0b37268d10a16cf26c2810e55c17ded97079af3753e34f2d12575f979a2e55cfd308abf783e35e39d4a848b89f435b4886d3633007ccb522b8dc2e51 SHA512 1bbf1978f9287f68bf6a8596f06d4d0523564bf3d2f6b3bd9746081a2fa0c76e36862beca62a4157d51cac0df61e456ddb6cacfae10b92344fe80cd752f72c38
DIST ncurses-6.4_p20240413-patches.tar.xz 63760 BLAKE2B 6a91d453cca3705ca54b3a6f2ef00250d655168c1697726db4b581a1597cbc143479b8794e176d5e4154c794f99ea33c3fe1eb26605789930fc82649a2da3c93 SHA512 59239503a9400e054641428528799aa9c13b12669b31f32b2ff18cb60882698801e04dcdf75ece8357c7a4c3b899a729aa973090ec12a20de72cb80a916878b8
DIST ncurses-6.5.tar.gz 3688489 BLAKE2B d0a05c218b5f320ba9abe2f322787baef1d15d764e503c81d49772b54b2927d28ecbeb500c8e514996226b41f69445b4de44ff423cec25b61847307fe61682ec SHA512 fc5a13409d2a530a1325776dcce3a99127ddc2c03999cfeb0065d0eee2d68456274fb1c7b3cc99c1937bc657d0e7fca97016e147f93c7821b5a4a6837db821e8
DIST ncurses-6.5.tar.gz.sig 438 BLAKE2B 5789b47932ec97d3863c7a65306369f0a36cb5b1a35c1e009b5174f50941edceafc22e6f07db3843a096773663a0ca602c0ecb9465e6042d9a78d76ae5008215 SHA512 96ce61a3d529e48e249acecbf4bb9eae2d9f2f67506e92ffa3182f5e98040c38babf0c2c15d92fc5d96e1181e72be1b29fdbff7bee859dfe2ae387f9b8883092
EBUILD ncurses-6.4_p20230401.ebuild 13386 BLAKE2B 1e8285544f4eeb665a79988329e82fca9ad7ff1488ae8637294b5ecdc4b8aea3d5a4043d792bd05ef41d2111ae3c73d0d09a14b2fb606c9060ff267c0658e514 SHA512 f22355b4a8d30d403ddb1140c65c05d5ad5854791da6bf55309ba7c90f28f14cdf324b1e81e23bb9f4f607af8fea9d65b9ff8c909cba81ed04cffb53d257d347
-EBUILD ncurses-6.4_p20230527.ebuild 13534 BLAKE2B 6f66941cfa56e0033c3fb8b51805a9fe1f2a7d7ae94b640a6e69093ebdcb0c3c79cbde4bf56205bdb1f26a8601ed7d2c31b9cdf6c132779f39ab99e52c9b1a4e SHA512 ed972ae8c20b0d723bc957ee7bd71529b3b9ae8d2a796d9f600939ccde5e1c640cd08c259ffc17cd03e2316d72a1e6cab5c5e5727b571a0a8cf127a0a5b46602
-EBUILD ncurses-6.4_p20240330.ebuild 14054 BLAKE2B 964d1aea4b68e96f2c4628050aeca2e61063bf31d3ccea50290d7a85695b57f8a33e3541fa53c7955f698864a253face706d8f025bc9b449f9324a9f81b1698b SHA512 3878a7dc84cb19d775fd64278a5da98ffb8fb7f85e49fdcf6cd6b51624d03b3071b48a7184f8adb87051f8d0e52a67c0fcc00d8eac44e25411fbc5118c7aab32
-EBUILD ncurses-6.4_p20240414.ebuild 14240 BLAKE2B c31e688299816283172a76555432a6923a4d9b271c4ecde9a675086db75c620d54eb0608cede764313d5275e7964e22f7330f514abb9dcec83c462f381a9395f SHA512 afb9e0371ce19583c176eab0521b4edf0724ea8493c2a4a4a64049545fd611d16ec3b2d734d5304d4553fcfbc226c8ae3cadee1b7f03e8fc2c3cc9f5f5106eff
+EBUILD ncurses-6.4_p20240414.ebuild 14239 BLAKE2B 80fa235fec77d20eca720727560e7eab2c2f80d3a6d734d23d21d354e70977562d7d2e24696e9258e359b622b9f6657ed21ac988118844ee93f1f6e98cc5b462 SHA512 cf4458719bb4e21d4d0f79536a8c1b42e0ed575159f2d7658082b28afa65ddeada811c3eb2a4af70a36ceb91c340b7090255b57f165580a028b85c4996ccb9d8
EBUILD ncurses-6.5-r1.ebuild 13759 BLAKE2B 58973ddcdaab9a09312a287f64cbc558071e59b0038404c881ffe7211567cf1d72185b175955204e4ea8547df6ed86bb52a48b03178fb4e91622c5248d860161 SHA512 24c385134cd8879c3ff7dc6d1b2ad6945588f2b49f70cea3414187d012fd7bfc6f8e177c1289537297819bdc8a596d365ff53d388569ba4fe8492d9d75a6d4e3
MISC metadata.xml 1094 BLAKE2B a65bbb9584f77fb07fff735e6471ef48a5d63e7fa79112bf75df67f2f94e816706165fdd42a482708a7fd2ab3b3e308f9766eac0b39c3a4e31dcff5b3db25d57 SHA512 adf0f939a1e14c964bfb44ab80b1b8c1ee897a036a994848ba3e40280ab3a73ddb3beef540c905efd623e71b890c4c91e0b7c24651561d0e2bb2a4c86f039dba
diff --git a/sys-libs/ncurses/ncurses-6.4_p20230527.ebuild b/sys-libs/ncurses/ncurses-6.4_p20230527.ebuild
deleted file mode 100644
index 007bbc486ccd..000000000000
--- a/sys-libs/ncurses/ncurses-6.4_p20230527.ebuild
+++ /dev/null
@@ -1,431 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# sys-libs/ncurses-compat can be bumped with sys-libs/ncurses as upstream
-# provide a configure option for the ABI version.
-
-VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc
-inherit flag-o-matic toolchain-funcs multilib multilib-minimal preserve-libs usr-ldscript verify-sig
-
-MY_PV="${PV:0:3}"
-MY_P="${PN}-${MY_PV}"
-DESCRIPTION="Console display library"
-HOMEPAGE="https://www.gnu.org/software/ncurses/ https://invisible-island.net/ncurses/"
-# Keep invisible-mirror.net here as some users reported 403 forbidden with invisible-island.net
-SRC_URI="
- mirror://gnu/ncurses/${MY_P}.tar.gz
- https://invisible-island.net/archives/${PN}/${MY_P}.tar.gz
- https://invisible-mirror.net/archives/${PN}/${MY_P}.tar.gz
- verify-sig? ( mirror://gnu/ncurses/${MY_P}.tar.gz.sig )
-"
-
-GENTOO_PATCH_DEV=sam
-GENTOO_PATCH_PV=6.4_p20230527
-GENTOO_PATCH_NAME=${PN}-${GENTOO_PATCH_PV}-patches
-
-# Populated below in a loop. Do not add patches manually here.
-UPSTREAM_PATCHES=()
-
-if [[ ${PV} == *_p* ]] ; then
- # Sometimes, after releases, there's no megapatch available yet.
- #
- # From upstream README at e.g. https://invisible-island.net/archives/ncurses/6.3/:
- #
- # "At times (generally to mark a relatively stable point), I create a rollup
- # patch, which consists of all changes from the release through the current date."
- #
- # Also, from https://lists.gnu.org/archive/html/bug-ncurses/2019-08/msg00039.html,
- # the patches are considered to be acceptable to use after some testing. They
- # are both for development but also bug fixes.
- #
- # This array should contain a list of all the snapshots since the last
- # release if there's no megapatch available yet.
- PATCH_DATES=(
- 20230107
- 20230114
- 20230121
- 20230128
- 20230211
- 20230218
- 20230225
- 20230311
- 20230401
- 20230408
- 20230415
- 20230418
- 20230423
- 20230424
- 20230429
- 20230506
- 20230514
- 20230520
-
- # Latest patch is just _pN = $(ver_cut 4)
- $(ver_cut 4)
- )
-
- if [[ -z ${PATCH_DATES[@]} ]] ; then
- SRC_URI+=" https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P/_p/-}.patch.sh.gz"
- SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P/_p/-}.patch.sh.gz.asc"
-
- # If we have a rollup patch, use that instead of the individual ones.
- UPSTREAM_PATCHES+=( patch.sh )
- else
- # We use a mirror as well because we've had reports of 403 forbidden for some users.
- upstream_url_base="https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P}-"
- upstream_m_url_base="https://invisible-mirror.net/archives/${PN}/${PV/_p*}/${MY_P}-"
-
- # Prefix each date with the upstream location (https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P})
- mangled_patches=( "${PATCH_DATES[@]/#/${upstream_url_base}}" )
- # Suffix each with .patch.gz
- mangled_patches=( "${mangled_patches[@]/%/.patch.gz}" )
- mangled_patches_sig=( "${mangled_patches[@]/%/.asc}" )
- # Repeat for .patch.gz.asc for verify-sig
- SRC_URI+=" ${mangled_patches[@]}"
- SRC_URI+=" verify-sig? ( ${mangled_patches_sig[@]} )"
-
- # For all of the URLs, chuck in invisible-island.net too:
- SRC_URI+=" ${mangled_patches[@]/${upstream_url_base}/${upstream_m_url_base}}"
- SRC_URI+=" verify-sig? ( ${mangled_patches_sig[@]/${upstream_url_base}/${upstream_m_url_base}} )"
-
- UPSTREAM_PATCHES=( "${PATCH_DATES[@]/%/.patch}" )
-
- unset upstream_url_base upstream_m_url_base mangled_patches mangled_patches_sig
- fi
-fi
-
-SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV}/distfiles/${CATEGORY}/${PN}/${GENTOO_PATCH_NAME}.tar.xz"
-
-LICENSE="MIT"
-# The subslot reflects the SONAME.
-SLOT="0/6"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="ada +cxx debug doc gpm minimal profile split-usr +stack-realign static-libs test tinfo trace"
-RESTRICT="!test? ( test )"
-
-DEPEND="gpm? ( sys-libs/gpm[${MULTILIB_USEDEP}] )"
-# Block the older ncurses that installed all files w/SLOT=5, bug #557472
-RDEPEND="
- ${DEPEND}
- !<=sys-libs/ncurses-5.9-r4:5
- !<sys-libs/slang-2.3.2_pre23
- !<x11-terms/rxvt-unicode-9.06-r3
- !<x11-terms/st-0.6-r1
-"
-BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomasdickey )"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
- "${UPSTREAM_PATCHES[@]/#/${WORKDIR}/${MY_P}-}"
-
- # When rebasing Gentoo's patchset, please use git from a clean
- # src_prepare with upstream patches already applied. git am --reject
- # the existing patchset and rebase as required. This makes it easier
- # to manage future rebasing & adding new patches.
- #
- # For the same reasons, please include the original configure.in changes,
- # NOT just the generated results!
- "${WORKDIR}"/${GENTOO_PATCH_NAME}
-)
-
-src_unpack() {
- # Avoid trying to verify our own patchset tarball, there's no point
- if use verify-sig ; then
- local file
- for file in ${A} ; do
- if [[ ${file} == ${MY_P}.tar.gz ]] ; then
- verify-sig_verify_detached "${DISTDIR}"/${file} "${DISTDIR}"/${file}.sig
- else
- [[ ${file} == @(*${GENTOO_PATCH_NAME}.tar.xz|*.asc|*.sig) ]] && continue
-
- verify-sig_verify_detached "${DISTDIR}"/${file} "${DISTDIR}"/${file}.asc
- fi
- done
- fi
-
- default
-}
-
-src_configure() {
- # bug #115036
- unset TERMINFO
-
- tc-export_build_env BUILD_{CC,CXX,CPP}
-
- # bug #214642
- BUILD_CPPFLAGS+=" -D_GNU_SOURCE"
-
- # Build the various variants of ncurses -- narrow, wide, and threaded. #510440
- # Order matters here -- we want unicode/thread versions to come last so that the
- # binaries in /usr/bin support both wide and narrow.
- # The naming is also important as we use these directly with filenames and when
- # checking configure flags.
- NCURSES_TARGETS=(
- ncurses
- ncursesw
- ncursest
- ncursestw
- )
-
- # When installing ncurses, we have to use a compatible version of tic.
- # This comes up when cross-compiling, doing multilib builds, upgrading,
- # or installing for the first time. Build a local copy of tic whenever
- # the host version isn't available. bug #249363, bug #557598
- if ! has_version -b "~sys-libs/${P}:0" ; then
- local lbuildflags="-static"
-
- # some toolchains don't quite support static linking
- local dbuildflags="-Wl,-rpath,${WORKDIR}/lib"
- case ${CHOST} in
- *-darwin*) dbuildflags= ;;
- *-solaris*) dbuildflags="-Wl,-R,${WORKDIR}/lib" ;;
- esac
- echo "int main() {}" | \
- $(tc-getCC) -o x -x c - ${lbuildflags} -pipe >& /dev/null \
- || lbuildflags="${dbuildflags}"
-
- # We can't re-use the multilib BUILD_DIR because we run outside of it.
- BUILD_DIR="${WORKDIR}" \
- CC=${BUILD_CC} \
- CXX=${BUILD_CXX} \
- CPP=${BUILD_CPP} \
- CHOST=${CBUILD} \
- CFLAGS=${BUILD_CFLAGS} \
- CXXFLAGS=${BUILD_CXXFLAGS} \
- CPPFLAGS=${BUILD_CPPFLAGS} \
- LDFLAGS="${BUILD_LDFLAGS} ${lbuildflags}" \
- do_configure cross --without-shared --with-normal --with-progs --without-ada
- fi
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- if [[ ${ABI} == x86 ]] ; then
- # For compatibility with older binaries at slight performance cost.
- # bug #616402
- use stack-realign && append-flags -mstackrealign
- fi
-
- local t
- for t in "${NCURSES_TARGETS[@]}" ; do
- do_configure "${t}"
- done
-}
-
-do_configure() {
- local target=$1
- shift
-
- mkdir "${BUILD_DIR}/${target}" || die
- cd "${BUILD_DIR}/${target}" || die
-
- local conf=(
- # We need the basic terminfo files in /etc, bug #37026. We will
- # add '--with-terminfo-dirs' and then populate /etc/terminfo in
- # src_install() ...
- --with-terminfo-dirs="${EPREFIX}/etc/terminfo:${EPREFIX}/usr/share/terminfo"
-
- # Enable installation of .pc files.
- --enable-pc-files
- # This path is used to control where the .pc files are installed.
- --with-pkg-config-libdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
-
- # Now the rest of the various standard flags.
- --with-shared
- # (Originally disabled until bug #245417 is sorted out, but now
- # just keeping it off for good, given nobody needed it until now
- # (2022) and we're trying to phase out bdb.)
- --without-hashed-db
- $(use_with ada)
- $(use_with cxx)
- $(use_with cxx cxx-binding)
- --with-cxx-shared
- $(use_with debug)
- $(use_with profile)
- # The configure script uses ldd to parse the linked output which
- # is flaky for cross-compiling/multilib/ldd versions/etc...
- $(use_with gpm gpm libgpm.so.1)
- --disable-term-driver
- --disable-termcap
- --enable-symlinks
- --with-manpage-format=normal
- --enable-const
- --enable-colorfgbg
- --enable-hard-tabs
- --enable-echo
- $(use_enable !ada warnings)
- $(use_with debug assertions)
- $(use_enable !debug leaks)
- $(use_with debug expanded)
- $(use_with !debug macros)
- $(multilib_native_with progs)
- $(use_with test tests)
- $(use_with trace)
- $(use_with tinfo termlib)
- --disable-stripping
- --disable-pkg-ldflags
- )
-
- if [[ ${target} == ncurses*w ]] ; then
- conf+=( --enable-widec )
- else
- conf+=( --disable-widec )
- fi
- if [[ ${target} == ncursest* ]] ; then
- conf+=( --with-{pthread,reentrant} )
- else
- conf+=( --without-{pthread,reentrant} )
- fi
-
- # Make sure each variant goes in a unique location.
- if [[ ${target} == "ncurses" ]] ; then
- # "ncurses" variant goes into "${EPREFIX}"/usr/include
- # It is needed on Prefix because the configure script appends
- # "ncurses" to "${prefix}/include" if "${prefix}" is not /usr.
- conf+=( --enable-overwrite )
- else
- conf+=( --includedir="${EPREFIX}"/usr/include/${target} )
- fi
- # See comments in src_configure.
- if [[ ${target} != "cross" ]] ; then
- local cross_path="${WORKDIR}/cross"
- [[ -d ${cross_path} ]] && export TIC_PATH="${cross_path}/progs/tic"
- fi
-
- ECONF_SOURCE="${S}" econf "${conf[@]}" "$@"
-}
-
-src_compile() {
- # See comments in src_configure.
- if ! has_version -b "~sys-libs/${P}:0" ; then
- BUILD_DIR="${WORKDIR}" do_compile cross -C progs tic$(get_exeext)
- fi
-
- multilib-minimal_src_compile
-}
-
-multilib_src_compile() {
- local t
- for t in "${NCURSES_TARGETS[@]}" ; do
- do_compile "${t}"
- done
-}
-
-do_compile() {
- local target=$1
- shift
-
- cd "${BUILD_DIR}/${target}" || die
-
- # A little hack to fix parallel builds ... they break when
- # generating sources so if we generate the sources first (in
- # non-parallel), we can then build the rest of the package
- # in parallel. This is not really a perf hit since the source
- # generation is quite small.
- emake -j1 sources
-
- # For some reason, sources depends on pc-files which depends on
- # compiled libraries which depends on sources which ...
- # Manually delete the pc-files file so the install step will
- # create the .pc files we want.
- rm -f misc/pc-files || die
- emake "$@"
-}
-
-multilib_src_install() {
- local target
- for target in "${NCURSES_TARGETS[@]}" ; do
- emake -C "${BUILD_DIR}/${target}" DESTDIR="${D}" install
- done
-
- # Move main libraries into /.
- if multilib_is_native_abi ; then
- gen_usr_ldscript -a \
- "${NCURSES_TARGETS[@]}" \
- $(usex tinfo 'tinfow tinfo' '')
- fi
-
- # Don't delete '*.dll.a', needed for linking, bug #631468
- if ! use static-libs; then
- find "${ED}"/usr/ -name '*.a' ! -name '*.dll.a' -delete || die
- fi
-
- # Build fails to create this ...
- # -FIXME-
- # Ugly hackaround for riscv having two parts libdir (bug #689240)
- # Replace this hack with an official solution once we have one...
- # -FIXME-
- dosym $(sed 's@[^/]\+@..@g' <<< $(get_libdir))/share/terminfo \
- /usr/$(get_libdir)/terminfo
-
- # Remove obsolete libcurses symlink that is created by the build
- # system. Technically, this could be also achieved
- # via --disable-overwrite but it also moves headers implicitly,
- # and we do not want to do this yet.
- # bug #836696
- rm "${ED}"/usr/$(get_libdir)/libcurses* || die
-}
-
-multilib_src_install_all() {
- local terms=(
- # Dumb/simple values that show up when using the in-kernel VT.
- ansi console dumb linux
- vt{52,100,102,200,220}
- # [u]rxvt users used to be pretty common. Probably should drop this
- # since upstream is dead and people are moving away from it.
- rxvt{,-unicode}{,-256color}
- # xterm users are common, as is terminals re-using/spoofing it.
- xterm xterm-{,256}color
- # screen is common (and reused by tmux).
- screen{,-256color}
- screen.xterm-256color
- )
- if use split-usr ; then
- local x
- # We need the basic terminfo files in /etc for embedded/recovery, bug #37026
- einfo "Installing basic terminfo files in /etc..."
- for x in "${terms[@]}"; do
- local termfile=$(find "${ED}"/usr/share/terminfo/ -name "${x}" 2>/dev/null)
- local basedir=$(basename "$(dirname "${termfile}")")
-
- if [[ -n ${termfile} ]] ; then
- dodir "/etc/terminfo/${basedir}"
- mv "${termfile}" "${ED}/etc/terminfo/${basedir}/" || die
- dosym "../../../../etc/terminfo/${basedir}/${x}" \
- "/usr/share/terminfo/${basedir}/${x}"
- fi
- done
-
- echo "CONFIG_PROTECT_MASK=\"/etc/terminfo\"" | newenvd - 50ncurses
-
- use minimal && rm -r "${ED}"/usr/share/terminfo*
- # Because ncurses5-config --terminfo returns the directory we keep it
- # bug #245374
- keepdir /usr/share/terminfo
- elif use minimal ; then
- # Keep only the basic terminfo files
- find "${ED}"/usr/share/terminfo/ \
- \( -type f -o -type l \) ${terms[*]/#/! -name } -delete , \
- -type d -empty -delete || die
- fi
-
- cd "${S}" || die
- dodoc ANNOUNCE MANIFEST NEWS README* TO-DO doc/*.doc
- if use doc ; then
- docinto html
- dodoc -r doc/html/
- fi
-}
-
-pkg_preinst() {
- preserve_old_lib /$(get_libdir)/libncurses.so.5
- preserve_old_lib /$(get_libdir)/libncursesw.so.5
-}
-
-pkg_postinst() {
- preserve_old_lib_notify /$(get_libdir)/libncurses.so.5
- preserve_old_lib_notify /$(get_libdir)/libncursesw.so.5
-}
diff --git a/sys-libs/ncurses/ncurses-6.4_p20240330.ebuild b/sys-libs/ncurses/ncurses-6.4_p20240330.ebuild
deleted file mode 100644
index e2ad9e3b5d83..000000000000
--- a/sys-libs/ncurses/ncurses-6.4_p20240330.ebuild
+++ /dev/null
@@ -1,478 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# sys-libs/ncurses-compat can be bumped with sys-libs/ncurses as upstream
-# provide a configure option for the ABI version.
-
-VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/thomasdickey.asc
-inherit flag-o-matic toolchain-funcs multilib multilib-minimal preserve-libs usr-ldscript verify-sig
-
-MY_PV="${PV:0:3}"
-MY_P="${PN}-${MY_PV}"
-DESCRIPTION="Console display library"
-HOMEPAGE="https://www.gnu.org/software/ncurses/ https://invisible-island.net/ncurses/"
-# Keep invisible-mirror.net here as some users reported 403 forbidden with invisible-island.net
-SRC_URI="
- mirror://gnu/ncurses/${MY_P}.tar.gz
- https://invisible-island.net/archives/${PN}/${MY_P}.tar.gz
- https://invisible-mirror.net/archives/${PN}/${MY_P}.tar.gz
- verify-sig? ( mirror://gnu/ncurses/${MY_P}.tar.gz.sig )
-"
-
-GENTOO_PATCH_DEV=sam
-GENTOO_PATCH_PV=6.4_p20240330
-GENTOO_PATCH_NAME=${PN}-${GENTOO_PATCH_PV}-patches
-
-# Populated below in a loop. Do not add patches manually here.
-UPSTREAM_PATCHES=()
-
-if [[ ${PV} == *_p* ]] ; then
- # Sometimes, after releases, there's no megapatch available yet.
- #
- # From upstream README at e.g. https://invisible-island.net/archives/ncurses/6.3/:
- #
- # "At times (generally to mark a relatively stable point), I create a rollup
- # patch, which consists of all changes from the release through the current date."
- #
- # Also, from https://lists.gnu.org/archive/html/bug-ncurses/2019-08/msg00039.html,
- # the patches are considered to be acceptable to use after some testing. They
- # are both for development but also bug fixes.
- #
- # This array should contain a list of all the snapshots since the last
- # release if there's no megapatch available yet.
- PATCH_DATES=(
- 20230107
- 20230114
- 20230121
- 20230128
- 20230211
- 20230218
- 20230225
- 20230311
- 20230401
- 20230408
- 20230415
- 20230418
- 20230423
- 20230424
- 20230429
- 20230506
- 20230514
- 20230520
- 20230527
- 20230603
- 20230610
- 20230615
- 20230617
- 20230624
- 20230625
- 20230701
- 20230708
- 20230715
- 20230722
- 20230729
- 20230805
- 20230812
- 20230819
- 20230826
- 20230902
- 20230909
- 20230917
- 20230918
- 20230923
- 20231001
- 20231007
- 20231014
- 20231016
- 20231021
- 20231028
- 20231104
- 20231111
- 20231118
- 20231121
- 20231125
- 20231202
- 20231209
- 20231217
- 20231223
- 20231230
- 20240106
- 20240113
- 20240120
- 20240127
- 20240203
- 20240210
- 20240217
- 20240224
- 20240302
- 20240309
- 20240323
-
- # Latest patch is just _pN = $(ver_cut 4)
- $(ver_cut 4)
- )
-
- if [[ -z ${PATCH_DATES[@]} ]] ; then
- SRC_URI+=" https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P/_p/-}.patch.sh.gz"
- SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P/_p/-}.patch.sh.gz.asc"
-
- # If we have a rollup patch, use that instead of the individual ones.
- UPSTREAM_PATCHES+=( patch.sh )
- else
- # We use a mirror as well because we've had reports of 403 forbidden for some users.
- upstream_url_base="https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P}-"
- upstream_m_url_base="https://invisible-mirror.net/archives/${PN}/${PV/_p*}/${MY_P}-"
-
- # Prefix each date with the upstream location (https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P})
- mangled_patches=( "${PATCH_DATES[@]/#/${upstream_url_base}}" )
- # Suffix each with .patch.gz
- mangled_patches=( "${mangled_patches[@]/%/.patch.gz}" )
- mangled_patches_sig=( "${mangled_patches[@]/%/.asc}" )
- # Repeat for .patch.gz.asc for verify-sig
- SRC_URI+=" ${mangled_patches[@]}"
- SRC_URI+=" verify-sig? ( ${mangled_patches_sig[@]} )"
-
- # For all of the URLs, chuck in invisible-island.net too:
- SRC_URI+=" ${mangled_patches[@]/${upstream_url_base}/${upstream_m_url_base}}"
- SRC_URI+=" verify-sig? ( ${mangled_patches_sig[@]/${upstream_url_base}/${upstream_m_url_base}} )"
-
- UPSTREAM_PATCHES=( "${PATCH_DATES[@]/%/.patch}" )
-
- unset upstream_url_base upstream_m_url_base mangled_patches mangled_patches_sig
- fi
-fi
-
-SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV}/distfiles/${CATEGORY}/${PN}/${GENTOO_PATCH_NAME}.tar.xz"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="MIT"
-# The subslot reflects the SONAME.
-SLOT="0/6"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="ada +cxx debug doc gpm minimal profile split-usr +stack-realign static-libs test tinfo trace"
-RESTRICT="!test? ( test )"
-
-DEPEND="gpm? ( sys-libs/gpm[${MULTILIB_USEDEP}] )"
-# Block the older ncurses that installed all files w/SLOT=5, bug #557472
-RDEPEND="
- ${DEPEND}
- !<=sys-libs/ncurses-5.9-r4:5
- !<sys-libs/slang-2.3.2_pre23
- !<x11-terms/rxvt-unicode-9.06-r3
- !<x11-terms/st-0.6-r1
-"
-BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomasdickey )"
-
-PATCHES=(
- "${UPSTREAM_PATCHES[@]/#/${WORKDIR}/${MY_P}-}"
-
- # When rebasing Gentoo's patchset, please use git from a clean
- # src_prepare with upstream patches already applied. git am --reject
- # the existing patchset and rebase as required. This makes it easier
- # to manage future rebasing & adding new patches.
- #
- # For the same reasons, please include the original configure.in changes,
- # NOT just the generated results!
- "${WORKDIR}"/${GENTOO_PATCH_NAME}
-)
-
-src_unpack() {
- # Avoid trying to verify our own patchset tarball, there's no point
- if use verify-sig ; then
- local file
- for file in ${A} ; do
- if [[ ${file} == ${MY_P}.tar.gz ]] ; then
- verify-sig_verify_detached "${DISTDIR}"/${file} "${DISTDIR}"/${file}.sig
- else
- [[ ${file} == @(*${GENTOO_PATCH_NAME}.tar.xz|*.asc|*.sig) ]] && continue
-
- verify-sig_verify_detached "${DISTDIR}"/${file} "${DISTDIR}"/${file}.asc
- fi
- done
- fi
-
- default
-}
-
-src_configure() {
- # bug #115036
- unset TERMINFO
-
- tc-export_build_env BUILD_{CC,CXX,CPP}
-
- # bug #214642
- BUILD_CPPFLAGS+=" -D_GNU_SOURCE"
-
- # Build the various variants of ncurses -- narrow, wide, and threaded. #510440
- # Order matters here -- we want unicode/thread versions to come last so that the
- # binaries in /usr/bin support both wide and narrow.
- # The naming is also important as we use these directly with filenames and when
- # checking configure flags.
- NCURSES_TARGETS=(
- ncurses
- ncursesw
- ncursest
- ncursestw
- )
-
- # When installing ncurses, we have to use a compatible version of tic.
- # This comes up when cross-compiling, doing multilib builds, upgrading,
- # or installing for the first time. Build a local copy of tic whenever
- # the host version isn't available. bug #249363, bug #557598
- if ! has_version -b "~sys-libs/${P}:0" ; then
- local lbuildflags="-static"
-
- # some toolchains don't quite support static linking
- local dbuildflags="-Wl,-rpath,${WORKDIR}/lib"
- case ${CHOST} in
- *-darwin*) dbuildflags= ;;
- *-solaris*) dbuildflags="-Wl,-R,${WORKDIR}/lib" ;;
- esac
- echo "int main() {}" | \
- $(tc-getCC) -o x -x c - ${lbuildflags} -pipe >& /dev/null \
- || lbuildflags="${dbuildflags}"
-
- # We can't re-use the multilib BUILD_DIR because we run outside of it.
- BUILD_DIR="${WORKDIR}" \
- CC=${BUILD_CC} \
- CXX=${BUILD_CXX} \
- CPP=${BUILD_CPP} \
- CHOST=${CBUILD} \
- CFLAGS=${BUILD_CFLAGS} \
- CXXFLAGS=${BUILD_CXXFLAGS} \
- CPPFLAGS=${BUILD_CPPFLAGS} \
- LDFLAGS="${BUILD_LDFLAGS} ${lbuildflags}" \
- do_configure cross --without-shared --with-normal --with-progs --without-ada
- fi
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- if [[ ${ABI} == x86 ]] ; then
- # For compatibility with older binaries at slight performance cost.
- # bug #616402
- use stack-realign && append-flags -mstackrealign
- fi
-
- local t
- for t in "${NCURSES_TARGETS[@]}" ; do
- do_configure "${t}"
- done
-}
-
-do_configure() {
- local target=$1
- shift
-
- mkdir "${BUILD_DIR}/${target}" || die
- cd "${BUILD_DIR}/${target}" || die
-
- local conf=(
- # We need the basic terminfo files in /etc, bug #37026. We will
- # add '--with-terminfo-dirs' and then populate /etc/terminfo in
- # src_install() ...
- --with-terminfo-dirs="${EPREFIX}/etc/terminfo:${EPREFIX}/usr/share/terminfo"
-
- # Enable installation of .pc files.
- --enable-pc-files
- # This path is used to control where the .pc files are installed.
- --with-pkg-config-libdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
-
- # Now the rest of the various standard flags.
- --with-shared
- # (Originally disabled until bug #245417 is sorted out, but now
- # just keeping it off for good, given nobody needed it until now
- # (2022) and we're trying to phase out bdb.)
- --without-hashed-db
- $(use_with ada)
- $(use_with cxx)
- $(use_with cxx cxx-binding)
- --with-cxx-shared
- $(use_with debug)
- $(use_with profile)
- # The configure script uses ldd to parse the linked output which
- # is flaky for cross-compiling/multilib/ldd versions/etc...
- $(use_with gpm gpm libgpm.so.1)
- --disable-term-driver
- --disable-termcap
- --enable-symlinks
- --with-manpage-format=normal
- --enable-const
- --enable-colorfgbg
- --enable-hard-tabs
- --enable-echo
- $(use_enable !ada warnings)
- $(use_with debug assertions)
- $(use_enable !debug leaks)
- $(use_with debug expanded)
- $(use_with !debug macros)
- $(multilib_native_with progs)
- $(use_with test tests)
- $(use_with trace)
- $(use_with tinfo termlib)
- --disable-stripping
- --disable-pkg-ldflags
- )
-
- if [[ ${target} == ncurses*w ]] ; then
- conf+=( --enable-widec )
- else
- conf+=( --disable-widec )
- fi
- if [[ ${target} == ncursest* ]] ; then
- conf+=( --with-{pthread,reentrant} )
- else
- conf+=( --without-{pthread,reentrant} )
- fi
-
- # Make sure each variant goes in a unique location.
- if [[ ${target} == "ncurses" ]] ; then
- # "ncurses" variant goes into "${EPREFIX}"/usr/include
- # It is needed on Prefix because the configure script appends
- # "ncurses" to "${prefix}/include" if "${prefix}" is not /usr.
- conf+=( --enable-overwrite )
- else
- conf+=( --includedir="${EPREFIX}"/usr/include/${target} )
- fi
- # See comments in src_configure.
- if [[ ${target} != "cross" ]] ; then
- local cross_path="${WORKDIR}/cross"
- [[ -d ${cross_path} ]] && export TIC_PATH="${cross_path}/progs/tic"
- fi
-
- ECONF_SOURCE="${S}" econf "${conf[@]}" "$@"
-}
-
-src_compile() {
- # See comments in src_configure.
- if ! has_version -b "~sys-libs/${P}:0" ; then
- BUILD_DIR="${WORKDIR}" do_compile cross -C progs tic$(get_exeext)
- fi
-
- multilib-minimal_src_compile
-}
-
-multilib_src_compile() {
- local t
- for t in "${NCURSES_TARGETS[@]}" ; do
- do_compile "${t}"
- done
-}
-
-do_compile() {
- local target=$1
- shift
-
- cd "${BUILD_DIR}/${target}" || die
-
- # A little hack to fix parallel builds ... they break when
- # generating sources so if we generate the sources first (in
- # non-parallel), we can then build the rest of the package
- # in parallel. This is not really a perf hit since the source
- # generation is quite small.
- emake -j1 sources
-
- # For some reason, sources depends on pc-files which depends on
- # compiled libraries which depends on sources which ...
- # Manually delete the pc-files file so the install step will
- # create the .pc files we want.
- rm -f misc/pc-files || die
- emake "$@"
-}
-
-multilib_src_install() {
- local target
- for target in "${NCURSES_TARGETS[@]}" ; do
- emake -C "${BUILD_DIR}/${target}" DESTDIR="${D}" install
- done
-
- # Move main libraries into /.
- if multilib_is_native_abi ; then
- gen_usr_ldscript -a \
- "${NCURSES_TARGETS[@]}" \
- $(usex tinfo 'tinfow tinfo' '')
- fi
-
- # Don't delete '*.dll.a', needed for linking, bug #631468
- if ! use static-libs; then
- find "${ED}"/usr/ -name '*.a' ! -name '*.dll.a' -delete || die
- fi
-
- # Build fails to create this ...
- # -FIXME-
- # Ugly hackaround for riscv having two parts libdir (bug #689240)
- # Replace this hack with an official solution once we have one...
- # -FIXME-
- dosym $(sed 's@[^/]\+@..@g' <<< $(get_libdir))/share/terminfo \
- /usr/$(get_libdir)/terminfo
-
- # Remove obsolete libcurses symlink that is created by the build
- # system. Technically, this could be also achieved
- # via --disable-overwrite but it also moves headers implicitly,
- # and we do not want to do this yet.
- # bug #836696
- rm "${ED}"/usr/$(get_libdir)/libcurses* || die
-}
-
-multilib_src_install_all() {
- local terms=(
- # Dumb/simple values that show up when using the in-kernel VT.
- ansi console dumb linux
- vt{52,100,102,200,220}
- # [u]rxvt users used to be pretty common. Probably should drop this
- # since upstream is dead and people are moving away from it.
- rxvt{,-unicode}{,-256color}
- # xterm users are common, as is terminals re-using/spoofing it.
- xterm xterm-{,256}color
- # screen is common (and reused by tmux).
- screen{,-256color}
- screen.xterm-256color
- )
- if use split-usr ; then
- local x
- # We need the basic terminfo files in /etc for embedded/recovery, bug #37026
- einfo "Installing basic terminfo files in /etc..."
- for x in "${terms[@]}"; do
- local termfile=$(find "${ED}"/usr/share/terminfo/ -name "${x}" 2>/dev/null)
- local basedir=$(basename "$(dirname "${termfile}")")
-
- if [[ -n ${termfile} ]] ; then
- dodir "/etc/terminfo/${basedir}"
- mv "${termfile}" "${ED}/etc/terminfo/${basedir}/" || die
- dosym "../../../../etc/terminfo/${basedir}/${x}" \
- "/usr/share/terminfo/${basedir}/${x}"
- fi
- done
-
- echo "CONFIG_PROTECT_MASK=\"/etc/terminfo\"" | newenvd - 50ncurses
-
- use minimal && rm -r "${ED}"/usr/share/terminfo*
- # Because ncurses5-config --terminfo returns the directory we keep it
- # bug #245374
- keepdir /usr/share/terminfo
- elif use minimal ; then
- # Keep only the basic terminfo files
- find "${ED}"/usr/share/terminfo/ \
- \( -type f -o -type l \) ${terms[*]/#/! -name } -delete , \
- -type d -empty -delete || die
- fi
-
- cd "${S}" || die
- dodoc ANNOUNCE MANIFEST NEWS README* TO-DO doc/*.doc
- if use doc ; then
- docinto html
- dodoc -r doc/html/
- fi
-}
-
-pkg_preinst() {
- preserve_old_lib /$(get_libdir)/libncurses.so.5
- preserve_old_lib /$(get_libdir)/libncursesw.so.5
-}
-
-pkg_postinst() {
- preserve_old_lib_notify /$(get_libdir)/libncurses.so.5
- preserve_old_lib_notify /$(get_libdir)/libncursesw.so.5
-}
diff --git a/sys-libs/ncurses/ncurses-6.4_p20240414.ebuild b/sys-libs/ncurses/ncurses-6.4_p20240414.ebuild
index 06032ce23c15..b3cf5fcd0bf4 100644
--- a/sys-libs/ncurses/ncurses-6.4_p20240414.ebuild
+++ b/sys-libs/ncurses/ncurses-6.4_p20240414.ebuild
@@ -152,7 +152,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="MIT"
# The subslot reflects the SONAME.
SLOT="0/6"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="ada +cxx debug doc gpm minimal profile split-usr +stack-realign static-libs test tinfo trace"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/openipmi/Manifest b/sys-libs/openipmi/Manifest
index db5e7aedf8f7..313fa8fa9c63 100644
--- a/sys-libs/openipmi/Manifest
+++ b/sys-libs/openipmi/Manifest
@@ -1,6 +1,6 @@
AUX openipmi-2.0.26-tinfo.patch 808 BLAKE2B fc7545b3610c9ba6a2d8d7075a8db3384659945bd7d85758342438f261fedce67bace7795a74ff6010f68d04d8ae33936b6c60780986c9e0d66e93061577132f SHA512 2deae71fd039126cb3dd0a348658ddbf568345c782c2467a4712d36006217f86eaf86950c821d36a400aea4cf18409684e8abd3b1e504928f5bc6d4cf943c4bb
AUX openipmi-2.0.33-c99.patch 2031 BLAKE2B 0a84beca0c7cefef2f690a99dd99ee8bf6213b8399f27154e4377f1f343f576557977e7f61b421d67aadab8bb087e8ba09b21b31dbe194ef464fd0e393b0b0d5 SHA512 695d2c89aca9bcaef732e8541e37129240be21d164be38c0fedd6e34d111b6cee0649eb2e265dc468502f592d286b7ea5048fccb94ab547e9c1e0ccd373f6d68
DIST OpenIPMI-2.0.33.tar.gz 3141439 BLAKE2B 02634ac8e17abf6a95f37e1b6825fe1f493e1990d7a5b0f6e87f7d9527f2a778f9faf0b12566529a3c87ecce893346e5125c51da988b95fbb56145282194ed16 SHA512 615fccd1ffd4af18584c1b0e54667ba2de60b6d42b44e7448f27808114180fa3b31b4834276bdf69c3df1e5210df871fd888deec8186377524838390fe41e641
-EBUILD openipmi-2.0.33-r1.ebuild 2129 BLAKE2B 24d7f0610ad31d4303a48305c3c76b77c51828217291304676fed2055fe38fb7770baba4334f9fdd2e6770dbfdbe596052d9c12d1d1a98f16d84d613db9124f3 SHA512 99f9c6e794f7112320bd44f88a797b534a0ef7fd631ea21141fe009bdc256d0bb3a363b1d8ff6578230a9f51c2551165fcf522e90021762d66d1928114a023d7
+EBUILD openipmi-2.0.33-r1.ebuild 2130 BLAKE2B 043c3dc87d4a0a8aba2d84e8f0e2634ff3d91a8a999aab4024eb7a2ad346099ae73ed6e19b59f31c727a865b11581937bbd585ee10afcd9e50284f4972a160c6 SHA512 58dae57da67be3aa400061d9d05f8b89fa33d29a80d0ff935d2bd184d82dc82d015cb6298b5a73a84b67606b17cde98edff2e0d5b75215e93bc42ae0c6841d0f
EBUILD openipmi-2.0.33.ebuild 2085 BLAKE2B b3e6c3763d6494844f20e76d2a0343767f6ad4d677a03f17ad66731d4f7e43d2d494a08ce0daf3fe0aa2c0711736696870330c106e0988c674f88cd78ae28ef3 SHA512 bfdcf6c9099047b721002d1c69d9d2909b62c7719fcfd3d92e2ed7e76331a0ea065d949f77202fb57ce0cc06fd1f826583d2aa46aafee69178f11a52f8cb72eb
MISC metadata.xml 348 BLAKE2B 845b9eadd51770ff89268871a3cbb7befb724efeaa28b891e510f34f3bb80b8c72f937505b31646440da9581fa37a38f6272b37f424e78b9ff5c832c255e9bfc SHA512 c13f3458e198f1d4da1cf5be846df5d2cc2ca3ef3fecd5959f7fed0979f10d0eff326da380793dc4471d64e622a415ca60b144b92bb2889a0f870e0c2767f917
diff --git a/sys-libs/openipmi/openipmi-2.0.33-r1.ebuild b/sys-libs/openipmi/openipmi-2.0.33-r1.ebuild
index 2436f5f4bed0..41e7e1cfe744 100644
--- a/sys-libs/openipmi/openipmi-2.0.33-r1.ebuild
+++ b/sys-libs/openipmi/openipmi-2.0.33-r1.ebuild
@@ -3,7 +3,8 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_COMPAT=( python3_{10..12} )
+
inherit autotools python-single-r1
MY_PN="OpenIPMI"
diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest
index c762ad3ef6fa..b6390b42723b 100644
--- a/sys-libs/readline/Manifest
+++ b/sys-libs/readline/Manifest
@@ -1,9 +1,9 @@
AUX readline-5.0-no_rpath.patch 367 BLAKE2B a39663c6222f604acf0ea0a5b6e4a4c99097257727644d2e8b814377b0f9472a6cdba8ed6edacc61629a39458fb5905bb873474e72dd44ab3e7e78b330f451c5 SHA512 ce4a03fe5b60a1e785f35b6717c5e267a815e8fd1a1d59e527aa88f35709c457c1d7c505c34f63f0d32f8f1633eb66661e05e151e218ae5b74cec1d9ddc4ab92
-AUX readline-6.2-rlfe-tgoto.patch 379 BLAKE2B 363dee5501fa9449eeee0647f1ae65106e28ad06af16c8aefe372a081eb5cd62b01a7cf2109ce5b3fc6577b6056f3a0206e3cc53f22d0a69f4d273930e3e2ab6 SHA512 1d2c3aafc949d92fdf6abbee60a60c80f0327f81694d5d8f3a166f1c24d37346caca3e72c9971106b96b2758a9a01269346954fe20bc381eb9da2e6a2737fc3c
AUX readline-7.0-headers.patch 550 BLAKE2B 82949940cda6d042923b3dde777fbd66643d80f4c2fd984eb11ef7f0fb48776ba8938d1c8be23087b328ce9b3ad0acd668f5bb4f0bda77b4a992119688a37191 SHA512 fec3d20e1581f35609a9d9f9ee1f48df8f9aa781e1a2cdcde2edf7d149624b5770867feb65a7ba142276d95a3133b768f5589e8041049aa0cf30068d0637b938
AUX readline-8.0-darwin-shlib-versioning.patch 1888 BLAKE2B 8263c3b593150e6d31ed877195597a830ab7c8e905a285835a982b0a1c317ac27d6fbbec76f926d0bfdec4b5f36a9549d150b49c2103cd13724e38e231c40398 SHA512 73213d415bd876401e3c4ef52187171117016d9a41c621e2931067369cb2dc4975c43e7acbdb3eaba623685a076374c4c9187adcbe5941ea356514f603c9d3f8
AUX readline-8.0-headers.patch 577 BLAKE2B b8fe6cdf51188f68c852d3c9052e7840a0bcb4cd0cd0b25afa82d6fe8697dcb34aa541279010b308427c411a7133c481dd778551069893ad965ce6d3a4a9ff83 SHA512 81695abab2e9fba1b17a4c194b7c72eeb23bbc3ab84cb0716c08388c0ee60adb770ae8efcbbb6a2c7c6adab93dcff12e3a16d0423cf52a0166b38c9efee5c221
AUX readline-8.1-windows-signals.patch 569 BLAKE2B af1ad52b09a1a49e6045bd640d57f3932f2b8db450b2eb7e0787a4326f6c61445ad83395620caf489da14107e8a51aed5d5fdf8e3268fab83d8ff04d393b1a59 SHA512 37aa778a21e360708d371aaf3f08274f75b15d8b2c42b030bda8d65dda81b1713c748644e45b6662c608da14ad413d6d83e43800ea58309fa60256a18317f5ae
+DIST readline-8.1-rlfe-c99.patch.xz 5756 BLAKE2B fb2df42d2c16bef68a3716c55374da7a9d95c8f4c5645da9a60aa72624d5baa50c70da78292adcb20e5fb11f28d6320d627522bc4c8faf0f7c4c782fd75664e8 SHA512 1bad39eff82212ed2cd5ae4ff574a4cdbe20ee56ecac1bae469c90304573d10ed82fdab75bc09725e400dbb5568a34345f3241a409b7ede5645a3c02c0101018
DIST readline-8.1.tar.gz 2993288 BLAKE2B f0feca1ea3517b2b613adacac8c997cce0e86aa2f410c82a40ce1a2e128067112b4c68dbf25b808291c28c47583345abac994ce10b8d117958afcb96ee5e7c69 SHA512 27790d0461da3093a7fee6e89a51dcab5dc61928ec42e9228ab36493b17220641d5e481ea3d8fee5ee0044c70bf960f55c7d3f1a704cf6b9c42e5c269b797e00
DIST readline-8.1.tar.gz.sig 95 BLAKE2B 8a297ef2ebf815ac53f02d6395aa2ff9f24234aef6b9793bfcd5a610cd3a5024182ad8ec8beb75eadd5cf876c57cd56d4226075578a86e0e2421d2e9b1677aa5 SHA512 42a6052d5882f16e5b6f8cd16433d793a9cbb43cf1886b2d858dc65ce067a4c39c8dda7331e52f76426c43de02c358f9ffdaf5c8fd7b089479008c1e5aa19112
DIST readline-8.2.tar.gz 3043952 BLAKE2B 7974322b9c092a756a79e537df08e8532f8e0fcb598f77732e28287c33ebec9e9837ed88b43334c310892d56a871b423903f0f564def2fbe700a1004f2ae7b18 SHA512 0a451d459146bfdeecc9cdd94bda6a6416d3e93abd80885a40b334312f16eb890f8618a27ca26868cebbddf1224983e631b1cbc002c1a4d1cd0d65fba9fea49a
@@ -34,9 +34,8 @@ DIST readline82-009 2270 BLAKE2B ecfa4f3f445b0c90d4ba1cf4116c9a773a3e5ee737966d9
DIST readline82-009.sig 95 BLAKE2B 5484f3df25e550a717915ecf70e8410f747ff6d192a873e5449a4fb664bd3557d21a3cf40c5c9e0097dfaf2cee205243cd1cf6af34200f89e79f9d73626c49c1 SHA512 383cc954f8324588c699968d7cdf9a4f3c0e461917c8a16f5599cd0ffb59ff9539207478195a7d77c1842c11bd912cc17d3b3b56e6a9463db1991fb5c24d5409
DIST readline82-010 2653 BLAKE2B 44ebbf93b6449d848b2dda49716b494596d207bef08cdea0d01808b5291d68714e01ef914e97652bb73e81808a91fff829c8035a097db5b3649be1e0735e3eab SHA512 b611b42e31601ea5fcd7de59e6c1cdd3fece7cc8287e0e495ddfc4d5e8f765b3c6567b728fe0a317d6cb00240b772fa4c26f374c8bf361355a9d262bc5133874
DIST readline82-010.sig 95 BLAKE2B a5a6ccaace88a79c4e28f3c9d3a9ffad186ab772ada7668653b729190d5a598cbe46c769861a72acd08b5fb36f84537bd2018a98fbd0602565660411810447f7 SHA512 0c781417f0cf63daa8532f54b71c9fda69bb2206ca41f7f75fceb7f44781ec949f932881d82fd55d69038208aed45692e30a1e6013d698c7d13f8c9984e331bc
-EBUILD readline-8.1_p2-r1.ebuild 6615 BLAKE2B 4b5cf6f77ac5442de6c118190d99c65152b65b09d0581cb9e82244bc74e9f6ae1fc7dcf04ec0a97ecf98b36f638f23296faa87887f9ba14490aef92752195635 SHA512 89eb20dffd2d376b96526def055116eb133ba211ff87b71bb3007fdedfb5fd42b0c6f18223865afd4b525790b0a20dc66a2bf50e6d542163300435dff49448b8
-EBUILD readline-8.1_p2-r2.ebuild 6615 BLAKE2B 4b5cf6f77ac5442de6c118190d99c65152b65b09d0581cb9e82244bc74e9f6ae1fc7dcf04ec0a97ecf98b36f638f23296faa87887f9ba14490aef92752195635 SHA512 89eb20dffd2d376b96526def055116eb133ba211ff87b71bb3007fdedfb5fd42b0c6f18223865afd4b525790b0a20dc66a2bf50e6d542163300435dff49448b8
-EBUILD readline-8.2_p10.ebuild 7274 BLAKE2B 9bc1277cd2bc1ffc3396e4b9bc55feee9ffb296fd27174800ec57ffe219aa99b79a2575a200a16355eaf7d15f607bcdedecfde4f3e8b8d4df910ee1bf9a10e9c SHA512 f56177adc72a7cb71c35bd163401b8bf0a6c9aa3bef7722a01599a723d5461bfe0933004bc17b305a6da5e5a3748b2a9f332c6d43924d3d6387fa8c57e8f51e5
-EBUILD readline-8.3_alpha.ebuild 7221 BLAKE2B 20e40b57b70f17d6b0e6212a2a1606d4ac11707a5e0d924b85e158bf28a2507d555698b91bb4f8acea0bbfa7735cde151e8cc9f630e0672f4c124399ea8a588c SHA512 46ad76165480ffef1f79b18563a43675bd3905da17f7cac2bdc2feb63ba731d25b7b1cda0b1317ffe5139795da093e47fda921318624951786cfb4e2c5994245
-EBUILD readline-9999.ebuild 7221 BLAKE2B 20e40b57b70f17d6b0e6212a2a1606d4ac11707a5e0d924b85e158bf28a2507d555698b91bb4f8acea0bbfa7735cde151e8cc9f630e0672f4c124399ea8a588c SHA512 46ad76165480ffef1f79b18563a43675bd3905da17f7cac2bdc2feb63ba731d25b7b1cda0b1317ffe5139795da093e47fda921318624951786cfb4e2c5994245
+EBUILD readline-8.1_p2-r2.ebuild 6981 BLAKE2B 1319d23bff9c63e8c53f87f5767dc24d479a70bedc1cf82d21cba0b508b052eb3cc334ae491cde913fdfb264ae6570a5f160bb7d16ae906d48f38debe9d466d5 SHA512 067c55be2dc6cb4c3e627ebefff753301e2ad1bd9c86cc5165d8dda78b6363d24d92d8001a164a1b1f1fd94a7702e8d90c9891a5e3b8e40d32e91ee3f9863d5c
+EBUILD readline-8.2_p10.ebuild 7567 BLAKE2B 2838875de046727fe3f1a8872f2babfca9e86d9d246420d1587acaa7f3c71f3db743e656238432de133dcf733f2be322bb626c4d81a3a24d285b66462d69eeeb SHA512 4c2a539ab5837478120641180dbe949494ea41bdef652966dac9441ec946dc3188496d0bc718982a820ce56d9b12183ebf74152cda57171922a0395a895ea95c
+EBUILD readline-8.3_alpha.ebuild 7670 BLAKE2B 1c3fc1be062ccd1cf22e08b02b13e6554c519796d73159fe3edc5b0292fb995bfb91f57d42565abf0811ede55498e37f9c214e1422016fdb0ebbf637af96bc04 SHA512 68c2e6de889899f691fcca1cc4e6160d6c4d7e1eff5d3987eb5d63516ee8aa601de0197fbf8a74cdd5a5cb0db60980e85423ce8b526fa2c20de78d56454224fd
+EBUILD readline-9999.ebuild 7391 BLAKE2B 76655c11c0145a954ed33867afad49c0fc294f3e86465147f497f380692ba21c7e161206c8446e8388c4d89885b858365512c68d9dd5874ed61684b829cabdf1 SHA512 2f13c81903a92966ae816ff55299189c15631775cc51dea9680d6138c7c195c61610e2d4dc3d8ba13b19416b0cf78808db640135fe7198dd1232a880d64f5449
MISC metadata.xml 533 BLAKE2B 2324b38d79697509a98d761cb8f91e08934b419f71bfd65cf09149773e3f44e8ff153d173cb1af80ccc4c10c7c65103bba5ca797f3b18b96c13132ffd777049e SHA512 5d66a8a464db16ea8afebeca7102632629486ccd4d348821ef693abde571c8a70a6aa38e9b563ddcfe93950afc38f63d2cb4239c645d97e92138a0c1e5c67f00
diff --git a/sys-libs/readline/files/readline-6.2-rlfe-tgoto.patch b/sys-libs/readline/files/readline-6.2-rlfe-tgoto.patch
deleted file mode 100644
index b898bf053ecc..000000000000
--- a/sys-libs/readline/files/readline-6.2-rlfe-tgoto.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-https://bugs.gentoo.org/385091
-
-https://lists.gnu.org/archive/html/bug-readline/2011-10/msg00000.html
-
---- a/examples/rlfe/configure
-+++ b/examples/rlfe/configure
-@@ -4062,6 +4062,7 @@ cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h. */
-
-+extern char *tgoto(char *, int, int);
- main()
- {
- exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1);
diff --git a/sys-libs/readline/readline-8.1_p2-r1.ebuild b/sys-libs/readline/readline-8.1_p2-r1.ebuild
deleted file mode 100644
index 8c2239444310..000000000000
--- a/sys-libs/readline/readline-8.1_p2-r1.ebuild
+++ /dev/null
@@ -1,220 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc
-inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs verify-sig
-
-# 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}"
-MY_PATCHES=()
-
-[[ ${PV} != *_p* ]] && PLEVEL=0
-
-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+=" verify-sig? ( ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )"
- ;;
-
- *)
- SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz"
- SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )"
-
- if [[ ${PLEVEL} -gt 0 ]] ; then
- # bash-5.1 -> bash51
- my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2))
-
- patch_url=
- my_patch_index=
-
- upstream_url_base="mirror://gnu/bash"
- mirror_url_base="ftp://ftp.cwru.edu/pub/bash"
-
- for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do
- printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index}
- patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}"
-
- SRC_URI+=" ${patch_url}"
- SRC_URI+=" verify-sig? ( ${patch_url}.sig )"
-
- # Add in the mirror URL too.
- SRC_URI+=" ${patch_url/${upstream_url_base}/${mirror_url_base}}"
- SRC_URI+=" verify-sig? ( ${patch_url/${upstream_url_base}/${mirror_url_base}}.sig )"
-
- MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} )
- done
-
- unset my_p patch_url my_patch_index upstream_url_base mirror_url_base
- fi
- ;;
-esac
-
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="GPL-3+"
-SLOT="0/8" # subslot matches SONAME major
-[[ ${PV} == *_rc* ]] || \
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="static-libs +unicode utils"
-
-RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]"
-DEPEND="${RDEPEND}"
-BDEPEND="virtual/pkgconfig
- verify-sig? ( sec-keys/openpgp-keys-chetramey )"
-
-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() {
- verify-sig_src_unpack
-
- unpack ${MY_P}.tar.gz
-}
-
-src_prepare() {
- [[ ${PLEVEL} -gt 0 ]] && eapply -p0 "${MY_PATCHES[@]}"
-
- 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
- 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
- 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)
-}
diff --git a/sys-libs/readline/readline-8.1_p2-r2.ebuild b/sys-libs/readline/readline-8.1_p2-r2.ebuild
index 8c2239444310..50064ec142ee 100644
--- a/sys-libs/readline/readline-8.1_p2-r2.ebuild
+++ b/sys-libs/readline/readline-8.1_p2-r2.ebuild
@@ -27,6 +27,7 @@ case ${PV} in
*)
SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz"
+ SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/readline-8.1-rlfe-c99.patch.xz"
SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )"
if [[ ${PLEVEL} -gt 0 ]] ; then
@@ -73,19 +74,34 @@ BDEPEND="virtual/pkgconfig
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
+ "${WORKDIR}"/${PN}-8.1-rlfe-c99.patch
)
-# Needed because we don't want the patches being unpacked
-# (which emits annoying and useless error messages)
src_unpack() {
- verify-sig_src_unpack
+ local patch
- unpack ${MY_P}.tar.gz
+ if [[ ${PV} == 9999 ]]; then
+ git-r3_src_unpack
+ else
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
+
+ for patch in "${MY_PATCHES[@]}"; do
+ verify-sig_verify_detached "${patch}"{,.sig}
+ done
+ fi
+
+ unpack "${MY_P}.tar.gz"
+ unpack readline-8.1-rlfe-c99.patch.xz
+
+ #if [[ ${GENTOO_PATCH_VER} ]]; then
+ # unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
+ #fi
+ fi
}
src_prepare() {
diff --git a/sys-libs/readline/readline-8.2_p10.ebuild b/sys-libs/readline/readline-8.2_p10.ebuild
index 26af570758a2..8445ab394a11 100644
--- a/sys-libs/readline/readline-8.2_p10.ebuild
+++ b/sys-libs/readline/readline-8.2_p10.ebuild
@@ -40,6 +40,7 @@ if [[ ${PV} == 9999 ]] ; then
inherit git-r3
elif is_release ; then
SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz"
+ SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/readline-8.1-rlfe-c99.patch.xz"
SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )"
if [[ ${PLEVEL} -gt 0 ]] ; then
@@ -93,22 +94,34 @@ BDEPEND="virtual/pkgconfig
PATCHES=(
"${FILESDIR}"/${PN}-5.0-no_rpath.patch
- "${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch # bug #385091
"${FILESDIR}"/${PN}-7.0-headers.patch
"${FILESDIR}"/${PN}-8.0-headers.patch
+ "${WORKDIR}"/${PN}-8.1-rlfe-c99.patch
# TODO: rebase
#"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch
)
src_unpack() {
- if [[ ${PV} == 9999 ]] ; then
+ local patch
+
+ if [[ ${PV} == 9999 ]]; then
git-r3_src_unpack
else
- # Needed because we don't want the patches being unpacked
- # (which emits annoying and useless error messages)
- verify-sig_src_unpack
- unpack ${MY_P}.tar.gz
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
+
+ for patch in "${MY_PATCHES[@]}"; do
+ verify-sig_verify_detached "${patch}"{,.sig}
+ done
+ fi
+
+ unpack "${MY_P}.tar.gz"
+ unpack readline-8.1-rlfe-c99.patch.xz
+
+ #if [[ ${GENTOO_PATCH_VER} ]]; then
+ # unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
+ #fi
fi
}
diff --git a/sys-libs/readline/readline-8.3_alpha.ebuild b/sys-libs/readline/readline-8.3_alpha.ebuild
index 616ce593d07b..4f953677fd42 100644
--- a/sys-libs/readline/readline-8.3_alpha.ebuild
+++ b/sys-libs/readline/readline-8.3_alpha.ebuild
@@ -40,6 +40,7 @@ if [[ ${PV} == 9999 ]] ; then
inherit git-r3
elif is_release ; then
SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz"
+ SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/readline-8.1-rlfe-c99.patch.xz"
SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )"
if [[ ${PLEVEL} -gt 0 ]] ; then
@@ -70,6 +71,7 @@ elif is_release ; then
fi
else
SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/readline/${MY_P}.tar.gz"
+ SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/readline-8.1-rlfe-c99.patch.xz"
SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/readline/${MY_P}.tar.gz.sig )"
fi
@@ -97,19 +99,32 @@ PATCHES=(
"${FILESDIR}"/${PN}-5.0-no_rpath.patch
"${FILESDIR}"/${PN}-7.0-headers.patch
"${FILESDIR}"/${PN}-8.0-headers.patch
+ "${WORKDIR}"/${PN}-8.1-rlfe-c99.patch
# TODO: rebase
#"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch
)
src_unpack() {
- if [[ ${PV} == 9999 ]] ; then
+ local patch
+
+ if [[ ${PV} == 9999 ]]; then
git-r3_src_unpack
else
- # Needed because we don't want the patches being unpacked
- # (which emits annoying and useless error messages)
- verify-sig_src_unpack
- unpack ${MY_P}.tar.gz
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
+
+ for patch in "${MY_PATCHES[@]}"; do
+ verify-sig_verify_detached "${patch}"{,.sig}
+ done
+ fi
+
+ unpack "${MY_P}.tar.gz"
+ unpack readline-8.1-rlfe-c99.patch.xz
+
+ #if [[ ${GENTOO_PATCH_VER} ]]; then
+ # unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
+ #fi
fi
}
diff --git a/sys-libs/readline/readline-9999.ebuild b/sys-libs/readline/readline-9999.ebuild
index 616ce593d07b..d04b96f587c8 100644
--- a/sys-libs/readline/readline-9999.ebuild
+++ b/sys-libs/readline/readline-9999.ebuild
@@ -103,13 +103,24 @@ PATCHES=(
)
src_unpack() {
- if [[ ${PV} == 9999 ]] ; then
+ local patch
+
+ if [[ ${PV} == 9999 ]]; then
git-r3_src_unpack
else
- # Needed because we don't want the patches being unpacked
- # (which emits annoying and useless error messages)
- verify-sig_src_unpack
- unpack ${MY_P}.tar.gz
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
+
+ for patch in "${MY_PATCHES[@]}"; do
+ verify-sig_verify_detached "${patch}"{,.sig}
+ done
+ fi
+
+ unpack "${MY_P}.tar.gz"
+
+ #if [[ ${GENTOO_PATCH_VER} ]]; then
+ # unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
+ #fi
fi
}
diff --git a/sys-libs/tevent/Manifest b/sys-libs/tevent/Manifest
index d2c93939a0ce..f529bb57b1fa 100644
--- a/sys-libs/tevent/Manifest
+++ b/sys-libs/tevent/Manifest
@@ -1,14 +1,8 @@
AUX cmocka-config_h.patch 763 BLAKE2B 9f84366da43a9d353b0116361cf44302c2c9c1c2223bf19f4f9f9014f2af621332907dca5cdb85a9f277d8ee7fceb92021133f94fa4e98bfe620b384f08d001c SHA512 b38e7ea4cae0e678ce775cfb211afd5416dba219bec8735edc7decc1dbacf99a77f8abbbded444eb4252b778d8c07754a203f504b68f88578828ca5455bc9e0c
-DIST tevent-0.12.1.tar.gz 879683 BLAKE2B 51521aa26dc3ac38dcf69cdb77a7ad33fede88947e3a91cc5917fae9746951643a70615db24449437e133b575ca41d961ed63c23a0b4f1a01edf090952672032 SHA512 ab70262702d70ce00e8b3aef41930c674b04c147fdbf0006e57cfa057d82f6049ba6da4b2c2b7b53aa191dd4f0f3d55e72b0666ae8f5b6948eeb9fde1988c938
-DIST tevent-0.13.0.tar.gz 880601 BLAKE2B 4e2a2c055bac28cecae1a95b7ddab349ed780f44427e74709eca497d6242bc4f46a91878d3d253c1af4819887ce7df522fe41f88f6059ec5f6c706c7e071ee35 SHA512 7aa05c09e3c708769e31cda88b319cee3629c88c51bda559193a85d4ab32204a8b4ba11f142861dbca06b578bf54953f2aca1ad847e99995a4fc40bf08618a93
-DIST tevent-0.14.0.tar.gz 878142 BLAKE2B 8c1c2b4cb683a3ca2630181904566c3cf9d0151c7e280f86e0ce24febfc5d0a1e85757e3ad9d635205bbcbe3e0d0a060dedb3207fb4e91ea76f36246f0a2704a SHA512 5e9525b2f8f8014d1147244dcccd6cf5ac49e383c49b19480ac1256dc7ccf60705960e87b8f63348fca3f4f496861f3d307ee5e0fde8189d93a596c5e689f2b1
DIST tevent-0.14.1.tar.gz 881979 BLAKE2B 272b7d0029061dfd172a39135d806b937ee6f5bb9eb4c9c8d68a6e5cb3d9eca01582f7ddf5a15d7f033d3322c7fd4d6e87d697f76e4d44565c8e757398a5f0f8 SHA512 0bcc87c10f84e947edad8f8c31f3923253c599b7a69a1db1c21ab292e02937ccb8bad9f0f70e27420ead687aaed1a9b3830b6daa903b8a9bd48cc035a6e5f4ec
DIST tevent-0.15.0.tar.gz 884634 BLAKE2B 071906dc0cc199a9b550e74ca7fcd3555e54a1c48a9be2c107c498ccf2157521336c3ec63fd776e3551064e9baf1ebcf9c7ff5eb0f04375b7d714056331476aa SHA512 470cc4489255a4f122ba1d680669589ba375d4081ff46631dd56f5104202d175bfb13356820eb9108a6b768b3837b2f5d26cc7b0acc3071c4787fb070df3cbab
DIST tevent-0.16.1.tar.gz 890010 BLAKE2B 34639cf0e63193eebdb9c3f845390685d66916c6a687f22fbe25dbe175d3279752dfea1e3567fdb2eed3bea17108b9b226039cb1218c0536fc1eb7f4e0a025ab SHA512 cda001d91728b2f28dd081e9c5f6d8ede345dcd9ce1dca04394860cd83090c15aa8dfef1c53b73e120bd17f0d95551fa9301eb4927963314556d016fe5420a39
-EBUILD tevent-0.12.1.ebuild 1649 BLAKE2B d2304e9a7b79936bfb107cc8425b655d309091ebee54564dc2353695bed7427eb1be44afd368bed36ab3ca3a63715f87113f3a35cd1637c37fe9eb09103098a1 SHA512 39eb19659060d6ffeebdbfa5feb9994c9f52d23d6d238910bc4b12cb7971d2e08faaf6676a2d289b903018966c97267cd442c843357452d7b9493621c6667359
-EBUILD tevent-0.13.0.ebuild 2510 BLAKE2B 9be0d7ed2aeea9be204629e277b9c36e088b564092f70992827c7b2940d499c08c6dc6d84a130c81a3bfa924ab617f8910e800429237524c61345360b8f372e2 SHA512 821be45fde37c0d2c341af8ae4ccae9e42141cbe5d351970b0452626e79a774a3dc80c94348961ce4e38143d134b3ce0cb3f4763151d7f5dce43970e68ae7a59
-EBUILD tevent-0.14.0.ebuild 2444 BLAKE2B 8f9b2e8ad7c7bfca4153b873bbc4bafb5c9f61fa74aa3e384a1b5d2251d9c2a9aae13e12609fe13d3a3ce89419df075556c7cce4f8fd5c05434ed60b75b1baf4 SHA512 f5fccc86c2db3f51949e57c12d81049186b2326e349729d313141674b7a8d5ca7723e431c1775840e1bc7900af328f1d4e512922d7251adfbc869ce8a6b850d0
-EBUILD tevent-0.14.1.ebuild 2435 BLAKE2B f31c44c75fd09a1823ff885872bbfbfba43d3f74ad388be31474b9e26f315623248e8fb7f97f59120a7c37bb9953ff395c6809991a7cdb75f679af1a93d316f2 SHA512 ed7738fc2b7d6e847be973a9dc1b3de2b784f4d0bf39abf3cd00c1c58ced57f31bef92075468dc21a8d1cef9a5685725088b2edccbe6f385895fcc70e8271f1a
-EBUILD tevent-0.15.0.ebuild 2592 BLAKE2B 59f5b6f297067561963ddb6a34a9cbc34a901747dd84b249966b795dd7896bb02674a4df24e48ea1afb3f46f900987e8fc783ac6fe9bb4f77f18e05c83453058 SHA512 589bfb585b47bd0842ca2ccc71b60f02412798011da0ccc6af3556cc6722d4383469c3523091bbbcb6087a52b72207b18abffe857b4862c005e283f08edc6f0d
-EBUILD tevent-0.16.1.ebuild 2542 BLAKE2B 3f39e1b19e5740364b7f0385007e33434ed747b717f995cc6ff9c4c7e5faeb33776770ab2b26965b802a409abf5ea80b8c32b89178c993c864a7054e0ae9ff70 SHA512 ffe5a89e3ff195f44b14c24bbf4fafcc83d7bffb633d90cacf347482bf402c26bafa7acfe159b795a50123c6150bfa10fd72cdc4f5f2ecd30ce4366163c49c62
+EBUILD tevent-0.14.1.ebuild 2435 BLAKE2B 69af2d6270b9fd290db1ca9c76540a9abf3a3589e63715b9d234c7fb1cf353b9373f2ceed13884e2e2ad8ef6bffb9471d74e9811eca9d7e9cc6285ed707fbf94 SHA512 b01fe20d1b4087ab31b214f69d68a4309e88c153291fe8662efefaacc119b8e2392aca973eb61cf8659a0a5ebbdfe32be5a904c673d6be89973ef6e7c1791cf4
+EBUILD tevent-0.15.0.ebuild 2592 BLAKE2B 29e955b04cd31b420df845326e681d8e51489ba0c3a32d65b9ef2e68e7990c98adfa9ba8c04d660acc6c07c8bffc6604c083aea58383d5e15ea1564d6d95aaf3 SHA512 d6a4a84e82fa21cd794af495871f6b3faa7f5d1ad34782f3b67ad8adcf446636c5e109108601ca495d6da438e8e6c60aadc07db7b42c9f7fff6018f467cfe594
+EBUILD tevent-0.16.1.ebuild 2542 BLAKE2B 4a0906aac09f150fce9fc33857a7bf67207a24bfad5f18533a3b6a8119109073099e2b1f738debf7d1cc32bd36ca199b6c7fc126d7df49f7254aaf62f57339eb SHA512 ce77cb95dafe29d4d9e205f87125d85304eeb61ec9b68a39391ee0d9dd236c58ac23e309ec4610e0277b6cf886a9e3b68f3e3189bb340b19b568aa3d36d50f06
MISC metadata.xml 239 BLAKE2B 7127a2a67e79dc98a78fcaca706fd348389c7f08465112215855afe5978d2932ecbee93944efb1df528fbb6d09e884b277cb1d55a8b3926487b6ca07f9330b8a SHA512 4ea42efe4d083d013b85796ca25a132678bcefe6e3687fd6dd371814fd307118fbc8da8c15ce7f4d956e5f824cd0202f49d3469406c88008e84ff9f4d360f424
diff --git a/sys-libs/tevent/tevent-0.12.1.ebuild b/sys-libs/tevent/tevent-0.12.1.ebuild
deleted file mode 100644
index c10e170eb42d..000000000000
--- a/sys-libs/tevent/tevent-0.12.1.ebuild
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{9..11} )
-PYTHON_REQ_USE="threads(+)"
-inherit waf-utils multilib-minimal python-single-r1
-
-DESCRIPTION="Samba tevent library"
-HOMEPAGE="https://tevent.samba.org/"
-SRC_URI="https://samba.org/ftp/tevent/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x86-linux"
-IUSE="python"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-RESTRICT="test"
-
-RDEPEND="
- dev-libs/libbsd[${MULTILIB_USEDEP}]
- >=sys-libs/talloc-2.3.4[${MULTILIB_USEDEP}]
- python? (
- ${PYTHON_DEPS}
- sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
- )
-"
-DEPEND="${RDEPEND}
- >=dev-util/cmocka-1.1.3
- elibc_glibc? (
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- || (
- net-libs/rpcsvc-proto
- <sys-libs/glibc-2.26[rpc(+)]
- )
- )
-"
-BDEPEND="${PYTHON_DEPS}
- virtual/pkgconfig
-"
-
-WAF_BINARY="${S}/buildtools/bin/waf"
-
-pkg_setup() {
- python-single-r1_pkg_setup
- export PYTHONHASHSEED=1
-}
-
-src_prepare() {
- default
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- waf-utils_src_configure \
- --bundled-libraries=NONE \
- --builtin-libraries=NONE \
- $(multilib_native_usex python '' '--disable-python')
-}
-
-multilib_src_compile() {
- # need to avoid parallel building, this looks like the sanest way with waf-utils/multiprocessing eclasses
- unset MAKEOPTS
- waf-utils_src_compile
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- multilib_is_native_abi && use python && python_domodule tevent.py
-}
-
-multilib_src_install_all() {
- insinto /usr/include
- doins tevent_internal.h
-}
diff --git a/sys-libs/tevent/tevent-0.13.0.ebuild b/sys-libs/tevent/tevent-0.13.0.ebuild
deleted file mode 100644
index 87b2f050f147..000000000000
--- a/sys-libs/tevent/tevent-0.13.0.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-PYTHON_REQ_USE="threads(+)"
-inherit waf-utils multilib-minimal python-single-r1
-
-DESCRIPTION="Samba tevent library"
-HOMEPAGE="https://tevent.samba.org/"
-SRC_URI="https://samba.org/ftp/tevent/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
-IUSE="python test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-RESTRICT="test !test? ( test )"
-
-TALLOC_VERSION="2.3.4"
-
-RDEPEND="
- dev-libs/libbsd[${MULTILIB_USEDEP}]
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- python? (
- ${PYTHON_DEPS}
- >=sys-libs/talloc-${TALLOC_VERSION}[python,${PYTHON_SINGLE_USEDEP}]
- )
-"
-DEPEND="
- ${RDEPEND}
- elibc_glibc? (
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- )
- test? ( >=dev-util/cmocka-1.1.3 )
-"
-BDEPEND="
- ${PYTHON_DEPS}
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}"/cmocka-config_h.patch
-)
-
-WAF_BINARY="${S}/buildtools/bin/waf"
-
-pkg_setup() {
- python-single-r1_pkg_setup
- export PYTHONHASHSEED=1
-}
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-}
-
-src_prepare() {
- default
-
- check_samba_dep_versions
-
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- # When specifying libs for samba build you must append NONE to the end to
- # stop it automatically including things
- local bundled_libs="NONE"
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- waf-utils_src_configure \
- --bundled-libraries="${bundled_libs}" \
- --builtin-libraries=NONE \
- $(multilib_native_usex python '' '--disable-python')
-}
-
-multilib_src_compile() {
- # Need to avoid parallel building, this looks like the
- # best way with waf-utils/multiprocessing eclasses
- unset MAKEOPTS
- waf-utils_src_compile
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- multilib_is_native_abi && use python && python_domodule tevent.py
-}
-
-multilib_src_install_all() {
- insinto /usr/include
- doins tevent_internal.h
-}
diff --git a/sys-libs/tevent/tevent-0.14.0.ebuild b/sys-libs/tevent/tevent-0.14.0.ebuild
deleted file mode 100644
index 7757e601adbb..000000000000
--- a/sys-libs/tevent/tevent-0.14.0.ebuild
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-PYTHON_REQ_USE="threads(+)"
-inherit waf-utils multilib-minimal python-single-r1
-
-DESCRIPTION="Samba tevent library"
-HOMEPAGE="https://tevent.samba.org/"
-SRC_URI="https://samba.org/ftp/tevent/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
-IUSE="python test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-RESTRICT="test !test? ( test )"
-
-TALLOC_VERSION="2.4.0"
-
-RDEPEND="
- dev-libs/libbsd[${MULTILIB_USEDEP}]
- >=sys-libs/talloc-${TALLOC_VERSION}[${MULTILIB_USEDEP}]
- python? (
- ${PYTHON_DEPS}
- >=sys-libs/talloc-${TALLOC_VERSION}[python,${PYTHON_SINGLE_USEDEP}]
- )
-"
-DEPEND="
- ${RDEPEND}
- elibc_glibc? (
- net-libs/libtirpc[${MULTILIB_USEDEP}]
- net-libs/rpcsvc-proto
- )
- test? ( >=dev-util/cmocka-1.1.3 )
-"
-BDEPEND="
- ${PYTHON_DEPS}
- virtual/pkgconfig
-"
-
-PATCHES=(
- "${FILESDIR}"/cmocka-config_h.patch
-)
-
-WAF_BINARY="${S}/buildtools/bin/waf"
-
-check_samba_dep_versions() {
- actual_talloc_version=$(sed -En '/^VERSION =/{s/[^0-9.]//gp}' lib/talloc/wscript || die)
- if [[ ${actual_talloc_version} != ${TALLOC_VERSION} ]] ; then
- eerror "Source talloc version: ${TALLOC_VERSION}"
- eerror "Ebuild talloc version: ${actual_talloc_version}"
- die "Ebuild needs to fix TALLOC_VERSION!"
- fi
-}
-
-src_prepare() {
- default
- check_samba_dep_versions
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- MAKEOPTS+=" -j1"
-
- # When specifying libs for samba build you must append NONE to the end to
- # stop it automatically including things
- local bundled_libs="NONE"
-
- # We "use" bundled cmocka when we're not running tests as we're
- # not using it anyway. Means we avoid making users install it for
- # no reason. bug #802531
- if ! use test ; then
- bundled_libs="cmocka,${bundled_libs}"
- fi
-
- waf-utils_src_configure \
- --libdir="${EPREFIX}/usr/$(get_libdir)" \
- --disable-dependency-tracking \
- --disable-warnings-as-errors \
- --bundled-libraries="${bundled_libs}" \
- --builtin-libraries=NONE \
- $(multilib_native_usex python '' '--disable-python')
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- multilib_is_native_abi && use python && python_domodule tevent.py
-}
-
-multilib_src_install_all() {
- insinto /usr/include
- doins tevent_internal.h
-}
diff --git a/sys-libs/tevent/tevent-0.14.1.ebuild b/sys-libs/tevent/tevent-0.14.1.ebuild
index 59e5993d23c2..3eb4d366e302 100644
--- a/sys-libs/tevent/tevent-0.14.1.ebuild
+++ b/sys-libs/tevent/tevent-0.14.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{9..11} )
+PYTHON_COMPAT=( python3_{9..12} )
PYTHON_REQ_USE="threads(+)"
inherit waf-utils multilib-minimal python-single-r1
diff --git a/sys-libs/tevent/tevent-0.15.0.ebuild b/sys-libs/tevent/tevent-0.15.0.ebuild
index f59c99993edc..da642d6ee5e9 100644
--- a/sys-libs/tevent/tevent-0.15.0.ebuild
+++ b/sys-libs/tevent/tevent-0.15.0.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_COMPAT=( python3_{10..12} )
PYTHON_REQ_USE="threads(+)"
inherit waf-utils multilib-minimal python-single-r1
diff --git a/sys-libs/tevent/tevent-0.16.1.ebuild b/sys-libs/tevent/tevent-0.16.1.ebuild
index 30eeb780afc8..928396a117a5 100644
--- a/sys-libs/tevent/tevent-0.16.1.ebuild
+++ b/sys-libs/tevent/tevent-0.16.1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_COMPAT=( python3_{10..12} )
PYTHON_REQ_USE="threads(+)"
inherit waf-utils multilib-minimal python-single-r1