summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Manifest30
-rw-r--r--Manifest.files.gzbin29633 -> 29638 bytes
-rw-r--r--app-admin/Manifest.gzbin32865 -> 32855 bytes
-rw-r--r--app-admin/chrpath/Manifest2
-rw-r--r--app-admin/chrpath/chrpath-0.16.ebuild2
-rw-r--r--app-crypt/Manifest.gzbin23941 -> 23947 bytes
-rw-r--r--app-crypt/mkp224o/Manifest2
-rw-r--r--app-crypt/mkp224o/mkp224o-1.6.1.ebuild2
-rw-r--r--app-editors/Manifest.gzbin13925 -> 13921 bytes
-rw-r--r--app-editors/nano/Manifest2
-rw-r--r--app-editors/nano/nano-6.3.ebuild2
-rw-r--r--app-emulation/Manifest.gzbin14822 -> 14821 bytes
-rw-r--r--app-emulation/wine-staging/Manifest3
-rw-r--r--app-emulation/wine-staging/wine-staging-7.13-r1.ebuild543
-rw-r--r--app-emulation/wine-staging/wine-staging-9999.ebuild5
-rw-r--r--app-emulation/wine-vanilla/Manifest3
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-7.13-r1.ebuild468
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-9999.ebuild5
-rw-r--r--app-i18n/Manifest.gzbin18832 -> 18831 bytes
-rw-r--r--app-i18n/man-pages-l10n/Manifest2
-rw-r--r--app-i18n/man-pages-l10n/man-pages-l10n-4.14.0.ebuild2
-rw-r--r--app-misc/Manifest.gzbin49270 -> 49273 bytes
-rw-r--r--app-misc/pdfpc/Manifest2
-rw-r--r--app-misc/pdfpc/pdfpc-4.5.0-r1.ebuild2
-rw-r--r--dev-libs/Manifest.gzbin94975 -> 94977 bytes
-rw-r--r--dev-libs/miniz/Manifest3
-rw-r--r--dev-libs/miniz/miniz-2.1.0-r3.ebuild38
-rw-r--r--dev-libs/miniz/miniz-2.2.0.ebuild16
-rw-r--r--dev-libs/tree-sitter-bash/Manifest2
-rw-r--r--dev-libs/tree-sitter-bash/tree-sitter-bash-0.19.0.ebuild2
-rw-r--r--dev-libs/tree-sitter/Manifest8
-rw-r--r--dev-libs/tree-sitter/tree-sitter-0.20.0.ebuild33
-rw-r--r--dev-libs/tree-sitter/tree-sitter-0.20.2-r1.ebuild37
-rw-r--r--dev-libs/tree-sitter/tree-sitter-0.20.6.ebuild8
-rw-r--r--dev-libs/tree-sitter/tree-sitter-9999.ebuild8
-rw-r--r--dev-libs/utfcpp/Manifest2
-rw-r--r--dev-libs/utfcpp/utfcpp-3.2.1.ebuild2
-rw-r--r--dev-python/Manifest.gzbin257216 -> 257212 bytes
-rw-r--r--dev-python/tree-sitter/Manifest2
-rw-r--r--dev-python/tree-sitter/tree-sitter-0.20.0-r1.ebuild2
-rw-r--r--dev-util/Manifest.gzbin68148 -> 68150 bytes
-rw-r--r--dev-util/cmake/Manifest4
-rw-r--r--dev-util/cmake/cmake-3.23.3.ebuild261
-rw-r--r--eclass/Manifest.gzbin36970 -> 36968 bytes
-rw-r--r--eclass/tree-sitter-grammar.eclass10
-rw-r--r--games-roguelike/Manifest.gzbin3054 -> 3049 bytes
-rw-r--r--games-roguelike/angband/Manifest6
-rw-r--r--games-roguelike/angband/angband-4.2.4.ebuild (renamed from games-roguelike/angband/angband-4.2.3-r1.ebuild)4
-rw-r--r--media-gfx/Manifest.gzbin38328 -> 38326 bytes
-rw-r--r--media-gfx/solvespace/Manifest2
-rw-r--r--media-gfx/solvespace/solvespace-3.1-r1.ebuild2
-rw-r--r--media-video/Manifest.gzbin26193 -> 26187 bytes
-rw-r--r--media-video/aegisub/Manifest2
-rw-r--r--media-video/aegisub/aegisub-3.2.2_p20160518-r103.ebuild4
-rw-r--r--metadata/Manifest.gzbin3685 -> 3687 bytes
-rw-r--r--metadata/dtd/timestamp.chk2
-rw-r--r--metadata/glsa/Manifest28
-rw-r--r--metadata/glsa/timestamp.chk2
-rw-r--r--metadata/md5-cache/Manifest.gzbin28242 -> 28246 bytes
-rw-r--r--metadata/md5-cache/app-admin/Manifest.gzbin57508 -> 57508 bytes
-rw-r--r--metadata/md5-cache/app-admin/chrpath-0.164
-rw-r--r--metadata/md5-cache/app-crypt/Manifest.gzbin37967 -> 37964 bytes
-rw-r--r--metadata/md5-cache/app-crypt/mkp224o-1.6.14
-rw-r--r--metadata/md5-cache/app-editors/Manifest.gzbin25043 -> 25047 bytes
-rw-r--r--metadata/md5-cache/app-editors/nano-6.34
-rw-r--r--metadata/md5-cache/app-emulation/Manifest.gzbin30781 -> 31090 bytes
-rw-r--r--metadata/md5-cache/app-emulation/wine-staging-7.13-r117
-rw-r--r--metadata/md5-cache/app-emulation/wine-staging-99998
-rw-r--r--metadata/md5-cache/app-emulation/wine-vanilla-7.13-r117
-rw-r--r--metadata/md5-cache/app-emulation/wine-vanilla-99998
-rw-r--r--metadata/md5-cache/app-i18n/Manifest.gzbin28207 -> 28211 bytes
-rw-r--r--metadata/md5-cache/app-i18n/man-pages-l10n-4.14.04
-rw-r--r--metadata/md5-cache/app-misc/Manifest.gzbin73570 -> 73569 bytes
-rw-r--r--metadata/md5-cache/app-misc/pdfpc-4.5.0-r14
-rw-r--r--metadata/md5-cache/dev-libs/Manifest.gzbin161722 -> 161098 bytes
-rw-r--r--metadata/md5-cache/dev-libs/miniz-2.1.0-r312
-rw-r--r--metadata/md5-cache/dev-libs/miniz-2.2.012
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-0.20.011
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-0.20.2-r111
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-0.20.66
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-99994
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-bash-0.19.06
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-c-0.20.12
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-c-sharp-0.19.12
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-cpp-0.20.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-css-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-embedded-template-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-go-0.19.12
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-haskell-0.13.0_p202111142
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-html-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-java-0.19.12
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-javascript-0.20.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-jsdoc-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-json-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-julia-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-ocaml-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-php-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-python-0.19.1_p202111122
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-python-0.20.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-ql-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-regex-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-ruby-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-rust-0.20.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-rust-0.20.12
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-scala-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-tsq-0.19.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-typescript-0.20.02
-rw-r--r--metadata/md5-cache/dev-libs/tree-sitter-typescript-0.20.12
-rw-r--r--metadata/md5-cache/dev-libs/utfcpp-3.2.14
-rw-r--r--metadata/md5-cache/dev-python/Manifest.gzbin337862 -> 337859 bytes
-rw-r--r--metadata/md5-cache/dev-python/tree-sitter-0.20.0-r14
-rw-r--r--metadata/md5-cache/dev-util/Manifest.gzbin123440 -> 123597 bytes
-rw-r--r--metadata/md5-cache/dev-util/cmake-3.23.316
-rw-r--r--metadata/md5-cache/games-roguelike/Manifest.gzbin4090 -> 4092 bytes
-rw-r--r--metadata/md5-cache/games-roguelike/angband-4.2.4 (renamed from metadata/md5-cache/games-roguelike/angband-4.2.3-r1)4
-rw-r--r--metadata/md5-cache/media-gfx/Manifest.gzbin57128 -> 57134 bytes
-rw-r--r--metadata/md5-cache/media-gfx/solvespace-3.1-r14
-rw-r--r--metadata/md5-cache/media-video/Manifest.gzbin41502 -> 41505 bytes
-rw-r--r--metadata/md5-cache/media-video/aegisub-3.2.2_p20160518-r10310
-rw-r--r--metadata/md5-cache/net-fs/Manifest.gzbin6983 -> 7149 bytes
-rw-r--r--metadata/md5-cache/net-fs/cifs-utils-6.15-r117
-rw-r--r--metadata/md5-cache/net-im/Manifest.gzbin18233 -> 18236 bytes
-rw-r--r--metadata/md5-cache/net-im/element-desktop-bin-1.11.1 (renamed from metadata/md5-cache/net-im/element-desktop-bin-1.11.0)2
-rw-r--r--metadata/md5-cache/net-mail/Manifest.gzbin19933 -> 19931 bytes
-rw-r--r--metadata/md5-cache/net-mail/mu-1.8.74
-rw-r--r--metadata/md5-cache/net-misc/Manifest.gzbin93011 -> 93010 bytes
-rw-r--r--metadata/md5-cache/net-misc/youtube-viewer-3.10.1 (renamed from metadata/md5-cache/net-misc/youtube-viewer-3.9.7)4
-rw-r--r--metadata/md5-cache/net-misc/youtube-viewer-99992
-rw-r--r--metadata/md5-cache/net-proxy/Manifest.gzbin9020 -> 9024 bytes
-rw-r--r--metadata/md5-cache/net-proxy/torsocks-2.4.04
-rw-r--r--metadata/md5-cache/sys-cluster/Manifest.gzbin27741 -> 27904 bytes
-rw-r--r--metadata/md5-cache/sys-cluster/kube-router-1.5.014
-rw-r--r--metadata/md5-cache/sys-libs/Manifest.gzbin33096 -> 32453 bytes
-rw-r--r--metadata/md5-cache/sys-libs/glibc-2.35-r417
-rw-r--r--metadata/md5-cache/sys-libs/glibc-2.35-r517
-rw-r--r--metadata/md5-cache/sys-libs/glibc-2.35-r617
-rw-r--r--metadata/md5-cache/sys-libs/glibc-2.35-r717
-rw-r--r--metadata/news/Manifest28
-rw-r--r--metadata/news/timestamp.chk2
-rw-r--r--metadata/timestamp2
-rw-r--r--metadata/timestamp.chk2
-rw-r--r--metadata/timestamp.commit2
-rw-r--r--metadata/timestamp.x2
-rw-r--r--metadata/xml-schema/timestamp.chk2
-rw-r--r--net-fs/Manifest.gzbin3524 -> 3519 bytes
-rw-r--r--net-fs/cifs-utils/Manifest1
-rw-r--r--net-fs/cifs-utils/cifs-utils-6.15-r1.ebuild142
-rw-r--r--net-im/Manifest.gzbin10439 -> 10443 bytes
-rw-r--r--net-im/element-desktop-bin/Manifest4
-rw-r--r--net-im/element-desktop-bin/element-desktop-bin-1.11.1.ebuild (renamed from net-im/element-desktop-bin/element-desktop-bin-1.11.0.ebuild)0
-rw-r--r--net-mail/Manifest.gzbin14726 -> 14728 bytes
-rw-r--r--net-mail/mu/Manifest2
-rw-r--r--net-mail/mu/mu-1.8.7.ebuild2
-rw-r--r--net-misc/Manifest.gzbin55434 -> 55430 bytes
-rw-r--r--net-misc/youtube-viewer/Manifest6
-rw-r--r--net-misc/youtube-viewer/youtube-viewer-3.10.1.ebuild (renamed from net-misc/youtube-viewer/youtube-viewer-3.9.7.ebuild)2
-rw-r--r--net-misc/youtube-viewer/youtube-viewer-9999.ebuild2
-rw-r--r--net-proxy/Manifest.gzbin5359 -> 5364 bytes
-rw-r--r--net-proxy/torsocks/Manifest2
-rw-r--r--net-proxy/torsocks/torsocks-2.4.0.ebuild2
-rw-r--r--sys-cluster/Manifest.gzbin11053 -> 11054 bytes
-rw-r--r--sys-cluster/kube-router/Manifest7
-rw-r--r--sys-cluster/kube-router/files/kube-router.confd3
-rw-r--r--sys-cluster/kube-router/files/kube-router.initd6
-rw-r--r--sys-cluster/kube-router/kube-router-1.5.0.ebuild37
-rw-r--r--sys-libs/Manifest.gzbin14234 -> 14238 bytes
-rw-r--r--sys-libs/glibc/Manifest8
-rw-r--r--sys-libs/glibc/glibc-2.35-r4.ebuild1596
-rw-r--r--sys-libs/glibc/glibc-2.35-r5.ebuild1596
-rw-r--r--sys-libs/glibc/glibc-2.35-r6.ebuild1597
-rw-r--r--sys-libs/glibc/glibc-2.35-r7.ebuild1604
171 files changed, 1740 insertions, 6827 deletions
diff --git a/Manifest b/Manifest
index f833464af585..2fbfd9100fc3 100644
--- a/Manifest
+++ b/Manifest
@@ -1,23 +1,23 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
-MANIFEST Manifest.files.gz 29633 BLAKE2B 4c553cfb1c6df7d98b34341bb074825404a21d50c3e56e6f12038ffaa87c3135489148a527476f2fa9cac53548e1820254853b513f064cc8b8044141b54daab1 SHA512 952a94a8d41886c4a191558a6fd1bf3b78fd43dfcaf83b7b6b1ca9e454f6aea4e400760b1a83bbf4e253ec5bb8424172b5ea0fd66b5f8f400cadeed1fa83ae68
-TIMESTAMP 2022-07-28T18:40:02Z
+MANIFEST Manifest.files.gz 29638 BLAKE2B 4ed91e9e8df338831b483db47a2c0013af2dd375f094f073d16ab333a4760c7491ccc62baadae149fd0a55daf158fd594a764b6e5e8c4873ac4e7d6b37ca7d79 SHA512 91935a831f60327f36b8bda591fbe2a4745a040c9d55de7153dba519764b915322593f0485f40513ce4b29d9ad07c9e9957e5dfed9f10dedb10f1ff96fd958bc
+TIMESTAMP 2022-07-29T00:40:04Z
-----BEGIN PGP SIGNATURE-----
-iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmLi2AJfFIAAAAAALgAo
+iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmLjLGRfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
-klCoWhAAgntWqNbDTilmPlWlBtaXGFaEtoBp+ox+1m9erkU7cNFx3XPuwOSJa75A
-ohquXJ7A9GCJGYFPObkFUmSIL7NcmupnhDS+veTTLtBBr7fq5rLZ9i5tIBocT5GU
-IUNWE8TbaNQtf2zOBVP5HmDA7s3OvCrBAhU4clQ3V04kmUUspAzzj16pA9YmM7L1
-XeZRr5LKrIoN9XDG9hVGkyPZL5rn1kFzrlU3sjzftjkTZ0AhJW+RCSwT6mEmhbjk
-2bXMKaa6NxvHYxN/hVr99xN3iuJcEoyGfJiQ7A62DdefYiRqC7Xg40KHvqBs3ixe
-Gm0RXmaw8H0WCz8E0kIuKQGem/fbHyGSBRr13kHh6lrR2GKJuh55Euj9SM9QyDvl
-99odNpnzWTTiQnlgTfuZh3gq2waD8e7w2TIv+RpIuvYdiwPvfyZ2QsCoFzVlANbp
-j4vtPKqHPGunKJDEeOacTK+w9aaicJIl+r6jAdbL7n2Z8C19iokv2tTnEGN49y3S
-X9iWNv1iEXQinCLyRI21zt3EuoJ67kZmMW9GR5f4QvL9dFYW0Cp1lxpOvB4651HI
-q0PKFGtFG6C1cwU7DOZsiRs/Fm4SJi6edd/4/c4/CvZXhk1I6nIizYd+R3QeB9sy
-2+Fw3OCkW1D1SamQErAk2G3cAisN/TgqrNTYVl17bxcIvdw0014=
-=crwV
+klBopRAApjQnzoGNc+AFvwSi2a9G70goO+5L+gzIARBE49z0CJ5eErqvy4nUdUuc
+8oxT+8TDB74BMq4V3xhLHUPaxhJ7D3dFng+wvRoBLSVHU3JjDnCwjUX2yi5to5jc
+Q+iPYid41k6zIoRGuNaXfyR9aUYxAhQ//HW+Mm9eAdjcnIQK3BsJNEwkmnwVtzKT
+fReYnEUfunJoZ4gZYOwfyspF3KfgfhE9YlUtkT91ConAqwNcD9V04n6PCHO3i8E2
+b+qedjTLxxnJf4MNkpPbtf8aLNo2ZI2p10IHhvaY8nf8MEKZF6RWiAIxzcPvEW1o
+rQKXE7K266htSFkjOR5mDAdJ74KBWHAUQsg+pVaFhN1YkE12PET3XIwrd34cVJ7Q
+TU9gzg9LJ+H8YasMTq7vBWqVJYom5PNScz9P4TQVU76XZNjQbd3CaCMB6xDwi+dn
+OURCzr5PI6XnliIsYo1Iy10on+mRCic/zKiTDs0AeS3Cu4YGz7Bw1TQmTmChPvXl
+U1Nqwgjrj+oYdTwO4xIt95eG8NHw4zNGqWcEYbZxOz9T7nG3bdHEs48YO1NrvSlA
+VESFNoMoYgMnywNeCa/Mcg+AImvqrret/YV6RqYQwN5FxXZ31hUxlXSzv5BUeRdC
+pckL8WLSN6ulfCQNeJoANOkXfVYGNBHYUu2oLTtYpdy3CB24LHg=
+=0+89
-----END PGP SIGNATURE-----
diff --git a/Manifest.files.gz b/Manifest.files.gz
index 1a79faa3acee..d38d779fc4ba 100644
--- a/Manifest.files.gz
+++ b/Manifest.files.gz
Binary files differ
diff --git a/app-admin/Manifest.gz b/app-admin/Manifest.gz
index 8ccd7b89f373..9519ecce6b66 100644
--- a/app-admin/Manifest.gz
+++ b/app-admin/Manifest.gz
Binary files differ
diff --git a/app-admin/chrpath/Manifest b/app-admin/chrpath/Manifest
index 4c6ab6c48c11..b762d7fffea7 100644
--- a/app-admin/chrpath/Manifest
+++ b/app-admin/chrpath/Manifest
@@ -7,5 +7,5 @@ AUX chrpath-keepgoing.patch 1041 BLAKE2B d5ec2b6d482fbd42b2d3cd04626984c1d6ea0c5
DIST chrpath-0.13.tar.gz 125129 BLAKE2B 004db7e3567ceeb700d018e7e32036843413605466c218bf40252927b169775c5a86f81f8ea355f0d141821313d114ec24654ed62d75443e31739118e31bc497 SHA512 9ec2ab2731fb553497996939b421130ae221d478dab8887c184ae91f7d3ae697688e7a30e3bea30cc0cf765f1dc8c7f47d2a1f4369b36079b4033e8d0303d75e
DIST chrpath-0.16.tar.gz 134506 BLAKE2B 7003cc1cb2332ffbe6fe0873c6d30cbc3ea696e041be33b39c3d36ae34a2497b8dd40bb373773c546b8d63cfd8534e796fd7d7cbc99d37fb8751fc960907070f SHA512 aa04d490f78bff20a56fe20539cec10218c0772a668909eda8324ca825f51e8ef92001e95d9c316e79a145a043c9c327ec94d1a82e104ab408ca1021832745aa
EBUILD chrpath-0.13-r2.ebuild 1109 BLAKE2B 1dcaff7b62d98ef82bdf7afb09428ddbba33b14c36eaa37a44799150f2e7b981a2ee9e769cbb25356d2531e0d321e449414edcdc213c2643f966b4d864a5c63a SHA512 2e22eb2ae3d951c4cbe283a0aeb4e4fb0582db6f2229c22037f75ac5bb90dc08b6df46e1092fb1892c8a3a11c81f3c3267a83dd7efe373bdd43f74e65634fdce
-EBUILD chrpath-0.16.ebuild 1052 BLAKE2B efa598776ab06ff012ddb35a70f080f47016ddac9abb67eaa6bfc51e24851934064f2cfc385efebc228435c2b7bd8f4338e0da7215cfea1ad8ccd4f5666983e0 SHA512 980e78540bed658ea60d003b689bbe14a188e3f7c5e9e8e0cd6c7f162a2ac50fa9ea96764013e0dd69a34e272d15d718587451e527eb5e648a7c60f3821a1625
+EBUILD chrpath-0.16.ebuild 1050 BLAKE2B b18bf1c2123cae1f6d422e2d79186f95941fef87949685d646207c0b18a0bff746d019eb47a7b64a4e65e33a7d86c4b2062c1111782cb8be06873aac35c5b5e4 SHA512 b7c7b1bee6f9fb2139355bad7ee4973f0c862e9074be3ddd2bb0b5f9ddc1c65f5306392d3481a0cca6f6bd12f594af54395d4d72b27326ec7ba80971c83b6751
MISC metadata.xml 327 BLAKE2B 666c7327826c5b52e20272cd33b5cbd984955ad06f87ff25431aa588c85dad5b8c2756b44046c51fb039df924c7f45c1b322dbcb4d42aa97894a175984e13356 SHA512 962e2bc7783c7e7b666956bc746691c295a41aa52720809b3c91afc2691d5a8fb8954fe993954112afd4ceb51af59b68564b52fbeeb9c86be480cf788c60d667
diff --git a/app-admin/chrpath/chrpath-0.16.ebuild b/app-admin/chrpath/chrpath-0.16.ebuild
index 866fae493747..70462428ff6c 100644
--- a/app-admin/chrpath/chrpath-0.16.ebuild
+++ b/app-admin/chrpath/chrpath-0.16.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://alioth-archive.debian.org/releases/${PN}/${PN}/${PV}/${P}.tar.g
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ppc ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="amd64 ~arm ~arm64 ~mips ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="static-libs"
PATCHES=(
diff --git a/app-crypt/Manifest.gz b/app-crypt/Manifest.gz
index 2e39c43a412e..0ae0de893040 100644
--- a/app-crypt/Manifest.gz
+++ b/app-crypt/Manifest.gz
Binary files differ
diff --git a/app-crypt/mkp224o/Manifest b/app-crypt/mkp224o/Manifest
index 6a2c8ce03334..c5c576446d46 100644
--- a/app-crypt/mkp224o/Manifest
+++ b/app-crypt/mkp224o/Manifest
@@ -1,5 +1,5 @@
DIST mkp224o-1.5.0-src.tar.gz 1378324 BLAKE2B 19d38fbf23328607fa428ec9329cdc909b210b4235d85e14ff372347c9b408ecf22d41dac7122bdae06725d7bca0c3d53c81cc27272c47517e714e9b8e0625dd SHA512 aa5adc91e695dbfd8ece5fdfe3ca370056d4390a5186326b35ee37402040fa24675ede5389c48b79a1e57b624b86024ff72957741fef175602f7721f20c5cc14
DIST mkp224o-1.6.1-src.tar.gz 1387615 BLAKE2B 271424dcee44b5b1e1a35346a0cc1c37ee5d430231fe93e0b936ac994c892f0406ea361be763732db8a8397684ecad70e26c34f5553a415e7ed0592417672310 SHA512 d0c21ee5fb5f7b2950e1c39af5dc62b1e26aef0917b53169e9c3f9a99a7febe70bb2f96ada612c71bdbdbf8cad9c1f407d175af49fca40eedd68bbe8112970a5
EBUILD mkp224o-1.5.0.ebuild 766 BLAKE2B 8138ab3b1467e1f2164b5ffac561a7d62bdebb99c53624e5a9c9b936fb839f18615ab7165f35a0bc38c6986af1cfbc8b01dc635426db2a5d05db077f752ef232 SHA512 b678d1d3167979e9f7507b6a4359356cf859160026892fc7e3489355b9201557139223e912ccf6f09aa3e770a2577c24ad071b82bbab476e72540ff0217ddacd
-EBUILD mkp224o-1.6.1.ebuild 766 BLAKE2B 73e0e4845748b49c80f1d7814107b2f1575c8f4b7418ea1cd51ff7b742233a2266fc12b9a9bda234262598cb136dea4f095ca9f58a9fa0e9e5e0fad707755f1d SHA512 0231d6a6bfc02a6c12bef9961b18088a7a302a72eeb9af77bdeda4bc244a9f7dec003d80175fe2df8d236b0eeb6d0f2b0e8e75dc16aae1052cd7071e86c0ad01
+EBUILD mkp224o-1.6.1.ebuild 765 BLAKE2B 2d16049b3c2908ec65619bf440fc3954cfe3f17609c923610f1b615e4e0b15c329f2bea8e4ded94f15823ad9becc38510e826e5a8ad082af0f7db2c637d3537e SHA512 cce2783db03fabe87cc751aebeedbbce9151d64d7bb8ebe8b7edb230e4990f2267f8bcbce2340e409fe9d0343c9d51ff74573d678003795ebd7346ad26c0d125
MISC metadata.xml 441 BLAKE2B 2d6b436d30726fdaca9272dba7629a64a36a64d84516be74d87d66d93d87c0dbbdf356254c372e2e090d0ed97a64a60483c3b91aa6a9a3944099337b1b699bda SHA512 36de72bdf964af4056ed9bf21bacfccbc56b3f4a668a4ccd307f74c8aefdb5d66c03504b86762f6d686ecf44a27b77b0119dfaf3d198a8c60d408055e52aee80
diff --git a/app-crypt/mkp224o/mkp224o-1.6.1.ebuild b/app-crypt/mkp224o/mkp224o-1.6.1.ebuild
index 6a5af08b0f9c..bde686797b7b 100644
--- a/app-crypt/mkp224o/mkp224o-1.6.1.ebuild
+++ b/app-crypt/mkp224o/mkp224o-1.6.1.ebuild
@@ -9,7 +9,7 @@ SRC_URI="https://github.com/cathugger/${PN}/releases/download/v${PV}/${PN}-${PV}
LICENSE="CC0-1.0"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="cpu_flags_x86_sse2 pcre2"
DEPEND="
diff --git a/app-editors/Manifest.gz b/app-editors/Manifest.gz
index fc65749abf5d..977eac928102 100644
--- a/app-editors/Manifest.gz
+++ b/app-editors/Manifest.gz
Binary files differ
diff --git a/app-editors/nano/Manifest b/app-editors/nano/Manifest
index d4a149def8a8..84a46e12df39 100644
--- a/app-editors/nano/Manifest
+++ b/app-editors/nano/Manifest
@@ -2,6 +2,6 @@ AUX gentoo.nanorc 4206 BLAKE2B eacba1d5db1475aa53f177d9c04819ff2b81c5fa196365f65
DIST nano-6.2.tar.gz 3146876 BLAKE2B be6dbc1f53890764184a701e97e792762600c892933830bfcb5c2c4eab19d659583fe797d7197c9045ea8912215aa5885a05f02c66194df17253d6788e0ba599 SHA512 5a59906664a88a03f215d8dba8f7e481fbaffc7bdf93c89ca997df7a8aba2cbb4d45ac84d11f03a796488b82b01ca75161a5ab49fd9115661575451b6ab018c4
DIST nano-6.3.tar.xz 1581772 BLAKE2B 92ef2acac0dacebc0bf8364bfee928a8394d8e4323e622ad6ba9d35bebd18d3976ab0ca747f7c9b5597874775b44ba4b5560e7392606aa68736158c2bda62b92 SHA512 42279bee54f4d83a0dc06e93c2f385798c304a41e995461b018f5724010213761455563cb53e2411e12bc43c7245e289f4254c359717ca1b89a34d5af8b8c3f3
EBUILD nano-6.2.ebuild 2349 BLAKE2B 53dc3860dd5366d797e3cae3943de67c960ebb626c932d91743897c67ba1bfd99280f9bf5ceb707cdc452b29cf15c2ec84dba2b38ee42297e655bd02d85954c4 SHA512 ab0772726974a97039bdd42bfc6d94b1b1e57f70b082e6bd8a37f88659d2382c031fc7cb8df7187ecbbb8a9129c0cf5f7aa5574c08bf6f16695ec49918eb5641
-EBUILD nano-6.3.ebuild 2640 BLAKE2B eabf2de3169abdccc9c9259c463195010940d1bdc766c87ba1ab96b4e3ab9febded4fe7fda96a535350fb5061ef933103d88360323855b7718f7737ed15c280c SHA512 25f2c830779c616a6725367035bf12ed1bb5ef496905ee1e68df09dd68b2bb7188dc5cedfded02d614e6d9a057bca8b66a878ca1daa503296677218f3d983573
+EBUILD nano-6.3.ebuild 2639 BLAKE2B c3522745f3877f9dc88b1573d319d3d2bc33ffb47616afddf9fc9d906cd3df2de0d116bb3d440f61f756d0f57bee8cec52416fdf74e82843112d52a40fa8bfdb SHA512 a748f50a4a8d142ea6da238029808c5f0c4a322461154f159aca830815000ea2a9d68970a2974ace7d55aa7635f4765467fb53bfab3eeaba8f384fccf565ccbf
EBUILD nano-9999.ebuild 2637 BLAKE2B b9f2db1e3fc8556067f5bf400fa25cbb590346a82522f62e885a0828b3829cc81be2ab8267cce53c9cbd046b092be31bfbb5840bcc0566ecfed8e12231b50eca SHA512 9787aca7f721fd1e08addf7ce8105217433346912e195009e9fabfdb958206e785de7705675df7cd3b4b959c697c22162b390f535e2e86591547138faaf4b9b6
MISC metadata.xml 1666 BLAKE2B ee53e5f23c192741ff6d59594105a9365fa8fddff9547dc7bbc14fe967d49c0d294bb56fa2e6d0c40d53dc64e8a031fea3294e62ca6ea2fc31dd028b00a423ee SHA512 58691db7bb106774da8b59db6afb199e2c61444a6feedbef09a22d6fef184512102f1fa4d7cfe7edf9171f3e7a542fac294eacc5eb1a3cb7de724b986b6884a0
diff --git a/app-editors/nano/nano-6.3.ebuild b/app-editors/nano/nano-6.3.ebuild
index 5466e0d50685..d27ae4f904e1 100644
--- a/app-editors/nano/nano-6.3.ebuild
+++ b/app-editors/nano/nano-6.3.ebuild
@@ -10,7 +10,7 @@ if [[ ${PV} == "9999" ]] ; then
else
MY_P="${PN}-${PV/_}"
SRC_URI="https://www.nano-editor.org/dist/v${PV:0:1}/${MY_P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="GNU GPL'd Pico clone with more functionality"
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz
index 7dbeb384b7ac..9eaa5a727b9a 100644
--- a/app-emulation/Manifest.gz
+++ b/app-emulation/Manifest.gz
Binary files differ
diff --git a/app-emulation/wine-staging/Manifest b/app-emulation/wine-staging/Manifest
index 1e10d5e54a8b..f87847ee7433 100644
--- a/app-emulation/wine-staging/Manifest
+++ b/app-emulation/wine-staging/Manifest
@@ -10,6 +10,7 @@ DIST wine-staging-7.13.tar.gz 9644182 BLAKE2B 1fecdd231e93de44d4327cceef0f72759d
EBUILD wine-staging-7.10.ebuild 17021 BLAKE2B 1d3e2871861c6207168e41635260383f65cfa4d019f8aa8c16ebf59e2b1f36f96ca731f88a03a65f55013f401b5218262808316a0e5443a9c53fa12107b16ebf SHA512 c4c1801dd42e8ad83efacc31b7091b0da7fc8335536cf41e2473b3f48861f4c58bca39d5a0a6b73aa419540ef6cdd5e90e73fd0b6f23256d303741bf56b6a2a0
EBUILD wine-staging-7.11.ebuild 17021 BLAKE2B 1d3e2871861c6207168e41635260383f65cfa4d019f8aa8c16ebf59e2b1f36f96ca731f88a03a65f55013f401b5218262808316a0e5443a9c53fa12107b16ebf SHA512 c4c1801dd42e8ad83efacc31b7091b0da7fc8335536cf41e2473b3f48861f4c58bca39d5a0a6b73aa419540ef6cdd5e90e73fd0b6f23256d303741bf56b6a2a0
EBUILD wine-staging-7.12.ebuild 17021 BLAKE2B 1d3e2871861c6207168e41635260383f65cfa4d019f8aa8c16ebf59e2b1f36f96ca731f88a03a65f55013f401b5218262808316a0e5443a9c53fa12107b16ebf SHA512 c4c1801dd42e8ad83efacc31b7091b0da7fc8335536cf41e2473b3f48861f4c58bca39d5a0a6b73aa419540ef6cdd5e90e73fd0b6f23256d303741bf56b6a2a0
+EBUILD wine-staging-7.13-r1.ebuild 16977 BLAKE2B 08ed35b389f78cee0477e795479fa7dfa860fbf482bd4951b26dafd0ef0ceab790d37742a6d75782d9faf650838d023cbd7e1b81bcf9b0cdb21ad3bde871f616 SHA512 d67bb8a8145536842dac13ecf4a9454856bf20eca862c7539feac52bb6e86d6ef2a1dcddd7fba7bec622f0f11751794379b1c09ff08d5bb47cb6ee3ead55dc56
EBUILD wine-staging-7.13.ebuild 17021 BLAKE2B 1d3e2871861c6207168e41635260383f65cfa4d019f8aa8c16ebf59e2b1f36f96ca731f88a03a65f55013f401b5218262808316a0e5443a9c53fa12107b16ebf SHA512 c4c1801dd42e8ad83efacc31b7091b0da7fc8335536cf41e2473b3f48861f4c58bca39d5a0a6b73aa419540ef6cdd5e90e73fd0b6f23256d303741bf56b6a2a0
-EBUILD wine-staging-9999.ebuild 17021 BLAKE2B 1d3e2871861c6207168e41635260383f65cfa4d019f8aa8c16ebf59e2b1f36f96ca731f88a03a65f55013f401b5218262808316a0e5443a9c53fa12107b16ebf SHA512 c4c1801dd42e8ad83efacc31b7091b0da7fc8335536cf41e2473b3f48861f4c58bca39d5a0a6b73aa419540ef6cdd5e90e73fd0b6f23256d303741bf56b6a2a0
+EBUILD wine-staging-9999.ebuild 16977 BLAKE2B 08ed35b389f78cee0477e795479fa7dfa860fbf482bd4951b26dafd0ef0ceab790d37742a6d75782d9faf650838d023cbd7e1b81bcf9b0cdb21ad3bde871f616 SHA512 d67bb8a8145536842dac13ecf4a9454856bf20eca862c7539feac52bb6e86d6ef2a1dcddd7fba7bec622f0f11751794379b1c09ff08d5bb47cb6ee3ead55dc56
MISC metadata.xml 3391 BLAKE2B d6da53830248d3f66ba4cc850f7d879f2d7ba636f51a657ff8078349ca5bbb0e1f20693792f56fdb2739e0d4cd85345f7ee7da06d11c4e573767dd2fb508a0c1 SHA512 e344bd026808190ffab209cc7deeeb32659be30a41a5f81ddbf23e95773ffa831c0534b7184bd6e9cee0d8ea79ec7985188d1ca066d9af493f9ec3da461d81e7
diff --git a/app-emulation/wine-staging/wine-staging-7.13-r1.ebuild b/app-emulation/wine-staging/wine-staging-7.13-r1.ebuild
new file mode 100644
index 000000000000..86f05a0bdc36
--- /dev/null
+++ b/app-emulation/wine-staging/wine-staging-7.13-r1.ebuild
@@ -0,0 +1,543 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PLOCALES="ar ast bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru si sk sl sr_RS@cyrillic sr_RS@latin sv ta te th tr uk wa zh_CN zh_TW"
+PLOCALE_BACKUP="en"
+
+inherit autotools estack flag-o-matic multilib-minimal pax-utils plocale toolchain-funcs virtualx wrapper xdg-utils
+MY_PN="${PN%%-*}"
+MY_PV="${PV/_/-}"
+MY_P="${MY_PN}-${MY_PV}"
+
+if [[ ${MY_PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
+ EGIT_BRANCH="master"
+ inherit git-r3
+ SRC_URI=""
+ #KEYWORDS=""
+else
+ MAJOR_V=$(ver_cut 1)
+ MINOR_V=$(ver_cut 2)
+ if [[ ${MINOR_V} != "0" ]] ; then
+ MINOR_V="x"
+ fi
+ SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.${MINOR_V}/${MY_P}.tar.xz"
+ KEYWORDS="-* ~amd64 ~x86"
+fi
+S="${WORKDIR}/${MY_P}"
+
+STAGING_P="wine-staging-${MY_PV}"
+STAGING_DIR="${WORKDIR}/${STAGING_P}"
+GWP_V="20211122"
+PATCHDIR="${WORKDIR}/gentoo-wine-patches"
+
+DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset"
+HOMEPAGE="https://www.winehq.org/"
+SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~sarnex/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
+"
+
+if [[ ${MY_PV} == "9999" ]] ; then
+ STAGING_EGIT_REPO_URI="https://github.com/wine-staging/wine-staging.git"
+else
+ SRC_URI="${SRC_URI}
+ staging? ( https://github.com/wine-staging/wine-staging/archive/v${MY_PV}.tar.gz -> ${STAGING_P}.tar.gz )"
+fi
+
+LICENSE="LGPL-2.1"
+SLOT="${MY_PV}"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
+ X? ( truetype )
+ crossdev-mingw? ( mingw )
+ elibc_glibc? ( threads )
+ osmesa? ( opengl )
+ pipelight? ( staging )
+ test? ( abi_x86_32 )" # osmesa-opengl #286560 # X-truetype #551124
+
+# FIXME: the test suite is unsuitable for us; many tests require net access
+# or fail due to Xvfb's opengl limitations.
+RESTRICT="test"
+
+BDEPEND="sys-devel/flex
+ virtual/yacc
+ virtual/pkgconfig
+ mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] ) )"
+
+COMMON_DEPEND="
+ X? (
+ x11-libs/libXcursor[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ x11-libs/libXfixes[${MULTILIB_USEDEP}]
+ x11-libs/libXrandr[${MULTILIB_USEDEP}]
+ x11-libs/libXi[${MULTILIB_USEDEP}]
+ x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
+ )
+ alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
+ capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
+ cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
+ fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
+ gphoto2? (
+ media-libs/libgphoto2:=[${MULTILIB_USEDEP}]
+ media-libs/libjpeg-turbo:0=[${MULTILIB_USEDEP}]
+ )
+ gstreamer? (
+ media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
+ media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
+ )
+ kerberos? ( virtual/krb5:0=[${MULTILIB_USEDEP}] )
+ ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
+ netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
+ nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
+ odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
+ openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
+ opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
+ opengl? (
+ virtual/opengl[${MULTILIB_USEDEP}]
+ )
+ osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
+ pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
+ pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
+ scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
+ sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
+ ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
+ staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
+ truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
+ udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
+ udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+ unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
+ usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] )
+ v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
+ vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
+ xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
+ xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )"
+
+RDEPEND="${COMMON_DEPEND}
+ app-emulation/wine-desktop-common
+ >app-eselect/eselect-wine-0.3
+ dos? ( >=games-emulation/dosbox-0.74_p20160629 )
+ gecko? ( app-emulation/wine-gecko:2.47.2[abi_x86_32?,abi_x86_64?] )
+ mono? ( app-emulation/wine-mono:7.3.0 )
+ perl? (
+ dev-lang/perl
+ dev-perl/XML-Simple
+ )
+ pulseaudio? (
+ realtime? ( sys-auth/rtkit )
+ )
+ samba? ( >=net-fs/samba-3.0.25[winbind] )
+ selinux? ( sec-policy/selinux-wine )
+ udisks? ( sys-fs/udisks:2 )"
+
+# tools/make_requests requires perl
+DEPEND="${COMMON_DEPEND}
+ ${BDEPEND}
+ >=sys-kernel/linux-headers-2.6
+ X? ( x11-base/xorg-proto )
+ staging? (
+ dev-lang/perl
+ dev-perl/XML-Simple
+ )
+ xinerama? ( x11-base/xorg-proto )"
+
+# These use a non-standard "Wine" category, which is provided by
+# /etc/xdg/applications-merged/wine.menu
+QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
+usr/share/applications/wine-notepad.desktop
+usr/share/applications/wine-uninstaller.desktop
+usr/share/applications/wine-winecfg.desktop"
+
+PATCHES=(
+ "${PATCHDIR}/patches/${MY_PN}-6.22-winegcc.patch" #260726
+ "${PATCHDIR}/patches/${MY_PN}-4.7-multilib-portage.patch" #395615
+ "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
+)
+PATCHES_BIN=()
+
+# https://bugs.gentoo.org/show_bug.cgi?id=635222
+if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${MY_PV} == 9999 ]]; then
+ DEPEND+=" dev-util/patchbin"
+fi
+
+wine_compiler_check() {
+ # Ensure compiler support
+ # (No checks here as of 2022)
+ return 0
+}
+
+wine_build_environment_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
+ eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
+ eerror "See https://bugs.gentoo.org/487864 for more details."
+ eerror
+ return 1
+ fi
+}
+
+wine_env_vcs_vars() {
+ local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+ local pn_live_val="${pn_live_var}"
+ eval pn_live_val='$'${pn_live_val}
+ if [[ ! -z ${pn_live_val} ]]; then
+ if use staging; then
+ eerror "Because of the multi-repo nature of ${MY_PN}, ${pn_live_var}"
+ eerror "cannot be used to set the commit. Instead, you may use the"
+ eerror "environment variables:"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
+ eerror
+ return 1
+ fi
+ fi
+ if [[ ! -z ${EGIT_COMMIT} ]]; then
+ eerror "Commits must now be specified using the environment variables:"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE"
+ eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
+ eerror
+ return 1
+ fi
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] ; then
+ wine_build_environment_check || die
+
+ # Verify OSS support
+ if use oss; then
+ if ! has_version ">=media-sound/oss-4"; then
+ eerror "You cannot build wine with USE=oss without having support from"
+ eerror ">=media-sound/oss-4 (only available through external repos)"
+ eerror
+ die
+ fi
+ fi
+
+ if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
+ local mingw=-w64-mingw32
+ for mingw in $(usev abi_x86_64 x86_64${mingw}) $(usev abi_x86_32 i686${mingw}); do
+ type -P ${mingw}-gcc && continue
+ eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
+ eerror "yourself by installing sys-devel/crossdev then running:"
+ eerror
+ eerror " crossdev --target ${mingw}"
+ eerror
+ eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
+ die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
+ done
+ fi
+ fi
+}
+
+pkg_setup() {
+ wine_build_environment_check || die
+ wine_env_vcs_vars || die
+
+ WINE_VARIANT="${PN#wine}-${MY_PV}"
+ WINE_VARIANT="${WINE_VARIANT#-}"
+
+ MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
+ MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
+ MY_DATADIR="${MY_DATAROOTDIR}"
+ MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
+ MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
+ MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
+ MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
+ MY_MANDIR="${MY_DATADIR}/man"
+}
+
+src_unpack() {
+ if [[ ${MY_PV} == "9999" ]] ; then
+ EGIT_CHECKOUT_DIR="${S}" git-r3_src_unpack
+ if use staging; then
+ local CURRENT_WINE_COMMIT=${EGIT_VERSION}
+
+ EGIT_CHECKOUT_DIR="${STAGING_DIR}" EGIT_REPO_URI="${STAGING_EGIT_REPO_URI}" git-r3_src_unpack
+
+ local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+
+ if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
+ einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
+ einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
+ einfo "Example: EGIT_OVERRIDE_COMMIT_WINE=${COMPAT_WINE_COMMIT} emerge -1 wine"
+ fi
+ fi
+ fi
+
+ default
+
+ plocale_find_changes "${S}/po" "" ".po"
+}
+
+src_prepare() {
+
+ eapply_bin(){
+ local patch
+ for patch in ${PATCHES_BIN[@]}; do
+ patchbin --nogit < "${patch}" || die
+ done
+ }
+
+ local md5="$(md5sum server/protocol.def)"
+
+ if use staging; then
+ ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
+ ewarn "Wine bugzilla should explicitly state that staging was used."
+
+ local STAGING_EXCLUDE="-W winemenubuilder-Desktop_Icon_Path" #652176
+ use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
+
+ # Launch wine-staging patcher in a subshell, using eapply as a backend, and gitapply.sh as a backend for binary patches
+ ebegin "Running Wine-Staging patch installer"
+ (
+ set -- DESTDIR="${S}" --backend=eapply --no-autoconf --all ${STAGING_EXCLUDE}
+ cd "${STAGING_DIR}/patches"
+ source "${STAGING_DIR}/patches/patchinstall.sh"
+ )
+ eend $? || die "Failed to apply Wine-Staging patches"
+ fi
+
+ default
+ eapply_bin
+ eautoreconf
+
+ # Modification of the server protocol requires regenerating the server requests
+ if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
+ einfo "server/protocol.def was patched; running tools/make_requests"
+ tools/make_requests || die #432348
+ fi
+ sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
+ if ! use run-exes; then
+ sed -i '/^MimeType/d' loader/wine.desktop || die #117785
+ fi
+
+ # Edit wine.desktop to work for specific variant
+ sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
+
+ # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
+ cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
+
+ plocale_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
+
+ # Fix manpage generation for locales #469418 and abi_x86_64 #617864
+
+ # Duplicate manpages input files for wine64
+ local f
+ for f in loader/*.man.in; do
+ cp ${f} ${f/wine/wine64} || die
+ done
+ # Add wine64 manpages to Makefile
+ if use abi_x86_64; then
+ sed -i "/wine.man.in/i \
+ \\\twine64.man.in \\\\" loader/Makefile.in || die
+ sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
+\164\2/' loader/Makefile.in || die
+ fi
+
+ rm_man_file(){
+ local file="${1}"
+ loc=${2}
+ sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
+ }
+
+ while read f; do
+ plocale_for_each_disabled_locale rm_man_file "${f}"
+ done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
+}
+
+src_configure() {
+ wine_compiler_check || die
+
+ export LDCONFIG=/bin/true
+ use custom-cflags || strip-flags
+ if use mingw; then
+ use crossdev-mingw || PATH="${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}"
+
+ # use *FLAGS for mingw, but strip unsupported (e.g. --hash-style=gnu)
+ local mingwcc=${CROSSCC:-$(usex x86 i686 x86_64)-w64-mingw32-gcc}
+ : "${CROSSCFLAGS:=$(CC=${mingwcc} test-flags-CC ${CFLAGS:--O2})}"
+ : "${CROSSLDFLAGS:=$(
+ filter-flags '-fuse-ld=*'
+ CC=${mingwcc} test-flags-CCLD ${LDFLAGS})}"
+ export CROSS{C,LD}FLAGS
+ fi
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --prefix="${MY_PREFIX}"
+ --datarootdir="${MY_DATAROOTDIR}"
+ --datadir="${MY_DATADIR}"
+ --docdir="${MY_DOCDIR}"
+ --includedir="${MY_INCLUDEDIR}"
+ --libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
+ --libexecdir="${MY_LIBEXECDIR}"
+ --localstatedir="${MY_LOCALSTATEDIR}"
+ --mandir="${MY_MANDIR}"
+ --sysconfdir="${EPREFIX}/etc/wine"
+ $(use_with alsa)
+ $(use_with capi)
+ $(use_with cups)
+ $(use_with udisks dbus)
+ $(use_with fontconfig)
+ $(use_with ssl gnutls)
+ $(use_enable gecko mshtml)
+ $(use_with gphoto2 gphoto)
+ $(use_with gstreamer)
+ --enable-hal
+ $(use_with kerberos gssapi)
+ $(use_with kerberos krb5)
+ $(use_with ldap)
+ # TODO: Will bug 685172 still need special handling?
+ $(use_with mingw)
+ $(use_enable mono mscoree)
+ $(use_with netapi)
+ $(use_with nls gettext)
+ $(use_with openal)
+ $(use_with opencl)
+ $(use_with opengl)
+ $(use_with osmesa)
+ $(use_with oss)
+ $(use_with pcap)
+ $(use_with pulseaudio pulse)
+ $(use_with threads pthread)
+ $(use_with scanner sane)
+ $(use_with sdl)
+ $(use_enable test tests)
+ $(use_with truetype freetype)
+ $(use_with udev)
+ $(use_with unwind)
+ $(use_with usb)
+ $(use_with v4l v4l2)
+ $(use_with vulkan)
+ $(use_with X x)
+ $(use_with X xfixes)
+ $(use_with xcomposite)
+ $(use_with xinerama)
+ )
+
+ use staging && myconf+=(
+ --with-xattr
+ )
+
+ local PKG_CONFIG
+ # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
+ tc-export PKG_CONFIG
+
+ if use amd64; then
+ if [[ ${ABI} == amd64 ]]; then
+ myconf+=( --enable-win64 )
+ else
+ myconf+=( --disable-win64 )
+ fi
+
+ # Note: using --with-wine64 results in problems with multilib.eclass
+ # CC/LD hackery. We're using separate tools instead.
+ fi
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+ emake depend
+}
+
+multilib_src_test() {
+ # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
+ if [[ ${ABI} == x86 ]]; then
+ if [[ $(id -u) == 0 ]]; then
+ ewarn "Skipping tests since they cannot be run under the root user."
+ ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
+ return
+ fi
+
+ WINEPREFIX="${T}/.wine-${ABI}" \
+ virtx emake test
+ fi
+}
+
+multilib_src_install_all() {
+ local DOCS=( ANNOUNCE AUTHORS README )
+ add_locale_docs() {
+ local locale_doc="documentation/README.$1"
+ [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
+ }
+ plocale_for_each_locale add_locale_docs
+
+ einstalldocs
+ find "${ED}" -name *.la -delete || die
+
+ if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
+ rm "${D%}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
+ "${D%}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
+ fi
+
+ use abi_x86_32 && pax-mark psmr "${D%}${MY_PREFIX}"/bin/wine{,-preloader} #255055
+ use abi_x86_64 && pax-mark psmr "${D%}${MY_PREFIX}"/bin/wine64{,-preloader}
+
+ # Avoid double prefix from dosym and make_wrapper
+ MY_PREFIX=${MY_PREFIX#${EPREFIX}}
+
+ if use abi_x86_64 && ! use abi_x86_32; then
+ dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
+ dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
+ fi
+
+ # Failglob for binloops, shouldn't be necessary, but including to stay safe
+ eshopts_push -s failglob #615218
+ # Make wrappers for binaries for handling multiple variants
+ # Note: wrappers instead of symlinks because some are shell which use basename
+ local b
+ for b in "${ED%}${MY_PREFIX}"/bin/*; do
+ make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
+ done
+ eshopts_pop
+}
+
+pkg_postinst() {
+ eselect wine register ${PN}-${MY_PV}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine register --vanilla ${PN}-${MY_PV} || die
+ else
+ if use staging; then
+ eselect wine register --staging ${PN}-${MY_PV} || die
+ fi
+ fi
+
+ eselect wine update --all --if-unset || die
+
+ xdg_desktop_database_update
+
+ if ! use gecko; then
+ ewarn "Without Wine Gecko, wine prefixes will not have a default"
+ ewarn "implementation of iexplore. Many older windows applications"
+ ewarn "rely upon the existence of an iexplore implementation, so"
+ ewarn "you will likely need to install an external one, like via winetricks"
+ fi
+ if ! use mono; then
+ ewarn "Without Wine Mono, wine prefixes will not have a default"
+ ewarn "implementation of .NET. Many windows applications rely upon"
+ ewarn "the existence of a .NET implementation, so you will likely need"
+ ewarn "to install an external one, like via winetricks"
+ fi
+}
+
+pkg_prerm() {
+ eselect wine deregister ${PN}-${MY_PV}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine deregister --vanilla ${PN}-${MY_PV} || die
+ else
+ if use staging; then
+ eselect wine deregister --staging ${PN}-${MY_PV}|| die
+ fi
+ fi
+
+ eselect wine update --all --if-unset || die
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/app-emulation/wine-staging/wine-staging-9999.ebuild b/app-emulation/wine-staging/wine-staging-9999.ebuild
index 7c7e3938e005..86f05a0bdc36 100644
--- a/app-emulation/wine-staging/wine-staging-9999.ebuild
+++ b/app-emulation/wine-staging/wine-staging-9999.ebuild
@@ -48,7 +48,7 @@ fi
LICENSE="LGPL-2.1"
SLOT="${MY_PV}"
-IUSE="+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gssapi gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama"
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
X? ( truetype )
crossdev-mingw? ( mingw )
@@ -83,7 +83,6 @@ COMMON_DEPEND="
media-libs/libgphoto2:=[${MULTILIB_USEDEP}]
media-libs/libjpeg-turbo:0=[${MULTILIB_USEDEP}]
)
- gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
gstreamer? (
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
@@ -389,9 +388,9 @@ multilib_src_configure() {
$(use_with ssl gnutls)
$(use_enable gecko mshtml)
$(use_with gphoto2 gphoto)
- $(use_with gssapi)
$(use_with gstreamer)
--enable-hal
+ $(use_with kerberos gssapi)
$(use_with kerberos krb5)
$(use_with ldap)
# TODO: Will bug 685172 still need special handling?
diff --git a/app-emulation/wine-vanilla/Manifest b/app-emulation/wine-vanilla/Manifest
index 11b979b54d0b..56ee09299349 100644
--- a/app-emulation/wine-vanilla/Manifest
+++ b/app-emulation/wine-vanilla/Manifest
@@ -8,6 +8,7 @@ EBUILD wine-vanilla-7.0-r2.ebuild 14467 BLAKE2B 79f1811faceabb2d7aae19ea6c1a5111
EBUILD wine-vanilla-7.10.ebuild 14367 BLAKE2B 8b8ca9b87119dd7cf9d79a77032e9e0ec13634f1474008bdcb90af417d70a2cf065d85da91de67b3fbf27682d91c6681487e83537d91b75c184fffd337239310 SHA512 ad600faa3dc58096658244c13a75784b2783267695d8f2d960ddbb837b40263dec839ddb68006315702badfd04db63ea5b9c3821a3045221c29ab7c12dfa896b
EBUILD wine-vanilla-7.11.ebuild 14367 BLAKE2B 8b8ca9b87119dd7cf9d79a77032e9e0ec13634f1474008bdcb90af417d70a2cf065d85da91de67b3fbf27682d91c6681487e83537d91b75c184fffd337239310 SHA512 ad600faa3dc58096658244c13a75784b2783267695d8f2d960ddbb837b40263dec839ddb68006315702badfd04db63ea5b9c3821a3045221c29ab7c12dfa896b
EBUILD wine-vanilla-7.12.ebuild 14367 BLAKE2B 8b8ca9b87119dd7cf9d79a77032e9e0ec13634f1474008bdcb90af417d70a2cf065d85da91de67b3fbf27682d91c6681487e83537d91b75c184fffd337239310 SHA512 ad600faa3dc58096658244c13a75784b2783267695d8f2d960ddbb837b40263dec839ddb68006315702badfd04db63ea5b9c3821a3045221c29ab7c12dfa896b
+EBUILD wine-vanilla-7.13-r1.ebuild 14323 BLAKE2B ca06c67151533f9aa25f67d73eeb3e190e6fb6738521f0cb06ef2add75cd5a105e892e58b85733a29d792741df383aecbd5a398c8d32ee5afa7b8edb050c1ddb SHA512 23eded09d9aac4cb21e84ac1be836a896596fc449d6468efb80750ead5fcb84f172133d751b2320f5e0125edefb57197ebb4ea3b651c55c8ee4b7aef35f0bc4d
EBUILD wine-vanilla-7.13.ebuild 14367 BLAKE2B 8b8ca9b87119dd7cf9d79a77032e9e0ec13634f1474008bdcb90af417d70a2cf065d85da91de67b3fbf27682d91c6681487e83537d91b75c184fffd337239310 SHA512 ad600faa3dc58096658244c13a75784b2783267695d8f2d960ddbb837b40263dec839ddb68006315702badfd04db63ea5b9c3821a3045221c29ab7c12dfa896b
-EBUILD wine-vanilla-9999.ebuild 14367 BLAKE2B 8b8ca9b87119dd7cf9d79a77032e9e0ec13634f1474008bdcb90af417d70a2cf065d85da91de67b3fbf27682d91c6681487e83537d91b75c184fffd337239310 SHA512 ad600faa3dc58096658244c13a75784b2783267695d8f2d960ddbb837b40263dec839ddb68006315702badfd04db63ea5b9c3821a3045221c29ab7c12dfa896b
+EBUILD wine-vanilla-9999.ebuild 14323 BLAKE2B ca06c67151533f9aa25f67d73eeb3e190e6fb6738521f0cb06ef2add75cd5a105e892e58b85733a29d792741df383aecbd5a398c8d32ee5afa7b8edb050c1ddb SHA512 23eded09d9aac4cb21e84ac1be836a896596fc449d6468efb80750ead5fcb84f172133d751b2320f5e0125edefb57197ebb4ea3b651c55c8ee4b7aef35f0bc4d
MISC metadata.xml 3197 BLAKE2B 97ffc90d829a9275b64d02e3428118ff3c65d415ec0ef03995a0170cf428d20cfa010d324421fa119007c033ca78c9008fae6b9b088c7c1deaf87082a6a4c3eb SHA512 82b59cb9e82c585c2c1232f49ca706dcdf270d223863f35d46af678ceb30f40cbbadef519c71ce80418934b2e4ffc5e96a37d1db0c3fb22ab6c119593e3be761
diff --git a/app-emulation/wine-vanilla/wine-vanilla-7.13-r1.ebuild b/app-emulation/wine-vanilla/wine-vanilla-7.13-r1.ebuild
new file mode 100644
index 000000000000..d776771e041b
--- /dev/null
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.13-r1.ebuild
@@ -0,0 +1,468 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PLOCALES="ar ast bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru si sk sl sr_RS@cyrillic sr_RS@latin sv ta te th tr uk wa zh_CN zh_TW"
+PLOCALE_BACKUP="en"
+
+inherit autotools estack flag-o-matic multilib-minimal pax-utils plocale toolchain-funcs virtualx wrapper xdg-utils
+
+MY_PN="${PN%%-*}"
+MY_P="${MY_PN}-${PV}"
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
+ EGIT_BRANCH="master"
+ inherit git-r3
+ SRC_URI=""
+ #KEYWORDS=""
+else
+ MAJOR_V=$(ver_cut 1)
+ SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${MY_P}.tar.xz"
+ KEYWORDS="-* ~amd64 ~x86"
+fi
+S="${WORKDIR}/${MY_P}"
+
+GWP_V="20211122"
+PATCHDIR="${WORKDIR}/gentoo-wine-patches"
+
+DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"
+HOMEPAGE="https://www.winehq.org/"
+SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~sarnex/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
+"
+
+LICENSE="LGPL-2.1"
+SLOT="${PV}"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
+ X? ( truetype )
+ crossdev-mingw? ( mingw )
+ elibc_glibc? ( threads )
+ osmesa? ( opengl )
+ test? ( abi_x86_32 )" # osmesa-opengl #286560 # X-truetype #551124
+
+# FIXME: the test suite is unsuitable for us; many tests require net access
+# or fail due to Xvfb's opengl limitations.
+RESTRICT="test"
+
+BDEPEND="sys-devel/flex
+ virtual/yacc
+ virtual/pkgconfig
+ mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] ) )"
+
+COMMON_DEPEND="
+ X? (
+ x11-libs/libXcursor[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ x11-libs/libXfixes[${MULTILIB_USEDEP}]
+ x11-libs/libXrandr[${MULTILIB_USEDEP}]
+ x11-libs/libXi[${MULTILIB_USEDEP}]
+ x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
+ )
+ alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
+ capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
+ cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
+ fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
+ gphoto2? (
+ media-libs/libgphoto2:=[${MULTILIB_USEDEP}]
+ media-libs/libjpeg-turbo:0=[${MULTILIB_USEDEP}]
+ )
+ gstreamer? (
+ media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
+ media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
+ )
+ kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
+ ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
+ netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
+ nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
+ odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
+ openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
+ opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
+ opengl? (
+ virtual/opengl[${MULTILIB_USEDEP}]
+ )
+ osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
+ pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
+ pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
+ scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
+ sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
+ ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
+ truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
+ udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
+ udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+ unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
+ usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] )
+ v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
+ vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
+ xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
+ xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )"
+
+RDEPEND="${COMMON_DEPEND}
+ app-emulation/wine-desktop-common
+ >app-eselect/eselect-wine-0.3
+ dos? ( >=games-emulation/dosbox-0.74_p20160629 )
+ gecko? ( app-emulation/wine-gecko:2.47.2[abi_x86_32?,abi_x86_64?] )
+ mono? ( app-emulation/wine-mono:7.3.0 )
+ perl? (
+ dev-lang/perl
+ dev-perl/XML-Simple
+ )
+ pulseaudio? (
+ realtime? ( sys-auth/rtkit )
+ )
+ samba? ( >=net-fs/samba-3.0.25[winbind] )
+ selinux? ( sec-policy/selinux-wine )
+ udisks? ( sys-fs/udisks:2 )"
+
+# tools/make_requests requires perl
+DEPEND="${COMMON_DEPEND}
+ ${BDEPEND}
+ >=sys-kernel/linux-headers-2.6
+ X? ( x11-base/xorg-proto )
+ xinerama? ( x11-base/xorg-proto )"
+
+# These use a non-standard "Wine" category, which is provided by
+# /etc/xdg/applications-merged/wine.menu
+QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
+usr/share/applications/wine-notepad.desktop
+usr/share/applications/wine-uninstaller.desktop
+usr/share/applications/wine-winecfg.desktop"
+
+PATCHES=(
+ "${PATCHDIR}/patches/${MY_PN}-6.22-winegcc.patch" #260726
+ "${PATCHDIR}/patches/${MY_PN}-4.7-multilib-portage.patch" #395615
+ "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
+)
+PATCHES_BIN=()
+
+# https://bugs.gentoo.org/show_bug.cgi?id=635222
+if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${PV} == 9999 ]]; then
+ DEPEND+=" dev-util/patchbin"
+fi
+
+wine_compiler_check() {
+ # Ensure compiler support
+ # (No checks here as of 2022)
+ return 0
+}
+
+wine_build_environment_check() {
+ [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+ if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
+ eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
+ eerror "See https://bugs.gentoo.org/487864 for more details."
+ eerror
+ return 1
+ fi
+}
+
+wine_env_vcs_vars() {
+ local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+ local pn_live_val="${pn_live_var}"
+ eval pn_live_val='$'${pn_live_val}
+ if [[ ! -z ${EGIT_COMMIT} ]]; then
+ eerror "Commits must now be specified using the environmental variables"
+ eerror "EGIT_OVERRIDE_COMMIT_WINE"
+ eerror
+ return 1
+ fi
+}
+
+pkg_pretend() {
+ wine_build_environment_check || die
+
+ # Verify OSS support
+ if use oss; then
+ if ! has_version ">=media-sound/oss-4"; then
+ eerror "You cannot build wine with USE=oss without having support from"
+ eerror ">=media-sound/oss-4 (only available through external repos)"
+ eerror
+ die
+ fi
+ fi
+
+ if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
+ local mingw=-w64-mingw32
+ for mingw in $(usev abi_x86_64 x86_64${mingw}) $(usev abi_x86_32 i686${mingw}); do
+ type -P ${mingw}-gcc && continue
+ eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
+ eerror "yourself by installing sys-devel/crossdev then running:"
+ eerror
+ eerror " crossdev --target ${mingw}"
+ eerror
+ eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
+ die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
+ done
+ fi
+}
+
+pkg_setup() {
+ wine_build_environment_check || die
+ wine_env_vcs_vars || die
+
+ WINE_VARIANT="${PN#wine}-${PV}"
+ WINE_VARIANT="${WINE_VARIANT#-}"
+
+ MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
+ MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
+ MY_DATADIR="${MY_DATAROOTDIR}"
+ MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
+ MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
+ MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
+ MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
+ MY_MANDIR="${MY_DATADIR}/man"
+}
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]] ; then
+ EGIT_CHECKOUT_DIR="${S}" git-r3_src_unpack
+ fi
+
+ default
+
+ plocale_find_changes "${S}/po" "" ".po"
+}
+
+src_prepare() {
+
+ eapply_bin(){
+ local patch
+ for patch in ${PATCHES_BIN[@]}; do
+ patchbin --nogit < "${patch}" || die
+ done
+ }
+
+ local md5="$(md5sum server/protocol.def)"
+
+ default
+ eapply_bin
+ eautoreconf
+
+ # Modification of the server protocol requires regenerating the server requests
+ if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
+ einfo "server/protocol.def was patched; running tools/make_requests"
+ tools/make_requests || die #432348
+ fi
+ sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
+ if ! use run-exes; then
+ sed -i '/^MimeType/d' loader/wine.desktop || die #117785
+ fi
+
+ # Edit wine.desktop to work for specific variant
+ sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
+
+ # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
+ cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
+
+ plocale_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
+
+ # Fix manpage generation for locales #469418 and abi_x86_64 #617864
+
+ # Duplicate manpages input files for wine64
+ local f
+ for f in loader/*.man.in; do
+ cp ${f} ${f/wine/wine64} || die
+ done
+ # Add wine64 manpages to Makefile
+ if use abi_x86_64; then
+ sed -i "/wine.man.in/i \
+ \\\twine64.man.in \\\\" loader/Makefile.in || die
+ sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
+\164\2/' loader/Makefile.in || die
+ fi
+
+ rm_man_file(){
+ local file="${1}"
+ loc=${2}
+ sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
+ }
+
+ while read f; do
+ plocale_for_each_disabled_locale rm_man_file "${f}"
+ done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
+}
+
+src_configure() {
+ wine_compiler_check || die
+
+ export LDCONFIG=/bin/true
+ use custom-cflags || strip-flags
+ if use mingw; then
+ use crossdev-mingw || PATH="${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}"
+
+ # use *FLAGS for mingw, but strip unsupported (e.g. --hash-style=gnu)
+ local mingwcc=${CROSSCC:-$(usex x86 i686 x86_64)-w64-mingw32-gcc}
+ : "${CROSSCFLAGS:=$(CC=${mingwcc} test-flags-CC ${CFLAGS:--O2})}"
+ : "${CROSSLDFLAGS:=$(
+ filter-flags '-fuse-ld=*'
+ CC=${mingwcc} test-flags-CCLD ${LDFLAGS})}"
+ export CROSS{C,LD}FLAGS
+ fi
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --prefix="${MY_PREFIX}"
+ --datarootdir="${MY_DATAROOTDIR}"
+ --datadir="${MY_DATADIR}"
+ --docdir="${MY_DOCDIR}"
+ --includedir="${MY_INCLUDEDIR}"
+ --libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
+ --libexecdir="${MY_LIBEXECDIR}"
+ --localstatedir="${MY_LOCALSTATEDIR}"
+ --mandir="${MY_MANDIR}"
+ --sysconfdir="${EPREFIX}/etc/wine"
+ $(use_with alsa)
+ $(use_with capi)
+ $(use_with cups)
+ $(use_with udisks dbus)
+ $(use_with fontconfig)
+ $(use_with ssl gnutls)
+ $(use_enable gecko mshtml)
+ $(use_with gphoto2 gphoto)
+ $(use_with gstreamer)
+ --enable-hal
+ $(use_with kerberos gssapi)
+ $(use_with kerberos krb5)
+ $(use_with ldap)
+ # TODO: Will bug 685172 still need special handling?
+ $(use_with mingw)
+ $(use_enable mono mscoree)
+ $(use_with netapi)
+ $(use_with nls gettext)
+ $(use_with openal)
+ $(use_with opencl)
+ $(use_with opengl)
+ $(use_with osmesa)
+ $(use_with oss)
+ $(use_with pcap)
+ $(use_with pulseaudio pulse)
+ $(use_with threads pthread)
+ $(use_with scanner sane)
+ $(use_with sdl)
+ $(use_enable test tests)
+ $(use_with truetype freetype)
+ $(use_with udev)
+ $(use_with unwind)
+ $(use_with usb)
+ $(use_with v4l v4l2)
+ $(use_with vulkan)
+ $(use_with X x)
+ $(use_with X xfixes)
+ $(use_with xcomposite)
+ $(use_with xinerama)
+ )
+
+ local PKG_CONFIG
+ # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
+ tc-export PKG_CONFIG
+
+ if use amd64; then
+ if [[ ${ABI} == amd64 ]]; then
+ myconf+=( --enable-win64 )
+ else
+ myconf+=( --disable-win64 )
+ fi
+
+ # Note: using --with-wine64 results in problems with multilib.eclass
+ # CC/LD hackery. We're using separate tools instead.
+ fi
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+ emake depend
+}
+
+multilib_src_test() {
+ # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
+ if [[ ${ABI} == x86 ]]; then
+ if [[ $(id -u) == 0 ]]; then
+ ewarn "Skipping tests since they cannot be run under the root user."
+ ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
+ return
+ fi
+
+ WINEPREFIX="${T}/.wine-${ABI}" \
+ virtx emake test
+ fi
+}
+
+multilib_src_install_all() {
+ local DOCS=( ANNOUNCE AUTHORS README )
+ add_locale_docs() {
+ local locale_doc="documentation/README.$1"
+ [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
+ }
+ plocale_for_each_locale add_locale_docs
+
+ einstalldocs
+ find "${ED}" -name *.la -delete || die
+
+ if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
+ rm "${D%}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
+ "${D%}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
+ fi
+
+ use abi_x86_32 && pax-mark psmr "${D%}${MY_PREFIX}"/bin/wine{,-preloader} #255055
+ use abi_x86_64 && pax-mark psmr "${D%}${MY_PREFIX}"/bin/wine64{,-preloader}
+
+ # Avoid double prefix from dosym and make_wrapper
+ MY_PREFIX=${MY_PREFIX#${EPREFIX}}
+
+ if use abi_x86_64 && ! use abi_x86_32; then
+ dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
+ dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
+ fi
+
+ # Failglob for binloops, shouldn't be necessary, but including to stay safe
+ eshopts_push -s failglob #615218
+ # Make wrappers for binaries for handling multiple variants
+ # Note: wrappers instead of symlinks because some are shell which use basename
+ local b
+ for b in "${ED%}${MY_PREFIX}"/bin/*; do
+ make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
+ done
+ eshopts_pop
+}
+
+pkg_postinst() {
+ eselect wine register ${P}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine register --vanilla ${P} || die
+ fi
+
+ eselect wine update --all --if-unset || die
+
+ xdg_desktop_database_update
+
+ if ! use gecko; then
+ ewarn "Without Wine Gecko, wine prefixes will not have a default"
+ ewarn "implementation of iexplore. Many older windows applications"
+ ewarn "rely upon the existence of an iexplore implementation, so"
+ ewarn "you will likely need to install an external one, like via winetricks"
+ fi
+ if ! use mono; then
+ ewarn "Without Wine Mono, wine prefixes will not have a default"
+ ewarn "implementation of .NET. Many windows applications rely upon"
+ ewarn "the existence of a .NET implementation, so you will likely need"
+ ewarn "to install an external one, like via winetricks"
+ fi
+}
+
+pkg_prerm() {
+ eselect wine deregister ${P}
+ if [[ ${PN} == "wine-vanilla" ]]; then
+ eselect wine deregister --vanilla ${P} || die
+ fi
+
+ eselect wine update --all --if-unset || die
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}
diff --git a/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
index ddd54410ad78..d776771e041b 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
@@ -35,7 +35,7 @@ SRC_URI="${SRC_URI}
LICENSE="LGPL-2.1"
SLOT="${PV}"
-IUSE="+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gssapi gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama"
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
X? ( truetype )
crossdev-mingw? ( mingw )
@@ -69,7 +69,6 @@ COMMON_DEPEND="
media-libs/libgphoto2:=[${MULTILIB_USEDEP}]
media-libs/libjpeg-turbo:0=[${MULTILIB_USEDEP}]
)
- gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
gstreamer? (
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
@@ -326,9 +325,9 @@ multilib_src_configure() {
$(use_with ssl gnutls)
$(use_enable gecko mshtml)
$(use_with gphoto2 gphoto)
- $(use_with gssapi)
$(use_with gstreamer)
--enable-hal
+ $(use_with kerberos gssapi)
$(use_with kerberos krb5)
$(use_with ldap)
# TODO: Will bug 685172 still need special handling?
diff --git a/app-i18n/Manifest.gz b/app-i18n/Manifest.gz
index acbca76bcd5f..74603cc88e13 100644
--- a/app-i18n/Manifest.gz
+++ b/app-i18n/Manifest.gz
Binary files differ
diff --git a/app-i18n/man-pages-l10n/Manifest b/app-i18n/man-pages-l10n/Manifest
index 340abc07030c..7d8138cb1901 100644
--- a/app-i18n/man-pages-l10n/Manifest
+++ b/app-i18n/man-pages-l10n/Manifest
@@ -1,5 +1,5 @@
DIST manpages-l10n-4.14.0.tar.bz2 102563001 BLAKE2B 500744ab21482e83e076543539dac58b16e2dfb1f4a0f38b9adfe933cc69a0d68534663e3bc07f053ad3580021b34150fe8a40e9ecd0d01b968f8570ca74b051 SHA512 335b7b34ed6135b5ceb53a75cee2f71198733df02ba8727d55863f2ceb4ae37c44636d78feca123f5d53ba07018af2ce51567c0605b242dcb441a0a56dcf9106
DIST manpages-l10n-v4.12.1.tar.bz2 90676890 BLAKE2B 7f261407007971063abc34f1154f5ab7d5a268dd21c76185f47cfbd73a1091950a3dc7bf0d4ad6bac56259fecbc1524b35b42316a1c2103f426ed936e203607d SHA512 42f5c61591959a0d804c215a9baddd6a182b30aedf5f6d6899f621cc8da9936fc10a1353aad5027eb4177f391f9708cc3018333256444433e937d37d8cdd3067
EBUILD man-pages-l10n-4.12.1-r2.ebuild 2112 BLAKE2B 8ab78f455497c8761f70a55987bfc1ec80db54b20b29d3b782fb02dbe5addeaccc14531822e8088cb20d532d0d15e7eb1c333d7f812a1701495e2ad92c956ed7 SHA512 a4216b00dc86e76b790a80136edfc704ccbe935fc03dc2aca8059fbe894371f845520da8e921bfdb088730c8a88e0bc90efced57c3796a0d71fd47c23ffd28b8
-EBUILD man-pages-l10n-4.14.0.ebuild 1999 BLAKE2B 8814e5a2d4af0893c0f7962de8a02fe7c74f16421d10967f8e5489c0f07f005dbc02d1fb2e5d8468e40f299bcd6ca290f97ac4a844ca6873042f6de16191ad15 SHA512 7d41930ed4dca406c62864af207eda3c6982bbdc08e486b325040547801c3afafcfa350a0c2c3bf2bc156ecd4002f993816fcdda3bfd97d91acd28c611bce329
+EBUILD man-pages-l10n-4.14.0.ebuild 1991 BLAKE2B 34d2dcb96b79c72a78e01972313143fa3a8811cd5be0a218ae4e6a1df86a3bdc6bc5659a9fa3b652a136e732c48940641faed4389bf11ce5f4b2afcf58d0be68 SHA512 7002e694ff8ffef305110e38e6ca7fdb12359edeeeabbb36ebb0335c9bc6633f50d0ff7d27ecdad59537fc8efafe27c65dbaa36da45fcb50d6dd199b6bf3c24b
MISC metadata.xml 236 BLAKE2B 4573b45e3f887eefa853dc47285138b1804285f5fca6cbc79cc9a475d19d9fe653ae5be35dfa9e8b04e5cf8e0de0ad4c58c8ec1b0c013213a01c13e7cbec2394 SHA512 3c9ef4b64af9b84abb15d7e0d315767d85a0ddb001471e4e8f0108ba4381fcf4bf3d7474929813e0da27d068e75b1bae56fdaadbb701d4f5f8a768e25c1b882b
diff --git a/app-i18n/man-pages-l10n/man-pages-l10n-4.14.0.ebuild b/app-i18n/man-pages-l10n/man-pages-l10n-4.14.0.ebuild
index 6f1244e6a3b6..3254d8837780 100644
--- a/app-i18n/man-pages-l10n/man-pages-l10n-4.14.0.ebuild
+++ b/app-i18n/man-pages-l10n/man-pages-l10n-4.14.0.ebuild
@@ -10,7 +10,7 @@ S="${WORKDIR}/${P/-}"
LICENSE="GPL-3+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
MY_L10N=(cs da de el es fi fr hu id it mk nb nl pl pt-BR ro sr sv uk vi)
IUSE="${MY_L10N[@]/#/l10n_}"
REQUIRED_USE="|| ( ${MY_L10N[@]/#/l10n_} )"
diff --git a/app-misc/Manifest.gz b/app-misc/Manifest.gz
index c00c0f4ff099..058b54ba2d5e 100644
--- a/app-misc/Manifest.gz
+++ b/app-misc/Manifest.gz
Binary files differ
diff --git a/app-misc/pdfpc/Manifest b/app-misc/pdfpc/Manifest
index ef8b1f1a63f2..3467d14ebaa4 100644
--- a/app-misc/pdfpc/Manifest
+++ b/app-misc/pdfpc/Manifest
@@ -1,4 +1,4 @@
DIST pdfpc-4.5.0.tar.gz 7754665 BLAKE2B 952a1694811ff80ab6b2e46b440182407ce16a727ebc1f1492cf1f86c25fe1827e926eb5baf59376f46b8e7bea6e00e4f1343930cd043445f7d2966a958b4a6c SHA512 142a276dc410bd1aac90b27d1b10d165de225d5cec73ab39d7f7061e5d8ac7526e3f537b61f15e904bba8d135a72c5567dfa350e454006435ad3647d22c58221
-EBUILD pdfpc-4.5.0-r1.ebuild 1588 BLAKE2B 2511f3c16aff221f4c9fb51a5de92fc94a67eeab054ebfddf857113196b2546387f85153a5c507e5c5d5c1d52baedd25399662b153fc65a7c87506fdd4fde992 SHA512 192387afea23feb5ed51c7c1a55484c02309c793fbbb11d7a61a38f772491157035be5f0a6ac82af84d2a2b4da1d0f86e64bcb8917f1745c4375404eeb8719c5
+EBUILD pdfpc-4.5.0-r1.ebuild 1586 BLAKE2B 4e61dee9bffd4f9df94c498dd0ee30bfbf5bb8b2bd8e8bcf403031dde82264abc103be5029797a1ed995b5628588848a2fb718c76385482f3b9ac42e89d48363 SHA512 a4915f49edeff8eb7424382cba38ed5768a77b822a4f3e8a5bdde841a012c45689147760db6e51892c038c85d2ef96d53d8001290c20235a81a827ab56686e4a
EBUILD pdfpc-4.5.0.ebuild 1595 BLAKE2B 4d10a085070e01ced31dd0415f7af315f7694b5292243191ddd9c2355d8ea08f2310d65ea6ff8ac44aacd763829a0f30525f6e6e00f97ea27e3e217a7a8ff1df SHA512 4e5f7f6a61205d3bcfb8de2153fc13936ef5c0e0e74af0125e21c1e6383c9e61224b003f5c7965794fb9dcce6f42ec26994e86e11ed7be43a9c11ae1bc633723
MISC metadata.xml 291 BLAKE2B 270a4048fd986dea045aa9de37187a68f155d632d903fcb1b5c306a9f039ff0ba581b09f387356e9346e11265ade120b48635e90adfb764edae6f3b70e976fce SHA512 47e9b6e188d9f3227c61d3950c50ffe22850e16024b69ffd138514109f140ef3557156b2935483f4a688e80712a6af182378283857a7b1d81446de339639f9db
diff --git a/app-misc/pdfpc/pdfpc-4.5.0-r1.ebuild b/app-misc/pdfpc/pdfpc-4.5.0-r1.ebuild
index 19911fdc5956..2da05eec5ab8 100644
--- a/app-misc/pdfpc/pdfpc-4.5.0-r1.ebuild
+++ b/app-misc/pdfpc/pdfpc-4.5.0-r1.ebuild
@@ -25,7 +25,7 @@ fi
LICENSE="GPL-3+"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="+gstreamer"
RDEPEND="
diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz
index ba6d071377d7..f0cd4efb545f 100644
--- a/dev-libs/Manifest.gz
+++ b/dev-libs/Manifest.gz
Binary files differ
diff --git a/dev-libs/miniz/Manifest b/dev-libs/miniz/Manifest
index bf44b2a2497b..408feb2602b3 100644
--- a/dev-libs/miniz/Manifest
+++ b/dev-libs/miniz/Manifest
@@ -3,9 +3,6 @@ AUX miniz-2.1.0-export-cmake-build-targets.patch 6510 BLAKE2B 1622c34af849f7b881
AUX miniz-2.2.0-fixincdir.patch 641 BLAKE2B e98354c7898ecff64ee65bdf42229f29315a59e5e10403104fceaf484bee6ede44ed265e50b767bc80ba622140a15ecf8467e1ca43ed7d74f2fa0d0285f5a6de SHA512 17a0f183aa7257e1eb5a8ba044e3e37f7a5903489883c4655b7976996aa85cde9c7d4c25c1487db3fa30cefe0c5adc72641f21185e9eded2d9890a086c485d05
AUX miniz-2.2.0-fixpcpath.patch 768 BLAKE2B 63f3b6be8be1266b6f3e2db16c0ed42ffefec7b6575a107745775bc1f7c47c463febd6e58e331962b7b2a8aea52379fee1bb6de9fa3921ae470760eb4f0ec9e7 SHA512 049e384397075954a6f581bc8d888e0130a02fda864a79d60f199c77c3305ea5d4bdcd41779985f273fda583e2e9009137eee6133b962041b85b1b08a1d9509c
AUX miniz.pc.in 315 BLAKE2B d05cd14a7acb4039e5f0521a68e6e5eeed00849a5b5d639fbbd4de45c1e0eab8ed33a22cc608761ab1dd1e1142021b8e5bfbf8e9bab589bfb2545701828f5f7b SHA512 8c1828759a45c58a96bebaac9fa5196d95be85a76be8d4fdd30eb2b4db5dbe582a7e0156fc9a4249c84426bbe69b30d31b2faf162c8d619810012afe6e1ad0ed
-DIST miniz-2.1.0.tar.gz 104502 BLAKE2B 9a7b3818b454809cdfec523d98f13bef3a52e27b6d3857d289438978d12997e38c71aa97fffe060a6b765f8fbbdd8fe8cebced4a45d9f1f040dd3e39cf2a8055 SHA512 e0aba16afdf230d1e54d0a9cedd336b0b158b02744839f0547e14ee47a97fc1a6668f3a181bd46e969b01b158af18dc8ed3c0a4210b3b620242338a2788806b3
DIST miniz-2.2.0.tar.gz 113592 BLAKE2B 110a71712396fb22075818f681d2e691b8b361e6c8eb786485f9fd3a1e00fcfc95bae4d470b8b1644a1e9674e69617abdba70e337f318969096db222f7a4c3d2 SHA512 0bb2b0ac627715b90ff9fd69ca8958a0bea387bd7ddf5c200daba953b98ef788092e3009842f4f123234e85570159250c8897a30c1c1f2d4dea9bca9837f6111
-EBUILD miniz-2.1.0-r3.ebuild 716 BLAKE2B dbd066b16a5cf7288a9af6b554bc44e0bb10b9259407627f5ecac365dd6ec95047f19386d28a270dda3bcf72e39d7a3af314e17242c79efb712f29491e58e625 SHA512 2956345154f2408dd60cbe472c58605f5f94cc4cea5367ba610af8c2cca78f9df51545483fd8b5fd50533ff97fc48e5a0236127a00c1aee28c7e909f497619b6
EBUILD miniz-2.2.0-r1.ebuild 616 BLAKE2B 3c4e5256988703cd3b45362c7cb126a0e780bdc3b05907d9439aba5aaa04467803cfdda2f8c707d59a1293cf83a0c1eb81e88bf2260a727c84ce3fc0eabe6b3a SHA512 83599912f92cdaeac2a9c79ff406c6406f990d28e0c1dc66e283f935bd3434265c8d1edf1d8127047f747d912c754dfd475a0191eb9dfbb9ef605769272249eb
-EBUILD miniz-2.2.0.ebuild 411 BLAKE2B 73164596838b7072b0d6cf1058630981f4930290af9ffc4434058cc8512625021377373be724ef993421b9f5d24d5df4dfc2113a986ebd07302399cd360c910d SHA512 67af664ce10ff44a4b7e01799b94c3468e4493905494f0c3ec0b919ab60752c9c2c8572edb2c2ca827bf71e40da1b52583cf3a053891443a00c6410a28e06c9c
MISC metadata.xml 1119 BLAKE2B 1524ab132d535eadc17d6897113e61c1f4fe85a693a2f1c7241293e11d7751cb1aa708b227a3afe5c269e6e6cc5d9d4981ef8394cacca00f30b1442a738d90f2 SHA512 8704444d82aa2b7a091b06e6ccf872c477ad9515e860c41f939d628b5b0a7742b8343a50c6e4be202acd9c8cbc98450e7a90ce951a625282dae0beb54420e278
diff --git a/dev-libs/miniz/miniz-2.1.0-r3.ebuild b/dev-libs/miniz/miniz-2.1.0-r3.ebuild
deleted file mode 100644
index 87ac7070f3c8..000000000000
--- a/dev-libs/miniz/miniz-2.1.0-r3.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake
-
-DESCRIPTION="A lossless, high performance data compression library"
-HOMEPAGE="https://github.com/richgel999/miniz"
-SRC_URI="https://github.com/richgel999/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0/${PV}"
-KEYWORDS="amd64 ~x86"
-IUSE=""
-
-DOCS=( ChangeLog.md LICENSE readme.md )
-
-PATCHES=(
- "${FILESDIR}/${P}-export-cmake-build-targets.patch"
-)
-
-src_prepare() {
- cp "${FILESDIR}/Config.cmake.in" .
- cp "${FILESDIR}/miniz.pc.in" .
-
- cmake_src_prepare
-}
-
-src_configure() {
- CMAKE_BUILD_TYPE=Release
-
- local mycmakeargs=(
- -DBUILD_EXAMPLES=OFF
- )
-
- cmake_src_configure
-}
diff --git a/dev-libs/miniz/miniz-2.2.0.ebuild b/dev-libs/miniz/miniz-2.2.0.ebuild
deleted file mode 100644
index 482aadff9922..000000000000
--- a/dev-libs/miniz/miniz-2.2.0.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="A lossless, high performance data compression library"
-HOMEPAGE="https://github.com/richgel999/miniz"
-SRC_URI="https://github.com/richgel999/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0/${PV}"
-KEYWORDS="~amd64 ~x86"
-
-DOCS=( ChangeLog.md readme.md )
diff --git a/dev-libs/tree-sitter-bash/Manifest b/dev-libs/tree-sitter-bash/Manifest
index 5931b08894d9..0b899bf4cfbb 100644
--- a/dev-libs/tree-sitter-bash/Manifest
+++ b/dev-libs/tree-sitter-bash/Manifest
@@ -1,3 +1,3 @@
DIST tree-sitter-bash-0.19.0.tar.gz 187286 BLAKE2B 8812a593366a65a9cae3eaac5bb81c71e95f4abe8558a01b908333e471f05714b1c768b71e66d3890d1e63202819290813e499a5e8ba49e72bb466b9b0f245f8 SHA512 62bc8bc25c999f9c79632bd6b236edd21ef15b14365dd1a956237b11a32f5e60a2f420ec67b60d46203699b7841d4bc10978fc0307d0c4013b376c6c024d89ae
-EBUILD tree-sitter-bash-0.19.0.ebuild 347 BLAKE2B e1156a69eecc2a762b134e17bb1b8798d432badf4bee8c398646d17c5f3539c37d9904776a73e609b28aa0bd8fbfcd3e48feaeb6c61dc1e11ba3f0d90a0b40bc SHA512 efe321e72d5dd43a80e2a1dda92ec2d07b3b22c16bd5d1f59ae58d3d2d20b11f3d5cba06f6eb427bec666f397e7be5c278c2416872f9ebfbbcd0d3544774c432
+EBUILD tree-sitter-bash-0.19.0.ebuild 358 BLAKE2B 3b1e73a6f52f3ba740da8b74fe1996ce246590615beb6fa7445946f39ec1dcc542b8d76be12833db3e32935b251a8843db084d414eb743f434d72d4b1f88f4e0 SHA512 5f354d730be58aa6243a6368c746da6260eb1b6a2862eb71b72b3e3b47051a6c5eede41a303373a931c42cd24ec2ff670df92e608143ae9d1b9ee44df50635ed
MISC metadata.xml 446 BLAKE2B 60052c2b380610a7baea0e630cbe82709976827341183e1a1a7c846913f3fb0ae8ad85c40701ec827685592e326405a9b2cab1674d015c7111c1df90ad8a162f SHA512 e845bf4cd56026aec1b531cd23ea6bf5eed38ac0d3f91dedead87907e4708bac82db87b3c7ccaa1135a4c25911f2b369836c2689faac9ad54782978dd2c8f95b
diff --git a/dev-libs/tree-sitter-bash/tree-sitter-bash-0.19.0.ebuild b/dev-libs/tree-sitter-bash/tree-sitter-bash-0.19.0.ebuild
index 0afa9e6d8e27..c40d3f996e04 100644
--- a/dev-libs/tree-sitter-bash/tree-sitter-bash-0.19.0.ebuild
+++ b/dev-libs/tree-sitter-bash/tree-sitter-bash-0.19.0.ebuild
@@ -10,4 +10,4 @@ HOMEPAGE="https://github.com/tree-sitter/tree-sitter-bash"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
diff --git a/dev-libs/tree-sitter/Manifest b/dev-libs/tree-sitter/Manifest
index ffc3b5340a27..d0f522667ab8 100644
--- a/dev-libs/tree-sitter/Manifest
+++ b/dev-libs/tree-sitter/Manifest
@@ -1,9 +1,5 @@
AUX tree-sitter-No-static-libs-gentoo.patch 793 BLAKE2B 9f80752bff2b5d327889702b6d890a4cdfefc74965a8109e692ddbf576cdea62062df0b3757c2ac8264946e549bbc9885f1b52b870f932c4805b74f5171fa718 SHA512 8eb3e40f91ea5a23ae668a7208b697d6d8c67f34f5807c0c26e8ed56357a577b3f3e6e7138d32aa69f8d1865b274595341dfe77674abf8eea1be442ca023da9d
-DIST tree-sitter-0.20.0.tar.gz 2876764 BLAKE2B 058f62c2067ce5fcf9440f281c63908f93fda09a6b3604d7196b9c56a15ba88ded7d75f9c21b4c5c4209f587fb5f326ae655cb5f5d84b46bfd783b2147048568 SHA512 a51fa0af45a6a99bb74ff53c15a4d7939eb24c6720e65ec7a96f74ffbce54801f14539e071ec6a4891dae778d7dea5edcecc6dd57716cc70a891c9e6cfa55013
-DIST tree-sitter-0.20.2.tar.gz 2904490 BLAKE2B cae19e3a66778ea72bf5cb0e5153bb6b7dfec0b059c01825377742886fadd52d789f456e82287d71841afad8bd5347361d5ef718b12e20e94c629480c43f4f33 SHA512 4b9a7da47b48b0003daf9af60f9d48aacf7c74d1c9e2645eafd74f62f568bc69e2fb36bb8f0c6b9f1dc85829e146786cc6bf7050ed1402167790b1552990665f
DIST tree-sitter-0.20.6.tar.gz 2924556 BLAKE2B 17348717441497ea7fc91419a0e8796d077b9acda2b584e9c3e1ac4a7a3f1fa3f84d5b749f21144d0593aaa7bf2e7ff9665539e91c6e81cda4359850e0fcdb14 SHA512 f0fb1e0073867c2a6e69b230e07e5eec32a2b30d3c711ec188526e287d6a1ef06de266d476482f900ec7c9ff6c11909899fd35a802e96f0befc6e99815502377
-EBUILD tree-sitter-0.20.0.ebuild 781 BLAKE2B f37906ce4b8b84343fbf56d0323c0fb5e722ea7e8e9810c4b16c222bdeef9cf6cf6855e0fea8e161e5ea38a25c74a795a255779713e2419fd163e439adf20d96 SHA512 5b3280ad08766687a4288450fbf56b80bf56fd9cbf98e9d4f4a450cb373be75027df22c723cceafe17cd25c410b635f9e7a17d98fa13b29b4f6ce89b1beee7f3
-EBUILD tree-sitter-0.20.2-r1.ebuild 907 BLAKE2B 73a75d277595a6d473aac238af11581bff7287278cf6bd9f4606f962168a76e747cf34e679e42fc0d3f23277be9d6d4d363f6a8b271317de9704e9798da6e548 SHA512 254e134fa31466f70e430457ff595e172e37b8f6c541eb4e1e7743b4ad97d639d5e1fc75bdf8cd6f4c769e191582849f22d5283626ba40f781385d76e9a68433
-EBUILD tree-sitter-0.20.6.ebuild 914 BLAKE2B a08299e4e5f381ecd05c19e118e03f5c5ddfc21afd492ee9b70385a3a7a5f0864cb1526345a0fadc57bd700c68703d2c0c1c9d49bbc530dfdfe836a52506ed35 SHA512 ccf3cbc99000dfdab94a7f907395b26b343f6d688596bb293584e88de93b680f62d88149904b77ec3732f212b3df255057bd9a5e4b30aa4d1d1e6f857199dcd2
-EBUILD tree-sitter-9999.ebuild 922 BLAKE2B c320ef30280009585f362dc939673a5134d6414213bc93feb8e5d1e62a656223352ef6431d1dbd7e48ad7bcefe4f3b3d5702b8183f19fa1855a18e379115d3a0 SHA512 698bc98e3631b5539ecc9032e1e1aa8ee0112eed38f61726cd716772d156c2f42d28ecee0d5ec0a8015ec247fdd919911e2582256bf0c59782cb8134524ef9af
+EBUILD tree-sitter-0.20.6.ebuild 1021 BLAKE2B b36aa0a4a1563751dd8315f27f01203693f543f22513d21e269087050898d5a9cfc67c856147ef407718257634214678e12e820af645217a52deb26229a4ce3c SHA512 c229498f68a38d73b7ed14c3d0ecb8261c789651b858a6c73a70056a6b12b36d1dac69f1af82258052dd309543aa0da2dcff6329b08715bb3c7127732a316f97
+EBUILD tree-sitter-9999.ebuild 1029 BLAKE2B c335042cf6c9155c2fad5c9c3eb9b508956b077cb22ee9e20f2f612a4afb2e0ec3797b149bb2b085c70e9d9110b6cdcb818aa4b66afff9d8fe54b40a5921699a SHA512 3284675110336a56485f5b4577e5461cbcf2e400deb4a4de5b107b248d8271f5e382dd247d1679c0be70e0ffb5f8820592e54c83f37807ae301b21f63d17b3de
MISC metadata.xml 927 BLAKE2B 1b94b1e0f323461151d82920b4185cdee4aff41ff751f170d893b80f62423545adfd5efd8cc920c933f599089fbd72423ffdb4e43dc51f975bbc4eebe601abd1 SHA512 88e936a507fbd1154c1c167f6fc343ded2e3e6d2c073d2efce9a2e1c98ac1877e5c1197a903a597b403b444189cf2e4b519c4cf144a8eb1ad050c0a8b07ae101
diff --git a/dev-libs/tree-sitter/tree-sitter-0.20.0.ebuild b/dev-libs/tree-sitter/tree-sitter-0.20.0.ebuild
deleted file mode 100644
index 7498b7f83f44..000000000000
--- a/dev-libs/tree-sitter/tree-sitter-0.20.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit toolchain-funcs
-
-DESCRIPTION="Tree-sitter is a parser generator tool and an incremental parsing library"
-HOMEPAGE="https://github.com/tree-sitter/tree-sitter"
-
-if [[ ${PV} == *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/${PN}/${PN}"
-else
- SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-
-PATCHES=(
- "${FILESDIR}/${PN}-No-static-libs-gentoo.patch"
-)
-
-src_prepare() {
- default
- tc-export CC
-}
-
-src_install() {
- emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" LIBDIR="${EPREFIX}/usr/$(get_libdir)" install
-}
diff --git a/dev-libs/tree-sitter/tree-sitter-0.20.2-r1.ebuild b/dev-libs/tree-sitter/tree-sitter-0.20.2-r1.ebuild
deleted file mode 100644
index 0ae7232aab0d..000000000000
--- a/dev-libs/tree-sitter/tree-sitter-0.20.2-r1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-inherit optfeature toolchain-funcs
-
-DESCRIPTION="Tree-sitter is a parser generator tool and an incremental parsing library"
-HOMEPAGE="https://github.com/tree-sitter/tree-sitter"
-
-if [[ ${PV} == *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/${PN}/${PN}"
-else
- SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-
-PATCHES=( "${FILESDIR}/${PN}-No-static-libs-gentoo.patch" )
-
-src_prepare() {
- default
- tc-export CC
-}
-
-src_install() {
- emake DESTDIR="${D}" \
- PREFIX="${EPREFIX}/usr" \
- LIBDIR="${EPREFIX}/usr/$(get_libdir)" \
- install
-}
-
-pkg_postinst() {
- optfeature "building and testing grammars" dev-util/tree-sitter-cli
-}
diff --git a/dev-libs/tree-sitter/tree-sitter-0.20.6.ebuild b/dev-libs/tree-sitter/tree-sitter-0.20.6.ebuild
index 4f1245a5a53f..a0ea2efaedea 100644
--- a/dev-libs/tree-sitter/tree-sitter-0.20.6.ebuild
+++ b/dev-libs/tree-sitter/tree-sitter-0.20.6.ebuild
@@ -12,7 +12,7 @@ if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/${PN}/${PN}"
else
SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
fi
LICENSE="MIT"
@@ -25,6 +25,12 @@ src_prepare() {
tc-export CC
}
+src_compile() {
+ emake \
+ PREFIX="${EPREFIX}/usr" \
+ LIBDIR="${EPREFIX}/usr/$(get_libdir)"
+}
+
src_install() {
emake DESTDIR="${D}" \
PREFIX="${EPREFIX}/usr" \
diff --git a/dev-libs/tree-sitter/tree-sitter-9999.ebuild b/dev-libs/tree-sitter/tree-sitter-9999.ebuild
index edede97efe4e..12d922e961da 100644
--- a/dev-libs/tree-sitter/tree-sitter-9999.ebuild
+++ b/dev-libs/tree-sitter/tree-sitter-9999.ebuild
@@ -12,7 +12,7 @@ if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://github.com/${PN}/${PN}"
else
SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
fi
LICENSE="MIT"
@@ -25,6 +25,12 @@ src_prepare() {
tc-export CC
}
+src_compile() {
+ emake \
+ PREFIX="${EPREFIX}/usr" \
+ LIBDIR="${EPREFIX}/usr/$(get_libdir)"
+}
+
src_install() {
emake DESTDIR="${D}" \
PREFIX="${EPREFIX}/usr" \
diff --git a/dev-libs/utfcpp/Manifest b/dev-libs/utfcpp/Manifest
index e0b415550ed2..7c0a9674e256 100644
--- a/dev-libs/utfcpp/Manifest
+++ b/dev-libs/utfcpp/Manifest
@@ -2,6 +2,6 @@ DIST ftest-20211106174116.tar.gz 3232 BLAKE2B 9a2184e82a19465333600b7c31de9a51e6
DIST utfcpp-3.1.2.tar.gz 26388 BLAKE2B f0ebf7f054c488259d2a409b2c5201b73e928901cf337cdc2a99a2f64deaf431ee60328b3b61e134d3cd49428eb0c921057ea248269029ef2838ed72dd8af7d7 SHA512 d43df19d9e8652291f1301a326ec0d592bad43d6ecf9086947037f0ae0c1e70c2d96082c48066639e2b7c57c0ea0e4782d6b215d017cf96a4c73ff3a15feec75
DIST utfcpp-3.2.1.tar.gz 27377 BLAKE2B 27c4becfa7e1f5e8b63ee0e03b9f66cf5d6743cff3706222dde6e21c3feb51897eddd7dcaeaaacc66513fdb209d5be392e83ba22ab7a7d848bdf9721577d6444 SHA512 5798487f12b1bc55d3e06aed38f7604271ca3402963efcf85d181fd590d8a088d21e961e77698e60dc2cdae8cf4506645903442c45fd328201752d9589180e0d
EBUILD utfcpp-3.1.2.ebuild 934 BLAKE2B 799839e521d6c2c881b937c610cc7016907325d5ded407fbd452fda66ec1be1365fa696856b3fa8d18c11a822807c25f8f5c509bb023788b6d471afad856c0ce SHA512 a0b28f7086b5b2e3b4fc8b6cb4f0336a3697eaa9b77c9f711ae5e090561f2b7c62306c2abaea62f2424441fd0ffce5f3c8810878f25b579df8add3e300d441a8
-EBUILD utfcpp-3.2.1.ebuild 1367 BLAKE2B 4091f8405e8cab6714f4c6e33a15a03ba853a54e0757ee3375d38040d5a5623615a719cf039cce2a171bb53b77eb39cba34a48e171dfaf8644967b5d7e5a6483 SHA512 12883928732d35f35258485badc6ae33cce46301283ff14c3d16f17b11814a69820854acfedc4f66e524a40781e287289bab81fc5e9a78eb31c61c41dc1155d3
+EBUILD utfcpp-3.2.1.ebuild 1366 BLAKE2B 5b91046f7708e7170bc82896b67156694086c0054160667794ce76f5e4ab07f4ab5cd7b065252cd3e023fdf5293c46a90e232d326257105164eac381fa373065 SHA512 ba8ab0c1f8e35351ab472f1598780d5c33b03c708260aa2bb3673a452cf5c3bc3b6dd74478b1d81747ce8eb4eb8801b3bac38a1c8e325035ec4a4fd3720fc3e7
EBUILD utfcpp-9999.ebuild 1268 BLAKE2B 991a901db757f36b9ebc115a45b585ec3e0eca396820a3456106fd3c3872c22060f6821a5c3f6d35b7fed3f28bd8792df01ea2547e58325e92d477450fb99366 SHA512 067403e83fdbc062b9d82e676a156f7b867a4efdae70cccff1b3f00010655d9e65930874ae672d203a9a2c27fe4048ad42b709218111dbd98f530e9a2319b72d
MISC metadata.xml 462 BLAKE2B 647bb7ccdffe7c2a5ca47f431b83c31d298430e4fbfba009bccaac39a3a514239318bab1dc946f5f49ea07169c79a1e1502b7d5d669e9e2afb886f405e8499ae SHA512 52bca2028d95d47e93f52295f9c3082e232e0cf14d24bf8e19eb4443d667703b3f1b34c641ed4a9038813cccb92ac1af2674acd20d6c2060db1f96878061a680
diff --git a/dev-libs/utfcpp/utfcpp-3.2.1.ebuild b/dev-libs/utfcpp/utfcpp-3.2.1.ebuild
index 410312e6ef5c..9d61083ab4ed 100644
--- a/dev-libs/utfcpp/utfcpp-3.2.1.ebuild
+++ b/dev-libs/utfcpp/utfcpp-3.2.1.ebuild
@@ -26,7 +26,7 @@ fi
LICENSE="Boost-1.0"
SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 ~riscv sparc ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 ~riscv sparc x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz
index 2f555d4d6654..44d66490c537 100644
--- a/dev-python/Manifest.gz
+++ b/dev-python/Manifest.gz
Binary files differ
diff --git a/dev-python/tree-sitter/Manifest b/dev-python/tree-sitter/Manifest
index 4f435139fb33..54be8486d1c2 100644
--- a/dev-python/tree-sitter/Manifest
+++ b/dev-python/tree-sitter/Manifest
@@ -2,5 +2,5 @@ AUX tree-sitter-0.19.0_p20210506-unbundle.patch 674 BLAKE2B 3b7f4efb2a0064c6682b
DIST py-tree-sitter-4f39f6919ca3be8efb420a338fd2cf9b8b68b156.tar.gz 14075 BLAKE2B b9a7a2247114c34e211f5098f04c456b25a3aee6cfde6d75bdd83427a379c5f339f1e897a3246ef7dafb2b512442bd0e7da18f391bc8283545e060dd00481421 SHA512 21629a147cda0c95a054c31223b082afa2d12491fee7a0d720187e5c390d9771c2e9b7d85fd35a56a2cf97a7addfa5332b58b3a36893aab2d7487f9522c5cddc
DIST tree-sitter-javascript-0.19.0.tar.gz 257637 BLAKE2B dc28bcbb003d623f5930dbf575f94f51c00eb008a77ba080f05e730fae63fb24d29c02ebb62d179a59d0f9cb8a02dbd3971440f299d952b1ec29b25bc6d21e34 SHA512 ef842787742e76d2534528ec710800df91958feaa4ba351558b5315f58a4bd85c729d088d139e15e0395726a690a97c05e03846c9176af0fd482777ae57087ed
DIST tree-sitter-python-0.19.0.tar.gz 129336 BLAKE2B 8a37b0d74ab89aa56d7164bd38ac527b7b9676cafd8f53faaee3d10316f91decd30c02078b1bb785a474615ae58e6edba1b28bc3311e6ff094435e5f53d64cd6 SHA512 df7c72f988a62af0774df1b3a60c86397725aaeb1e2ffaa9b1295ab22eec09bffaf391cad20fb0d08a20914b22af430c2248c26cad179fd68c9f2b32419c0b60
-EBUILD tree-sitter-0.20.0-r1.ebuild 1472 BLAKE2B 853d53b52651ec093da779c37b2febf324be0fb20d3730ed08f5f9261df9f4bf587cc4245345938202f82175a24a088b0a6588559c1442526dccced38266007a SHA512 33db84798dbb1502c28e4e9eddf816db6d6eb5f7f02feb2a5ef21e28c45ea79334e08abefc8807cc93489fcccda7324e78a2d131b9ddd6abd15f78ea24036a81
+EBUILD tree-sitter-0.20.0-r1.ebuild 1483 BLAKE2B 32d885bbeae3ece29b288427c204eb5b6a31bbafbdecd74257bfecf902bc5dabf48ffa05073e6eeca2604ce009909c93937105c04c91e020b882cedb8fa4eda7 SHA512 4ba64bdff0c4b085b153c4798418eb8cc6ab7e70ec7937205919448e35bc9970eb9fccb9ea720147e1800daa3c2f93ae61f75c0a7ca9860ab6be7da277fb5659
MISC metadata.xml 393 BLAKE2B 15f673391ad9e9aab93808392449ddf99ccc35fe1b345010a4373b46a56c8dad461042e0a2dd735e4d53f77059a5f7920fc3215f939aacd1455c61f0ecdfa3c0 SHA512 519fc8d6fbbf3709820b26b1f4786b16f6679e569ae4adafdc5e37b2dfbc03351bfd9c6750264300a0309406ffe20868d48c3ff488dde22f900d59e1813c15ef
diff --git a/dev-python/tree-sitter/tree-sitter-0.20.0-r1.ebuild b/dev-python/tree-sitter/tree-sitter-0.20.0-r1.ebuild
index 704c7cce3413..4c9281501245 100644
--- a/dev-python/tree-sitter/tree-sitter-0.20.0-r1.ebuild
+++ b/dev-python/tree-sitter/tree-sitter-0.20.0-r1.ebuild
@@ -31,7 +31,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
RDEPEND="
dev-libs/tree-sitter:=
diff --git a/dev-util/Manifest.gz b/dev-util/Manifest.gz
index bc1fc4d38b2e..2e4a85c097ae 100644
--- a/dev-util/Manifest.gz
+++ b/dev-util/Manifest.gz
Binary files differ
diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest
index e7b2d2d4176a..2bce04844794 100644
--- a/dev-util/cmake/Manifest
+++ b/dev-util/cmake/Manifest
@@ -16,9 +16,13 @@ DIST cmake-3.23.1.tar.gz 9982020 BLAKE2B a51eedeb78657caf86409ea8bdf4e61b09c66c6
DIST cmake-3.23.2-SHA-256.txt 1452 BLAKE2B 7871939af36eafe321b835e0b34b58149227f757530465b20170a286946cc342a1fb5f3c98d5a5e9d16487931cbc3d005437c94af51b6622166092caed31f7e1 SHA512 4c96cbb45b92a5a72476d232b3c6747be418850a2fc993f2daeb22dcc4d50bcc57c747cdaec65382a3dee5f57823dbf2e06ca2b32f025fd21afec34ac4462656
DIST cmake-3.23.2-SHA-256.txt.asc 833 BLAKE2B eaa699b3a46d0d638a426b91e54aec07fb608650f089d83fb145f3f4689edfe8b970a9e7b653746a86ed8e4d866703b51730bca6a4537d9aa90104639bbb989c SHA512 2face6d9e4556f41b3c858b30ab3fadaf931b0e110a5bfadc4ce54cb66d56039d9f129637dd9ba2135f2361384d841916da1319c2cb41a9050dc9053b44eb28e
DIST cmake-3.23.2.tar.gz 9987716 BLAKE2B 6930deab4849eeb4451297006d7ace37483c4b9b66ddbfaf78b2393da670aa95e054b61f59763efb719a4a30342270c1fc13d298f90caff58b9b3fde97ff1c31 SHA512 0925adf973d642fd76d4089b61b3882babb0a85050c4c57d5f5f3bd6b17564a9feb0beed236cd636e25f69072fa30b67ea3f80932380b6b6576f2dd78b8e6931
+DIST cmake-3.23.3-SHA-256.txt 1452 BLAKE2B aa2e2dfb2757210688a5a9131ca1fffdf6617a52219d373fd908c08e52b7d77f0e980086561a083cabaf8d9f3e24b15064bb74ad2737fcbfe11c8aba5814eb4e SHA512 22808c050e8927867fc5d2daa6999d9eed53e99015f89d1f5bef61397d1b2a9888728e86fdca8716c47f8133e02b3fa726d0cc97c0bb4ab5f5ff16a1fc0ae82f
+DIST cmake-3.23.3-SHA-256.txt.asc 833 BLAKE2B 10f61d7cfaa5c86d0e372f33d9ba0dbe7ae9cbfe17669107167b3ae72d0e337c63fb1c27a528dcda804323a1f0d4843b630e15427c33e0f5d5c568e27cea769d SHA512 75ff4b25fdd71bc05a7d6fec3c72ec5b8d6ed7ac980d533e6c820855c74a1a58f52d53c1a454dffe1a15568445c4c1c805891997e5709567c9e7709ba1c5e4d9
+DIST cmake-3.23.3.tar.gz 9988050 BLAKE2B 55105ce380e5e9f1839fc38cc0eaefe505d58bffa60feab9813a36c7cac92f4fb6aa6b6aaad899f1e8d58cfa5ececb9e7335a470244ccc06848d833b1eddf224 SHA512 75f86abe60ef28ba9bd06546c0c24578921621fb4be942171e629366a759cf1469e430945addc85f8ce977920883c063ed26de1b78fd24dfd98d0eb604800632
EBUILD cmake-3.22.2.ebuild 7052 BLAKE2B b0c8b15546a0216be79e66918de373cf6eb45eb080fb2871aa543f7518f71876bc79df21e894cfdfbe921718bf30d2915c9242a03cbcc4f19b955a2f2b9d8d85 SHA512 d2627f09f761e83363ef1a0a960dc4660d71160a47329f141cca9c9d0404d784719b258123db1716aec885d091f55206cc85f732b4235f0d19bee4e4e5c28d33
EBUILD cmake-3.22.4.ebuild 6820 BLAKE2B 4e924937ebf2892082c9f8ac216a47376a6aad3a72872dcb8698bcd558acbc0f28e9cbb2a8653543db8fd8c75795c335835c77239e5139e66f8c196df20e4998 SHA512 b9cf3defba50e16668e2c9d04e67d2d8e7f287a68805ff0388cee0c497d592d5d6a76a7653d3a09133224b89a5b670faf54cacdb203c37d1bc567818cb4beb4c
EBUILD cmake-3.23.1.ebuild 7794 BLAKE2B e891b0a6ca8cf3335a46178040a6d28534277ad9c5ba830ce30d37e59afe92bc147e4bc2fac1a49b9674e7f3fc3bc936453a831a34ccb5e4546fb96ba63de857 SHA512 2fba10f3ba197d9ad36a503c7fad84916716399320b5bfeabf439cab06cfbe0640479a9bd85a5ab3ac341c5a53d74bfa7ef2ea967198073e0cd215e8fff93fc5
EBUILD cmake-3.23.2.ebuild 7794 BLAKE2B e891b0a6ca8cf3335a46178040a6d28534277ad9c5ba830ce30d37e59afe92bc147e4bc2fac1a49b9674e7f3fc3bc936453a831a34ccb5e4546fb96ba63de857 SHA512 2fba10f3ba197d9ad36a503c7fad84916716399320b5bfeabf439cab06cfbe0640479a9bd85a5ab3ac341c5a53d74bfa7ef2ea967198073e0cd215e8fff93fc5
+EBUILD cmake-3.23.3.ebuild 7794 BLAKE2B e891b0a6ca8cf3335a46178040a6d28534277ad9c5ba830ce30d37e59afe92bc147e4bc2fac1a49b9674e7f3fc3bc936453a831a34ccb5e4546fb96ba63de857 SHA512 2fba10f3ba197d9ad36a503c7fad84916716399320b5bfeabf439cab06cfbe0640479a9bd85a5ab3ac341c5a53d74bfa7ef2ea967198073e0cd215e8fff93fc5
EBUILD cmake-9999.ebuild 7794 BLAKE2B e891b0a6ca8cf3335a46178040a6d28534277ad9c5ba830ce30d37e59afe92bc147e4bc2fac1a49b9674e7f3fc3bc936453a831a34ccb5e4546fb96ba63de857 SHA512 2fba10f3ba197d9ad36a503c7fad84916716399320b5bfeabf439cab06cfbe0640479a9bd85a5ab3ac341c5a53d74bfa7ef2ea967198073e0cd215e8fff93fc5
MISC metadata.xml 456 BLAKE2B 2dc475cae4d2f65744e25381b1e4fe8b6399225380d0f9fa81870813221d180b1c4b538c3f9249f80e921a1db8afab7071db206898fdec294372811dc456d1f5 SHA512 347c1e13f459dfb9bec9d52ce556526eb74e6c432ff28aed28f05dc17bba17934fff1ce2fc27765b390bb55aaa7b02d0800939eb4382eba6c4b85a62ec136f5a
diff --git a/dev-util/cmake/cmake-3.23.3.ebuild b/dev-util/cmake/cmake-3.23.3.ebuild
new file mode 100644
index 000000000000..1f441d341fb6
--- /dev/null
+++ b/dev-util/cmake/cmake-3.23.3.ebuild
@@ -0,0 +1,261 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja
+# ... but seems fine as of 3.22.3?
+# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759.
+CMAKE_MAKEFILE_GENERATOR="emake"
+CMAKE_REMOVE_MODULES_LIST=( none )
+inherit bash-completion-r1 cmake elisp-common flag-o-matic multiprocessing \
+ toolchain-funcs virtualx xdg-utils
+
+MY_P="${P/_/-}"
+
+DESCRIPTION="Cross platform Make"
+HOMEPAGE="https://cmake.org/"
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git"
+else
+ SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz"
+ if [[ ${PV} != *_rc* ]] ; then
+ VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/bradking.asc
+ inherit verify-sig
+
+ SRC_URI+=" verify-sig? (
+ https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt
+ https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt.asc
+ )"
+
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+
+ BDEPEND="verify-sig? ( sec-keys/openpgp-keys-bradking )"
+ fi
+fi
+
+LICENSE="CMake"
+SLOT="0"
+IUSE="doc emacs ncurses qt5 test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=app-arch/libarchive-3.3.3:=
+ app-crypt/rhash
+ >=dev-libs/expat-2.0.1
+ >=dev-libs/jsoncpp-1.9.2-r2:0=
+ >=dev-libs/libuv-1.10.0:=
+ >=net-misc/curl-7.21.5[ssl]
+ sys-libs/zlib
+ virtual/pkgconfig
+ emacs? ( >=app-editors/emacs-23.1:* )
+ ncurses? ( sys-libs/ncurses:0= )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND+="
+ doc? (
+ dev-python/requests
+ dev-python/sphinx
+ )
+ test? ( app-arch/libarchive[zstd] )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+SITEFILE="50${PN}-gentoo.el"
+
+PATCHES=(
+ # prefix
+ "${FILESDIR}"/${PN}-3.16.0_rc4-darwin-bundle.patch
+ "${FILESDIR}"/${PN}-3.14.0_rc3-prefix-dirs.patch
+ "${FILESDIR}"/${PN}-3.19.1-darwin-gcc.patch
+
+ # handle gentoo packaging in find modules
+ "${FILESDIR}"/${PN}-3.17.0_rc1-FindBLAS.patch
+ # Next patch needs to be reworked
+ #"${FILESDIR}"/${PN}-3.17.0_rc1-FindLAPACK.patch
+ "${FILESDIR}"/${PN}-3.5.2-FindQt4.patch
+
+ # respect python eclasses
+ "${FILESDIR}"/${PN}-2.8.10.2-FindPythonLibs.patch
+ "${FILESDIR}"/${PN}-3.9.0_rc2-FindPythonInterp.patch
+
+ "${FILESDIR}"/${PN}-3.18.0-filter_distcc_warning.patch # bug 691544
+
+ # upstream fixes (can usually be removed with a version bump)
+)
+
+cmake_src_bootstrap() {
+ # disable running of cmake in bootstrap command
+ sed -i \
+ -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
+ bootstrap || die "sed failed"
+
+ # execinfo.h on Solaris isn't quite what it is on Darwin
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ sed -i -e 's/execinfo\.h/blablabla.h/' \
+ Source/kwsys/CMakeLists.txt || die
+ fi
+
+ # bootstrap script isn't exactly /bin/sh compatible
+ tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \
+ --prefix="${T}/cmakestrap/" \
+ --parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \
+ || die "Bootstrap failed"
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ elif ! use verify-sig || [[ ${PV} == *_rc ]] ; then
+ default
+ else
+ cd "${DISTDIR}" || die
+
+ # See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature
+ verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc}
+ verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz
+
+ cd "${WORKDIR}" || die
+
+ default
+ fi
+}
+
+src_prepare() {
+ cmake_src_prepare
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # disable Xcode hooks, bug #652134
+ sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \
+ Source/CMakeLists.txt || die
+ sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \
+ -e '/cmGlobalXCodeGenerator.h/d' \
+ Source/cmake.cxx || die
+ # disable isysroot usage with GCC, we've properly instructed
+ # where things are via GCC configuration and ldwrapper
+ sed -i -e '/cmake_gnu_set_sysroot_flag/d' \
+ Modules/Platform/Apple-GNU-*.cmake || die
+ # disable isysroot usage with clang as well
+ sed -i -e '/_SYSROOT_FLAG/d' \
+ Modules/Platform/Apple-Clang.cmake || die
+ # don't set a POSIX standard, system headers don't like that, #757426
+ sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
+ Source/cmLoadCommandCommand.cxx \
+ Source/cmStandardLexer.h \
+ Source/cmSystemTools.cxx \
+ Source/cmTimestamp.cxx
+ sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
+ Source/cmStandardLexer.h
+ fi
+
+ # Add gcc libs to the default link paths
+ sed -i \
+ -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
+ -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \
+ -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
+ Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
+
+ if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then
+ CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
+ cmake_src_bootstrap
+ fi
+}
+
+src_configure() {
+ # Fix linking on Solaris
+ [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
+
+ local mycmakeargs=(
+ -DCMAKE_USE_SYSTEM_LIBRARIES=ON
+ -DCMAKE_DOC_DIR=/share/doc/${PF}
+ -DCMAKE_MAN_DIR=/share/man
+ -DCMAKE_DATA_DIR=/share/${PN}
+ -DSPHINX_MAN=$(usex doc)
+ -DSPHINX_HTML=$(usex doc)
+ -DBUILD_CursesDialog="$(usex ncurses)"
+ -DBUILD_TESTING=$(usex test)
+ )
+ use qt5 && mycmakeargs+=( -DBUILD_QtDialog=ON )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ use emacs && elisp-compile Auxiliary/cmake-mode.el
+}
+
+src_test() {
+ # fix OutDir and SelectLibraryConfigurations tests
+ # these are altered thanks to our eclass
+ sed -i -e 's:^#_cmake_modify_IGNORE ::g' \
+ "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
+ || die
+
+ pushd "${BUILD_DIR}" > /dev/null || die
+
+ # Excluded tests:
+ # BootstrapTest: we actualy bootstrap it every time so why test it.
+ # BundleUtilities: bundle creation broken
+ # CMakeOnly.AllFindModules: pthread issues
+ # CTest.updatecvs: which fails to commit as root
+ # Fortran: requires fortran
+ # RunCMake.CompilerLauncher: also requires fortran
+ # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
+ # debugedit binary is not in the expected location
+ # RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because
+ # it can't find a deb package that owns libc
+ # TestUpload, which requires network access
+ # RunCMake.CMP0125, known failure reported upstream (bug #829414)
+ local myctestargs=(
+ --output-on-failure
+ -E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \
+ )
+
+ virtx cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+
+ if use emacs; then
+ elisp-install ${PN} Auxiliary/cmake-mode.el Auxiliary/cmake-mode.elc
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+
+ insinto /usr/share/vim/vimfiles/syntax
+ doins Auxiliary/vim/syntax/cmake.vim
+
+ insinto /usr/share/vim/vimfiles/indent
+ doins Auxiliary/vim/indent/cmake.vim
+
+ insinto /usr/share/vim/vimfiles/ftdetect
+ doins "${FILESDIR}/${PN}.vim"
+
+ dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+ if use qt5; then
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+ fi
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+ if use qt5; then
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ xdg_mimeinfo_database_update
+ fi
+}
diff --git a/eclass/Manifest.gz b/eclass/Manifest.gz
index 49354b93bc1b..b246d25cdaf2 100644
--- a/eclass/Manifest.gz
+++ b/eclass/Manifest.gz
Binary files differ
diff --git a/eclass/tree-sitter-grammar.eclass b/eclass/tree-sitter-grammar.eclass
index 69ad467f8be7..acdb8a7ad73b 100644
--- a/eclass/tree-sitter-grammar.eclass
+++ b/eclass/tree-sitter-grammar.eclass
@@ -76,11 +76,17 @@ tree-sitter-grammar_src_compile() {
fi
local soname=lib${PN}$(get_libname $(_get_tsg_abi_ver))
+
+ local soname_args="-Wl,--soname=${soname}"
+ if [[ ${CHOST} == *darwin* ]] ; then
+ soname_args="-Wl,-install_name,${EPREFIX}/usr/$(get_libdir)/${soname}"
+ fi
+
edo ${link} ${LDFLAGS} \
-shared \
*.o \
- -Wl,--soname=${soname} \
- -o "${WORKDIR}"/${soname} || die
+ ${soname_args} \
+ -o "${WORKDIR}"/${soname}
}
# @FUNCTION: tree-sitter-grammar_src_install
diff --git a/games-roguelike/Manifest.gz b/games-roguelike/Manifest.gz
index 8b599e6f7991..5f13122d99d2 100644
--- a/games-roguelike/Manifest.gz
+++ b/games-roguelike/Manifest.gz
Binary files differ
diff --git a/games-roguelike/angband/Manifest b/games-roguelike/angband/Manifest
index c2fa11affb6d..97def973a953 100644
--- a/games-roguelike/angband/Manifest
+++ b/games-roguelike/angband/Manifest
@@ -1,4 +1,4 @@
-DIST angband-4.2.3-man-r1.tar.gz 112117 BLAKE2B 2d90660cf0784435c4a8fbb04505e5ed47f79ebfcb0215e779b2d8b54ae5b556f820919c27f1d410d92b94476772e23a3a7fe15aaf6c2e56d5c9ceb723359bba SHA512 d85c0b2f0808ba8ee1f979bd9b51ffe2aaff4332471533f93478bf3853aa92eb326b57f195fa2f47d2163486c5005cf4e0865bca2bc3a75fc6005eb93e5d2dec
-DIST angband-4.2.3.tar.gz 25175745 BLAKE2B ee9878bb93fd268c5fdd8535750d6446ebf8e30a4bc794170b60cf6a77fc0470f91261f4963dda8865c95ead1b522210c8536da36866adeb084689fcf2bc7e5c SHA512 f80a16c40d877c50194be370795acb437778ca88a658a8c95bef637625ab8a88ceb98f45d742e698709b6c81e8b5de6f563f88e957cd71eca208673bb4179e88
-EBUILD angband-4.2.3-r1.ebuild 2224 BLAKE2B 0267dc5528982fec1c3be283120ba2617d58f410e0ef08ce27452c06e1ffbe0754f8f02c58daaa7cffa95b0f3908a62448723309332a2d307f0de700991e172d SHA512 0f791dc1244595ea7c7b7d87c146609fd84aa6384cabc0d4cebcf3209927e7305a75f236b3cba1c169b957a1eef5bb8c1daaabcda5730d7a425b405073aeaf4e
+DIST angband-4.2.4-man.tar.gz 116832 BLAKE2B 1ae72aa88b38e4f13b6f2c1131dc53367a28d60440b03f9eb655ba5d06e1bc41e0ec9575194b7ab7892727268a11800d65175bedd73ae296f8babd3174bdf127 SHA512 92391b32cb619dae8f5274b9390593530c0138c250ddfe5642a450d35f810b0fa5c24c0e888c836975eba3981346469a43b3ba15ff36b750d4ced8bdf2377385
+DIST angband-4.2.4.tar.gz 25271611 BLAKE2B 97c19f23aff3aa1e9aedcbe33da0e9806f923c251e80dde54492d62dc5d54c58943483ea3b0da1913043deef9d3d52f89bdc3dced0870142f06c6ab6edc33615 SHA512 5b47cfa95f779aa3f1e89f02f203b8eafd2dc1376b7aab1b62e37122fb83640d1de25f39817863a74c246d7de35bb3f26868f5f5e8906e92788a6dd74a85a4c5
+EBUILD angband-4.2.4.ebuild 2221 BLAKE2B 37a083a41a26e1c7729efcab512f3c72fe75824a46b462299d2f89ea66dfce2e424bad72186fad87ccaee92e17e9440a5cc19a6f25772607e0e118dd96e90be1 SHA512 6a7f5184fed1a76e7d737c794987cb7a8a60cc405f98d2561c698a273d5039b760ebb98d323d875842656c171c4abebf8b167058792e7f586e5e0cbc5be8d6d8
MISC metadata.xml 431 BLAKE2B 5b6bb43490c97c194a1f2bb5da7e6f215659778811ba52ba5b8351bffd14eacfeec96a48ebc029b799617d4a3216803518a2d3b4710cdac923feaf57c5a74ef8 SHA512 ef75f9e354f3f11219c64c8d35ba5a12ef30b0a4b77f4399287883990e6675e4160f58b43a3fc46822a363a8a8b63c67c06de6474a293d15c666e60dc2c90847
diff --git a/games-roguelike/angband/angband-4.2.3-r1.ebuild b/games-roguelike/angband/angband-4.2.4.ebuild
index a281466f56af..95c89f792a68 100644
--- a/games-roguelike/angband/angband-4.2.3-r1.ebuild
+++ b/games-roguelike/angband/angband-4.2.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -8,7 +8,7 @@ inherit autotools desktop xdg-utils
DESCRIPTION="A roguelike dungeon exploration game based on the books of J.R.R. Tolkien"
HOMEPAGE="https://rephial.org/"
SRC_URI="https://github.com/angband/angband/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
- https://dev.gentoo.org/~steils/distfiles/${P}-man-r1.tar.gz"
+ https://dev.gentoo.org/~steils/distfiles/${P}-man.tar.gz"
LICENSE="GPL-2"
SLOT="0"
diff --git a/media-gfx/Manifest.gz b/media-gfx/Manifest.gz
index fd9552df2580..06679ba1e826 100644
--- a/media-gfx/Manifest.gz
+++ b/media-gfx/Manifest.gz
Binary files differ
diff --git a/media-gfx/solvespace/Manifest b/media-gfx/solvespace/Manifest
index 7e61b18ef3fd..040dd9727adf 100644
--- a/media-gfx/solvespace/Manifest
+++ b/media-gfx/solvespace/Manifest
@@ -5,5 +5,5 @@ DIST mimalloc-2.0.6-f819dbb4e4813fab464aee16770f39f11476bfea.tar.gz 1129745 BLAK
DIST solvespace-3.0.tar.gz 2734860 BLAKE2B 2efc9d98723c60abdb1c76ac086c40ff2f9b8bc9c315978731493d115fa55a080176ef48d930e3b503c0de0604dbfd2bc3bd99a581f359eb07a23034d09f84bf SHA512 b07b41fac1d67c5350082600a2f09e3fa611a1273e0c93ff93d11a7a1dbf550ff33465686eaff04fdb8350d1fe854ab0301d8723ef31cc65c687ba59cb89187f
DIST solvespace-3.1.tar.gz 2764243 BLAKE2B 764637f84a187c6a86cf65cd672466f48e1e5abd9d335945fc47f2ea48f7d22a94f6840a6019f2380e8416e903bb55f97d9adb18fa6f2e7a94933c2a5b51ef6c SHA512 76794c4b103036f423471c72209521c273b40edcf9a725d2407e757b8dded033863f58640f1bcdf19d7dd1b296334f8745a632875e06604fa4d5b261dd23ba98
EBUILD solvespace-3.0-r2.ebuild 1832 BLAKE2B 2fae3d74dd6a1a146617a8a3a05d8d069ee593ab864a12f547d733b06bc793a9be37354b6609a9e495c6c4f6e940b7b87f7cf1ca25bcf8213bde68a06eb72300 SHA512 8537e77f57acd7be0177487d95f25c433f82357936346a1029e86cc56ac2adb1faaa805c853f079517de1cde6ea6e29c01c19397303b57eabd84ced564cd9867
-EBUILD solvespace-3.1-r1.ebuild 2740 BLAKE2B 97301f9463b1f0b98245cf6eae3cc2328f41ce16d2e14a7d59256811dbedec32bdc4528039f06b46846a3d6a02d009079c1ae97bfc8da2d0b5f977d4d099075a SHA512 489bdee09bb37c12c636e5313a0bef9ecca0c21e0adede986ddffd04bdb5f8607358907b866214d414b57c78fa6f4402f1df1ecbd4af1d90b67521946ba389c7
+EBUILD solvespace-3.1-r1.ebuild 2739 BLAKE2B e6cbd0798e4c7ebf2a2b96ee6d9312aaeb2e110364b4f5dc32daa9b3f654c9f77fff28018ea86f1d375831e26f1c2339e73a724a3b61e2da0fa50ededdfc661b SHA512 ddfa091c1723dc00db0abab5fb131ae06171deb2dcc06e176b22a93f94cd457c9e5dca442a2b94f5c9a0f849ac7d6da15555ed5e74d1e67a11c82d160e879e0d
MISC metadata.xml 1256 BLAKE2B 9d5213ff5f2f484ab96cb7c1fca7c756fce7f7d35a536ccfa28e5d73560b018e22ec22d25d9bf36cf4f463553b3da55a99baf9e1e15cb7f75d11dd2befd5498f SHA512 0fba9cc8899227f1aa955b7380b32580a4fbbdbcca31ea674c2fd31bd6115be41edaf3201c2a043934e19e4df3d44828ec9127ee559768487e9769bb26e953ce
diff --git a/media-gfx/solvespace/solvespace-3.1-r1.ebuild b/media-gfx/solvespace/solvespace-3.1-r1.ebuild
index d6a1211cde9f..06cc74938497 100644
--- a/media-gfx/solvespace/solvespace-3.1-r1.ebuild
+++ b/media-gfx/solvespace/solvespace-3.1-r1.ebuild
@@ -30,7 +30,7 @@ SRC_URI="https://github.com/solvespace/solvespace/archive/v${PV}.tar.gz -> ${P}.
# + mimalloc (MIT)
IUSE="openmp +system-mimalloc"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
LICENSE="BitstreamVera GPL-2+ GPL-3+ !system-mimalloc? ( MIT )"
SLOT="0"
diff --git a/media-video/Manifest.gz b/media-video/Manifest.gz
index cdfeb2fd6cb8..c8413157648f 100644
--- a/media-video/Manifest.gz
+++ b/media-video/Manifest.gz
Binary files differ
diff --git a/media-video/aegisub/Manifest b/media-video/aegisub/Manifest
index 65eff08cb942..490b27ecca71 100644
--- a/media-video/aegisub/Manifest
+++ b/media-video/aegisub/Manifest
@@ -11,6 +11,6 @@ AUX 3.2.2_p20160518/aegisub-3.2.2_p20160518-tests_luarocks_lua_version.patch 505
AUX aegisub-9999-git.patch 1602 BLAKE2B ae40661da657c303eaaefc8b2d850e810ca506b60eb023bb34b6fe9839205dec15c7f781ab0e886f52e3c1d721338bf9bd9ec29814c65f236c8d5b99156a8a45 SHA512 7e4c1be034543b887b9ee6b84e686c2f1c26e6138a9aee997a0eab2dd5256a918c4ccfda41b0cc71a88fc0856f1726cee413e16fa4aef260faacb0803e01732d
DIST aegisub-3.2.2_p20160518.tar.gz 7438734 BLAKE2B 3a57e5d6fafac2ca95d64d60e8d68b48177aaa0c5fd1438d0b0a133757ef95443c16324fb7effb41506f2b1eb70aab9d34845a91beef0ef81a3658444e24be07 SHA512 8d8775ba0a12735a9756b9abfd65c89519dae4e21afcaedbd18985d1c1021975b1ae909b3bef1121b707c626e1711d56f1823f3b4746eab49e8386536a5e84e6
EBUILD aegisub-3.2.2_p20160518-r102.ebuild 4135 BLAKE2B 1ec4c91862a27fd6997048724488c867d1f7ce689d71cdcb3efee366fe6e4c02de75d5f97b27f3d338c22bfad209ac3816d7de53f0e52c14def33588ddd5ce54 SHA512 50e82d347ac0171589c75c753be393bca249b14cd540b74de6573bb39dfdecdb578a2d1545f516173d334110e7df2504909bf8cee8ab5043176c0939c3bd52a0
-EBUILD aegisub-3.2.2_p20160518-r103.ebuild 4191 BLAKE2B a7de05c8fdc7a78c3d603c6224886de107289a413942ace5fb1d2d9bbcbcf7b543ad245ac62abdd0f0b0bf011a6448641da4a09b965701321ff0aaab2f61ce77 SHA512 ca8bce289fa62448dc4a19e25716dd86b7430749d5b7c595436cf3202431d95fe18c9ac7224adc43c8b73f02e6a1f4e98a2ef4c74ca3ca5e6b5bb11a33b2fbb6
+EBUILD aegisub-3.2.2_p20160518-r103.ebuild 4186 BLAKE2B cea914f1797616735c283bb31b49165482304b2cf94167ab24748a3c76ae348bb30d587aebddcc89dbf2167631cbeb48a7fd943593082b3998229e8e398513c3 SHA512 957f94884b517b490a0854f0614c46744bf26965a1a37f0068565eeccc9a485b33b2a3ed543fea71b431f2e728b9df3a984bd64159f3c3544a4d87dbc29f7128
EBUILD aegisub-9999.ebuild 2872 BLAKE2B ce61183420d6421c5f4ca0da927d766be7eec273495cac2823d69a511a1a75850d680592b6902d346da69f1b1998396bdd32cff847ee2b142e2120737110a30b SHA512 4f8ffb4fc3c95a07e1ef9f3c9d6b5f5a43f01c189a26efbcd1200d52141c93508dce31d92442617db26416b3e0ac107cf371cb7a0ae3200008cba57383b01638
MISC metadata.xml 490 BLAKE2B 1f9546d336e50825e1490d8f0b54a21c076ec000427f0c319781e702ec0a58966bd4193e26c0c7cc4e677bea67a865a9a2f040fd4f58356d8e5539c5c7592665 SHA512 7717dcf3bbe125775a8a93682cde4477294649cbd6d01dcccc132b51880d7a58a61314134cb83f7ffd43e104f4818d9d27c1b90685f988ebe78ecdd9156db9eb
diff --git a/media-video/aegisub/aegisub-3.2.2_p20160518-r103.ebuild b/media-video/aegisub/aegisub-3.2.2_p20160518-r103.ebuild
index 0ac1ff04d08e..4daeaa458b82 100644
--- a/media-video/aegisub/aegisub-3.2.2_p20160518-r103.ebuild
+++ b/media-video/aegisub/aegisub-3.2.2_p20160518-r103.ebuild
@@ -20,7 +20,7 @@ LICENSE="BSD MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="+alsa debug +fftw openal oss portaudio pulseaudio spell test +uchardet"
-RESTRICT="!test? ( test )"
+RESTRICT="test"
# aegisub bundles luabins (https://github.com/agladysh/luabins).
# Unfortunately, luabins upstream is practically dead since 2010.
@@ -29,7 +29,7 @@ RDEPEND="${LUA_DEPS}
x11-libs/wxGTK:${WX_GTK_VER}[X,opengl,debug?]
dev-libs/boost:=[icu,nls,threads(+)]
dev-libs/icu:=
- media-libs/ffmpegsource:=
+ ~media-libs/ffmpegsource-2.23:=
media-libs/fontconfig
media-libs/freetype
media-libs/libass:=[fontconfig]
diff --git a/metadata/Manifest.gz b/metadata/Manifest.gz
index 9dcf01165974..36a4ae508dd0 100644
--- a/metadata/Manifest.gz
+++ b/metadata/Manifest.gz
Binary files differ
diff --git a/metadata/dtd/timestamp.chk b/metadata/dtd/timestamp.chk
index ff901f984878..21ef0f0cad48 100644
--- a/metadata/dtd/timestamp.chk
+++ b/metadata/dtd/timestamp.chk
@@ -1 +1 @@
-Thu, 28 Jul 2022 18:39:58 +0000
+Fri, 29 Jul 2022 00:40:00 +0000
diff --git a/metadata/glsa/Manifest b/metadata/glsa/Manifest
index 3b931259b6a5..e07f2250beff 100644
--- a/metadata/glsa/Manifest
+++ b/metadata/glsa/Manifest
@@ -2,22 +2,22 @@
Hash: SHA512
MANIFEST Manifest.files.gz 518604 BLAKE2B 771190ff87bcfe6702a19150591bf573a429c51546ab7bd3ae25f101a4ec657d93d6fb83f7cb3aa4055e581eab5fde9d88a73a604dc34f426cb30ebb4385af9b SHA512 0b5d0f14e5d6ec3ff896d9d472edea00620a08f552ffc5516b0264e609527cf65471ee37a5002559add52d5c1898b2b60d48c9e97e6d2451bd84bf24fd112ab4
-TIMESTAMP 2022-07-28T18:40:01Z
+TIMESTAMP 2022-07-29T00:40:03Z
-----BEGIN PGP SIGNATURE-----
-iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmLi2AFfFIAAAAAALgAo
+iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmLjLGNfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
-klAgIw/8Cgna/U3jegDRmzguJ3hadOE2ONrmxDAQ+9lrhFoGguDYusd7bpIPyDLg
-kDppe6LTgt4AxM1Ihp+dn6xMqOHlKTVHRr7qFpbZ5y+Bwk3mMt661WYZCAQLDzAm
-efmLNUHPYnRLEVIagy/wc70Q258orQJYLq5mnTcgnO2RsDs8awDXL0ElQon29qK5
-I0WoBFvLGujGt3nmCwglfPDYlnVFO0xusMaZxyJvygjzWFPuAuJ3+w2ioszBkARS
-afHm1w2/0iXdqMlRbC5SWqepqDwiIeB60jF5hXLRZW/j9QF5sNJNzv5rQ6DEBHPW
-uNT56SPpSP6l3h7yktx4Wq+D06+Spvx6haI6nxkLO2A58QQnJTYOWbuwUk9o8RMA
-r8OxyXyDN3wU69qpN4v0fConcVcUL1mOByYMrlYlzTQw4hqfNXy5Y35NAa8QU2a3
-DD/x9bkA21b4NiGthqbcklCRFsoshb4V365vDTzbErsG1HOm8LAUvrGXkK89wi2/
-rO6P+JiFjSXu7Y5rTmPAL8iRRuU1yPZeIRFfvvPWwQEvX+01HbFz1JYf+VtlBr89
-p1Y+fNsBFt244zEJEHlB/pf8kPdAkUHi3KmU53S92ufSrHPVedr8+4oI7F4Jsfc3
-EppxjdLOUDleIwORj6Hw5ZBR9CmRoLUao2wvznJfVZgG4eN6CQM=
-=nYSV
+klAG4hAAsp4PqX8RIpVEY9P6nLPLpVsp+6ZgS6erKtT93QUc39sKUPE+rLYzeO41
+6b7nEsyqmVJu2/6vI1ZXGvcZm/jTXgCuBsIAN8CJOfrSsLNJcsVsIcw3vSN0HNOZ
+i8G+Tv0Y0ZDaaDJl4gh2KcyWIzUae3XY67hNnBLY6m2PR2UdKfrCcR600JEeQixs
+96mkQA7v6cZczjoPVVSiFwHEgYTKLaFYbMkwyJndTL6WLfUtM+MF0uCQ0ln9a0SL
+FJZOUEtL11aB7tc2EdUF2abY2d4ZB9fCC92i4E1anUJ8k0dgc0MxyjKLnjt08ri9
+eFbGveEJcfiu4BEPZtayQ0hu0WzgD5cTKkZgBIzh/COGKu8xLf4lLJOMCZykQi47
+YBIhOjME/vnduAj8PYhdCxJgeIJcarZsVMiDk29i6rOliR2tJxUDeOSoFMgBX+L8
+fyEw7DHaawUf+80L9Rf2YxE1FU97wxrKo+3b6mlBdFbBzy5xi3AC7r0RwR8qH359
+c+Xb5Ev1g9mQ4xcDrIbvbCHOu2nMnzlPerJqnEH7AKq4AHHbrLJ/0f2lXqwLbJI9
+WUBws3VqdNIG1ynyahkWMv/Tbf149zkcY1XtnfRBH6EBS0EkIP0bKlasPIRKkV5h
+mzfcLNG66B6OdL2M8gxv0SeXb3UzxYzCN4rPR+amnOxBntU2Wvw=
+=oBab
-----END PGP SIGNATURE-----
diff --git a/metadata/glsa/timestamp.chk b/metadata/glsa/timestamp.chk
index ff901f984878..21ef0f0cad48 100644
--- a/metadata/glsa/timestamp.chk
+++ b/metadata/glsa/timestamp.chk
@@ -1 +1 @@
-Thu, 28 Jul 2022 18:39:58 +0000
+Fri, 29 Jul 2022 00:40:00 +0000
diff --git a/metadata/md5-cache/Manifest.gz b/metadata/md5-cache/Manifest.gz
index 76973689eabd..65f204683dd4 100644
--- a/metadata/md5-cache/Manifest.gz
+++ b/metadata/md5-cache/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/app-admin/Manifest.gz b/metadata/md5-cache/app-admin/Manifest.gz
index 4195e951732a..236145676080 100644
--- a/metadata/md5-cache/app-admin/Manifest.gz
+++ b/metadata/md5-cache/app-admin/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/app-admin/chrpath-0.16 b/metadata/md5-cache/app-admin/chrpath-0.16
index 1564451d097d..cfdbe6e03031 100644
--- a/metadata/md5-cache/app-admin/chrpath-0.16
+++ b/metadata/md5-cache/app-admin/chrpath-0.16
@@ -5,9 +5,9 @@ EAPI=7
HOMEPAGE=https://directory.fsf.org/wiki/Chrpath
INHERIT=autotools
IUSE=static-libs
-KEYWORDS=~amd64 ~arm ~arm64 ~mips ppc ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris
+KEYWORDS=amd64 ~arm ~arm64 ~mips ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris
LICENSE=GPL-2+
SLOT=0
SRC_URI=https://alioth-archive.debian.org/releases/chrpath/chrpath/0.16/chrpath-0.16.tar.gz
_eclasses_=autotools 9e6965bfaa00f52cc61e0d4bc44c87b3 gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961
-_md5_=0a1a1b112c0d2af38a200128503cec6e
+_md5_=a06a824defcdd49c72c6216d3002ca92
diff --git a/metadata/md5-cache/app-crypt/Manifest.gz b/metadata/md5-cache/app-crypt/Manifest.gz
index 5d25a9af308e..401407c70b06 100644
--- a/metadata/md5-cache/app-crypt/Manifest.gz
+++ b/metadata/md5-cache/app-crypt/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/app-crypt/mkp224o-1.6.1 b/metadata/md5-cache/app-crypt/mkp224o-1.6.1
index e425f1bad6bf..93639101c1c9 100644
--- a/metadata/md5-cache/app-crypt/mkp224o-1.6.1
+++ b/metadata/md5-cache/app-crypt/mkp224o-1.6.1
@@ -4,9 +4,9 @@ DESCRIPTION=Vanity address generator for v3 Tor hidden service addresses
EAPI=8
HOMEPAGE=https://github.com/cathugger/mkp224o
IUSE=cpu_flags_x86_sse2 pcre2
-KEYWORDS=~amd64
+KEYWORDS=amd64
LICENSE=CC0-1.0
RDEPEND=dev-libs/libsodium:= pcre2? ( dev-libs/libpcre2:= )
SLOT=0
SRC_URI=https://github.com/cathugger/mkp224o/releases/download/v1.6.1/mkp224o-1.6.1-src.tar.gz
-_md5_=4a471d87eb9c05b1bc03346a9bbacb06
+_md5_=a7347fa82dd65061c3b322edda5a780e
diff --git a/metadata/md5-cache/app-editors/Manifest.gz b/metadata/md5-cache/app-editors/Manifest.gz
index eaa247c425cb..33f3d98ec407 100644
--- a/metadata/md5-cache/app-editors/Manifest.gz
+++ b/metadata/md5-cache/app-editors/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/app-editors/nano-6.3 b/metadata/md5-cache/app-editors/nano-6.3
index a23221378a71..079178099c9b 100644
--- a/metadata/md5-cache/app-editors/nano-6.3
+++ b/metadata/md5-cache/app-editors/nano-6.3
@@ -6,11 +6,11 @@ EAPI=8
HOMEPAGE=https://www.nano-editor.org/ https://wiki.gentoo.org/wiki/Nano/Basics_Guide
INHERIT=flag-o-matic
IUSE=debug justify magic minimal ncurses nls +spell +split-usr static unicode
-KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris
+KEYWORDS=~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris
LICENSE=GPL-3
RDEPEND=!static? ( >=sys-libs/ncurses-5.9-r1:=[unicode(+)?] sys-libs/ncurses:= magic? ( sys-apps/file ) nls? ( virtual/libintl ) )
REQUIRED_USE=magic? ( !minimal )
SLOT=0
SRC_URI=https://www.nano-editor.org/dist/v6/nano-6.3.tar.xz
_eclasses_=flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961
-_md5_=0a860f5bd0357f8e43ef0a23166b75eb
+_md5_=3f09f7b112cea11014d8424aa5890686
diff --git a/metadata/md5-cache/app-emulation/Manifest.gz b/metadata/md5-cache/app-emulation/Manifest.gz
index 0b42cf21ceba..cf7c8615e88e 100644
--- a/metadata/md5-cache/app-emulation/Manifest.gz
+++ b/metadata/md5-cache/app-emulation/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/app-emulation/wine-staging-7.13-r1 b/metadata/md5-cache/app-emulation/wine-staging-7.13-r1
new file mode 100644
index 000000000000..c6da3f1b66e4
--- /dev/null
+++ b/metadata/md5-cache/app-emulation/wine-staging-7.13-r1
@@ -0,0 +1,17 @@
+BDEPEND=sys-devel/flex virtual/yacc virtual/pkgconfig mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) sys-devel/gnuconfig >=app-portage/elt-patches-20170815 || ( >=sys-devel/automake-1.16.5:1.16 ) >=sys-devel/autoconf-2.71 >=sys-devel/libtool-2.4 test? ( x11-base/xorg-server[xvfb] x11-apps/xhost )
+DEFINED_PHASES=compile configure install postinst postrm prepare prerm pretend setup test unpack
+DEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) staging? ( sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sys-devel/flex virtual/yacc virtual/pkgconfig mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) >=sys-kernel/linux-headers-2.6 X? ( x11-base/xorg-proto ) staging? ( dev-lang/perl dev-perl/XML-Simple ) xinerama? ( x11-base/xorg-proto )
+DESCRIPTION=Free implementation of Windows(tm) on Unix, with Wine-Staging patchset
+EAPI=8
+HOMEPAGE=https://www.winehq.org/
+INHERIT=autotools estack flag-o-matic multilib-minimal pax-utils plocale toolchain-funcs virtualx wrapper xdg-utils
+IUSE=+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64 test
+KEYWORDS=-* ~amd64 ~x86
+LICENSE=LGPL-2.1
+RDEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) staging? ( sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) app-emulation/wine-desktop-common >app-eselect/eselect-wine-0.3 dos? ( >=games-emulation/dosbox-0.74_p20160629 ) gecko? ( app-emulation/wine-gecko:2.47.2[abi_x86_32?,abi_x86_64?] ) mono? ( app-emulation/wine-mono:7.3.0 ) perl? ( dev-lang/perl dev-perl/XML-Simple ) pulseaudio? ( realtime? ( sys-auth/rtkit ) ) samba? ( >=net-fs/samba-3.0.25[winbind] ) selinux? ( sec-policy/selinux-wine ) udisks? ( sys-fs/udisks:2 )
+REQUIRED_USE=|| ( abi_x86_32 abi_x86_64 ) X? ( truetype ) crossdev-mingw? ( mingw ) elibc_glibc? ( threads ) osmesa? ( opengl ) pipelight? ( staging ) test? ( abi_x86_32 )
+RESTRICT=test !test? ( test )
+SLOT=7.13
+SRC_URI=https://dl.winehq.org/wine/source/7.x/wine-7.13.tar.xz https://dev.gentoo.org/~sarnex/distfiles/wine/gentoo-wine-patches-20211122.tar.xz staging? ( https://github.com/wine-staging/wine-staging/archive/v7.13.tar.gz -> wine-staging-7.13.tar.gz )
+_eclasses_=autotools 9e6965bfaa00f52cc61e0d4bc44c87b3 estack 055c42df72f76a4f45ec92b35e83cd56 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e multibuild d26d81f242cb193d899a72bca423d0bd multilib 5ca4e49abed8e3a2f7b56920eadee157 multilib-build 05f207909a804c9174bc39a00547d598 multilib-minimal 4b0f1857965db8869a729948d5277e0b pax-utils 91d47e5d20627c717aa878b9167c62a8 plocale 7ce00136a77130df46fbbd5966f98a61 toolchain-funcs 1542e649be915f43f6908a9e93909961 virtualx 975d49ff3b3f451efe7a95f230532135 wrapper 4a1902f969e5718126434fc35f3a0d9c xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
+_md5_=45230993f4e1ebac4cf42164d72b6905
diff --git a/metadata/md5-cache/app-emulation/wine-staging-9999 b/metadata/md5-cache/app-emulation/wine-staging-9999
index 59428a227a9b..fbaa583e4cc5 100644
--- a/metadata/md5-cache/app-emulation/wine-staging-9999
+++ b/metadata/md5-cache/app-emulation/wine-staging-9999
@@ -1,17 +1,17 @@
BDEPEND=sys-devel/flex virtual/yacc virtual/pkgconfig mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) sys-devel/gnuconfig >=app-portage/elt-patches-20170815 || ( >=sys-devel/automake-1.16.5:1.16 ) >=sys-devel/autoconf-2.71 >=sys-devel/libtool-2.4 test? ( x11-base/xorg-server[xvfb] x11-apps/xhost ) >=dev-vcs/git-1.8.2.1[curl]
DEFINED_PHASES=compile configure install postinst postrm prepare prerm pretend setup test unpack
-DEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gssapi? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) staging? ( sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sys-devel/flex virtual/yacc virtual/pkgconfig mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) >=sys-kernel/linux-headers-2.6 X? ( x11-base/xorg-proto ) staging? ( dev-lang/perl dev-perl/XML-Simple ) xinerama? ( x11-base/xorg-proto ) dev-util/patchbin
+DEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) staging? ( sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sys-devel/flex virtual/yacc virtual/pkgconfig mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) >=sys-kernel/linux-headers-2.6 X? ( x11-base/xorg-proto ) staging? ( dev-lang/perl dev-perl/XML-Simple ) xinerama? ( x11-base/xorg-proto ) dev-util/patchbin
DESCRIPTION=Free implementation of Windows(tm) on Unix, with Wine-Staging patchset
EAPI=8
HOMEPAGE=https://www.winehq.org/
INHERIT=autotools estack flag-o-matic multilib-minimal pax-utils plocale toolchain-funcs virtualx wrapper xdg-utils git-r3
-IUSE=+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gssapi gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64 test
+IUSE=+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64 test
LICENSE=LGPL-2.1
PROPERTIES=live
-RDEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gssapi? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) staging? ( sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) app-emulation/wine-desktop-common >app-eselect/eselect-wine-0.3 dos? ( >=games-emulation/dosbox-0.74_p20160629 ) gecko? ( app-emulation/wine-gecko:2.47.2[abi_x86_32?,abi_x86_64?] ) mono? ( app-emulation/wine-mono:7.3.0 ) perl? ( dev-lang/perl dev-perl/XML-Simple ) pulseaudio? ( realtime? ( sys-auth/rtkit ) ) samba? ( >=net-fs/samba-3.0.25[winbind] ) selinux? ( sec-policy/selinux-wine ) udisks? ( sys-fs/udisks:2 )
+RDEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) staging? ( sys-apps/attr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) app-emulation/wine-desktop-common >app-eselect/eselect-wine-0.3 dos? ( >=games-emulation/dosbox-0.74_p20160629 ) gecko? ( app-emulation/wine-gecko:2.47.2[abi_x86_32?,abi_x86_64?] ) mono? ( app-emulation/wine-mono:7.3.0 ) perl? ( dev-lang/perl dev-perl/XML-Simple ) pulseaudio? ( realtime? ( sys-auth/rtkit ) ) samba? ( >=net-fs/samba-3.0.25[winbind] ) selinux? ( sec-policy/selinux-wine ) udisks? ( sys-fs/udisks:2 )
REQUIRED_USE=|| ( abi_x86_32 abi_x86_64 ) X? ( truetype ) crossdev-mingw? ( mingw ) elibc_glibc? ( threads ) osmesa? ( opengl ) pipelight? ( staging ) test? ( abi_x86_32 )
RESTRICT=test !test? ( test )
SLOT=9999
SRC_URI=https://dev.gentoo.org/~sarnex/distfiles/wine/gentoo-wine-patches-20211122.tar.xz
_eclasses_=autotools 9e6965bfaa00f52cc61e0d4bc44c87b3 estack 055c42df72f76a4f45ec92b35e83cd56 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 git-r3 b9ac6f96d2a88edb5b351df634dc5e53 gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e multibuild d26d81f242cb193d899a72bca423d0bd multilib 5ca4e49abed8e3a2f7b56920eadee157 multilib-build 05f207909a804c9174bc39a00547d598 multilib-minimal 4b0f1857965db8869a729948d5277e0b pax-utils 91d47e5d20627c717aa878b9167c62a8 plocale 7ce00136a77130df46fbbd5966f98a61 toolchain-funcs 1542e649be915f43f6908a9e93909961 virtualx 975d49ff3b3f451efe7a95f230532135 wrapper 4a1902f969e5718126434fc35f3a0d9c xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=68d538f4b0a4f2687f5eab1adf7e9e32
+_md5_=45230993f4e1ebac4cf42164d72b6905
diff --git a/metadata/md5-cache/app-emulation/wine-vanilla-7.13-r1 b/metadata/md5-cache/app-emulation/wine-vanilla-7.13-r1
new file mode 100644
index 000000000000..e411283f7be4
--- /dev/null
+++ b/metadata/md5-cache/app-emulation/wine-vanilla-7.13-r1
@@ -0,0 +1,17 @@
+BDEPEND=sys-devel/flex virtual/yacc virtual/pkgconfig mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) sys-devel/gnuconfig >=app-portage/elt-patches-20170815 || ( >=sys-devel/automake-1.16.5:1.16 ) >=sys-devel/autoconf-2.71 >=sys-devel/libtool-2.4 test? ( x11-base/xorg-server[xvfb] x11-apps/xhost )
+DEFINED_PHASES=compile configure install postinst postrm prepare prerm pretend setup test unpack
+DEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sys-devel/flex virtual/yacc virtual/pkgconfig mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) >=sys-kernel/linux-headers-2.6 X? ( x11-base/xorg-proto ) xinerama? ( x11-base/xorg-proto )
+DESCRIPTION=Free implementation of Windows(tm) on Unix, without external patchsets
+EAPI=8
+HOMEPAGE=https://www.winehq.org/
+INHERIT=autotools estack flag-o-matic multilib-minimal pax-utils plocale toolchain-funcs virtualx wrapper xdg-utils
+IUSE=+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64 test
+KEYWORDS=-* ~amd64 ~x86
+LICENSE=LGPL-2.1
+RDEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) app-emulation/wine-desktop-common >app-eselect/eselect-wine-0.3 dos? ( >=games-emulation/dosbox-0.74_p20160629 ) gecko? ( app-emulation/wine-gecko:2.47.2[abi_x86_32?,abi_x86_64?] ) mono? ( app-emulation/wine-mono:7.3.0 ) perl? ( dev-lang/perl dev-perl/XML-Simple ) pulseaudio? ( realtime? ( sys-auth/rtkit ) ) samba? ( >=net-fs/samba-3.0.25[winbind] ) selinux? ( sec-policy/selinux-wine ) udisks? ( sys-fs/udisks:2 )
+REQUIRED_USE=|| ( abi_x86_32 abi_x86_64 ) X? ( truetype ) crossdev-mingw? ( mingw ) elibc_glibc? ( threads ) osmesa? ( opengl ) test? ( abi_x86_32 )
+RESTRICT=test !test? ( test )
+SLOT=7.13
+SRC_URI=https://dl.winehq.org/wine/source/7.x/wine-7.13.tar.xz https://dev.gentoo.org/~sarnex/distfiles/wine/gentoo-wine-patches-20211122.tar.xz
+_eclasses_=autotools 9e6965bfaa00f52cc61e0d4bc44c87b3 estack 055c42df72f76a4f45ec92b35e83cd56 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e multibuild d26d81f242cb193d899a72bca423d0bd multilib 5ca4e49abed8e3a2f7b56920eadee157 multilib-build 05f207909a804c9174bc39a00547d598 multilib-minimal 4b0f1857965db8869a729948d5277e0b pax-utils 91d47e5d20627c717aa878b9167c62a8 plocale 7ce00136a77130df46fbbd5966f98a61 toolchain-funcs 1542e649be915f43f6908a9e93909961 virtualx 975d49ff3b3f451efe7a95f230532135 wrapper 4a1902f969e5718126434fc35f3a0d9c xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
+_md5_=8521fffc1db0a4ff6009811f26cfc207
diff --git a/metadata/md5-cache/app-emulation/wine-vanilla-9999 b/metadata/md5-cache/app-emulation/wine-vanilla-9999
index 115bf315e447..fdcff7cb4d90 100644
--- a/metadata/md5-cache/app-emulation/wine-vanilla-9999
+++ b/metadata/md5-cache/app-emulation/wine-vanilla-9999
@@ -1,17 +1,17 @@
BDEPEND=sys-devel/flex virtual/yacc virtual/pkgconfig mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) sys-devel/gnuconfig >=app-portage/elt-patches-20170815 || ( >=sys-devel/automake-1.16.5:1.16 ) >=sys-devel/autoconf-2.71 >=sys-devel/libtool-2.4 test? ( x11-base/xorg-server[xvfb] x11-apps/xhost ) >=dev-vcs/git-1.8.2.1[curl]
DEFINED_PHASES=compile configure install postinst postrm prepare prerm pretend setup test unpack
-DEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gssapi? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sys-devel/flex virtual/yacc virtual/pkgconfig mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) >=sys-kernel/linux-headers-2.6 X? ( x11-base/xorg-proto ) xinerama? ( x11-base/xorg-proto ) dev-util/patchbin
+DEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sys-devel/flex virtual/yacc virtual/pkgconfig mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) >=sys-kernel/linux-headers-2.6 X? ( x11-base/xorg-proto ) xinerama? ( x11-base/xorg-proto ) dev-util/patchbin
DESCRIPTION=Free implementation of Windows(tm) on Unix, without external patchsets
EAPI=8
HOMEPAGE=https://www.winehq.org/
INHERIT=autotools estack flag-o-matic multilib-minimal pax-utils plocale toolchain-funcs virtualx wrapper xdg-utils git-r3
-IUSE=+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gssapi gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64 test
+IUSE=+abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups custom-cflags dos +fontconfig +gecko gphoto2 gstreamer kerberos ldap mingw +mono mp3 netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks +unwind usb v4l vulkan +X +xcomposite xinerama abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64 test
LICENSE=LGPL-2.1
PROPERTIES=live
-RDEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gssapi? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) app-emulation/wine-desktop-common >app-eselect/eselect-wine-0.3 dos? ( >=games-emulation/dosbox-0.74_p20160629 ) gecko? ( app-emulation/wine-gecko:2.47.2[abi_x86_32?,abi_x86_64?] ) mono? ( app-emulation/wine-mono:7.3.0 ) perl? ( dev-lang/perl dev-perl/XML-Simple ) pulseaudio? ( realtime? ( sys-auth/rtkit ) ) samba? ( >=net-fs/samba-3.0.25[winbind] ) selinux? ( sec-policy/selinux-wine ) udisks? ( sys-fs/udisks:2 )
+RDEPEND=X? ( x11-libs/libXcursor[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXfixes[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXrandr[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] x11-libs/libXxf86vm[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) alsa? ( media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) capi? ( net-libs/libcapi[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) cups? ( net-print/cups:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) fontconfig? ( media-libs/fontconfig:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gphoto2? ( media-libs/libgphoto2:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/libjpeg-turbo:0=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) gstreamer? ( media-libs/gstreamer:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-plugins/gst-plugins-meta:1.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) kerberos? ( virtual/krb5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ldap? ( net-nds/openldap:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) netapi? ( net-fs/samba[netapi(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) nls? ( sys-devel/gettext[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) odbc? ( dev-db/unixODBC:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) openal? ( media-libs/openal:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opencl? ( virtual/opencl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( virtual/opengl[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) osmesa? ( >=media-libs/mesa-13[osmesa,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pcap? ( net-libs/libpcap[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) pulseaudio? ( media-sound/pulseaudio[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) scanner? ( media-gfx/sane-backends:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl? ( media-libs/libsdl2:=[haptic,joystick,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ssl? ( net-libs/gnutls:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) truetype? ( >=media-libs/freetype-2.0.0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udev? ( virtual/libudev:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) udisks? ( sys-apps/dbus[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) unwind? ( sys-libs/libunwind[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) usb? ( virtual/libusb:1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) v4l? ( media-libs/libv4l[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xcomposite? ( x11-libs/libXcomposite[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) xinerama? ( x11-libs/libXinerama[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) app-emulation/wine-desktop-common >app-eselect/eselect-wine-0.3 dos? ( >=games-emulation/dosbox-0.74_p20160629 ) gecko? ( app-emulation/wine-gecko:2.47.2[abi_x86_32?,abi_x86_64?] ) mono? ( app-emulation/wine-mono:7.3.0 ) perl? ( dev-lang/perl dev-perl/XML-Simple ) pulseaudio? ( realtime? ( sys-auth/rtkit ) ) samba? ( >=net-fs/samba-3.0.25[winbind] ) selinux? ( sec-policy/selinux-wine ) udisks? ( sys-fs/udisks:2 )
REQUIRED_USE=|| ( abi_x86_32 abi_x86_64 ) X? ( truetype ) crossdev-mingw? ( mingw ) elibc_glibc? ( threads ) osmesa? ( opengl ) test? ( abi_x86_32 )
RESTRICT=test !test? ( test )
SLOT=9999
SRC_URI=https://dev.gentoo.org/~sarnex/distfiles/wine/gentoo-wine-patches-20211122.tar.xz
_eclasses_=autotools 9e6965bfaa00f52cc61e0d4bc44c87b3 estack 055c42df72f76a4f45ec92b35e83cd56 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 git-r3 b9ac6f96d2a88edb5b351df634dc5e53 gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e multibuild d26d81f242cb193d899a72bca423d0bd multilib 5ca4e49abed8e3a2f7b56920eadee157 multilib-build 05f207909a804c9174bc39a00547d598 multilib-minimal 4b0f1857965db8869a729948d5277e0b pax-utils 91d47e5d20627c717aa878b9167c62a8 plocale 7ce00136a77130df46fbbd5966f98a61 toolchain-funcs 1542e649be915f43f6908a9e93909961 virtualx 975d49ff3b3f451efe7a95f230532135 wrapper 4a1902f969e5718126434fc35f3a0d9c xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=74e1d9847e5156f582375a637a2ae0fb
+_md5_=8521fffc1db0a4ff6009811f26cfc207
diff --git a/metadata/md5-cache/app-i18n/Manifest.gz b/metadata/md5-cache/app-i18n/Manifest.gz
index 7f9092fc5da5..ab9031284cdf 100644
--- a/metadata/md5-cache/app-i18n/Manifest.gz
+++ b/metadata/md5-cache/app-i18n/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/app-i18n/man-pages-l10n-4.14.0 b/metadata/md5-cache/app-i18n/man-pages-l10n-4.14.0
index ec064564d3e8..456c32eb10ce 100644
--- a/metadata/md5-cache/app-i18n/man-pages-l10n-4.14.0
+++ b/metadata/md5-cache/app-i18n/man-pages-l10n-4.14.0
@@ -4,10 +4,10 @@ DESCRIPTION=A somewhat comprehensive collection of man page translations
EAPI=7
HOMEPAGE=https://manpages-l10n-team.pages.debian.net/manpages-l10n/
IUSE=l10n_cs l10n_da l10n_de l10n_el l10n_es l10n_fi l10n_fr l10n_hu l10n_id l10n_it l10n_mk l10n_nb l10n_nl l10n_pl l10n_pt-BR l10n_ro l10n_sr l10n_sv l10n_uk l10n_vi
-KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux
+KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux
LICENSE=GPL-3+
RDEPEND=virtual/man l10n_de? ( !app-i18n/man-pages-de ) l10n_fr? ( !app-i18n/man-pages-fr ) l10n_it? ( !app-i18n/man-pages-it ) l10n_nl? ( !app-i18n/man-pages-nl ) l10n_pl? ( !app-i18n/man-pages-pl )
REQUIRED_USE=|| ( l10n_cs l10n_da l10n_de l10n_el l10n_es l10n_fi l10n_fr l10n_hu l10n_id l10n_it l10n_mk l10n_nb l10n_nl l10n_pl l10n_pt-BR l10n_ro l10n_sr l10n_sv l10n_uk l10n_vi )
SLOT=0
SRC_URI=https://salsa.debian.org/manpages-l10n-team/manpages-l10n/-/archive/4.14.0/manpages-l10n-4.14.0.tar.bz2
-_md5_=2507f85d443dbd02173a02f8fd438790
+_md5_=319a9bff50507d36c00ddbf84ec77b1f
diff --git a/metadata/md5-cache/app-misc/Manifest.gz b/metadata/md5-cache/app-misc/Manifest.gz
index 81dab63dd3c4..2549b6361ea6 100644
--- a/metadata/md5-cache/app-misc/Manifest.gz
+++ b/metadata/md5-cache/app-misc/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/app-misc/pdfpc-4.5.0-r1 b/metadata/md5-cache/app-misc/pdfpc-4.5.0-r1
index d8f5475cf3dc..7b6dd5d05212 100644
--- a/metadata/md5-cache/app-misc/pdfpc-4.5.0-r1
+++ b/metadata/md5-cache/app-misc/pdfpc-4.5.0-r1
@@ -6,10 +6,10 @@ EAPI=8
HOMEPAGE=https://pdfpc.github.io https://github.com/pdfpc/pdfpc
INHERIT=cmake vala
IUSE=+gstreamer
-KEYWORDS=~amd64 ~x86
+KEYWORDS=amd64 x86
LICENSE=GPL-3+
RDEPEND=app-text/discount app-text/poppler:=[cairo] dev-libs/glib:2 dev-libs/json-glib dev-libs/libgee:0.8= gnome-base/librsvg net-libs/webkit-gtk:4= x11-libs/cairo x11-libs/gdk-pixbuf:2 x11-libs/gtk+:3 x11-libs/libX11 x11-libs/pango gstreamer? ( media-libs/gstreamer:1.0 media-libs/gst-plugins-base:1.0 media-plugins/gst-plugins-gtk:1.0= media-plugins/gst-plugins-cairo:1.0= )
SLOT=0
SRC_URI=https://github.com/pdfpc/pdfpc/archive/v4.5.0.tar.gz -> pdfpc-4.5.0.tar.gz
_eclasses_=cmake 44afbf15c35884f7c840470f1cf05d0d flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 ninja-utils 58ec4e54962bf45d065fb95030701514 toolchain-funcs 1542e649be915f43f6908a9e93909961 vala 1c07e7167d9ef851ad187f5f3f02d34d xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=e99107f4d81617512dc119c3c99218ed
+_md5_=554c704ee5c2a75532339b55bf94b305
diff --git a/metadata/md5-cache/dev-libs/Manifest.gz b/metadata/md5-cache/dev-libs/Manifest.gz
index dd3ae349903f..c9d673d48e54 100644
--- a/metadata/md5-cache/dev-libs/Manifest.gz
+++ b/metadata/md5-cache/dev-libs/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/dev-libs/miniz-2.1.0-r3 b/metadata/md5-cache/dev-libs/miniz-2.1.0-r3
deleted file mode 100644
index d692f700d8a4..000000000000
--- a/metadata/md5-cache/dev-libs/miniz-2.1.0-r3
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=>=dev-util/ninja-1.8.2 >=dev-util/cmake-3.20.5
-DEFINED_PHASES=compile configure install prepare test
-DESCRIPTION=A lossless, high performance data compression library
-EAPI=7
-HOMEPAGE=https://github.com/richgel999/miniz
-INHERIT=cmake
-KEYWORDS=amd64 ~x86
-LICENSE=MIT
-SLOT=0/2.1.0
-SRC_URI=https://github.com/richgel999/miniz/archive/2.1.0.tar.gz -> miniz-2.1.0.tar.gz
-_eclasses_=cmake 44afbf15c35884f7c840470f1cf05d0d edos2unix 33e347e171066657f91f8b0c72ec8773 eutils 8f942ebdcf04334697649d4a0bf65a32 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 ninja-utils 58ec4e54962bf45d065fb95030701514 strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 toolchain-funcs 1542e649be915f43f6908a9e93909961 wrapper 4a1902f969e5718126434fc35f3a0d9c xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=855fee5410c214087ea02bd1fe319d18
diff --git a/metadata/md5-cache/dev-libs/miniz-2.2.0 b/metadata/md5-cache/dev-libs/miniz-2.2.0
deleted file mode 100644
index e53942383fb1..000000000000
--- a/metadata/md5-cache/dev-libs/miniz-2.2.0
+++ /dev/null
@@ -1,12 +0,0 @@
-BDEPEND=>=dev-util/ninja-1.8.2 >=dev-util/cmake-3.20.5
-DEFINED_PHASES=compile configure install prepare test
-DESCRIPTION=A lossless, high performance data compression library
-EAPI=8
-HOMEPAGE=https://github.com/richgel999/miniz
-INHERIT=cmake
-KEYWORDS=~amd64 ~x86
-LICENSE=MIT
-SLOT=0/2.2.0
-SRC_URI=https://github.com/richgel999/miniz/archive/2.2.0.tar.gz -> miniz-2.2.0.tar.gz
-_eclasses_=cmake 44afbf15c35884f7c840470f1cf05d0d flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 ninja-utils 58ec4e54962bf45d065fb95030701514 toolchain-funcs 1542e649be915f43f6908a9e93909961 xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=f34f1755d136baf5bd5e9031b737c43b
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-0.20.0 b/metadata/md5-cache/dev-libs/tree-sitter-0.20.0
deleted file mode 100644
index 523e8e40f003..000000000000
--- a/metadata/md5-cache/dev-libs/tree-sitter-0.20.0
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=install prepare
-DESCRIPTION=Tree-sitter is a parser generator tool and an incremental parsing library
-EAPI=7
-HOMEPAGE=https://github.com/tree-sitter/tree-sitter
-INHERIT=toolchain-funcs
-KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86
-LICENSE=MIT
-SLOT=0
-SRC_URI=https://github.com/tree-sitter/tree-sitter/archive/v0.20.0.tar.gz -> tree-sitter-0.20.0.tar.gz
-_eclasses_=multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961
-_md5_=e4f85c986eb8be3b9e021080cdf97bf6
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-0.20.2-r1 b/metadata/md5-cache/dev-libs/tree-sitter-0.20.2-r1
deleted file mode 100644
index 7581ec618b22..000000000000
--- a/metadata/md5-cache/dev-libs/tree-sitter-0.20.2-r1
+++ /dev/null
@@ -1,11 +0,0 @@
-DEFINED_PHASES=install postinst prepare
-DESCRIPTION=Tree-sitter is a parser generator tool and an incremental parsing library
-EAPI=8
-HOMEPAGE=https://github.com/tree-sitter/tree-sitter
-INHERIT=optfeature toolchain-funcs
-KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86
-LICENSE=MIT
-SLOT=0
-SRC_URI=https://github.com/tree-sitter/tree-sitter/archive/refs/tags/v0.20.2.tar.gz -> tree-sitter-0.20.2.tar.gz
-_eclasses_=multilib 5ca4e49abed8e3a2f7b56920eadee157 optfeature 1a2157392a869265b2afcb63a26c12ac toolchain-funcs 1542e649be915f43f6908a9e93909961
-_md5_=8a69342da7c2d44886e3582d55daaabf
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-0.20.6 b/metadata/md5-cache/dev-libs/tree-sitter-0.20.6
index ef3468d933b4..5ffdc847137a 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-0.20.6
+++ b/metadata/md5-cache/dev-libs/tree-sitter-0.20.6
@@ -1,11 +1,11 @@
-DEFINED_PHASES=install postinst prepare
+DEFINED_PHASES=compile install postinst prepare
DESCRIPTION=Tree-sitter is a parser generator tool and an incremental parsing library
EAPI=8
HOMEPAGE=https://github.com/tree-sitter/tree-sitter
INHERIT=optfeature toolchain-funcs
-KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86
+KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter/archive/refs/tags/v0.20.6.tar.gz -> tree-sitter-0.20.6.tar.gz
_eclasses_=multilib 5ca4e49abed8e3a2f7b56920eadee157 optfeature 1a2157392a869265b2afcb63a26c12ac toolchain-funcs 1542e649be915f43f6908a9e93909961
-_md5_=b4969d0d53889c03796df9fecd62484d
+_md5_=f7470be8af1950ae5b1b37ea1a64c9f8
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-9999 b/metadata/md5-cache/dev-libs/tree-sitter-9999
index d9cacdbd5b1e..9d6ad87c0137 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-9999
+++ b/metadata/md5-cache/dev-libs/tree-sitter-9999
@@ -1,5 +1,5 @@
BDEPEND=>=dev-vcs/git-1.8.2.1[curl]
-DEFINED_PHASES=install postinst prepare unpack
+DEFINED_PHASES=compile install postinst prepare unpack
DESCRIPTION=Tree-sitter is a parser generator tool and an incremental parsing library
EAPI=8
HOMEPAGE=https://github.com/tree-sitter/tree-sitter
@@ -8,4 +8,4 @@ LICENSE=MIT
PROPERTIES=live
SLOT=0
_eclasses_=git-r3 b9ac6f96d2a88edb5b351df634dc5e53 multilib 5ca4e49abed8e3a2f7b56920eadee157 optfeature 1a2157392a869265b2afcb63a26c12ac toolchain-funcs 1542e649be915f43f6908a9e93909961
-_md5_=07cbd9a14ca3a13160592645a44b638e
+_md5_=677ea37e99ecc083f98d923d3ccb40d9
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-bash-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-bash-0.19.0
index 1db1e0d79c99..48e25a982ef4 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-bash-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-bash-0.19.0
@@ -4,9 +4,9 @@ DESCRIPTION=Bash grammar for Tree-sitter
EAPI=8
HOMEPAGE=https://github.com/tree-sitter/tree-sitter-bash
INHERIT=tree-sitter-grammar
-KEYWORDS=amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86
+KEYWORDS=amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-bash/archive/v0.19.0.tar.gz -> tree-sitter-bash-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
-_md5_=bd079f8013044174b29fdf71aa8350cb
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
+_md5_=e63cd27fa836cc337c3fa65a2bb4fd39
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-c-0.20.1 b/metadata/md5-cache/dev-libs/tree-sitter-c-0.20.1
index 941f708cfe7a..dc4a24c2e8be 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-c-0.20.1
+++ b/metadata/md5-cache/dev-libs/tree-sitter-c-0.20.1
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-c/archive/v0.20.1.tar.gz -> tree-sitter-c-0.20.1.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=91765889d4c1c28d6adfbcbf22b14031
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-c-sharp-0.19.1 b/metadata/md5-cache/dev-libs/tree-sitter-c-sharp-0.19.1
index 1aa3e841bf2b..cf5b6818a1ce 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-c-sharp-0.19.1
+++ b/metadata/md5-cache/dev-libs/tree-sitter-c-sharp-0.19.1
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-c-sharp/archive/v0.19.1.tar.gz -> tree-sitter-c-sharp-0.19.1.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=17db7618b35eeddc8b6baff34a905aa2
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-cpp-0.20.0 b/metadata/md5-cache/dev-libs/tree-sitter-cpp-0.20.0
index 0905ba2409e5..cd302ef6bdd5 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-cpp-0.20.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-cpp-0.20.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-cpp/archive/v0.20.0.tar.gz -> tree-sitter-cpp-0.20.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=55ddbdb15dfc6936e48a9806552a55aa
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-css-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-css-0.19.0
index fd6c961c1967..80555d79c0b0 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-css-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-css-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-css/archive/v0.19.0.tar.gz -> tree-sitter-css-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=cff8fba25a235538f167cc21a603a4fa
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-embedded-template-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-embedded-template-0.19.0
index bcc06356d9be..8b41b5f75f24 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-embedded-template-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-embedded-template-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-embedded-template/archive/v0.19.0.tar.gz -> tree-sitter-embedded-template-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=4e3b93c9b375d5f57f4245306352cfa9
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-go-0.19.1 b/metadata/md5-cache/dev-libs/tree-sitter-go-0.19.1
index f230704f049b..75c8bccdd8fe 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-go-0.19.1
+++ b/metadata/md5-cache/dev-libs/tree-sitter-go-0.19.1
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-go/archive/rust-0.19.1.tar.gz -> tree-sitter-go-0.19.1.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=23acbd29a27f3bf43befd4b49cc72f50
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-haskell-0.13.0_p20211114 b/metadata/md5-cache/dev-libs/tree-sitter-haskell-0.13.0_p20211114
index b9467e3ac6e9..2c1f13ae9a41 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-haskell-0.13.0_p20211114
+++ b/metadata/md5-cache/dev-libs/tree-sitter-haskell-0.13.0_p20211114
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-haskell/archive/d72f2e42c0d5ccf8e8b1c39e3642428317e8fe02.tar.gz -> tree-sitter-haskell-0.13.0_p20211114.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=3c210c5ee6b4fcbb1e9b4cb20a1b7296
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-html-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-html-0.19.0
index 2f3f9440dded..bcde68fbf538 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-html-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-html-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-html/archive/v0.19.0.tar.gz -> tree-sitter-html-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=963675f7d47a8d3205825af45bbf510b
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-java-0.19.1 b/metadata/md5-cache/dev-libs/tree-sitter-java-0.19.1
index f43ea3bdb052..f8a429ee8e21 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-java-0.19.1
+++ b/metadata/md5-cache/dev-libs/tree-sitter-java-0.19.1
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-java/archive/v0.19.1.tar.gz -> tree-sitter-java-0.19.1.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=0d6302ae7fcb2ec8f431baa9c5a5e5dc
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-javascript-0.20.0 b/metadata/md5-cache/dev-libs/tree-sitter-javascript-0.20.0
index 278ebdd919d6..6754d3ef554c 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-javascript-0.20.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-javascript-0.20.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-javascript/archive/rust-0.20.0.tar.gz -> tree-sitter-javascript-0.20.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=0c3064630953cd34497dcda6dfc6a650
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-jsdoc-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-jsdoc-0.19.0
index 5579ca8840a1..0c0c84524f5c 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-jsdoc-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-jsdoc-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-jsdoc/archive/v0.19.0.tar.gz -> tree-sitter-jsdoc-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=8c506ccf738b09a4461eba758aac292c
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-json-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-json-0.19.0
index fc81f147c772..71b233b45f1f 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-json-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-json-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-json/archive/v0.19.0.tar.gz -> tree-sitter-json-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=e35e5ffe02b5b9ef49e17d3e19e25bb0
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-julia-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-julia-0.19.0
index 875259a0d10c..e062ba33cec3 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-julia-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-julia-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-julia/archive/v0.19.0.tar.gz -> tree-sitter-julia-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=6ff02d88437f2e83cbf83c335dde2267
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-ocaml-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-ocaml-0.19.0
index 7bbc30c50765..1cbc577eb033 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-ocaml-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-ocaml-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-ocaml/archive/v0.19.0.tar.gz -> tree-sitter-ocaml-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=dff104e3037f5a91f8ffb133af5b4671
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-php-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-php-0.19.0
index 0f1453abe111..2e4a3e561645 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-php-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-php-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-php/archive/v0.19.0.tar.gz -> tree-sitter-php-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=b965b5e3120f65200314c368964a9420
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-python-0.19.1_p20211112 b/metadata/md5-cache/dev-libs/tree-sitter-python-0.19.1_p20211112
index 9cbdfe8fdb2d..63666123419a 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-python-0.19.1_p20211112
+++ b/metadata/md5-cache/dev-libs/tree-sitter-python-0.19.1_p20211112
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-python/archive/24b530ca158d2782ea9046e756057a412e16b52f.tar.gz -> tree-sitter-python-0.19.1_p20211112.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=fb3ac12191efe4abd703775f8c1f0ac4
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-python-0.20.0 b/metadata/md5-cache/dev-libs/tree-sitter-python-0.20.0
index 892dbd612334..862c292bec12 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-python-0.20.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-python-0.20.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-python/archive/v0.20.0.tar.gz -> tree-sitter-python-0.20.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=2a54e74dc69b0bea5f46546af0c09922
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-ql-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-ql-0.19.0
index 442cdbfeaf52..71ab83c4f411 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-ql-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-ql-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-ql/archive/v0.19.0.tar.gz -> tree-sitter-ql-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=1a5d5558aa9dc2eafb47463968a66156
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-regex-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-regex-0.19.0
index 338f34290456..1ffc0a07fa57 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-regex-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-regex-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-regex/archive/v0.19.0.tar.gz -> tree-sitter-regex-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=8a29e39bc6f02bf7c1f9973fc8debf94
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-ruby-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-ruby-0.19.0
index cbd7d8ea902d..ee38957da985 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-ruby-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-ruby-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-ruby/archive/v0.19.0.tar.gz -> tree-sitter-ruby-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=b7cc1d79d8d724c03e151e4d960c9c6a
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-rust-0.20.0 b/metadata/md5-cache/dev-libs/tree-sitter-rust-0.20.0
index ace966ac42e7..48ff5d20217e 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-rust-0.20.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-rust-0.20.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-rust/archive/v0.20.0.tar.gz -> tree-sitter-rust-0.20.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=82d5fa6c84a7dda48945e002e62baff3
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-rust-0.20.1 b/metadata/md5-cache/dev-libs/tree-sitter-rust-0.20.1
index 35c57be539d1..90b44e37eea7 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-rust-0.20.1
+++ b/metadata/md5-cache/dev-libs/tree-sitter-rust-0.20.1
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-rust/archive/v0.20.1.tar.gz -> tree-sitter-rust-0.20.1.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=0e30100cfcd35b83dc1783a8671a9a7b
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-scala-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-scala-0.19.0
index 6b48c403e5ee..98d6e0ee5f35 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-scala-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-scala-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-scala/archive/v0.19.0.tar.gz -> tree-sitter-scala-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=b59c0a8a5773768787245f939afc7d77
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-tsq-0.19.0 b/metadata/md5-cache/dev-libs/tree-sitter-tsq-0.19.0
index c005f3ec6033..06a2d56595a2 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-tsq-0.19.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-tsq-0.19.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-tsq/archive/0.19.0.tar.gz -> tree-sitter-tsq-0.19.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=38f1d4aed3bd2379096e86d9e6beccef
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-typescript-0.20.0 b/metadata/md5-cache/dev-libs/tree-sitter-typescript-0.20.0
index faeaf34a8397..0f949b3adefb 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-typescript-0.20.0
+++ b/metadata/md5-cache/dev-libs/tree-sitter-typescript-0.20.0
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-typescript/archive/rust-0.20.0.tar.gz -> tree-sitter-typescript-0.20.0.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=3092ddc7cc0a81982e4c21a2256f5daf
diff --git a/metadata/md5-cache/dev-libs/tree-sitter-typescript-0.20.1 b/metadata/md5-cache/dev-libs/tree-sitter-typescript-0.20.1
index 2c1f888529ee..9658a906f3db 100644
--- a/metadata/md5-cache/dev-libs/tree-sitter-typescript-0.20.1
+++ b/metadata/md5-cache/dev-libs/tree-sitter-typescript-0.20.1
@@ -8,5 +8,5 @@ KEYWORDS=~amd64
LICENSE=MIT
SLOT=0
SRC_URI=https://github.com/tree-sitter/tree-sitter-typescript/archive/v0.20.1.tar.gz -> tree-sitter-typescript-0.20.1.tar.gz
-_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar a3a9088088917825fa24975b21938a86
+_eclasses_=edo c0eb9cbe6b0bd01fcb4918f12598a4d3 multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 tree-sitter-grammar 7ea5209555eb31addcb41eeacff59fec
_md5_=1320bc9faed6e42f4951ace75abe2d26
diff --git a/metadata/md5-cache/dev-libs/utfcpp-3.2.1 b/metadata/md5-cache/dev-libs/utfcpp-3.2.1
index 6d99c14339da..568e928417bb 100644
--- a/metadata/md5-cache/dev-libs/utfcpp-3.2.1
+++ b/metadata/md5-cache/dev-libs/utfcpp-3.2.1
@@ -5,10 +5,10 @@ EAPI=8
HOMEPAGE=https://github.com/nemtrif/utfcpp
INHERIT=cmake
IUSE=test
-KEYWORDS=amd64 ~arm ~arm64 ppc ppc64 ~riscv sparc ~x86
+KEYWORDS=amd64 ~arm ~arm64 ppc ppc64 ~riscv sparc x86
LICENSE=Boost-1.0
RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://github.com/nemtrif/utfcpp/archive/v3.2.1.tar.gz -> utfcpp-3.2.1.tar.gz test? ( https://github.com/nemtrif/ftest/archive/1e14b77c2ab8489386fc7046a8bced696c0fc4d6.tar.gz -> ftest-20211106174116.tar.gz )
_eclasses_=cmake 44afbf15c35884f7c840470f1cf05d0d flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 ninja-utils 58ec4e54962bf45d065fb95030701514 toolchain-funcs 1542e649be915f43f6908a9e93909961 xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=90f4f91d901c4ca11f0f80cdc97ed677
+_md5_=14f302426ce32db8141fae98d3f196ae
diff --git a/metadata/md5-cache/dev-python/Manifest.gz b/metadata/md5-cache/dev-python/Manifest.gz
index 3d95b8897fed..75cb8f4b2117 100644
--- a/metadata/md5-cache/dev-python/Manifest.gz
+++ b/metadata/md5-cache/dev-python/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/dev-python/tree-sitter-0.20.0-r1 b/metadata/md5-cache/dev-python/tree-sitter-0.20.0-r1
index 49b763039d8f..c6c28ea57be6 100644
--- a/metadata/md5-cache/dev-python/tree-sitter-0.20.0-r1
+++ b/metadata/md5-cache/dev-python/tree-sitter-0.20.0-r1
@@ -6,7 +6,7 @@ EAPI=8
HOMEPAGE=https://github.com/tree-sitter/py-tree-sitter/ https://pypi.org/project/tree-sitter/
INHERIT=distutils-r1
IUSE=test python_targets_python3_8 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11
-KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86
+KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos
LICENSE=MIT
RDEPEND=dev-libs/tree-sitter:= python_targets_python3_8? ( >=dev-lang/python-3.8.13:3.8 ) python_targets_python3_9? ( >=dev-lang/python-3.9.12:3.9 ) python_targets_python3_10? ( >=dev-lang/python-3.10.4:3.10 ) python_targets_python3_11? ( >=dev-lang/python-3.11.0_beta4:3.11 )
REQUIRED_USE=|| ( python_targets_python3_8 python_targets_python3_9 python_targets_python3_10 python_targets_python3_11 )
@@ -14,4 +14,4 @@ RESTRICT=!test? ( test )
SLOT=0
SRC_URI=https://github.com/tree-sitter/py-tree-sitter/archive/4f39f6919ca3be8efb420a338fd2cf9b8b68b156.tar.gz -> py-tree-sitter-4f39f6919ca3be8efb420a338fd2cf9b8b68b156.tar.gz test? ( https://github.com/tree-sitter/tree-sitter-javascript/archive/v0.19.0.tar.gz -> tree-sitter-javascript-0.19.0.tar.gz https://github.com/tree-sitter/tree-sitter-python/archive/v0.19.0.tar.gz -> tree-sitter-python-0.19.0.tar.gz )
_eclasses_=distutils-r1 17847def14400dd2ebac1ede4e941c5a multibuild d26d81f242cb193d899a72bca423d0bd multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 python-r1 7b65c41111cd80a4d4a0921e8d4a310c python-utils-r1 6f8f68a64a4304f487bb725227f2fdac toolchain-funcs 1542e649be915f43f6908a9e93909961
-_md5_=6ecfc21c02d2a539de6d570965300c1e
+_md5_=12cbca101d3a4e696c929c5a021fdf72
diff --git a/metadata/md5-cache/dev-util/Manifest.gz b/metadata/md5-cache/dev-util/Manifest.gz
index 66808f6d6bbe..bbaab2ac8db0 100644
--- a/metadata/md5-cache/dev-util/Manifest.gz
+++ b/metadata/md5-cache/dev-util/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/dev-util/cmake-3.23.3 b/metadata/md5-cache/dev-util/cmake-3.23.3
new file mode 100644
index 000000000000..218f149b3b03
--- /dev/null
+++ b/metadata/md5-cache/dev-util/cmake-3.23.3
@@ -0,0 +1,16 @@
+BDEPEND=verify-sig? ( sec-keys/openpgp-keys-bradking ) doc? ( dev-python/requests dev-python/sphinx ) test? ( app-arch/libarchive[zstd] ) sys-devel/make test? ( x11-base/xorg-server[xvfb] x11-apps/xhost ) verify-sig? ( app-crypt/gnupg >=app-portage/gemato-16 )
+DEFINED_PHASES=compile configure install postinst postrm prepare test unpack
+DEPEND=>=app-arch/libarchive-3.3.3:= app-crypt/rhash >=dev-libs/expat-2.0.1 >=dev-libs/jsoncpp-1.9.2-r2:0= >=dev-libs/libuv-1.10.0:= >=net-misc/curl-7.21.5[ssl] sys-libs/zlib virtual/pkgconfig emacs? ( >=app-editors/emacs-23.1:* ) ncurses? ( sys-libs/ncurses:0= ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtwidgets:5 )
+DESCRIPTION=Cross platform Make
+EAPI=8
+HOMEPAGE=https://cmake.org/
+INHERIT=bash-completion-r1 cmake elisp-common flag-o-matic multiprocessing toolchain-funcs virtualx xdg-utils verify-sig
+IUSE=doc emacs ncurses qt5 test test verify-sig
+KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris
+LICENSE=CMake
+RDEPEND=>=app-arch/libarchive-3.3.3:= app-crypt/rhash >=dev-libs/expat-2.0.1 >=dev-libs/jsoncpp-1.9.2-r2:0= >=dev-libs/libuv-1.10.0:= >=net-misc/curl-7.21.5[ssl] sys-libs/zlib virtual/pkgconfig emacs? ( >=app-editors/emacs-23.1:* ) ncurses? ( sys-libs/ncurses:0= ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtwidgets:5 )
+RESTRICT=!test? ( test ) !test? ( test )
+SLOT=0
+SRC_URI=https://cmake.org/files/v3.23/cmake-3.23.3.tar.gz verify-sig? ( https://github.com/Kitware/CMake/releases/download/v3.23.3/cmake-3.23.3-SHA-256.txt https://github.com/Kitware/CMake/releases/download/v3.23.3/cmake-3.23.3-SHA-256.txt.asc )
+_eclasses_=bash-completion-r1 f5e7a020fd9c741740756aac61bf75ff cmake 44afbf15c35884f7c840470f1cf05d0d elisp-common e7aaa047873789f549ea3df2f04b2145 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 ninja-utils 58ec4e54962bf45d065fb95030701514 toolchain-funcs 1542e649be915f43f6908a9e93909961 verify-sig 0748d665fa664a87add00152ed046e16 virtualx 975d49ff3b3f451efe7a95f230532135 xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
+_md5_=12cbf60e018a04993a61a222c7d12369
diff --git a/metadata/md5-cache/games-roguelike/Manifest.gz b/metadata/md5-cache/games-roguelike/Manifest.gz
index b750be36c643..396fa2b1b985 100644
--- a/metadata/md5-cache/games-roguelike/Manifest.gz
+++ b/metadata/md5-cache/games-roguelike/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/games-roguelike/angband-4.2.3-r1 b/metadata/md5-cache/games-roguelike/angband-4.2.4
index f86fd01631b8..aba740175493 100644
--- a/metadata/md5-cache/games-roguelike/angband-4.2.3-r1
+++ b/metadata/md5-cache/games-roguelike/angband-4.2.4
@@ -11,6 +11,6 @@ LICENSE=GPL-2
RDEPEND=X? ( media-fonts/font-misc-misc x11-libs/libX11 ) ncurses? ( sys-libs/ncurses:=[unicode(+)] ) sdl? ( media-libs/libsdl2[video,X] media-libs/sdl2-image[png] media-libs/sdl2-ttf sound? ( media-libs/libsdl2[sound] media-libs/sdl2-mixer[mp3] ) )
REQUIRED_USE=sound? ( sdl ) || ( X ncurses )
SLOT=0
-SRC_URI=https://github.com/angband/angband/archive/refs/tags/4.2.3.tar.gz -> angband-4.2.3.tar.gz https://dev.gentoo.org/~steils/distfiles/angband-4.2.3-man-r1.tar.gz
+SRC_URI=https://github.com/angband/angband/archive/refs/tags/4.2.4.tar.gz -> angband-4.2.4.tar.gz https://dev.gentoo.org/~steils/distfiles/angband-4.2.4-man.tar.gz
_eclasses_=autotools 9e6965bfaa00f52cc61e0d4bc44c87b3 desktop 22952d8f27cac191d75529d4c38e6bfa gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961 xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=e0fb1cd585a22985ef44267470e84c65
+_md5_=0d8c9b92b988d6355c5f219c76568f84
diff --git a/metadata/md5-cache/media-gfx/Manifest.gz b/metadata/md5-cache/media-gfx/Manifest.gz
index a1ca6d3da0b4..450a7de3ff34 100644
--- a/metadata/md5-cache/media-gfx/Manifest.gz
+++ b/metadata/md5-cache/media-gfx/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/media-gfx/solvespace-3.1-r1 b/metadata/md5-cache/media-gfx/solvespace-3.1-r1
index 07f3bba99a70..d2684a4a0608 100644
--- a/metadata/md5-cache/media-gfx/solvespace-3.1-r1
+++ b/metadata/md5-cache/media-gfx/solvespace-3.1-r1
@@ -6,10 +6,10 @@ EAPI=8
HOMEPAGE=http://solvespace.com
INHERIT=cmake toolchain-funcs xdg
IUSE=openmp +system-mimalloc
-KEYWORDS=~amd64 ~x86
+KEYWORDS=amd64 ~x86
LICENSE=BitstreamVera GPL-2+ GPL-3+ !system-mimalloc? ( MIT )
RDEPEND=dev-cpp/atkmm:0 dev-cpp/glibmm:2 dev-cpp/gtkmm:3.0[X] dev-cpp/pangomm:1.4 dev-libs/glib:2 dev-libs/json-c:= dev-libs/libsigc++:2 dev-libs/libspnav[X] media-libs/fontconfig media-libs/freetype:2[X] media-libs/libpng:0= sys-libs/zlib virtual/opengl x11-libs/cairo[X] x11-libs/gtk+:3[X] system-mimalloc? ( dev-libs/mimalloc:= )
SLOT=0
SRC_URI=https://github.com/solvespace/solvespace/archive/v3.1.tar.gz -> solvespace-3.1.tar.gz https://github.com/solvespace/libdxfrw/archive/0b7b7b709d9299565db603f878214656ef5e9ddf.tar.gz -> libdxfrw-0.6.3-0b7b7b709d9299565db603f878214656ef5e9ddf.tar.gz !system-mimalloc? ( https://github.com/microsoft/mimalloc/archive/f819dbb4e4813fab464aee16770f39f11476bfea.tar.gz -> mimalloc-2.0.6-f819dbb4e4813fab464aee16770f39f11476bfea.tar.gz )
_eclasses_=cmake 44afbf15c35884f7c840470f1cf05d0d flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 ninja-utils 58ec4e54962bf45d065fb95030701514 toolchain-funcs 1542e649be915f43f6908a9e93909961 xdg 6024fbc93167fad782e2032933654857 xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=0d5a9244a83c717c327e46aaf7ca7d5a
+_md5_=52c5d4aa97da0c87ff3dda00be714250
diff --git a/metadata/md5-cache/media-video/Manifest.gz b/metadata/md5-cache/media-video/Manifest.gz
index e7ff07686e24..6b0f56d76a4a 100644
--- a/metadata/md5-cache/media-video/Manifest.gz
+++ b/metadata/md5-cache/media-video/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/media-video/aegisub-3.2.2_p20160518-r103 b/metadata/md5-cache/media-video/aegisub-3.2.2_p20160518-r103
index f2f26d94db46..611abd61fd17 100644
--- a/metadata/md5-cache/media-video/aegisub-3.2.2_p20160518-r103
+++ b/metadata/md5-cache/media-video/aegisub-3.2.2_p20160518-r103
@@ -1,6 +1,6 @@
-BDEPEND=dev-util/intltool sys-devel/gettext virtual/pkgconfig test? ( lua_single_target_luajit? ( dev-lang/luajit:=[lua52compat] ) x11-libs/wxGTK:3.0[X,opengl,debug?] dev-libs/boost:=[icu,nls,threads(+)] dev-libs/icu:= media-libs/ffmpegsource:= media-libs/fontconfig media-libs/freetype media-libs/libass:=[fontconfig] sys-libs/zlib virtual/libiconv virtual/opengl alsa? ( media-libs/alsa-lib ) fftw? ( >=sci-libs/fftw-3.3:= ) openal? ( media-libs/openal ) portaudio? ( =media-libs/portaudio-19* ) pulseaudio? ( media-sound/pulseaudio ) spell? ( app-text/hunspell:= ) uchardet? ( app-i18n/uchardet ) >=dev-cpp/gtest-1.8.1 >=dev-lua/luarocks-3.4.0-r100 lua_single_target_luajit? ( dev-lua/busted[lua_targets_luajit(-)] ) ) sys-devel/gnuconfig >=app-portage/elt-patches-20170815 || ( >=sys-devel/automake-1.16.5:1.16 ) >=sys-devel/autoconf-2.71 >=sys-devel/libtool-2.4
+BDEPEND=dev-util/intltool sys-devel/gettext virtual/pkgconfig test? ( lua_single_target_luajit? ( dev-lang/luajit:=[lua52compat] ) x11-libs/wxGTK:3.0[X,opengl,debug?] dev-libs/boost:=[icu,nls,threads(+)] dev-libs/icu:= ~media-libs/ffmpegsource-2.23:= media-libs/fontconfig media-libs/freetype media-libs/libass:=[fontconfig] sys-libs/zlib virtual/libiconv virtual/opengl alsa? ( media-libs/alsa-lib ) fftw? ( >=sci-libs/fftw-3.3:= ) openal? ( media-libs/openal ) portaudio? ( =media-libs/portaudio-19* ) pulseaudio? ( media-sound/pulseaudio ) spell? ( app-text/hunspell:= ) uchardet? ( app-i18n/uchardet ) >=dev-cpp/gtest-1.8.1 >=dev-lua/luarocks-3.4.0-r100 lua_single_target_luajit? ( dev-lua/busted[lua_targets_luajit(-)] ) ) sys-devel/gnuconfig >=app-portage/elt-patches-20170815 || ( >=sys-devel/automake-1.16.5:1.16 ) >=sys-devel/autoconf-2.71 >=sys-devel/libtool-2.4
DEFINED_PHASES=compile configure postinst postrm prepare pretend setup test unpack
-DEPEND=lua_single_target_luajit? ( dev-lang/luajit:=[lua52compat] ) x11-libs/wxGTK:3.0[X,opengl,debug?] dev-libs/boost:=[icu,nls,threads(+)] dev-libs/icu:= media-libs/ffmpegsource:= media-libs/fontconfig media-libs/freetype media-libs/libass:=[fontconfig] sys-libs/zlib virtual/libiconv virtual/opengl alsa? ( media-libs/alsa-lib ) fftw? ( >=sci-libs/fftw-3.3:= ) openal? ( media-libs/openal ) portaudio? ( =media-libs/portaudio-19* ) pulseaudio? ( media-sound/pulseaudio ) spell? ( app-text/hunspell:= ) uchardet? ( app-i18n/uchardet )
+DEPEND=lua_single_target_luajit? ( dev-lang/luajit:=[lua52compat] ) x11-libs/wxGTK:3.0[X,opengl,debug?] dev-libs/boost:=[icu,nls,threads(+)] dev-libs/icu:= ~media-libs/ffmpegsource-2.23:= media-libs/fontconfig media-libs/freetype media-libs/libass:=[fontconfig] sys-libs/zlib virtual/libiconv virtual/opengl alsa? ( media-libs/alsa-lib ) fftw? ( >=sci-libs/fftw-3.3:= ) openal? ( media-libs/openal ) portaudio? ( =media-libs/portaudio-19* ) pulseaudio? ( media-sound/pulseaudio ) spell? ( app-text/hunspell:= ) uchardet? ( app-i18n/uchardet )
DESCRIPTION=Advanced subtitle editor
EAPI=7
HOMEPAGE=http://www.aegisub.org/ https://github.com/Aegisub/Aegisub
@@ -8,10 +8,10 @@ INHERIT=autotools flag-o-matic lua-single plocale wxwidgets xdg-utils vcs-snapsh
IUSE=+alsa debug +fftw openal oss portaudio pulseaudio spell test +uchardet +lua_single_target_luajit
KEYWORDS=~amd64 ~x86
LICENSE=BSD MIT
-RDEPEND=lua_single_target_luajit? ( dev-lang/luajit:=[lua52compat] ) x11-libs/wxGTK:3.0[X,opengl,debug?] dev-libs/boost:=[icu,nls,threads(+)] dev-libs/icu:= media-libs/ffmpegsource:= media-libs/fontconfig media-libs/freetype media-libs/libass:=[fontconfig] sys-libs/zlib virtual/libiconv virtual/opengl alsa? ( media-libs/alsa-lib ) fftw? ( >=sci-libs/fftw-3.3:= ) openal? ( media-libs/openal ) portaudio? ( =media-libs/portaudio-19* ) pulseaudio? ( media-sound/pulseaudio ) spell? ( app-text/hunspell:= ) uchardet? ( app-i18n/uchardet )
+RDEPEND=lua_single_target_luajit? ( dev-lang/luajit:=[lua52compat] ) x11-libs/wxGTK:3.0[X,opengl,debug?] dev-libs/boost:=[icu,nls,threads(+)] dev-libs/icu:= ~media-libs/ffmpegsource-2.23:= media-libs/fontconfig media-libs/freetype media-libs/libass:=[fontconfig] sys-libs/zlib virtual/libiconv virtual/opengl alsa? ( media-libs/alsa-lib ) fftw? ( >=sci-libs/fftw-3.3:= ) openal? ( media-libs/openal ) portaudio? ( =media-libs/portaudio-19* ) pulseaudio? ( media-sound/pulseaudio ) spell? ( app-text/hunspell:= ) uchardet? ( app-i18n/uchardet )
REQUIRED_USE=^^ ( lua_single_target_luajit ) || ( alsa openal oss portaudio pulseaudio )
-RESTRICT=!test? ( test )
+RESTRICT=test
SLOT=0
SRC_URI=https://github.com/Aegisub/Aegisub/archive/b118fe7e7a5c37540e2f0aa75af105e272bad234.tar.gz -> aegisub-3.2.2_p20160518.tar.gz
_eclasses_=autotools 9e6965bfaa00f52cc61e0d4bc44c87b3 edos2unix 33e347e171066657f91f8b0c72ec8773 eutils 8f942ebdcf04334697649d4a0bf65a32 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e lua-single f2c2fb82c912dd65d53bdae3613a331f lua-utils e69ff116248d78546ae1a234c086fe80 multilib 5ca4e49abed8e3a2f7b56920eadee157 plocale 7ce00136a77130df46fbbd5966f98a61 strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 toolchain-funcs 1542e649be915f43f6908a9e93909961 vcs-snapshot eab6d8533446763c2e9777d8bbd1594e wrapper 4a1902f969e5718126434fc35f3a0d9c wxwidgets c09e9b94378cadaf6ef86ec1534c0fd6 xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=ecadc8aced8255f2b0f85d7f90a69474
+_md5_=f5766e880c5aa3c45e446376204b0bd8
diff --git a/metadata/md5-cache/net-fs/Manifest.gz b/metadata/md5-cache/net-fs/Manifest.gz
index 32aef3424197..5c250134db24 100644
--- a/metadata/md5-cache/net-fs/Manifest.gz
+++ b/metadata/md5-cache/net-fs/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/net-fs/cifs-utils-6.15-r1 b/metadata/md5-cache/net-fs/cifs-utils-6.15-r1
new file mode 100644
index 000000000000..9b1bb0bfb44a
--- /dev/null
+++ b/metadata/md5-cache/net-fs/cifs-utils-6.15-r1
@@ -0,0 +1,17 @@
+BDEPEND=dev-python/docutils sys-devel/gnuconfig >=app-portage/elt-patches-20170815 || ( >=sys-devel/automake-1.16.5:1.16 ) >=sys-devel/autoconf-2.71 >=sys-devel/libtool-2.4
+DEFINED_PHASES=configure install postinst prepare setup
+DEPEND=ads? ( sys-apps/keyutils:= sys-libs/talloc virtual/krb5 ) caps? ( sys-libs/libcap-ng ) creds? ( sys-apps/keyutils:= ) pam? ( sys-apps/keyutils:= sys-libs/pam ) python? ( python_single_target_python3_8? ( >=dev-lang/python-3.8.13:3.8 ) python_single_target_python3_9? ( >=dev-lang/python-3.9.12:3.9 ) python_single_target_python3_10? ( >=dev-lang/python-3.10.4:3.10 ) python_single_target_python3_11? ( >=dev-lang/python-3.11.0_beta4:3.11 ) )
+DESCRIPTION=Tools for Managing Linux CIFS Client Filesystems
+EAPI=8
+HOMEPAGE=https://wiki.samba.org/index.php/LinuxCIFS_utils
+INHERIT=autotools bash-completion-r1 linux-info pam python-single-r1
+IUSE=+acl +ads +caps creds pam +python systemd python_single_target_python3_8 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11
+KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux
+LICENSE=GPL-3
+PDEPEND=acl? ( >=net-fs/samba-4.0.0_alpha1 )
+RDEPEND=ads? ( sys-apps/keyutils:= sys-libs/talloc virtual/krb5 ) caps? ( sys-libs/libcap-ng ) creds? ( sys-apps/keyutils:= ) pam? ( sys-apps/keyutils:= sys-libs/pam ) python? ( python_single_target_python3_8? ( >=dev-lang/python-3.8.13:3.8 ) python_single_target_python3_9? ( >=dev-lang/python-3.9.12:3.9 ) python_single_target_python3_10? ( >=dev-lang/python-3.10.4:3.10 ) python_single_target_python3_11? ( >=dev-lang/python-3.11.0_beta4:3.11 ) )
+REQUIRED_USE=acl? ( ads ) python? ( ^^ ( python_single_target_python3_8 python_single_target_python3_9 python_single_target_python3_10 python_single_target_python3_11 ) )
+SLOT=0
+SRC_URI=https://ftp.samba.org/pub/linux-cifs/cifs-utils/cifs-utils-6.15.tar.bz2
+_eclasses_=autotools 9e6965bfaa00f52cc61e0d4bc44c87b3 bash-completion-r1 f5e7a020fd9c741740756aac61bf75ff flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e linux-info dcbf4f67bc38bee48e9d69a4344e8059 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 pam e44a1dd98f13e1ad76de01e919bde1f1 python-single-r1 a5747fe6dc0651d95cb78eddd5e160a8 python-utils-r1 6f8f68a64a4304f487bb725227f2fdac toolchain-funcs 1542e649be915f43f6908a9e93909961
+_md5_=6514826b9036081b7a6828aa78ca9d9d
diff --git a/metadata/md5-cache/net-im/Manifest.gz b/metadata/md5-cache/net-im/Manifest.gz
index ed57b0f9512c..79ab0416ed02 100644
--- a/metadata/md5-cache/net-im/Manifest.gz
+++ b/metadata/md5-cache/net-im/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/net-im/element-desktop-bin-1.11.0 b/metadata/md5-cache/net-im/element-desktop-bin-1.11.1
index ed4f4c413b9e..8ea9debaebc2 100644
--- a/metadata/md5-cache/net-im/element-desktop-bin-1.11.0
+++ b/metadata/md5-cache/net-im/element-desktop-bin-1.11.1
@@ -8,6 +8,6 @@ LICENSE=Apache-2.0
RDEPEND=app-accessibility/at-spi2-atk:2 app-accessibility/at-spi2-core:2 app-crypt/libsecret dev-db/sqlcipher dev-libs/atk dev-libs/expat dev-libs/glib:2 dev-libs/nettle dev-libs/nspr dev-libs/nss media-libs/alsa-lib media-libs/mesa net-print/cups sys-apps/dbus x11-libs/cairo x11-libs/gdk-pixbuf:2 x11-libs/gtk+:3 x11-libs/libX11 x11-libs/libXcomposite x11-libs/libXdamage x11-libs/libXext x11-libs/libXfixes x11-libs/libXrandr x11-libs/libdrm x11-libs/libxcb x11-libs/libxkbcommon x11-libs/pango
RESTRICT=splitdebug
SLOT=0
-SRC_URI=https://packages.riot.im/debian/pool/main/e/element-desktop/element-desktop_1.11.0_amd64.deb
+SRC_URI=https://packages.riot.im/debian/pool/main/e/element-desktop/element-desktop_1.11.1_amd64.deb
_eclasses_=multilib 5ca4e49abed8e3a2f7b56920eadee157 optfeature 1a2157392a869265b2afcb63a26c12ac toolchain-funcs 1542e649be915f43f6908a9e93909961 unpacker 697382d119fd3d195f110b7979184285 xdg 6024fbc93167fad782e2032933654857 xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
_md5_=0ee37317619d471516a2c5fc95e4b8fd
diff --git a/metadata/md5-cache/net-mail/Manifest.gz b/metadata/md5-cache/net-mail/Manifest.gz
index aefcead30c1d..0060d8380366 100644
--- a/metadata/md5-cache/net-mail/Manifest.gz
+++ b/metadata/md5-cache/net-mail/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/net-mail/mu-1.8.7 b/metadata/md5-cache/net-mail/mu-1.8.7
index 2d6cd6c5500c..cf32cc0feebd 100644
--- a/metadata/md5-cache/net-mail/mu-1.8.7
+++ b/metadata/md5-cache/net-mail/mu-1.8.7
@@ -6,10 +6,10 @@ EAPI=8
HOMEPAGE=https://www.djcbsoftware.nl/code/mu/ https://github.com/djcb/mu
INHERIT=elisp-common meson
IUSE=emacs readline
-KEYWORDS=~amd64 ~arm ~arm64 ~x86 ~x64-macos
+KEYWORDS=~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos
LICENSE=GPL-3+
RDEPEND=dev-libs/glib:2 dev-libs/gmime:3.0 >=dev-libs/xapian-1.4:= emacs? ( >=app-editors/emacs-25.3:* ) readline? ( sys-libs/readline:= )
SLOT=0
SRC_URI=https://github.com/djcb/mu/releases/download/v1.8.7/mu-1.8.7.tar.xz
_eclasses_=elisp-common e7aaa047873789f549ea3df2f04b2145 meson 1994a5aef5d4f5798b92f64d6f9a6003 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 ninja-utils 58ec4e54962bf45d065fb95030701514 python-utils-r1 6f8f68a64a4304f487bb725227f2fdac toolchain-funcs 1542e649be915f43f6908a9e93909961
-_md5_=dfa9e0c06815205ff73c0f186524599c
+_md5_=483a95b897ad1759ae2ac6e4b85b8a5f
diff --git a/metadata/md5-cache/net-misc/Manifest.gz b/metadata/md5-cache/net-misc/Manifest.gz
index 4bbaef241b9a..e0e18efb69df 100644
--- a/metadata/md5-cache/net-misc/Manifest.gz
+++ b/metadata/md5-cache/net-misc/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/net-misc/youtube-viewer-3.9.7 b/metadata/md5-cache/net-misc/youtube-viewer-3.10.1
index 3a531818a5b6..c34f1dfe2f9d 100644
--- a/metadata/md5-cache/net-misc/youtube-viewer-3.9.7
+++ b/metadata/md5-cache/net-misc/youtube-viewer-3.10.1
@@ -11,6 +11,6 @@ LICENSE=|| ( Artistic-2 GPL-1+ )
RDEPEND=dev-perl/Data-Dump dev-perl/JSON dev-perl/libwww-perl[ssl] dev-perl/LWP-Protocol-https dev-perl/Term-ReadLine-Gnu virtual/perl-Encode virtual/perl-File-Path virtual/perl-File-Spec virtual/perl-Getopt-Long virtual/perl-Scalar-List-Utils virtual/perl-Term-ANSIColor virtual/perl-Term-ReadLine virtual/perl-Text-ParseWords virtual/perl-Text-Tabs+Wrap gtk? ( dev-perl/Gtk3 dev-perl/File-ShareDir virtual/freedesktop-icon-theme x11-libs/gdk-pixbuf:2[jpeg] ) || ( media-video/ffmpeg[openssl] media-video/ffmpeg[gnutls] ) || ( media-video/mpv media-video/mplayer media-video/vlc gtk? ( media-video/smplayer ) ) dev-lang/perl:=
RESTRICT=!test? ( test )
SLOT=0
-SRC_URI=https://github.com/trizen/youtube-viewer/archive/3.9.7.tar.gz -> youtube-viewer-3.9.7.tar.gz
+SRC_URI=https://github.com/trizen/youtube-viewer/archive/3.10.1.tar.gz -> youtube-viewer-3.10.1.tar.gz
_eclasses_=desktop 22952d8f27cac191d75529d4c38e6bfa multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 optfeature 1a2157392a869265b2afcb63a26c12ac perl-functions c3fca037246e877693badea0df3b0ef8 perl-module 4f80b00fab088c2f6d68edb55a6c4bf4 readme.gentoo-r1 b776ad4b42f564c406a95c41ccb42c55 xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=f5d530be3e103f4de2f5177d8455200c
+_md5_=09acd31aa947dbce8918ad1c42473861
diff --git a/metadata/md5-cache/net-misc/youtube-viewer-9999 b/metadata/md5-cache/net-misc/youtube-viewer-9999
index 17accc91f86e..affd4cfd68fe 100644
--- a/metadata/md5-cache/net-misc/youtube-viewer-9999
+++ b/metadata/md5-cache/net-misc/youtube-viewer-9999
@@ -12,4 +12,4 @@ RDEPEND=dev-perl/Data-Dump dev-perl/JSON dev-perl/libwww-perl[ssl] dev-perl/LWP-
RESTRICT=!test? ( test )
SLOT=0
_eclasses_=desktop 22952d8f27cac191d75529d4c38e6bfa git-r3 b9ac6f96d2a88edb5b351df634dc5e53 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 optfeature 1a2157392a869265b2afcb63a26c12ac perl-functions c3fca037246e877693badea0df3b0ef8 perl-module 4f80b00fab088c2f6d68edb55a6c4bf4 readme.gentoo-r1 b776ad4b42f564c406a95c41ccb42c55 xdg-utils fffb53a53cf17c9c0c998a3c0a590c7e
-_md5_=7f8f98d1094e08aadb09a9cce824a53e
+_md5_=9091f94840a7f0c9581a5fa98079bd59
diff --git a/metadata/md5-cache/net-proxy/Manifest.gz b/metadata/md5-cache/net-proxy/Manifest.gz
index f0e5c2361574..31fcd0575859 100644
--- a/metadata/md5-cache/net-proxy/Manifest.gz
+++ b/metadata/md5-cache/net-proxy/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/net-proxy/torsocks-2.4.0 b/metadata/md5-cache/net-proxy/torsocks-2.4.0
index a20c474ea54e..5c522ccfba71 100644
--- a/metadata/md5-cache/net-proxy/torsocks-2.4.0
+++ b/metadata/md5-cache/net-proxy/torsocks-2.4.0
@@ -5,9 +5,9 @@ EAPI=8
HOMEPAGE=https://gitlab.torproject.org/tpo/core/torsocks
INHERIT=autotools
IUSE=static-libs
-KEYWORDS=amd64 ~arm ~x86
+KEYWORDS=amd64 ~arm x86
LICENSE=GPL-2
SLOT=0
SRC_URI=https://gitlab.torproject.org/tpo/core/torsocks/-/archive/v2.4.0/torsocks-v2.4.0.tar.gz -> torsocks-2.4.0.tar.gz
_eclasses_=autotools 9e6965bfaa00f52cc61e0d4bc44c87b3 gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e multilib 5ca4e49abed8e3a2f7b56920eadee157 toolchain-funcs 1542e649be915f43f6908a9e93909961
-_md5_=e01d3872db3ca971be2a338d24d381d1
+_md5_=ca59a73d15211c159c761588a91b6821
diff --git a/metadata/md5-cache/sys-cluster/Manifest.gz b/metadata/md5-cache/sys-cluster/Manifest.gz
index f1d6deb8ff61..ae836b0c4469 100644
--- a/metadata/md5-cache/sys-cluster/Manifest.gz
+++ b/metadata/md5-cache/sys-cluster/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/sys-cluster/kube-router-1.5.0 b/metadata/md5-cache/sys-cluster/kube-router-1.5.0
new file mode 100644
index 000000000000..a17ab2d19c00
--- /dev/null
+++ b/metadata/md5-cache/sys-cluster/kube-router-1.5.0
@@ -0,0 +1,14 @@
+BDEPEND=>=dev-lang/go-1.16 app-arch/unzip
+DEFINED_PHASES=compile install test unpack
+DESCRIPTION=A turnkey solution for Kubernetes networking
+EAPI=8
+HOMEPAGE=https://kube-router.io
+INHERIT=go-module
+KEYWORDS=~amd64
+LICENSE=Apache-2.0 MIT BSD BSD-2 MPL-2.0 ISC LGPL-3-with-linking-exception
+RDEPEND=net-firewall/iptables[conntrack] net-firewall/ipset sys-cluster/ipvsadm
+RESTRICT=strip
+SLOT=0
+SRC_URI=https://github.com/cloudnativelabs/kube-router/archive/v1.5.0.tar.gz -> kube-router-1.5.0.tar.gz https://dev.gentoo.org/~williamh/dist/kube-router-1.5.0-deps.tar.xz
+_eclasses_=go-module a13d34fe4e2996720e1ca6c53b9ea95a
+_md5_=314245426211f398e85403d19ed25da4
diff --git a/metadata/md5-cache/sys-libs/Manifest.gz b/metadata/md5-cache/sys-libs/Manifest.gz
index 2a1688f7db85..f47f98e7d59b 100644
--- a/metadata/md5-cache/sys-libs/Manifest.gz
+++ b/metadata/md5-cache/sys-libs/Manifest.gz
Binary files differ
diff --git a/metadata/md5-cache/sys-libs/glibc-2.35-r4 b/metadata/md5-cache/sys-libs/glibc-2.35-r4
deleted file mode 100644
index 6a0525aa8cd1..000000000000
--- a/metadata/md5-cache/sys-libs/glibc-2.35-r4
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=|| ( >=dev-lang/python-3.10.4:3.10 >=dev-lang/python-3.9.12:3.9 >=dev-lang/python-3.8.13:3.8 ) >=app-misc/pax-utils-1.3.3 sys-devel/bison doc? ( sys-apps/texinfo ) !compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) >=sys-devel/binutils-2.27 >=sys-devel/gcc-6.2 sys-devel/gnuconfig virtual/pkgconfig
-DEFINED_PHASES=compile configure install postinst preinst prepare pretend setup test unpack
-DEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) test? ( >=net-dns/libidn2-2.3.0 ) virtual/os-headers
-DESCRIPTION=GNU libc C library
-EAPI=7
-HOMEPAGE=https://www.gnu.org/software/libc/
-INHERIT=python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig multilib systemd multiprocessing tmpfiles
-IUSE=audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla
-KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86
-LICENSE=LGPL-2.1+ BSD HPND ISC inner-net rc PCRE
-PDEPEND=!vanilla? ( sys-libs/timezone-data )
-RDEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) app-arch/gzip sys-apps/grep virtual/awk sys-apps/gentoo-functions !<app-misc/pax-utils-1.3.3 !<net-misc/openssh-8.1_p1-r2 >=net-dns/libidn2-2.3.0 vanilla? ( !sys-libs/timezone-data )
-RESTRICT=!test? ( test )
-SLOT=2.2
-SRC_URI=mirror://gnu/glibc/glibc-2.35.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/glibc-2.35-patches-6.tar.xz experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220422.tar.xz ) https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-2.22.tar.gz multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-20201208.tar.xz ) systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-20210729.tar.gz )
-_eclasses_=eapi8-dosym cd7d420bb5be5ee079f27239ce76b8f5 edos2unix 33e347e171066657f91f8b0c72ec8773 eutils 8f942ebdcf04334697649d4a0bf65a32 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 gnuconfig b6b3e92f8b8c996400074b5f61a59256 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 prefix eab3c99d77fe00506c109c8a736186f7 preserve-libs a8e50acee31b5759b4df1f7707cae54b python-any-r1 a3e9c0524a795d7f2767a2cf12a2e8c0 python-utils-r1 6f8f68a64a4304f487bb725227f2fdac strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 systemd 2736b403a83f194b59b767f3b344c2c1 tmpfiles 216aa76c3a6fcb5d893c23a0de86048f toolchain-funcs 1542e649be915f43f6908a9e93909961 wrapper 4a1902f969e5718126434fc35f3a0d9c
-_md5_=80369ab9a189c6e44f1a726179845a46
diff --git a/metadata/md5-cache/sys-libs/glibc-2.35-r5 b/metadata/md5-cache/sys-libs/glibc-2.35-r5
deleted file mode 100644
index 7f5078abefac..000000000000
--- a/metadata/md5-cache/sys-libs/glibc-2.35-r5
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=|| ( >=dev-lang/python-3.10.4:3.10 >=dev-lang/python-3.9.12:3.9 >=dev-lang/python-3.8.13:3.8 ) >=app-misc/pax-utils-1.3.3 sys-devel/bison doc? ( sys-apps/texinfo ) !compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) >=sys-devel/binutils-2.27 >=sys-devel/gcc-6.2 sys-devel/gnuconfig virtual/pkgconfig
-DEFINED_PHASES=compile configure install postinst preinst prepare pretend setup test unpack
-DEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) test? ( >=net-dns/libidn2-2.3.0 ) virtual/os-headers
-DESCRIPTION=GNU libc C library
-EAPI=7
-HOMEPAGE=https://www.gnu.org/software/libc/
-INHERIT=python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig multilib systemd multiprocessing tmpfiles
-IUSE=audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla
-KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86
-LICENSE=LGPL-2.1+ BSD HPND ISC inner-net rc PCRE
-PDEPEND=!vanilla? ( sys-libs/timezone-data )
-RDEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) app-arch/gzip sys-apps/grep virtual/awk sys-apps/gentoo-functions !<app-misc/pax-utils-1.3.3 !<net-misc/openssh-8.1_p1-r2 >=net-dns/libidn2-2.3.0 vanilla? ( !sys-libs/timezone-data )
-RESTRICT=!test? ( test )
-SLOT=2.2
-SRC_URI=mirror://gnu/glibc/glibc-2.35.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/glibc-2.35-patches-7.tar.xz experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220422.tar.xz ) https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-2.22.tar.gz multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-20201208.tar.xz ) systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-20210729.tar.gz )
-_eclasses_=eapi8-dosym cd7d420bb5be5ee079f27239ce76b8f5 edos2unix 33e347e171066657f91f8b0c72ec8773 eutils 8f942ebdcf04334697649d4a0bf65a32 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 gnuconfig b6b3e92f8b8c996400074b5f61a59256 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 prefix eab3c99d77fe00506c109c8a736186f7 preserve-libs a8e50acee31b5759b4df1f7707cae54b python-any-r1 a3e9c0524a795d7f2767a2cf12a2e8c0 python-utils-r1 6f8f68a64a4304f487bb725227f2fdac strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 systemd 2736b403a83f194b59b767f3b344c2c1 tmpfiles 216aa76c3a6fcb5d893c23a0de86048f toolchain-funcs 1542e649be915f43f6908a9e93909961 wrapper 4a1902f969e5718126434fc35f3a0d9c
-_md5_=65a809a0c000af57723efe291ed1296f
diff --git a/metadata/md5-cache/sys-libs/glibc-2.35-r6 b/metadata/md5-cache/sys-libs/glibc-2.35-r6
deleted file mode 100644
index f9732815e51e..000000000000
--- a/metadata/md5-cache/sys-libs/glibc-2.35-r6
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=|| ( >=dev-lang/python-3.10.4:3.10 >=dev-lang/python-3.9.12:3.9 >=dev-lang/python-3.8.13:3.8 ) >=app-misc/pax-utils-1.3.3 sys-devel/bison doc? ( sys-apps/texinfo ) !compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) >=sys-devel/binutils-2.27 >=sys-devel/gcc-6.2 sys-devel/gnuconfig virtual/pkgconfig
-DEFINED_PHASES=compile configure install postinst preinst prepare pretend setup test unpack
-DEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) test? ( >=net-dns/libidn2-2.3.0 ) virtual/os-headers
-DESCRIPTION=GNU libc C library
-EAPI=7
-HOMEPAGE=https://www.gnu.org/software/libc/
-INHERIT=python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig multilib systemd multiprocessing tmpfiles
-IUSE=audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla
-KEYWORDS=~loong
-LICENSE=LGPL-2.1+ BSD HPND ISC inner-net rc PCRE
-PDEPEND=!vanilla? ( sys-libs/timezone-data )
-RDEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) app-arch/gzip sys-apps/grep virtual/awk sys-apps/gentoo-functions !<app-misc/pax-utils-1.3.3 !<net-misc/openssh-8.1_p1-r2 >=net-dns/libidn2-2.3.0 vanilla? ( !sys-libs/timezone-data )
-RESTRICT=!test? ( test )
-SLOT=2.2
-SRC_URI=mirror://gnu/glibc/glibc-2.35.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/glibc-2.35-patches-7.tar.xz experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220522.tar.xz ) https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-2.22.tar.gz multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-20201208.tar.xz ) systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-20210729.tar.gz )
-_eclasses_=eapi8-dosym cd7d420bb5be5ee079f27239ce76b8f5 edos2unix 33e347e171066657f91f8b0c72ec8773 eutils 8f942ebdcf04334697649d4a0bf65a32 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 gnuconfig b6b3e92f8b8c996400074b5f61a59256 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 prefix eab3c99d77fe00506c109c8a736186f7 preserve-libs a8e50acee31b5759b4df1f7707cae54b python-any-r1 a3e9c0524a795d7f2767a2cf12a2e8c0 python-utils-r1 6f8f68a64a4304f487bb725227f2fdac strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 systemd 2736b403a83f194b59b767f3b344c2c1 tmpfiles 216aa76c3a6fcb5d893c23a0de86048f toolchain-funcs 1542e649be915f43f6908a9e93909961 wrapper 4a1902f969e5718126434fc35f3a0d9c
-_md5_=f282dd95e62a4b7f7bf774bdb1f2749d
diff --git a/metadata/md5-cache/sys-libs/glibc-2.35-r7 b/metadata/md5-cache/sys-libs/glibc-2.35-r7
deleted file mode 100644
index 6e881c16d349..000000000000
--- a/metadata/md5-cache/sys-libs/glibc-2.35-r7
+++ /dev/null
@@ -1,17 +0,0 @@
-BDEPEND=|| ( >=dev-lang/python-3.11.0_beta4:3.11 >=dev-lang/python-3.10.4:3.10 >=dev-lang/python-3.9.12:3.9 >=dev-lang/python-3.8.13:3.8 ) >=app-misc/pax-utils-1.3.3 sys-devel/bison doc? ( sys-apps/texinfo ) !compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) >=sys-devel/binutils-2.27 >=sys-devel/gcc-6.2 sys-devel/gnuconfig virtual/pkgconfig
-DEFINED_PHASES=compile configure install postinst preinst prepare pretend setup test unpack
-DEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) compile-locales? ( app-arch/gzip sys-apps/grep virtual/awk ) test? ( >=net-dns/libidn2-2.3.0 ) virtual/os-headers
-DESCRIPTION=GNU libc C library
-EAPI=7
-HOMEPAGE=https://www.gnu.org/software/libc/
-INHERIT=python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig multilib systemd multiprocessing tmpfiles
-IUSE=audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp stack-realign +static-libs suid systemd systemtap test vanilla
-KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86
-LICENSE=LGPL-2.1+ BSD HPND ISC inner-net rc PCRE
-PDEPEND=!vanilla? ( sys-libs/timezone-data )
-RDEPEND=gd? ( media-libs/gd:2= ) nscd? ( selinux? ( audit? ( sys-process/audit ) caps? ( sys-libs/libcap ) ) ) suid? ( caps? ( sys-libs/libcap ) ) selinux? ( sys-libs/libselinux ) systemtap? ( dev-util/systemtap ) app-arch/gzip sys-apps/grep virtual/awk sys-apps/gentoo-functions !<app-misc/pax-utils-1.3.3 !<net-misc/openssh-8.1_p1-r2 >=net-dns/libidn2-2.3.0 vanilla? ( !sys-libs/timezone-data )
-RESTRICT=!test? ( test )
-SLOT=2.2
-SRC_URI=mirror://gnu/glibc/glibc-2.35.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/glibc-2.35-patches-8.tar.xz experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220522.tar.xz ) https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-2.22.tar.gz multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-20201208.tar.xz ) systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-20210729.tar.gz )
-_eclasses_=eapi8-dosym cd7d420bb5be5ee079f27239ce76b8f5 edos2unix 33e347e171066657f91f8b0c72ec8773 eutils 8f942ebdcf04334697649d4a0bf65a32 flag-o-matic 38d6ec96711cea42a5cb1cc723a6e906 gnuconfig b6b3e92f8b8c996400074b5f61a59256 multilib 5ca4e49abed8e3a2f7b56920eadee157 multiprocessing b4e253ab22cef7b1085e9b67c7a3b730 prefix eab3c99d77fe00506c109c8a736186f7 preserve-libs a8e50acee31b5759b4df1f7707cae54b python-any-r1 a3e9c0524a795d7f2767a2cf12a2e8c0 python-utils-r1 6f8f68a64a4304f487bb725227f2fdac strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 systemd 2736b403a83f194b59b767f3b344c2c1 tmpfiles 216aa76c3a6fcb5d893c23a0de86048f toolchain-funcs 1542e649be915f43f6908a9e93909961 wrapper 4a1902f969e5718126434fc35f3a0d9c
-_md5_=c315aa5b7851359551225e05c59022e0
diff --git a/metadata/news/Manifest b/metadata/news/Manifest
index b5938ebbe095..4d7e5f04f8f4 100644
--- a/metadata/news/Manifest
+++ b/metadata/news/Manifest
@@ -2,22 +2,22 @@
Hash: SHA512
MANIFEST Manifest.files.gz 13864 BLAKE2B 373887a06bb63946485d0b9e08e52b3b3c3fbeda530b58fbe19569ccedfd0a8f7c63f073261fcef68edcbf9331108cf543382117b2f60c464926fff49fff9e18 SHA512 b3adafe44390700af75c3b98d6b21ba11902c1f2033fb07a8064382a68a6b6c023b73b318e0a8159e5911175172732771aae9261f870aee90bb5b6e69de3f24d
-TIMESTAMP 2022-07-28T18:40:01Z
+TIMESTAMP 2022-07-29T00:40:03Z
-----BEGIN PGP SIGNATURE-----
-iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmLi2AFfFIAAAAAALgAo
+iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmLjLGNfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
-klD8dBAAisFQ5TXvW56IwMf5IrFIam2tpZ/unxVdRbx3fQ4NVS5W29wV6N28Z7k0
-MpW8IXLGpg+de3BQFPd1Rm7VikOM4QdtEb1Y/gL/unxbxvmQSJVV7auPmNsBFoUb
-y/hg/sv9mjjC4aOZONyK4jQz8h+Wxtz3G0k4FtCIPvkF/ZrJ+LmlqhVZH2NR9r47
-KovGew3AMIQR/NMNVsii4A7+ovmMEt1uzxMvM3NR0IRWk8YPfscuKy8GpL4X0iRC
-zMbOh0AjuJ2gekkX6kvGueanU/mitfWoL/qWPx3814yK9BqQjYvwtdZO5JheD99K
-RqJd8G6AiO9cXuNqzi5ECz1yYMObq7zZ/qz2QJwTi8Rpv+KTOzhW8dMeB3Nq0OEE
-4DuPeW374hfu8+VGz4GnFs842tuEt3lNiJUxHOnlAmdhCbYGVHqdF1IpAtzpcJId
-C8WaarbNgLo+fKHFNo7L8aghy0L60965gsTJNTR8+vCxo5IAJz8rA2A+Nvr3jd85
-/bBSaIMjTDvTvwkFXPBL+2QkvIr/8nzsyOR4iHPXTYg4tHwY9Hxy3eiVkTgtF4Ug
-Qz8GiFSQdc1ya9T0414RgCDw0OO9sYUigyrIugLWUQeOVSI0Uvir485sCTZNuIwb
-lagjFtUu52tNOQwwELyKUZFJChuuuxWpz3wbx6LLva47mxsC7ts=
-=BXNW
+klBnVRAAjH6NCBLISFIGypzk9pG82/p0c08LUiYDbjfdQm15EQQnJXViQt3KA1lH
+KcuIKt48aU5svgd1giM65c3HDLeAb98uGegV5Ym06OYLDQY1la4eIBUfr6O+AyXz
+l7yv9gyfE0VLO22n6YFKSo/y+hq8QhpG0IIk7TbR4IbODMoXKcPY7ED6RiqfDF2I
+ou6P/+PCuwRzIGc0KmkZ/c6Xk84hPPldgFZVl2EW/bmvCJKl/izfhsMY7GgfYMs4
+VMM0Qs4q+PigF+3gXlmGcvCWAE/1+MTzT/gCGbYV+ttwi7yRKkFLe952Hntepi1d
+n6iun8lDk5EX+q/H01Hc71tke98e0b+PjLBMPgGtFLg1peZWfXpiH1YfbvZQtJxs
+taWBbjVlFAz5NJ3PTALnpCO+/4gN86gUP9XkQ57auRdy6LRwgUlFfWmlMv0csNW4
+ih2+TiMU/waD9ZUlIhLq0GH6NHZBz0YaRTADOrwJp/0NCWbXKFSxRGGgs7HLyFSF
+ZRxG+UbyUhmrzSmDu6NsXAB+D95IDW5i5OT9KJaOa0irs0qLpLUgxB/QL6lnVDuk
+qNO2IxjVO8VJjszwviiqiBdb1wMeskmx/peGrTzYxpaY9Bikel2lFm7RjcM8IKHK
+ANnpstdwfIpaLwplL7NLu1T20fWPuJJxx8vb4b+1IwISEnvuxIY=
+=OjJm
-----END PGP SIGNATURE-----
diff --git a/metadata/news/timestamp.chk b/metadata/news/timestamp.chk
index f871f0fe58f2..21ef0f0cad48 100644
--- a/metadata/news/timestamp.chk
+++ b/metadata/news/timestamp.chk
@@ -1 +1 @@
-Thu, 28 Jul 2022 18:39:59 +0000
+Fri, 29 Jul 2022 00:40:00 +0000
diff --git a/metadata/timestamp b/metadata/timestamp
index 94dfbba1524f..3625b0d181a0 100644
--- a/metadata/timestamp
+++ b/metadata/timestamp
@@ -1 +1 @@
-Thu Jul 28 06:39:58 PM UTC 2022
+Fri Jul 29 12:40:00 AM UTC 2022
diff --git a/metadata/timestamp.chk b/metadata/timestamp.chk
index 504683fd6f11..ccc618ec9eea 100644
--- a/metadata/timestamp.chk
+++ b/metadata/timestamp.chk
@@ -1 +1 @@
-Thu, 28 Jul 2022 18:45:01 +0000
+Fri, 29 Jul 2022 00:45:01 +0000
diff --git a/metadata/timestamp.commit b/metadata/timestamp.commit
index 8ebb82ef2e60..7c32b461da5d 100644
--- a/metadata/timestamp.commit
+++ b/metadata/timestamp.commit
@@ -1 +1 @@
-9ac3b599ab69b5b1d7d10a38b649fb3100fbe238 1659033285 2022-07-28T18:34:45+00:00
+17b3a120c100728a02a4f348e634d9acd6856f2f 1659053443 2022-07-29T00:10:43+00:00
diff --git a/metadata/timestamp.x b/metadata/timestamp.x
index 2b08f18fd1e1..ca0beffae1a3 100644
--- a/metadata/timestamp.x
+++ b/metadata/timestamp.x
@@ -1 +1 @@
-1659033602 Thu 28 Jul 2022 06:40:02 PM UTC
+1659055201 Fri 29 Jul 2022 12:40:01 AM UTC
diff --git a/metadata/xml-schema/timestamp.chk b/metadata/xml-schema/timestamp.chk
index ff901f984878..21ef0f0cad48 100644
--- a/metadata/xml-schema/timestamp.chk
+++ b/metadata/xml-schema/timestamp.chk
@@ -1 +1 @@
-Thu, 28 Jul 2022 18:39:58 +0000
+Fri, 29 Jul 2022 00:40:00 +0000
diff --git a/net-fs/Manifest.gz b/net-fs/Manifest.gz
index abae1c753eb8..2ed49ef073df 100644
--- a/net-fs/Manifest.gz
+++ b/net-fs/Manifest.gz
Binary files differ
diff --git a/net-fs/cifs-utils/Manifest b/net-fs/cifs-utils/Manifest
index 24a9f555f5d1..7a86a12c32cf 100644
--- a/net-fs/cifs-utils/Manifest
+++ b/net-fs/cifs-utils/Manifest
@@ -5,5 +5,6 @@ DIST cifs-utils-6.13-kerberos_mount_regression_fix.patch.xz 4336 BLAKE2B de268f8
DIST cifs-utils-6.13.tar.bz2 414584 BLAKE2B 5133ea39fc65acaf2a9791f8ac97dee681dd12f509e0abd095542ce663e7c62002b033dcf35f0a8eec214cb9940597fb568fd50d4cfe5271ca4e433afbe1a7bc SHA512 1337ac4b69f0c3e8d0241eb608207ba81dfa35f84c661649d25da78637882c4d73467b0f632be0bd120362e0b786e40eb340bffcf21c8a09629c441100fd10de
DIST cifs-utils-6.15.tar.bz2 416592 BLAKE2B 8af926bf255c5b3a66bf52ccca99632aacb9ed1c83ad7db5543b32df2f3bcd4be9a9cd17b744ec115d1568d07084e2bd2d03849aa9ab97cff2862f39bcf137b8 SHA512 eedb8066563db584595a8ba7cb7a603e6b763ac2c1261430d605c327fcc5a831acd48b58ea55dd243af778dfdc827ab8c6daf4015764ff550dcffc2182773510
EBUILD cifs-utils-6.13-r1.ebuild 3634 BLAKE2B 306cfc34bd2e8bab67f221bac8abcac52d5b57556f1e10ed3a9248ce83345d2269276e5727cc5f134af13431ff61b95ba9a3637dd4d91cb7ee2e51a8a0541223 SHA512 50d15605ff770799c16d8c0acc9b55199620f89ed1a62d7056e59da7359989174ccccca4fa18169219dd3dd72ecd1b429b733030245758232aec1c8b6e87655f
+EBUILD cifs-utils-6.15-r1.ebuild 3548 BLAKE2B 1f0eb28db9e991bc2bf810cd0f236ea2980593c48a2a3da2117524638e5c8c1828f710f1cec86ea242ae4fa2aaffdb701cb573940bbf027ffaab35685372c073 SHA512 4d01dd68cb3ce99e979fb313e892ab8bbf5400e6327ac5064a432e43ba04c71dafb9848b4717b76e72437b317a9eec9f20cba079f6ad972873e1927bb238082e
EBUILD cifs-utils-6.15.ebuild 3485 BLAKE2B 691f8b6be41701110de819a67f9fa064e693757bcb9ad99d17b0da7dae4ee2e176455da08f16adc324c11d3eb9ea2dba5aab077049d42832db85b9532e2ba59c SHA512 5381c672478fd3bf506272f1cda66b5bf0a8bb1fec2435c1f84bb74fc56a67f909dfcbd9fba8415e166a6f73edadbfc6c6c6afdcf774238e15d26adf4348af6c
MISC metadata.xml 967 BLAKE2B dc6654b412c77f2e95cad9cfa2d4e4465d3292b546d55ddc04ad1b3d5b8220bbe4ef0b0d1409fb2f5da99851d45567667935057f5d5c15dad4e2cf26e3ce0e00 SHA512 c6b0fbdd9d776695032cd4a3e109717dfa7cd07b1456da8264dc0688fcfa158d1f4a73758ee24ba318f14e7a321811bd24f688ca3c39156b304028566315b650
diff --git a/net-fs/cifs-utils/cifs-utils-6.15-r1.ebuild b/net-fs/cifs-utils/cifs-utils-6.15-r1.ebuild
new file mode 100644
index 000000000000..cb09a6056c8e
--- /dev/null
+++ b/net-fs/cifs-utils/cifs-utils-6.15-r1.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..11} )
+
+inherit autotools bash-completion-r1 linux-info pam python-single-r1
+
+DESCRIPTION="Tools for Managing Linux CIFS Client Filesystems"
+HOMEPAGE="https://wiki.samba.org/index.php/LinuxCIFS_utils"
+SRC_URI="https://ftp.samba.org/pub/linux-cifs/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
+IUSE="+acl +ads +caps creds pam +python systemd"
+
+RDEPEND="
+ ads? (
+ sys-apps/keyutils:=
+ sys-libs/talloc
+ virtual/krb5
+ )
+ caps? ( sys-libs/libcap-ng )
+ creds? ( sys-apps/keyutils:= )
+ pam? (
+ sys-apps/keyutils:=
+ sys-libs/pam
+ )
+ python? ( ${PYTHON_DEPS} )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-python/docutils"
+PDEPEND="
+ acl? ( >=net-fs/samba-4.0.0_alpha1 )
+"
+
+REQUIRED_USE="
+ acl? ( ads )
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+DOCS="doc/linux-cifs-client-guide.odt"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-6.12-ln_in_destdir.patch" #766594
+ "${FILESDIR}/${PN}-6.15-musl.patch"
+)
+
+pkg_setup() {
+ linux-info_pkg_setup
+
+ if ! linux_config_exists || ! linux_chkconfig_present CIFS; then
+ ewarn "You must enable CIFS support in your kernel config, "
+ ewarn "to be able to mount samba shares. You can find it at"
+ ewarn
+ ewarn " File systems"
+ ewarn " Network File Systems"
+ ewarn " CIFS support"
+ ewarn
+ ewarn "and recompile your kernel ..."
+ fi
+
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ if has_version app-crypt/heimdal ; then
+ # https://bugs.gentoo.org/612584
+ eapply "${FILESDIR}/${PN}-6.7-heimdal.patch"
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --enable-man
+ --enable-smbinfo
+ $(use_enable acl cifsacl cifsidmap)
+ $(use_enable ads cifsupcall)
+ $(use_with caps libcap)
+ $(use_enable creds cifscreds)
+ $(use_enable pam)
+ $(use_with pam pamdir $(getpam_mod_dir))
+ $(use_enable python pythontools)
+ # mount.cifs can get passwords from systemd
+ $(use_enable systemd)
+ )
+ ROOTSBINDIR="${EPREFIX}"/sbin \
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ # remove empty directories
+ find "${ED}" -type d -empty -delete || die
+
+ if use acl ; then
+ dodir /etc/cifs-utils
+ dosym ../../usr/$(get_libdir)/cifs-utils/idmapwb.so \
+ /etc/cifs-utils/idmap-plugin
+ dodir /etc/request-key.d
+ echo 'create cifs.idmap * * /usr/sbin/cifs.idmap %k' \
+ > "${ED}/etc/request-key.d/cifs.idmap.conf"
+ fi
+
+ if use ads ; then
+ dodir /etc/request-key.d
+ echo 'create dns_resolver * * /usr/sbin/cifs.upcall %k' \
+ > "${ED}/etc/request-key.d/cifs.upcall.conf"
+ echo 'create cifs.spnego * * /usr/sbin/cifs.upcall %k' \
+ > "${ED}/etc/request-key.d/cifs.spnego.conf"
+ fi
+
+ dobashcomp bash-completion/smbinfo
+ use python && python_fix_shebang "${ED}"
+}
+
+pkg_postinst() {
+ # Inform about set-user-ID bit of mount.cifs
+ ewarn "setuid use flag was dropped due to multiple security implications"
+ ewarn "such as CVE-2009-2948, CVE-2011-3585 and CVE-2012-1586"
+ ewarn "You are free to set setuid flags by yourself"
+
+ # Inform about upcall usage
+ if use acl ; then
+ einfo "The cifs.idmap utility has been enabled by creating the"
+ einfo "configuration file /etc/request-key.d/cifs.idmap.conf"
+ einfo "This enables you to get and set CIFS acls."
+ fi
+
+ if use ads ; then
+ einfo "The cifs.upcall utility has been enabled by creating the"
+ einfo "configuration file /etc/request-key.d/cifs.upcall.conf"
+ einfo "This enables you to mount DFS shares."
+ fi
+}
diff --git a/net-im/Manifest.gz b/net-im/Manifest.gz
index b85fad8c38be..892e2cc462ff 100644
--- a/net-im/Manifest.gz
+++ b/net-im/Manifest.gz
Binary files differ
diff --git a/net-im/element-desktop-bin/Manifest b/net-im/element-desktop-bin/Manifest
index a0e85dc04500..543308410894 100644
--- a/net-im/element-desktop-bin/Manifest
+++ b/net-im/element-desktop-bin/Manifest
@@ -1,3 +1,3 @@
-DIST element-desktop_1.11.0_amd64.deb 77620964 BLAKE2B 096fc290184f4d4c0bc4a7dcbad44caf1292edce59cb2dd9c65e8cdd62c82d94b241ebc1cecb9bb9c20bc89eff4bfbc566e615bf3ebe209dd31d6236a2148cb5 SHA512 7bf19b0655c0578bdd6aec589e2ebda4ca71da357abd3a9193281e3dc4ef35ca56afb4294b3864a608038c5e2274cdec2cbea9145ab7f5c577708be3c88fc20d
-EBUILD element-desktop-bin-1.11.0.ebuild 1764 BLAKE2B 18cd0a0fff3be2988c1c3750fe0204dbc4355f81eb20c0d4fbbf2dd78ba58c12e3d12dae1fb3491789b4c52a59a9b900c3494f629b6b0fc47f9114a18b7da55e SHA512 5e95c3c67c3977063915f1eb2db22d81e8f7ab12c65cb9ebef917c588cab7cb2ebe3846e61e7a6f197c1bb2ad94fc10e1a62fc9157bff233456fdd020d8a6786
+DIST element-desktop_1.11.1_amd64.deb 77798732 BLAKE2B 8f7bf5649f2cc92b537b7c916a4b5ee019f7d69bc2f1c401780d2dc7d991e24497655188173d70b85d325fa5c66a9cadafa09113da4afc4bf2cb6af66992242d SHA512 d13fe1805e47740e7465a11a1eaddac9278fa93f9636fe6ef1eac5e862024432ccd72fe01d5d42576433b0f29fce71639dee9c1bcead03fd424f0e1a4d73ba70
+EBUILD element-desktop-bin-1.11.1.ebuild 1764 BLAKE2B 18cd0a0fff3be2988c1c3750fe0204dbc4355f81eb20c0d4fbbf2dd78ba58c12e3d12dae1fb3491789b4c52a59a9b900c3494f629b6b0fc47f9114a18b7da55e SHA512 5e95c3c67c3977063915f1eb2db22d81e8f7ab12c65cb9ebef917c588cab7cb2ebe3846e61e7a6f197c1bb2ad94fc10e1a62fc9157bff233456fdd020d8a6786
MISC metadata.xml 248 BLAKE2B 88afa54e3134b10ecc3f3f7e19fb6b209f3908a517788151cfe6c6ced2b21d368f19a6de982c28575b14a8769069c02b70f639ab73618a9b949c0e9eaf4f17a0 SHA512 3ec152d35cfd434c4ba49a51afd5f2eeaed478983f49f5e61e0713af7da791faee69713a3740182302d8129fb538e8296d0b40152e23e7d5e6d1a996322e7122
diff --git a/net-im/element-desktop-bin/element-desktop-bin-1.11.0.ebuild b/net-im/element-desktop-bin/element-desktop-bin-1.11.1.ebuild
index 75cf22a7be9b..75cf22a7be9b 100644
--- a/net-im/element-desktop-bin/element-desktop-bin-1.11.0.ebuild
+++ b/net-im/element-desktop-bin/element-desktop-bin-1.11.1.ebuild
diff --git a/net-mail/Manifest.gz b/net-mail/Manifest.gz
index 62f7afd7d0d2..b2e45dd57597 100644
--- a/net-mail/Manifest.gz
+++ b/net-mail/Manifest.gz
Binary files differ
diff --git a/net-mail/mu/Manifest b/net-mail/mu/Manifest
index 737379a6db22..f5b2577ae13d 100644
--- a/net-mail/mu/Manifest
+++ b/net-mail/mu/Manifest
@@ -6,5 +6,5 @@ DIST mu-1.8.7.tar.xz 539664 BLAKE2B 2f0081f350c0d6da4b7920c0380a02aab42eda120620
EBUILD mu-1.6.10.ebuild 1586 BLAKE2B d14b3421814913a85460439407fb4fc90b9537df3132520c64697a20b5b3f35fc8c658395a36d4fabf514da9964333969c4e86d1092866cc6d033732d836a168 SHA512 465f3afbb8e522ce51404d6f0de08984b680498fe322484bec0f9dd2a5740fc4405ea69a78d081d9e07fcc26520c50e3349706d830c8cc2fb5dd4539f719c15a
EBUILD mu-1.8.5.ebuild 2103 BLAKE2B 3def0840baba20487d6256076c9327c2762cca569af1e1c48589ee7308569f20e88aa32245b449eca9416dc4f819937f1720a0c569799d7ae29cbc7b595eb07a SHA512 f24cb94e4c8d62559a5ef824472d2684ff7b8a5239c9112c8bace36a4df6c0c38089a707bf9138928b874ef445165efd5e18bca644659fb140f1a90abb548459
EBUILD mu-1.8.6.ebuild 2103 BLAKE2B 3def0840baba20487d6256076c9327c2762cca569af1e1c48589ee7308569f20e88aa32245b449eca9416dc4f819937f1720a0c569799d7ae29cbc7b595eb07a SHA512 f24cb94e4c8d62559a5ef824472d2684ff7b8a5239c9112c8bace36a4df6c0c38089a707bf9138928b874ef445165efd5e18bca644659fb140f1a90abb548459
-EBUILD mu-1.8.7.ebuild 2103 BLAKE2B 3def0840baba20487d6256076c9327c2762cca569af1e1c48589ee7308569f20e88aa32245b449eca9416dc4f819937f1720a0c569799d7ae29cbc7b595eb07a SHA512 f24cb94e4c8d62559a5ef824472d2684ff7b8a5239c9112c8bace36a4df6c0c38089a707bf9138928b874ef445165efd5e18bca644659fb140f1a90abb548459
+EBUILD mu-1.8.7.ebuild 2110 BLAKE2B 2b8f8b9b743c791c4f478d9b845898424f124b1db1cbab5fa8a1f06c5084882772d7df0037aefca9a0c96e0ad85ca5a9b8aa1736a6d35b2b3fb8def46fdd8ef1 SHA512 b23ab25334362138678db0133ee7251159513f2753dcb22f119f074e63ef2d7060d4ed2f5cbf0ed04555b78327c9af30dd6458fd6e9d65ab4c5e7ab362b78e17
MISC metadata.xml 893 BLAKE2B 4d21c0794fc184957939ebaab628b9a1abe0bbdb63915157e266ce0a773fe3acc52722d010d3b4e096f86257e945c0f9dd51cd0dbe54c37f717408ffe942bc06 SHA512 7f499e039820d12c9acd0affe2a402fc53ee6367684a3c2ba25669987f02b0fabb3db0de978e197876bd9e3af315734af398ba7c8305119c511d59c709b6e225
diff --git a/net-mail/mu/mu-1.8.7.ebuild b/net-mail/mu/mu-1.8.7.ebuild
index af673005c01c..2e8ad733ced5 100644
--- a/net-mail/mu/mu-1.8.7.ebuild
+++ b/net-mail/mu/mu-1.8.7.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/djcb/mu/releases/download/v${PV}/${P}.tar.xz"
LICENSE="GPL-3+"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~x64-macos"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos"
IUSE="emacs readline"
DEPEND="
diff --git a/net-misc/Manifest.gz b/net-misc/Manifest.gz
index 903105b07b9e..ce37a5722405 100644
--- a/net-misc/Manifest.gz
+++ b/net-misc/Manifest.gz
Binary files differ
diff --git a/net-misc/youtube-viewer/Manifest b/net-misc/youtube-viewer/Manifest
index 5c55636df506..3bb64b5f33f4 100644
--- a/net-misc/youtube-viewer/Manifest
+++ b/net-misc/youtube-viewer/Manifest
@@ -1,4 +1,4 @@
-DIST youtube-viewer-3.9.7.tar.gz 260891 BLAKE2B 7178371f5749c8933d31720f1e42494ff16c73c50b6c6be19b0d1ce68fcd836cfc9a256f33c5fe6af48785c5c26ae3515afe5601e0d6141e0cbbc77e13f21da8 SHA512 77d94d706055f3657bb032f44fa52ef5d89554d1ad64d78d579d89849f9a5c6d24560421d5e6e01b6a51eb134c6eff76e523091d483b6dbffd4f7a500471e509
-EBUILD youtube-viewer-3.9.7.ebuild 2155 BLAKE2B 75dc00d0d8174c15cf2cb2ea16ad9a7be1f6c3d542d2cfc6f897a8a6caed037f2c4e4dfaede51da221b0992fa2a3958d55fc61a2b60e5b4c5ca87d919defffba SHA512 43aad96ba6ce9170f25c10d48989ccad746602085ae5eba7c1176231a79cdab501a680ff4f617eea8536d495f639a436ba521342b91bb9d52e76ce60f98ba3a7
-EBUILD youtube-viewer-9999.ebuild 1900 BLAKE2B 91781403d8f6cb1d78d5515df34c14eabd44321be2710a7a27309482f2483dd0be0bfba8d969b59598daa3d2e902cadf37836aae8fda9bf257001489f4aa3008 SHA512 f88fc45d40545515638960f84e11e9693ea9c37c17cb11cceaf126dddaddef3fb95e6954d8ab8b062c3c5619e3f6c41055062407c2af6789c55d7cfe335e527c
+DIST youtube-viewer-3.10.1.tar.gz 263735 BLAKE2B 319c0d1f3342fc4988215e70205e6a0c627cfd7f4edfa61788474621859ae72ba6e5212818c3bb95d0a15345575dec049be7240861b03d4d62b9ef95873a908a SHA512 629601ea912258873eb2c5ad4b527eb45f733847611fc2424fcb038758fda06c3bd730b14781d9e091c0b6a1d9fd637ad15a08079f68469edfe7d83124408242
+EBUILD youtube-viewer-3.10.1.ebuild 2171 BLAKE2B 958f89c8b47ce90a90d72c3ea68b29c950ac87b596094ef101e70a9b7db489c297a510514b3d60fb4077e614c695afb2884ffc384419ba15c8f2109fdcc40d30 SHA512 87d13185565855df8afa960f5ece91841cb25369e97f15585e7b27afdedf654863ce87e2b89e4e0dd905c2c4f979efd1335cce96c80c2b4ba9ac52490534e302
+EBUILD youtube-viewer-9999.ebuild 1916 BLAKE2B f9fa22617befa7dca6b82306ae2c1210bd704c40465529459052a3080eca523dd1a0118a0ee00797a2fa7ae813137a1292ddec7dacc77975753599c54432e437 SHA512 5364fb72f1dfbb7758995750a3e08fddede4f74dd86a1bc94598307640ac8011e059cfa22b83a515a93c5e0558905ca057400afbe1fb1493b54567061af381fd
MISC metadata.xml 856 BLAKE2B 669dd186f7ce3cbe787ad2fc06dce3104597050d4eef4c02bb26d8256dabb082dc2e5826c2184ffcb6fc18217189d9953d902245b8e2119d3419eccfcb7a7636 SHA512 a3ca8ef08797a5fe27ce5f29a35f7989b736364f8597c2c9726dd92db0f2534c61fc7745f7f674614c832b7c314ee5e3cedce54f570679d81b52781fb7124f1d
diff --git a/net-misc/youtube-viewer/youtube-viewer-3.9.7.ebuild b/net-misc/youtube-viewer/youtube-viewer-3.10.1.ebuild
index e1801189acc6..ae91d86efaf8 100644
--- a/net-misc/youtube-viewer/youtube-viewer-3.9.7.ebuild
+++ b/net-misc/youtube-viewer/youtube-viewer-3.10.1.ebuild
@@ -64,7 +64,7 @@ pkg_postinst() {
optfeature "local cache support" dev-perl/LWP-UserAgent-Cached
optfeature "faster JSON to HASH conversion" dev-perl/JSON-XS
optfeature "printing results in a fixed-width format (--fixed-width, -W)" dev-perl/Text-CharWidth
- optfeature "live streams support" net-misc/youtube-dl
+ optfeature "live streams support" net-misc/yt-dlp net-misc/youtube-dl
elog
elog "Check the configuration file in ~/.config/youtube-viewer/"
elog "and configure your video player backend."
diff --git a/net-misc/youtube-viewer/youtube-viewer-9999.ebuild b/net-misc/youtube-viewer/youtube-viewer-9999.ebuild
index b5135da0e18f..60a5b0a98c32 100644
--- a/net-misc/youtube-viewer/youtube-viewer-9999.ebuild
+++ b/net-misc/youtube-viewer/youtube-viewer-9999.ebuild
@@ -65,7 +65,7 @@ pkg_postinst() {
optfeature "local cache support" dev-perl/LWP-UserAgent-Cached
optfeature "faster JSON to HASH conversion" dev-perl/JSON-XS
optfeature "printing results in a fixed-width format (--fixed-width, -W)" dev-perl/Text-CharWidth
- optfeature "live streams support" net-misc/youtube-dl
+ optfeature "live streams support" net-misc/yt-dlp net-misc/youtube-dl
elog
elog "Check the configuration file in ~/.config/youtube-viewer/"
elog "and configure your video player backend."
diff --git a/net-proxy/Manifest.gz b/net-proxy/Manifest.gz
index 0ec103828156..b4e9a36bcd7c 100644
--- a/net-proxy/Manifest.gz
+++ b/net-proxy/Manifest.gz
Binary files differ
diff --git a/net-proxy/torsocks/Manifest b/net-proxy/torsocks/Manifest
index b919f11111a6..082f9cfed223 100644
--- a/net-proxy/torsocks/Manifest
+++ b/net-proxy/torsocks/Manifest
@@ -2,5 +2,5 @@ AUX torsocks-2.3.0-fix-syscall.patch 2687 BLAKE2B 2ef527aa1618af20da02e2b08ddc59
DIST torsocks-2.3.0.tar.gz 118033 BLAKE2B a4329ffa5e20204024c4f7dda8619ba2d3e2a5f370727acdc720527688bdb3f8735b0386dfa07758fe59e1890f9ce88bb148a1b0c401bbb5966d2fe17934ca61 SHA512 139f4cf60191632add8bc845b2d68d25a0285e9746988167d832e50cedb8083f2765571429d3a11350fa2d327a1ff0a0ead9b464dac90d897b13ab948f609114
DIST torsocks-2.4.0.tar.gz 118991 BLAKE2B e1817c3bbf10f83431292c644d7187e40b62c5f223784074b3f9c082d8d75243090e226ffebb6fd81805fbd887588790833adc4ab8923e8116585c0a29255ad0 SHA512 7d625ce3a4600f87b86ae9ac79dfd206e7709cb0bafe0b7afcf33a6f1825f968cc63ad3e23c584582b244647bdeafbfdbfc54f7c81e521b0a3d278a1483ce86e
EBUILD torsocks-2.3.0.ebuild 1026 BLAKE2B b7ec706ca0d001952893f21983f26fcf7dae8a7e694b9966dfafde1f11038dc6169a47443d36c1b5190117976ba7992c2cf10f49f9ade06d081783257f043a22 SHA512 1721265f13357ada138dd0a6768754e0ece133ebbe952bc8b8144461d2bf0f03cbb03252bb53a5153640bfa06e2ea038254e34f3c2529550ccacb1a3530688da
-EBUILD torsocks-2.4.0.ebuild 1000 BLAKE2B 9dea89f4d467a7ab55d8006665899905caf30e823417a8084cdadc4a2cdd93729e641517aaef4f75b9b68120fbaaaa61b235e6b3ebe9e91fa9d9a0292e5427d6 SHA512 8f92b28ac97c9125556ee41113f2b69392f29a6d07151137e73c09da7ee96562d130690b0be8b6d475b1ebab1066c020763c9c47972d55fc6dea59fbb4623a43
+EBUILD torsocks-2.4.0.ebuild 999 BLAKE2B 9e36ba129140ed406977e5ed0743d832d7b9f2c3c194becf4dabe482dafb5fd2cac06943210e13a3db63875a7635e2416a3eb493e1c56bd7151b9e12bd480437 SHA512 b31f50cd6e18ac7195e49f800f3e664da82570841c79bd99777179b581c76ea8f222dc77adfb5be1e075657d7e0e3cd214f420775d241b52ac5baa97fa8681ca
MISC metadata.xml 387 BLAKE2B ae2839753c5bcf74c79d3931d8a0d7525475c89646ebf050f87744ae85915c740dc05cb695942ae6d042abe68099802581ef1730b9b0cc4d62277d9d0da17339 SHA512 8e71f9eeb801270df3f8e9855f2158eaa460bf02ff6ec4cf13cca9daaa7bc8e9febc2d410d6b9f33529831c713888dbb94b121bad5721efe324572d817097764
diff --git a/net-proxy/torsocks/torsocks-2.4.0.ebuild b/net-proxy/torsocks/torsocks-2.4.0.ebuild
index 391f00609e8e..94ad25e9ef98 100644
--- a/net-proxy/torsocks/torsocks-2.4.0.ebuild
+++ b/net-proxy/torsocks/torsocks-2.4.0.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://gitlab.torproject.org/tpo/core/torsocks/-/archive/v${PV}/${UPST
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~arm ~x86"
+KEYWORDS="amd64 ~arm x86"
IUSE="static-libs"
# We do not depend on tor which might be running on a different box
diff --git a/sys-cluster/Manifest.gz b/sys-cluster/Manifest.gz
index 1e9624eb0d72..9d3264298731 100644
--- a/sys-cluster/Manifest.gz
+++ b/sys-cluster/Manifest.gz
Binary files differ
diff --git a/sys-cluster/kube-router/Manifest b/sys-cluster/kube-router/Manifest
index dec620e17514..7f57b5400824 100644
--- a/sys-cluster/kube-router/Manifest
+++ b/sys-cluster/kube-router/Manifest
@@ -1,8 +1,11 @@
-AUX kube-router.confd 320 BLAKE2B a3b4973007bab2d7b4bf4f21beb85c59adb0d66b2dd4bf1152d7818b1039e74624e0a2255123cbdace8e419aed1e0a9e87ba3c6b7fa7263cb4667fcabce6829b SHA512 cc150ad9dae389011449c31541a326625f781ead15cc12502bdb5704b13921e0a4a740abb27fafb7dc260c6d66f44e855ecf5ef1300077377a9aa0a08f50db1c
-AUX kube-router.initd 963 BLAKE2B 5226134d18790b246bcd516f72f54f992ebc61f69799a730e095e65bc4c805494d8760ec0ce9f564c8ee7856379993cf18b9e5ce3d10c25afbbc0937b1d075b8 SHA512 f6c41ae0ff20abd1e1f29ede282f49fad0112fa634104b6603d5a1d78ff6457e5739956b2e28353f2b21964b5ec11158626b1cbbb8cea510cdb5463a062e8d63
+AUX kube-router.confd 385 BLAKE2B 7e99600ca1301cd925bf61d7db605c01bd923ad998745abdc052c75736bc14f8b9f38b37fceaac0f920156622ddd31a6302a033e5fe4635ab278f309047b1a27 SHA512 0a1c02c52b4ece2eb57ab7d464dbfa2e6f8d056dbb437a220825456ca651d64bf4f01efffb63054ba8913050e7e882a6f57875d4e2b6abd877c47a3682c02ea4
+AUX kube-router.initd 979 BLAKE2B 81e7cf641dc4468325c8d883ffd73be88da433da5309efdcb153901dec5df7aded515608fbeba0e391a0ed655e2c3dcf9d0606ad67abff9905ad667afffbc5bc SHA512 b61ed530b73c6d788eb55e74f75829d451638f1ccf51c85c3cc23e4c34ef19da4bfb1063abf59dacb88c26389d9c76713690fe7fa7c4b893b5dd4b6c30883e81
AUX kube-router.logrotated 85 BLAKE2B 41c40f60ee686f7387e01c85345e6d8d3c562df2363ba3963a0f465d70a3439d2496931b94f05a1c607d04d4269fd087a4c0e1fd9c3a6f7db89d33bbc366bb30 SHA512 19e92adbc5ff8548784481cdc63d8010c386ea799350d7426c22f9b71c09c4ec9b1ec0a7e08069e1fb5cb51b0a37435ae42b12caf2d8679f2cb892fdc6bf96e1
DIST kube-router-1.1.1.tar.gz 8155406 BLAKE2B c036f94eb8e938d37fcc62c58d64c718493d730e0b3fec9ecc2287a772f9890cf63b9728c3c8b0eae00098173e237b91a3dc8801029ed026800b5df3076e7d5a SHA512 172921e999cd9634663ec522623259ad9b64ce18506b8358d90547714f64a5c0b73598f8da402e1f4ecdabb3f4d5602e784f27a55747a7d4d2c47c42f51abfef
DIST kube-router-1.2.2.tar.gz 8929524 BLAKE2B 246cfbea3a2520109cad1507bda22cb72c2e1625b05d815cda0e014fee634c93a85d1647c8fd4f84aa6f3b8c3e899e215a7cdda7f4c7521f5e44f1c0b85f8251 SHA512 7dc6732b9cfc77fca9fc2fec49716d4bd3eab749089f5a86af66a2c16439e662505dbe0f009c087f85fb7e20393e11f4c007b49c40cfdaabf3b5fcfeac424999
+DIST kube-router-1.5.0-deps.tar.xz 110558264 BLAKE2B f65d75422dd2b8057cb448a7f3c0c70e66768d83f1939496b465c5ffabc7870f56bcde4234affdc15e963f9f61b3025df7d1f98d704f5262ce07ae42308b3040 SHA512 532f560e3431ba36dd8ef36ce6529cb17dc51e6434535f5b58bac3f81c525cf1934c275a2abf80b4606ea831b289660ef8a53f0326780eb45862bc1a1f2401a6
+DIST kube-router-1.5.0.tar.gz 1558200 BLAKE2B b019ffa912a57411e68b03349eafb87a61108d1f63eaad943bc926e6a27b30ac92faf72e0a29f3b1790cd524b0755c2148bf0a7b9e18511012a79657579388ed SHA512 c9fe5977072054c9782c1ef405182b671032e59fddef81e295fec46817c018a3c3eb23b89ee293d3dc9a8645f8d161e337ea19ac1d9da483200ed4c92babe5a4
EBUILD kube-router-1.1.1.ebuild 933 BLAKE2B 8ade85c07e6663f990166fc790fd1fdfa727a81a98b7a05e43b40be79e1b9d33380c5a1e2a50d177af1253c4c2deb63232d71182a15c820e648c365d899a407b SHA512 6cfa18ec1fb750bed13bf2e263c3a72483e97e658a04cee4347b1df80da6e1c9ad3ce963be223b5ca8eb839c191095f4bfd30558a33de773d70c8188bbc6d299
EBUILD kube-router-1.2.2.ebuild 933 BLAKE2B 8ade85c07e6663f990166fc790fd1fdfa727a81a98b7a05e43b40be79e1b9d33380c5a1e2a50d177af1253c4c2deb63232d71182a15c820e648c365d899a407b SHA512 6cfa18ec1fb750bed13bf2e263c3a72483e97e658a04cee4347b1df80da6e1c9ad3ce963be223b5ca8eb839c191095f4bfd30558a33de773d70c8188bbc6d299
+EBUILD kube-router-1.5.0.ebuild 965 BLAKE2B 96be835fd6b1490fadc48690747c3ac008153fd035b1c50e78e92008f228bd827396d3846a5118228b6f2f66bba390f3e087420083a8e8b3defdf39d4652dae7 SHA512 6183e74d82ab6c99e6213b2880ca64b7ff132bcba95da51d7ca7386160a285d2c75068549e41354184eff8ee1ededb9d059490d06dd9a0a498aedfd7382d9a57
MISC metadata.xml 707 BLAKE2B 997b3d35c2fee48dbf2795620d2f6b4f5d4e25ba710c11e2cb7d9aff3fa2117216a28f581c4bbb7d52963f1a484c64f69afbc1d0bf01fc788a72a0d9a625c38c SHA512 de3ee57f45927fda13d9539684f9108f9f1361320534ce1a8c8d33b79c080ccf4881bc138c4763fedc11d244521068c6a53474c5569e2b0bf2684347e800677f
diff --git a/sys-cluster/kube-router/files/kube-router.confd b/sys-cluster/kube-router/files/kube-router.confd
index a5f20a581c4c..601368deaf1e 100644
--- a/sys-cluster/kube-router/files/kube-router.confd
+++ b/sys-cluster/kube-router/files/kube-router.confd
@@ -2,7 +2,8 @@
# KUBECONFIG=/etc/kubernetes/kube-router.kubeconfig
# Leave empty to autodetect:
-# HOSTNAME=
+# HOSTNAME is a bashism, so change to HOSTNAME_OVERRIDE
+# HOSTNAME_OVERRIDE=
# RUN_PROXY=true
# RUN_FIREWALL=true
diff --git a/sys-cluster/kube-router/files/kube-router.initd b/sys-cluster/kube-router/files/kube-router.initd
index 9b96ec024f66..11645e0abc5d 100644
--- a/sys-cluster/kube-router/files/kube-router.initd
+++ b/sys-cluster/kube-router/files/kube-router.initd
@@ -5,14 +5,14 @@
description="Kubernetes routing engine"
supervisor=supervise-daemon
command="/usr/bin/kube-router"
-error_log='/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log'
+error_log="/var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
pidfile="${pidfile:-/run/${RC_SVCNAME}.pid}"
command_args="--master=${K8S_APISERVER} --kubeconfig=${KUBECONFIG} \
--run-service-proxy=${RUN_PROXY:-false} \
--run-firewall=${RUN_FIREWALL:-false} \
--run-router=${RUN_ROUTER:-false} \
- ${HOSTNAME:+--hostname-override=}${HOSTNAME} \
+ ${HOSTNAME_OVERRIDE:+--hostname-override=}${HOSTNAME_OVERRIDE} \
${EXTRA_ARGS}"
extra_commands="clear"
@@ -21,7 +21,7 @@ clear() {
"${command}" --cleanup-config
}
-if [[ -n "${KUBE_ROUTER_HEALTHCHECK_URI}" ]]; then
+if [ -n "${KUBE_ROUTER_HEALTHCHECK_URI}" ]; then
healthcheck_delay=60
healthcheck_timer=30
diff --git a/sys-cluster/kube-router/kube-router-1.5.0.ebuild b/sys-cluster/kube-router/kube-router-1.5.0.ebuild
new file mode 100644
index 000000000000..16fd7f0fbd51
--- /dev/null
+++ b/sys-cluster/kube-router/kube-router-1.5.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit go-module
+
+DESCRIPTION="A turnkey solution for Kubernetes networking"
+HOMEPAGE="https://kube-router.io"
+SRC_URI="https://github.com/cloudnativelabs/kube-router/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-deps.tar.xz"
+
+LICENSE="Apache-2.0 MIT BSD BSD-2 MPL-2.0 ISC LGPL-3-with-linking-exception"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ net-firewall/iptables[conntrack]
+ net-firewall/ipset
+ sys-cluster/ipvsadm
+"
+
+src_compile() {
+ emake BUILD_IN_DOCKER=false GIT_COMMIT=v${PV} kube-router
+}
+
+src_test() {
+ ego test -v -timeout=30s ./cmd/kube-router ./pkg/...
+}
+
+src_install() {
+ dobin "${PN}"
+ einstalldocs
+ newinitd "${FILESDIR}"/kube-router.initd kube-router
+ newconfd "${FILESDIR}"/kube-router.confd kube-router
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/kube-router.logrotated kube-router
+}
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz
index c51ebe08c2fa..328c2760c567 100644
--- a/sys-libs/Manifest.gz
+++ b/sys-libs/Manifest.gz
Binary files differ
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index 638d78a7e475..29a0793e9c0c 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -25,11 +25,7 @@ DIST glibc-2.33-patches-11.tar.xz 143916 BLAKE2B ac13b3ccf9681bb6d3c35ecc33e268e
DIST glibc-2.33.tar.xz 17031280 BLAKE2B 703d12121c1e2c5d9e0c6ba5341f5fb5c4d9111611a83f2360029b5de9c6e5a5611249d1833684a58ed4afdf49cae614365d87ec8721ba0e5d218f593b1f229d SHA512 4cb5777b68b22b746cc51669e0e9282b43c83f6944e42656e6db7195ebb68f2f9260f130fdeb4e3cfc64efae4f58d96c43d388f52be1eb024ca448084684abdb
DIST glibc-2.34-patches-17.tar.xz 241584 BLAKE2B e4eea130c331f64ba66e14a6ba318853141ee3e41b455cb45b8fdb702cae071dd307229dafcfcafcc41e5a56982f52c87e31d95295f824f1a2ae689a7e0f5b49 SHA512 c6a51b373be3986e1ad753541ccf73f29515b5df0f80e0450b26bed37e8c505e22e8f13e89554347e551819c8d89d30f306464e5d25cafa4a12400c112578dca
DIST glibc-2.34.tar.xz 17301232 BLAKE2B 874031192f2f5a3b35c3f5b044a467d4be4e67e8593e070e5b49b901ce8ea6bde2f8d2f6c92fa33b3f61eb723572a9e5f2b45e56064168df80a96d3fdb6fa30c SHA512 15252affd9ef4523a8001db16d497f4fdcb3ddf4cde7fe80e075df0bd3cc6524dc29fbe20229dbf5f97af580556e6b1fac0de321a5fe25322bc3e72f93beb624
-DIST glibc-2.35-loongarch-patches-20220422.tar.xz 44804 BLAKE2B b93720e45d23c8d17918ffaa480351499f4748bc08ab6e1f1fd3c681fcc0b08a3381188f5d4f14e6706baa5eb45c787bc635d0e8ea59712514012caf93992222 SHA512 28e2d02f07fcf61f76585dd59627314ed20ebe29ecd7ae7f5aea8db0704482fc024fee744cbee1776e666d14b80b1393f64cd2283e3c39be4c97ebe09efcdee2
DIST glibc-2.35-loongarch-patches-20220522.tar.xz 44728 BLAKE2B 09e7a061f3269ebd763cd700f7c23e6cd7aab738d87ee31f76a81281920c4e5e207964c79104cd75f0a2e07b77344c2a730a9063344aa1483cd3d9aeac87de40 SHA512 21f13892fb52ec753856d5559b032c2be3a76d1cf940127222f7aa878548ce7e6ea0d2ff8791ddb91aaa2b77ce17131cd2fb2ebbdaa99443bf0a6b4c81f7388d
-DIST glibc-2.35-patches-6.tar.xz 57236 BLAKE2B a03845733e2f0ebe179523458695963d729b4211b4ce14310d55163cd33aff502f9e14a4bb0068410777e9b9bb5be4ef7ad1a1fd51debf9191dcf89dc9ff08b8 SHA512 59c5e1669677e969873f5bba38958316a3b32523cac628b97513aed864e191da10499edac77bb5e9a07179d14cf3c75073fd03e8427f7bcfd68fedcedc35083e
-DIST glibc-2.35-patches-7.tar.xz 163840 BLAKE2B 55352eeaf70f74fd8fcd21bd7f3ba14121b496dcfb59e06b5a73be36838dda4b39fc22201c4320c0c38a454c7f1539aae7f3307107e460bede25be33c0525c11 SHA512 d39bb2fecad8cd9213c61e279823f89c3daf9a4f630ac71503df2e9bfb74e019c996bed9a93aaad89083a729a1d3792e7ed8313ac54d757f47d5614ac3469e59
-DIST glibc-2.35-patches-8.tar.xz 178384 BLAKE2B 89ca0ab51f60a25b0d0c00e619f35e71cb18f1794f3656c5e10d87e41f461c43aca51e40f3d8375014d485100098e18f333d3f99888e062f54e632eabd6ebc31 SHA512 cb0945eda142eebb71315b0fcf570e9410acce3b1153fdc3a9148151a7a37624d4cfb91d06ecf20b4045c70051d4c297f0f58f57ba56d9b0a4304b6b7ce2783f
DIST glibc-2.35-patches-9.tar.xz 183612 BLAKE2B 921664953ed39560ab850754209dbda1f71fbcc5bcc9ec21c187385ea659b90ea055e60961eca266ab3cc81213ed04747aa925dd96a352676fa19d2e63306968 SHA512 24c9ecb6ad890c95bc0e7db3e0c1f20768c728ac0590450fad05aed578623bc33d256d2c4d14a8d8e5c5e9fed7acfab3683053d236f51886cd5a6de93f925ddc
DIST glibc-2.35.tar.xz 18165952 BLAKE2B 623c728884f070cd87ffeb9203f74206197c52405ac9bc44f3dd519a3468b8e8ae2536c883e5d17d94417dbd1e91775de2e674314e4ff7424f9720026d6b7063 SHA512 e7336ce27561be5d7c217832a1136fb327e057bd8d3f92925b35c97e3e9f9e486948b5a1e03e5e4090772ef06437a074d10b82e68f17f1ad8f22077ee39e1b66
DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238
@@ -43,10 +39,6 @@ EBUILD glibc-2.31-r7.ebuild 44526 BLAKE2B d718ec5e28b0a6dcb77bab3813cd3084db5569
EBUILD glibc-2.32-r8.ebuild 44857 BLAKE2B d41468b9ca278945dc54ccc9b9ba7f61ac2d3d95febea6ed98dc9bf7e31072fb76760af9b0883d2bbbde87f34d39569d77d41e4b3100670caf59e35e081e06b8 SHA512 813b3e7be08562736814eec65241969eb660a9ee905ea7307fd6df5e12d271e73a0ba4a62d20273a06fb1450a7505fd66932a9e8a2863690f02b7b9574a556fc
EBUILD glibc-2.33-r13.ebuild 48595 BLAKE2B aa38c687b3a092dd50445d37465561256685aa3730b344837cb6e8cdb6bd1d8cdd8686d2ec3e07a7e9dbd70a4a51c3d412b2cf47a8926c1f6765096309e7746f SHA512 c588e43520ae062a670c231ff7bc85b03949e75d0af498fda869b07363e93d05b7a6ff1214deb27c99981c2c7c278e3603be325f94256f2af82cdf90b9a8ebfc
EBUILD glibc-2.34-r13.ebuild 49586 BLAKE2B 9ff8e86d5ff99695074111b80845f98c9d7d7847b68a1f5e86f477d01b8ca46a138fdf225846f1aebcca727394e1c9b8481827a8a7918727e8fd0a88b5f6d658 SHA512 75b2a878ff5cf1e3b0cf7174f8a145d50ea8c6d2021b32075bcfeaa2ff68e9b3bf31302e72754a7eed0aeb8b4e3fd20f07627f295431375e5f3eecace607f44e
-EBUILD glibc-2.35-r4.ebuild 48864 BLAKE2B 5e08d0af0c852b0cac020527fb6f44e69ddf2bcef1053dd3131be87bf2e2e21ed2f2c77095f56a115cadc3de2d49df55debe5b55ac365aac1921d75e7b255309 SHA512 8734d5b437ecb02ee1fced5531fc26057a4217cf250b9c9459e62f97c0c6e9fdd5062e48725bf1a0e72935e29310a15866bf46e87096a6f1c7ce6b811aa3dab7
-EBUILD glibc-2.35-r5.ebuild 48864 BLAKE2B 7f9e2625115ae38e88de35e258306a72a81ede0e28416c3d0f82c8f1a3031cf777171dcf6912947e1efee507952cfd9db70489ad735fafd11819bedad2f03493 SHA512 87a5d303cfaed16bbb366e41c8b06a6de14129e89e8b9708a3fe2aa5cc650b3ca198bea3eab1a12b75fafe315abc48fa630193135ea45a20478c66a440a3bcc6
-EBUILD glibc-2.35-r6.ebuild 48884 BLAKE2B 3386019549128f05793f6a3a0349a276eec871ccfcbb4173a35c150a615fbf0cf5838cfecbca3e3afea5792f39ec66561dec5bef32f5fab13b7d44c8a3435674 SHA512 dfc79e1346eea739277cf70a9eeb034bc55c8f553de9ca023a95991451469b03fa0c972d662cfdf5cbbcfc96f4675d400f525da611d15aaaed3e7f26808e1e4d
-EBUILD glibc-2.35-r7.ebuild 49267 BLAKE2B beaeaa6ee023e348c3aa7f0002ed9e751ba078e040f0e1f038e3be2a3b4881b416be1ce944a665ccad6eb402f972d88aea2d4c46978aba95bbdef5de45ce486d SHA512 fd7b01d787d2b6234651ce45f47169e477e26e2759673b19683442a563a7eb409347716f27fd700f2449d50d57283e2761726a3209cd2b94967df2505cf57c10
EBUILD glibc-2.35-r8.ebuild 49267 BLAKE2B bbe4dc6799953604c8b4f5e71cbf7f591e13df3017d19d6bee715ff914633410adffc1ec6967b746878eab4522c9d942c0cbc89ab0463632e671060fea9b2b87 SHA512 5db923e9d7e185d15f86e106618c00122ae6d0351ee5134ee6d980e9434df9b3973136a4c35bcd2b3c190aebb4a97b9b05e510ed1cc574e03af791847ed07e23
EBUILD glibc-9999.ebuild 49452 BLAKE2B 77286f3d97e6e8780891b67b69e9c8e1c69f86c5cbf1faad08fdb2aeec724a4fed2cf0a76f9e2e61a513f4d5069c5297167f96ec84817b41f82a691baea3f08d SHA512 cf68116b7e37cf2e74d5446b1ddd8ea59a321a990a767a26093c49a2fab047cfa7ab3aa24b3cdd99a222fa0993fd9802448802bd6f36a31e59410c8f83a5c27b
MISC metadata.xml 1937 BLAKE2B 3c40fcba241335a5a9ca1e53e339fdd51b9304d723b177117c508ff56d152e1ddecde3a0c0bc95b0654c4289d3a87090ba8342d687594c119b3bc127f77b41aa SHA512 056c639e4ecf0f8046363db19de01c580bc0f5d754868ab82cf4fdf576058877a4b28c1516afd08d1afa4ac107b4f35cf8fe681254788382c8387cf03915d1c7
diff --git a/sys-libs/glibc/glibc-2.35-r4.ebuild b/sys-libs/glibc/glibc-2.35-r4.ebuild
deleted file mode 100644
index 6c6fb048ea14..000000000000
--- a/sys-libs/glibc/glibc-2.35-r4.ebuild
+++ /dev/null
@@ -1,1596 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc
-# Please read & adapt the page as necessary if obsolete.
-
-PYTHON_COMPAT=( python3_{8..10} )
-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=6
-PATCH_DEV=dilfridge
-
-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"
- SRC_URI+=" experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220422.tar.xz )"
-fi
-
-RELEASE_VER=${PV}
-
-GCC_BOOTSTRAP_VER=20201208
-
-LOCALE_GEN_VER=2.22
-
-GLIBC_SYSTEMD_VER=20210729
-
-SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz"
-SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
-SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )"
-
-IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla"
-
-# 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"
-
-# Here's how the cross-compile logic breaks down ...
-# CTARGET - machine that will target the binaries
-# CHOST - machine that will host the binaries
-# CBUILD - machine that will build the binaries
-# If CTARGET != CHOST, it means you want a libc for cross-compiling.
-# If CHOST != CBUILD, it means you want to cross-compile the libc.
-# CBUILD = CHOST = CTARGET - native build/install
-# CBUILD != (CHOST = CTARGET) - cross-compile a native build
-# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
-# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
-# For install paths:
-# CHOST = CTARGET - install into /
-# CHOST != CTARGET - install into /usr/CTARGET/
-#
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-
-# Note [Disable automatic stripping]
-# Disabling automatic stripping for a few reasons:
-# - portage's attempt to strip breaks non-native binaries at least on
-# arm: bug #697428
-# - portage's attempt to strip libpthread.so.0 breaks gdb thread
-# enumeration: bug #697910. This is quite subtle:
-# * gdb uses glibc's libthread_db-1.0.so to enumerate threads.
-# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols
-# via 'ps_pglobal_lookup' symbol defined in gdb.
-# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all
-# known symbols in 'libpthread.so.0'. Specifically 'nptl_version'
-# (unexported) is used to sanity check compatibility before enabling
-# debugging.
-# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint
-# * normal 'strip' command trims '.symtab'
-# Thus our main goal here is to prevent 'libpthread.so.0' from
-# losing it's '.symtab' entries.
-# As Gentoo's strip does not allow us to pass less aggressive stripping
-# options and does not check the machine target we strip selectively.
-
-# We need a new-enough binutils/gcc to match upstream baseline.
-# Also we need to make sure our binutils/gcc supports TLS,
-# and that gcc already contains the hardened patches.
-# Lastly, let's avoid some openssh nastiness, bug 708224, as
-# convenience to our users.
-
-# gzip, grep, awk are needed by locale-gen, bug 740750
-
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- sys-devel/bison
- doc? ( sys-apps/texinfo )
- !compile-locales? (
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- )
-"
-COMMON_DEPEND="
- gd? ( media-libs/gd:2= )
- nscd? ( selinux? (
- audit? ( sys-process/audit )
- caps? ( sys-libs/libcap )
- ) )
- suid? ( caps? ( sys-libs/libcap ) )
- selinux? ( sys-libs/libselinux )
- systemtap? ( dev-util/systemtap )
-"
-DEPEND="${COMMON_DEPEND}
- compile-locales? (
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- )
- test? ( >=net-dns/libidn2-2.3.0 )
-"
-RDEPEND="${COMMON_DEPEND}
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- sys-apps/gentoo-functions
- !<app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- !<net-misc/openssh-8.1_p1-r2
-"
-
-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
-)
-
-#
-# Small helper functions
-#
-
-is_crosscompile() {
- [[ ${CHOST} != ${CTARGET} ]]
-}
-
-just_headers() {
- is_crosscompile && use headers-only
-}
-
-alt_prefix() {
- is_crosscompile && echo /usr/${CTARGET}
-}
-
-# This prefix is applicable to CHOST when building against this
-# glibc. It is baked into the library at configure time.
-host_eprefix() {
- is_crosscompile || echo "${EPREFIX}"
-}
-
-# This prefix is applicable to CBUILD when building against this
-# glibc. It determines the destination path at install time.
-build_eprefix() {
- is_crosscompile && echo "${EPREFIX}"
-}
-
-# We need to be able to set alternative headers for compiling for non-native
-# platform. Will also become useful for testing kernel-headers without screwing
-# up the whole system.
-alt_headers() {
- echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
-}
-
-alt_build_headers() {
- if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
- ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
- if tc-is-cross-compiler ; then
- ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
- if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
- local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
- ALT_BUILD_HEADERS=${header_path%/linux/version.h}
- fi
- fi
- fi
- echo "${ALT_BUILD_HEADERS}"
-}
-
-alt_libdir() {
- echo $(alt_prefix)/$(get_libdir)
-}
-alt_usrlibdir() {
- echo $(alt_prefix)/usr/$(get_libdir)
-}
-
-builddir() {
- echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
-}
-
-do_compile_test() {
- local ret save_cflags=${CFLAGS}
- CFLAGS+=" $1"
- shift
-
- pushd "${T}" >/dev/null
-
- rm -f glibc-test*
- printf '%b' "$*" > glibc-test.c
-
- # 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
- ;;
- amd64)
- # -march needed for #185404 #199334
- # TODO: See cross-compile issues listed above for x86.
- [[ ${ABI} == x86 ]] &&
- if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then
- local t=${CTARGET_OPT:-${CTARGET}}
- t=${t%%-*}
- # Normally the target is x86_64-xxx, so turn that into the -march that
- # gcc actually accepts. #528708
- [[ ${t} == "x86_64" ]] && t="x86-64"
- filter-flags '-march=*'
- # ugly, ugly, ugly. ugly.
- CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}")
- export CFLAGS_x86="${CFLAGS_x86} -march=${t}"
- einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})"
- fi
- ;;
- mips)
- # The mips abi cannot support the GNU style hashes. #233233
- filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
- ;;
- ppc|ppc64)
- # Many arch-specific implementations do not work on ppc with
- # cache-block not equal to 128 bytes. This breaks memset:
- # https://sourceware.org/PR26522
- # https://bugs.gentoo.org/737996
- # Use default -mcpu=. For ppc it means non-multiarch setup.
- filter-flags '-mcpu=*'
- ;;
- sparc)
- # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though.
- filter-flags "-fcall-used-g7"
- append-flags "-fcall-used-g6"
-
- local cpu
- case ${CTARGET} in
- sparc64-*)
- cpu="sparc64"
- case $(get-flag mcpu) in
- v9)
- # We need to force at least v9a because the base build doesn't
- # work with just v9.
- # https://sourceware.org/bugzilla/show_bug.cgi?id=19477
- append-flags "-Wa,-xarch=v9a"
- ;;
- esac
- ;;
- sparc-*)
- case $(get-flag mcpu) in
- v8|supersparc|hypersparc|leon|leon3)
- cpu="sparcv8"
- ;;
- *)
- cpu="sparcv9"
- ;;
- esac
- ;;
- esac
- [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
- ;;
- esac
-}
-
-setup_flags() {
- # Make sure host make.conf doesn't pollute us
- if is_crosscompile || tc-is-cross-compiler ; then
- CHOST=${CTARGET} strip-unsupported-flags
- fi
-
- # Store our CFLAGS because it's changed depending on which CTARGET
- # we are building when pulling glibc on a multilib profile
- CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
- CFLAGS=${CFLAGS_BASE}
- CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
- CXXFLAGS=${CXXFLAGS_BASE}
- ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
- ASFLAGS=${ASFLAGS_BASE}
-
- # Allow users to explicitly avoid flag sanitization via
- # USE=custom-cflags.
- if ! use custom-cflags; then
- # Over-zealous CFLAGS can often cause problems. What may work for one
- # person may not work for another. To avoid a large influx of bugs
- # relating to failed builds, we strip most CFLAGS out to ensure as few
- # problems as possible.
- strip-flags
- # Lock glibc at -O2; we want to be conservative here.
- filter-flags '-O?'
- append-flags -O2
- fi
-
- strip-unsupported-flags
- filter-flags -m32 -m64 '-mabi=*'
-
- # glibc aborts if rpath is set by LDFLAGS
- filter-ldflags '-Wl,-rpath=*'
-
- # ld can't use -r & --relax at the same time, bug #788901
- # https://sourceware.org/PR27837
- filter-ldflags '-Wl,--relax'
-
- # #492892
- filter-flags -frecord-gcc-switches
-
- # #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"
- replace-flags -O0 -O1
-
- filter-flags '-fstack-protector*'
-
- # See end of bug #830454; we handle this via USE=cet
- filter-flags '-fcf-protection='
-}
-
-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=${__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
- export CXX=${__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
-
- # and make sure __ORIC_CC and __ORIG_CXX is defined now.
- export __ORIG_CC=${CC}
- export __ORIG_CXX=${CXX}
-
- if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
-
- # If we are running in an otherwise clang/llvm environment, we need to
- # recover the proper gcc and binutils settings here, at least until glibc
- # is finally building with clang. So let's override everything that is
- # set in the clang profiles.
- # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always
- # a good start into that direction.
- # Also, if you're crosscompiling, let's assume you know what you are doing.
- # Hopefully.
- # 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 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_CC=${CC}
- export __GLIBC_CXX=${CXX}
-
- export __abi_CFLAGS="$(get_abi_CFLAGS)"
-
- # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760
- # To build .S (assembly) files with the same ABI-specific flags
- # upstream currently recommends adding CFLAGS to CC/CXX:
- # https://sourceware.org/PR23273
- # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS
- # and breaks multiarch support. See 659030#c3 for an example.
- # The glibc configure script doesn't properly use LDFLAGS all the time.
- export CC="${__GLIBC_CC} ${__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}"
-
- # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548
- export CXX="${__GLIBC_CXX} ${__abi_CFLAGS} ${CFLAGS}"
-
- if is_crosscompile; then
- # Assume worst-case bootstrap: glibc is buil first time
- # when ${CTARGET}-g++ is not available yet. We avoid
- # building auxiliary programs that require C++: bug #683074
- # It should not affect final result.
- export libc_cv_cxx_link_ok=no
- # The line above has the same effect. We set CXX explicitly
- # to make build logs less confusing.
- export CXX=
- fi
-}
-
-foreach_abi() {
- setup_env
-
- local ret=0
- local abilist=""
- if use multilib ; then
- abilist=$(get_install_abis)
- else
- abilist=${DEFAULT_ABI}
- fi
- local -x ABI
- for ABI in ${abilist:-default} ; do
- setup_env
- einfo "Running $1 for ABI ${ABI}"
- $1
- : $(( ret |= $? ))
- done
- return ${ret}
-}
-
-glibc_banner() {
- local b="Gentoo ${PVR}"
- [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
- echo "${b}"
-}
-
-# The following Kernel version handling functions are mostly copied from portage
-# source. It's better not to use linux-info.eclass here since a) it adds too
-# much magic, see bug 326693 for some of the arguments, and b) some of the
-# functions are just not provided.
-
-g_get_running_KV() {
- uname -r
- return $?
-}
-
-g_KV_major() {
- [[ -z $1 ]] && return 1
- local KV=$@
- echo "${KV%%.*}"
-}
-
-g_KV_minor() {
- [[ -z $1 ]] && return 1
- local KV=$@
- KV=${KV#*.}
- echo "${KV%%.*}"
-}
-
-g_KV_micro() {
- [[ -z $1 ]] && return 1
- local KV=$@
- KV=${KV#*.*.}
- echo "${KV%%[^[:digit:]]*}"
-}
-
-g_KV_to_int() {
- [[ -z $1 ]] && return 1
- local KV_MAJOR=$(g_KV_major "$1")
- local KV_MINOR=$(g_KV_minor "$1")
- local KV_MICRO=$(g_KV_micro "$1")
- local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO ))
-
- # We make version 2.2.0 the minimum version we will handle as
- # a sanity check ... if its less, we fail ...
- if [[ ${KV_int} -ge 131584 ]] ; then
- echo "${KV_int}"
- return 0
- fi
- return 1
-}
-
-g_int_to_KV() {
- local version=$1 major minor micro
- major=$((version / 65536))
- minor=$(((version % 65536) / 256))
- micro=$((version % 256))
- echo ${major}.${minor}.${micro}
-}
-
-eend_KV() {
- [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]]
- eend $?
-}
-
-get_kheader_version() {
- printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
- $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
- tail -n 1
-}
-
-# We collect all sanity checks here. Consistency is not guranteed between
-# pkg_ and src_ phases, so we call this function both in pkg_pretend and in
-# src_unpack.
-sanity_prechecks() {
- # Prevent native builds from downgrading
- if [[ ${MERGE_TYPE} != "buildonly" ]] && \
- [[ -z ${ROOT} ]] && \
- [[ ${CBUILD} == ${CHOST} ]] && \
- [[ ${CHOST} == ${CTARGET} ]] ; then
-
- # The high rev # is to allow people to downgrade between -r#
- # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2
- # should be fine. Hopefully we never actually use a r# this
- # high.
- if has_version ">${CATEGORY}/${P}-r10000" ; then
- eerror "Sanity check to keep you from breaking your system:"
- eerror " Downgrading glibc is not supported and a sure way to destruction."
- [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system."
- fi
-
- if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then
- eerror "Your old kernel is broken. You need to update it to a newer"
- eerror "version as syscall(<bignum>) will break. See bug 279260."
- die "Old and broken kernel."
- fi
- fi
-
- # Users have had a chance to phase themselves, time to give em the boot
- if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then
- eerror "You still haven't deleted ${EROOT}/etc/locales.build."
- eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher."
- die "Lazy upgrader detected"
- fi
-
- if [[ ${CTARGET} == i386-* ]] ; then
- eerror "i386 CHOSTs are no longer supported."
- eerror "Chances are you don't actually want/need i386."
- eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml"
- die "Please fix your CHOST"
- fi
-
- if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then
- ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS."
- ewarn "This will result in a 50% performance penalty when running with a 32bit"
- ewarn "hypervisor, which is probably not what you want."
- fi
-
- # ABI-specific checks follow here. Hey, we have a lot more specific conditions that
- # we test for...
- if ! is_crosscompile ; then
- if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then
- ebegin "Checking that IA32 emulation is enabled in the running kernel"
- echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c"
- local STAT
- if ${CC-${CHOST}-gcc} ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then
- "${T}/check-ia32-emulation.elf32"
- STAT=$?
- else
- # Don't fail here to allow single->multi ABI switch
- # or recover from breakage like bug #646424
- ewarn "Failed to compile the ABI test. Broken host glibc?"
- STAT=0
- fi
- rm -f "${T}/check-ia32-emulation.elf32"
- eend $STAT
- [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc."
- fi
-
- fi
-
- # When we actually have to compile something...
- if ! just_headers && [[ ${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
-
- 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
-}
-
-upgrade_warning() {
- 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() {
- # 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-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
- use experimental-loong && unpack glibc-2.35-loongarch-patches-20220422.tar.xz
- fi
-
- cd "${WORKDIR}" || die
- unpack locale-gen-${LOCALE_GEN_VER}.tar.gz
- use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz
-}
-
-src_prepare() {
- local patchsetname
- if ! use vanilla ; then
- if [[ ${PV} == 9999* ]] ; then
- patchsetname="from git master"
- else
- patchsetname="${RELEASE_VER}-${PATCH_VER}"
- fi
- einfo "Applying Gentoo Glibc Patchset ${patchsetname}"
- eapply "${WORKDIR}"/patches
- einfo "Done."
-
- if use experimental-loong ; then
- einfo "Applying experimental LoongArch patchset"
- eapply "${WORKDIR}"/loongarch-2.35
- einfo "Done."
- fi
- fi
-
- if use clone3 ; then
- append-cppflags -DGENTOO_USE_CLONE3
- else
- # See e.g. bug #827386, bug #819045.
- elog "Disabling the clone3 syscall for compatibility with older Electron apps."
- elog "Please re-enable this flag before filing bugs!"
- fi
-
- default
-
- gnuconfig_update
-
- cd "${WORKDIR}"
- find . -name configure -exec touch {} +
-
- # move the external locale-gen to its old place
- mkdir extra || die
- mv locale-gen-${LOCALE_GEN_VER} extra/locale || die
-
- eprefixify extra/locale/locale-gen
-
- # Fix permissions on some of the scripts.
- chmod u+x "${S}"/scripts/*.sh
-
- cd "${S}"
-}
-
-glibc_do_configure() {
-
- local v
- for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do
- einfo " $(printf '%15s' ${v}:) ${!v}"
- done
-
- echo
- 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) ;;
- # 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
- --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)
-
- # locale data is arch-independent
- # https://bugs.gentoo.org/753740
- libc_cv_complocaledir='${exec_prefix}/lib/locale'
-
- # -march= option tricks build system to infer too
- # high ISA level: https://sourceware.org/PR27318
- libc_cv_include_x86_isa_level=no
- # Explicit override of https://sourceware.org/PR27991
- # exposes a bug in glibc's configure:
- # https://sourceware.org/PR27991
- libc_cv_have_x86_lahf_sahf=no
- libc_cv_have_x86_movbe=no
-
- ${EXTRA_ECONF}
- )
-
- # We rely on sys-libs/timezone-data for timezone tools normally.
- myconf+=( $(use_enable vanilla timezone-tools) )
-
- # These libs don't have configure flags.
- ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no)
- ac_cv_lib_cap_cap_init=$(usex caps || echo no)
-
- # There is no configure option for this and we need to export it
- # since the glibc build will re-run configure on itself
- export libc_cv_rootsbindir="$(host_eprefix)/sbin"
- export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)"
-
- local builddir=$(builddir nptl)
- mkdir -p "${builddir}"
- cd "${builddir}"
- set -- "${S}"/configure "${myconf[@]}"
- echo "$@"
- "$@" || die "failed to configure glibc"
-
- # ia64 static cross-compilers are a pita in so much that they
- # can't produce static ELFs (as the libgcc.a is broken). so
- # disable building of the programs for those targets if it
- # doesn't work.
- # XXX: We could turn this into a compiler test, but ia64 is
- # the only one that matters, so this should be fine for now.
- if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
- sed -i '1i+link-static = touch $@' config.make
- fi
-
- # If we're trying to migrate between ABI sets, we need
- # to lie and use a local copy of gcc. Like if the system
- # is built with MULTILIB_ABIS="amd64 x86" but we want to
- # add x32 to it, gcc/glibc don't yet support x32.
- #
- if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib-bootstrap ; then
- echo 'main(){}' > "${T}"/test.c
- if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
- sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
- fi
- fi
-}
-
-glibc_headers_configure() {
- export ABI=default
-
- local builddir=$(builddir "headers")
- mkdir -p "${builddir}"
- cd "${builddir}"
-
- # if we don't have a compiler yet, we can't really test it now ...
- # hopefully they don't affect header generation, so let's hope for
- # the best here ...
- local v vars=(
- ac_cv_header_cpuid_h=yes
- libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes
- libc_cv_asm_cfi_directives=yes
- libc_cv_broken_visibility_attribute=no
- libc_cv_c_cleanup=yes
- libc_cv_compiler_powerpc64le_binary128_ok=yes
- libc_cv_forced_unwind=yes
- libc_cv_gcc___thread=yes
- libc_cv_mlong_double_128=yes
- libc_cv_mlong_double_128ibm=yes
- libc_cv_ppc_machine=yes
- libc_cv_ppc_rel16=yes
- libc_cv_predef_fortify_source=no
- libc_cv_target_power8_ok=yes
- libc_cv_visibility_attribute=yes
- libc_cv_z_combreloc=yes
- libc_cv_z_execstack=yes
- libc_cv_z_initfirst=yes
- libc_cv_z_nodelete=yes
- libc_cv_z_nodlopen=yes
- libc_cv_z_relro=yes
- libc_mips_abi=${ABI}
- libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard)
- # These libs don't have configure flags.
- ac_cv_lib_audit_audit_log_user_avc_message=no
- ac_cv_lib_cap_cap_init=no
- )
-
- einfo "Forcing cached settings:"
- for v in "${vars[@]}" ; do
- einfo " ${v}"
- export ${v}
- done
-
- local headers_only_arch_CPPFLAGS=()
-
- # Blow away some random CC settings that screw things up. #550192
- if [[ -d ${S}/sysdeps/mips ]]; then
- pushd "${S}"/sysdeps/mips >/dev/null
- sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die
- sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die
-
- # Force the mips ABI to the default. This is OK because the set of
- # installed headers in this phase is the same between the 3 ABIs.
- # If this ever changes, this hack will break, but that's unlikely
- # as glibc discourages that behavior.
- # https://crbug.com/647033
- sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die
-
- popd >/dev/null
- fi
-
- case ${CTARGET} in
- riscv*)
- # RISC-V interrogates the compiler to determine which target to
- # build. If building the headers then we don't strictly need a
- # RISC-V compiler, so the built-in definitions that are provided
- # along with all RISC-V compiler might not exist. This causes
- # glibc's RISC-V preconfigure script to blow up. Since we're just
- # building the headers any value will actually work here, so just
- # pick the standard one (rv64g/lp64d) to make the build scripts
- # happy for now -- the headers are all the same anyway so it
- # doesn't matter.
- headers_only_arch_CPPFLAGS+=(
- -D__riscv_xlen=64
- -D__riscv_flen=64
- -D__riscv_float_abi_double=1
- -D__riscv_atomic=1
- ) ;;
- esac
-
- local myconf=()
- myconf+=(
- --disable-sanity-checks
- --enable-hacker-mode
- --disable-werror
- --enable-bind-now
- --build=${CBUILD_OPT:-${CBUILD}}
- --host=${CTARGET_OPT:-${CTARGET}}
- --with-headers=$(build_eprefix)$(alt_build_headers)
- --prefix="$(host_eprefix)/usr"
- ${EXTRA_ECONF}
- )
-
- # Nothing is compiled here which would affect the headers for the target.
- # So forcing CC/CFLAGS is sane.
- local headers_only_CC=$(tc-getBUILD_CC)
- local headers_only_CFLAGS="-O1 -pipe"
- local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}"
- local headers_only_LDFLAGS=""
- set -- "${S}"/configure "${myconf[@]}"
- echo \
- "CC=${headers_only_CC}" \
- "CFLAGS=${headers_only_CFLAGS}" \
- "CPPFLAGS=${headers_only_CPPFLAGS}" \
- "LDFLAGS=${headers_only_LDFLAGS}" \
- "$@"
- CC=${headers_only_CC} \
- CFLAGS=${headers_only_CFLAGS} \
- CPPFLAGS=${headers_only_CPPFLAGS} \
- LDFLAGS="" \
- "$@" || die "failed to configure glibc"
-}
-
-do_src_configure() {
- if just_headers ; then
- glibc_headers_configure
- else
- glibc_do_configure nptl
- fi
-}
-
-src_configure() {
- foreach_abi do_src_configure
-}
-
-do_src_compile() {
- emake -C "$(builddir nptl)"
-}
-
-src_compile() {
- if just_headers ; then
- return
- fi
-
- foreach_abi do_src_compile
-}
-
-glibc_src_test() {
- cd "$(builddir nptl)"
-
- local myxfailparams=""
- if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then
- for myt in ${XFAIL_TEST_LIST[@]} ; do
- myxfailparams+="test-xfail-${myt}=yes "
- done
- fi
-
- # sandbox does not understand unshare() and prevents
- # writes to /proc/, which makes many tests fail
-
- SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check
-}
-
-do_src_test() {
- local ret=0
-
- glibc_src_test
- : $(( ret |= $? ))
-
- return ${ret}
-}
-
-src_test() {
- if just_headers ; then
- return
- fi
-
- # Give tests more time to complete.
- export TIMEOUTFACTOR=5
-
- foreach_abi do_src_test || die "tests failed"
-}
-
-run_locale_gen() {
- # if the host locales.gen contains no entries, we'll install everything
- local root="$1"
- local inplace=""
-
- if [[ "${root}" == "--inplace-glibc" ]] ; then
- inplace="--inplace-glibc"
- root="$2"
- fi
-
- local locale_list="${root%/}/etc/locale.gen"
-
- pushd "${ED}"/$(get_libdir) >/dev/null
-
- if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then
- [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space"
- locale_list="${root%/}/usr/share/i18n/SUPPORTED"
- fi
-
- set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \
- --destdir "${root}"
- echo "$@"
- "$@"
-
- popd >/dev/null
-}
-
-glibc_do_src_install() {
- local builddir=$(builddir nptl)
- cd "${builddir}"
-
- emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install
-
- # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support
- # which come without headers etc. Only needed for binary packages since the
- # external net-libs/libnsl has increased soversion. Keep only versioned libraries.
- find "${D}" -name "libnsl.a" -delete
- find "${D}" -name "libnsl.so" -delete
-
- # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need
- # to infer upstream version:
- # '#define VERSION "2.26.90"' -> '2.26.90'
- local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h)
-
- # Avoid stripping binaries not targeted by ${CHOST}. Or else
- # ${CHOST}-strip would break binaries build for ${CTARGET}.
- is_crosscompile && dostrip -x /
- # gdb thread introspection relies on local libpthreas symbols. stripping breaks it
- # See Note [Disable automatic stripping]
- dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so
-
- if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then
- # Move versioned .a file out of libdir to evade portage QA checks
- # instead of using gen_usr_ldscript(). We fix ldscript as:
- # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..."
- sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die
- dodir $(alt_usrlibdir)/${P}
- mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die
- fi
-
- # We'll take care of the cache ourselves
- rm -f "${ED}"/etc/ld.so.cache
-
- # Everything past this point just needs to be done once ...
- is_final_abi || return 0
-
- # Make sure the non-native interp can be found on multilib systems even
- # if the main library set isn't installed into the right place. Maybe
- # we should query the active gcc for info instead of hardcoding it ?
- local i ldso_abi ldso_name
- local ldso_abi_list=(
- # x86
- amd64 /lib64/ld-linux-x86-64.so.2
- x32 /libx32/ld-linux-x32.so.2
- x86 /lib/ld-linux.so.2
- # mips
- o32 /lib/ld.so.1
- n32 /lib32/ld.so.1
- n64 /lib64/ld.so.1
- # powerpc
- ppc /lib/ld.so.1
- # riscv
- ilp32d /lib/ld-linux-riscv32-ilp32d.so.1
- ilp32 /lib/ld-linux-riscv32-ilp32.so.1
- lp64d /lib/ld-linux-riscv64-lp64d.so.1
- lp64 /lib/ld-linux-riscv64-lp64.so.1
- # s390
- s390 /lib/ld.so.1
- s390x /lib/ld64.so.1
- # sparc
- sparc32 /lib/ld-linux.so.2
- sparc64 /lib64/ld-linux.so.2
- )
- case $(tc-endian) in
- little)
- ldso_abi_list+=(
- # arm
- arm64 /lib/ld-linux-aarch64.so.1
- # ELFv2 (glibc does not support ELFv1 on LE)
- ppc64 /lib64/ld64.so.2
- )
- ;;
- big)
- ldso_abi_list+=(
- # arm
- arm64 /lib/ld-linux-aarch64_be.so.1
- # ELFv1 (glibc does not support ELFv2 on BE)
- ppc64 /lib64/ld64.so.1
- )
- ;;
- esac
- if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then
- dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib
- fi
- for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do
- ldso_abi=${ldso_abi_list[i]}
- has ${ldso_abi} $(get_install_abis) || continue
-
- ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}"
- if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then
- dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name}
- fi
- done
-
- # In the LSB 5.0 definition, someone had the excellent idea to "standardize"
- # the runtime loader name, see also https://xkcd.com/927/
- # Normally, in Gentoo one should never come across executables that require this.
- # However, binary commercial packages are known to adhere to weird practices.
- # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB
- local lsb_ldso_name native_ldso_name lsb_ldso_abi
- local lsb_ldso_abi_list=(
- # x86
- amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3
- )
- for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do
- lsb_ldso_abi=${lsb_ldso_abi_list[i]}
- native_ldso_name=${lsb_ldso_abi_list[i+1]}
- lsb_ldso_name=${lsb_ldso_abi_list[i+2]}
- has ${lsb_ldso_abi} $(get_install_abis) || continue
-
- if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then
- dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name}"
- fi
- done
-
- # With devpts under Linux mounted properly, we do not need the pt_chown
- # binary to be setuid. This is because the default owners/perms will be
- # exactly what we want.
- if ! use suid ; then
- find "${ED}" -name pt_chown -exec chmod -s {} +
- fi
-
- #################################################################
- # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY #
- # Make sure we install some symlink hacks so that when we build
- # a 2nd stage cross-compiler, gcc finds the target system
- # headers correctly. See gcc/doc/gccinstall.info
- if is_crosscompile ; then
- # We need to make sure that /lib and /usr/lib always exists.
- # gcc likes to use relative paths to get to its multilibs like
- # /usr/lib/../lib64/. So while we don't install any files into
- # /usr/lib/, we do need it to exist.
- keepdir $(alt_prefix)/lib
- keepdir $(alt_prefix)/usr/lib
-
- dosym usr/include $(alt_prefix)/sys-include
- return 0
- fi
-
- # Files for Debian-style locale updating
- dodir /usr/share/i18n
- sed \
- -e "/^#/d" \
- -e "/SUPPORTED-LOCALES=/d" \
- -e "s: \\\\::g" -e "s:/: :g" \
- "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \
- || die "generating /usr/share/i18n/SUPPORTED failed"
- cd "${WORKDIR}"/extra/locale
- dosbin locale-gen
- doman *.[0-8]
- insinto /etc
- doins locale.gen
-
- keepdir /usr/lib/locale
-
- cd "${S}"
-
- # Install misc network config files
- insinto /etc
- doins posix/gai.conf
-
- 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}/"
- sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die
- fi
-}
-
-glibc_headers_install() {
- local builddir=$(builddir "headers")
- cd "${builddir}"
- emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers
-
- insinto $(alt_headers)/gnu
- doins "${S}"/include/gnu/stubs.h
-
- # Make sure we install the sys-include symlink so that when
- # we build a 2nd stage cross-compiler, gcc finds the target
- # system headers correctly. See gcc/doc/gccinstall.info
- dosym usr/include $(alt_prefix)/sys-include
-}
-
-src_install() {
- if just_headers ; then
- export ABI=default
- glibc_headers_install
- return
- fi
-
- foreach_abi glibc_do_src_install
-
- if ! use static-libs ; then
- einfo "Not installing static glibc libraries"
- find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete
- fi
-}
-
-# Simple test to make sure our new glibc isn't completely broken.
-# Make sure we don't test with statically built binaries since
-# they will fail. Also, skip if this glibc is a cross compiler.
-#
-# If coreutils is built with USE=multicall, some of these files
-# will just be wrapper scripts, not actual ELFs we can test.
-glibc_sanity_check() {
- cd / #228809
-
- # We enter ${ED} so to avoid trouble if the path contains
- # special characters; for instance if the path contains the
- # colon character (:), then the linker will try to split it
- # and look for the libraries in an unexpected place. This can
- # lead to unsafe code execution if the generated prefix is
- # within a world-writable directory.
- # (e.g. /var/tmp/portage:${HOSTNAME})
- pushd "${ED}"/$(get_libdir) >/dev/null
-
- # 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
-
- # 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
-}
-
-pkg_postinst() {
- # nothing to do if just installing headers
- just_headers && return
-
- if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then
- # Generate fastloading iconv module configuration file.
- "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/"
- fi
-
- if ! is_crosscompile && [[ -z ${ROOT} ]] ; then
- use compile-locales || run_locale_gen "${EROOT}/"
- fi
-
- 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.35-r5.ebuild b/sys-libs/glibc/glibc-2.35-r5.ebuild
deleted file mode 100644
index 88ec2acf92c1..000000000000
--- a/sys-libs/glibc/glibc-2.35-r5.ebuild
+++ /dev/null
@@ -1,1596 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc
-# Please read & adapt the page as necessary if obsolete.
-
-PYTHON_COMPAT=( python3_{8..10} )
-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=7
-PATCH_DEV=dilfridge
-
-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"
- SRC_URI+=" experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220422.tar.xz )"
-fi
-
-RELEASE_VER=${PV}
-
-GCC_BOOTSTRAP_VER=20201208
-
-LOCALE_GEN_VER=2.22
-
-GLIBC_SYSTEMD_VER=20210729
-
-SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz"
-SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
-SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )"
-
-IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla"
-
-# 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"
-
-# Here's how the cross-compile logic breaks down ...
-# CTARGET - machine that will target the binaries
-# CHOST - machine that will host the binaries
-# CBUILD - machine that will build the binaries
-# If CTARGET != CHOST, it means you want a libc for cross-compiling.
-# If CHOST != CBUILD, it means you want to cross-compile the libc.
-# CBUILD = CHOST = CTARGET - native build/install
-# CBUILD != (CHOST = CTARGET) - cross-compile a native build
-# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
-# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
-# For install paths:
-# CHOST = CTARGET - install into /
-# CHOST != CTARGET - install into /usr/CTARGET/
-#
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-
-# Note [Disable automatic stripping]
-# Disabling automatic stripping for a few reasons:
-# - portage's attempt to strip breaks non-native binaries at least on
-# arm: bug #697428
-# - portage's attempt to strip libpthread.so.0 breaks gdb thread
-# enumeration: bug #697910. This is quite subtle:
-# * gdb uses glibc's libthread_db-1.0.so to enumerate threads.
-# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols
-# via 'ps_pglobal_lookup' symbol defined in gdb.
-# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all
-# known symbols in 'libpthread.so.0'. Specifically 'nptl_version'
-# (unexported) is used to sanity check compatibility before enabling
-# debugging.
-# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint
-# * normal 'strip' command trims '.symtab'
-# Thus our main goal here is to prevent 'libpthread.so.0' from
-# losing it's '.symtab' entries.
-# As Gentoo's strip does not allow us to pass less aggressive stripping
-# options and does not check the machine target we strip selectively.
-
-# We need a new-enough binutils/gcc to match upstream baseline.
-# Also we need to make sure our binutils/gcc supports TLS,
-# and that gcc already contains the hardened patches.
-# Lastly, let's avoid some openssh nastiness, bug 708224, as
-# convenience to our users.
-
-# gzip, grep, awk are needed by locale-gen, bug 740750
-
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- sys-devel/bison
- doc? ( sys-apps/texinfo )
- !compile-locales? (
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- )
-"
-COMMON_DEPEND="
- gd? ( media-libs/gd:2= )
- nscd? ( selinux? (
- audit? ( sys-process/audit )
- caps? ( sys-libs/libcap )
- ) )
- suid? ( caps? ( sys-libs/libcap ) )
- selinux? ( sys-libs/libselinux )
- systemtap? ( dev-util/systemtap )
-"
-DEPEND="${COMMON_DEPEND}
- compile-locales? (
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- )
- test? ( >=net-dns/libidn2-2.3.0 )
-"
-RDEPEND="${COMMON_DEPEND}
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- sys-apps/gentoo-functions
- !<app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- !<net-misc/openssh-8.1_p1-r2
-"
-
-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
-)
-
-#
-# Small helper functions
-#
-
-is_crosscompile() {
- [[ ${CHOST} != ${CTARGET} ]]
-}
-
-just_headers() {
- is_crosscompile && use headers-only
-}
-
-alt_prefix() {
- is_crosscompile && echo /usr/${CTARGET}
-}
-
-# This prefix is applicable to CHOST when building against this
-# glibc. It is baked into the library at configure time.
-host_eprefix() {
- is_crosscompile || echo "${EPREFIX}"
-}
-
-# This prefix is applicable to CBUILD when building against this
-# glibc. It determines the destination path at install time.
-build_eprefix() {
- is_crosscompile && echo "${EPREFIX}"
-}
-
-# We need to be able to set alternative headers for compiling for non-native
-# platform. Will also become useful for testing kernel-headers without screwing
-# up the whole system.
-alt_headers() {
- echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
-}
-
-alt_build_headers() {
- if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
- ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
- if tc-is-cross-compiler ; then
- ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
- if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
- local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
- ALT_BUILD_HEADERS=${header_path%/linux/version.h}
- fi
- fi
- fi
- echo "${ALT_BUILD_HEADERS}"
-}
-
-alt_libdir() {
- echo $(alt_prefix)/$(get_libdir)
-}
-alt_usrlibdir() {
- echo $(alt_prefix)/usr/$(get_libdir)
-}
-
-builddir() {
- echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
-}
-
-do_compile_test() {
- local ret save_cflags=${CFLAGS}
- CFLAGS+=" $1"
- shift
-
- pushd "${T}" >/dev/null
-
- rm -f glibc-test*
- printf '%b' "$*" > glibc-test.c
-
- # 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
- ;;
- amd64)
- # -march needed for #185404 #199334
- # TODO: See cross-compile issues listed above for x86.
- [[ ${ABI} == x86 ]] &&
- if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then
- local t=${CTARGET_OPT:-${CTARGET}}
- t=${t%%-*}
- # Normally the target is x86_64-xxx, so turn that into the -march that
- # gcc actually accepts. #528708
- [[ ${t} == "x86_64" ]] && t="x86-64"
- filter-flags '-march=*'
- # ugly, ugly, ugly. ugly.
- CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}")
- export CFLAGS_x86="${CFLAGS_x86} -march=${t}"
- einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})"
- fi
- ;;
- mips)
- # The mips abi cannot support the GNU style hashes. #233233
- filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
- ;;
- ppc|ppc64)
- # Many arch-specific implementations do not work on ppc with
- # cache-block not equal to 128 bytes. This breaks memset:
- # https://sourceware.org/PR26522
- # https://bugs.gentoo.org/737996
- # Use default -mcpu=. For ppc it means non-multiarch setup.
- filter-flags '-mcpu=*'
- ;;
- sparc)
- # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though.
- filter-flags "-fcall-used-g7"
- append-flags "-fcall-used-g6"
-
- local cpu
- case ${CTARGET} in
- sparc64-*)
- cpu="sparc64"
- case $(get-flag mcpu) in
- v9)
- # We need to force at least v9a because the base build doesn't
- # work with just v9.
- # https://sourceware.org/bugzilla/show_bug.cgi?id=19477
- append-flags "-Wa,-xarch=v9a"
- ;;
- esac
- ;;
- sparc-*)
- case $(get-flag mcpu) in
- v8|supersparc|hypersparc|leon|leon3)
- cpu="sparcv8"
- ;;
- *)
- cpu="sparcv9"
- ;;
- esac
- ;;
- esac
- [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
- ;;
- esac
-}
-
-setup_flags() {
- # Make sure host make.conf doesn't pollute us
- if is_crosscompile || tc-is-cross-compiler ; then
- CHOST=${CTARGET} strip-unsupported-flags
- fi
-
- # Store our CFLAGS because it's changed depending on which CTARGET
- # we are building when pulling glibc on a multilib profile
- CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
- CFLAGS=${CFLAGS_BASE}
- CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
- CXXFLAGS=${CXXFLAGS_BASE}
- ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
- ASFLAGS=${ASFLAGS_BASE}
-
- # Allow users to explicitly avoid flag sanitization via
- # USE=custom-cflags.
- if ! use custom-cflags; then
- # Over-zealous CFLAGS can often cause problems. What may work for one
- # person may not work for another. To avoid a large influx of bugs
- # relating to failed builds, we strip most CFLAGS out to ensure as few
- # problems as possible.
- strip-flags
- # Lock glibc at -O2; we want to be conservative here.
- filter-flags '-O?'
- append-flags -O2
- fi
-
- strip-unsupported-flags
- filter-flags -m32 -m64 '-mabi=*'
-
- # glibc aborts if rpath is set by LDFLAGS
- filter-ldflags '-Wl,-rpath=*'
-
- # ld can't use -r & --relax at the same time, bug #788901
- # https://sourceware.org/PR27837
- filter-ldflags '-Wl,--relax'
-
- # #492892
- filter-flags -frecord-gcc-switches
-
- # #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"
- replace-flags -O0 -O1
-
- filter-flags '-fstack-protector*'
-
- # See end of bug #830454; we handle this via USE=cet
- filter-flags '-fcf-protection='
-}
-
-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=${__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
- export CXX=${__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
-
- # and make sure __ORIC_CC and __ORIG_CXX is defined now.
- export __ORIG_CC=${CC}
- export __ORIG_CXX=${CXX}
-
- if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
-
- # If we are running in an otherwise clang/llvm environment, we need to
- # recover the proper gcc and binutils settings here, at least until glibc
- # is finally building with clang. So let's override everything that is
- # set in the clang profiles.
- # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always
- # a good start into that direction.
- # Also, if you're crosscompiling, let's assume you know what you are doing.
- # Hopefully.
- # 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 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_CC=${CC}
- export __GLIBC_CXX=${CXX}
-
- export __abi_CFLAGS="$(get_abi_CFLAGS)"
-
- # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760
- # To build .S (assembly) files with the same ABI-specific flags
- # upstream currently recommends adding CFLAGS to CC/CXX:
- # https://sourceware.org/PR23273
- # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS
- # and breaks multiarch support. See 659030#c3 for an example.
- # The glibc configure script doesn't properly use LDFLAGS all the time.
- export CC="${__GLIBC_CC} ${__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}"
-
- # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548
- export CXX="${__GLIBC_CXX} ${__abi_CFLAGS} ${CFLAGS}"
-
- if is_crosscompile; then
- # Assume worst-case bootstrap: glibc is buil first time
- # when ${CTARGET}-g++ is not available yet. We avoid
- # building auxiliary programs that require C++: bug #683074
- # It should not affect final result.
- export libc_cv_cxx_link_ok=no
- # The line above has the same effect. We set CXX explicitly
- # to make build logs less confusing.
- export CXX=
- fi
-}
-
-foreach_abi() {
- setup_env
-
- local ret=0
- local abilist=""
- if use multilib ; then
- abilist=$(get_install_abis)
- else
- abilist=${DEFAULT_ABI}
- fi
- local -x ABI
- for ABI in ${abilist:-default} ; do
- setup_env
- einfo "Running $1 for ABI ${ABI}"
- $1
- : $(( ret |= $? ))
- done
- return ${ret}
-}
-
-glibc_banner() {
- local b="Gentoo ${PVR}"
- [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
- echo "${b}"
-}
-
-# The following Kernel version handling functions are mostly copied from portage
-# source. It's better not to use linux-info.eclass here since a) it adds too
-# much magic, see bug 326693 for some of the arguments, and b) some of the
-# functions are just not provided.
-
-g_get_running_KV() {
- uname -r
- return $?
-}
-
-g_KV_major() {
- [[ -z $1 ]] && return 1
- local KV=$@
- echo "${KV%%.*}"
-}
-
-g_KV_minor() {
- [[ -z $1 ]] && return 1
- local KV=$@
- KV=${KV#*.}
- echo "${KV%%.*}"
-}
-
-g_KV_micro() {
- [[ -z $1 ]] && return 1
- local KV=$@
- KV=${KV#*.*.}
- echo "${KV%%[^[:digit:]]*}"
-}
-
-g_KV_to_int() {
- [[ -z $1 ]] && return 1
- local KV_MAJOR=$(g_KV_major "$1")
- local KV_MINOR=$(g_KV_minor "$1")
- local KV_MICRO=$(g_KV_micro "$1")
- local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO ))
-
- # We make version 2.2.0 the minimum version we will handle as
- # a sanity check ... if its less, we fail ...
- if [[ ${KV_int} -ge 131584 ]] ; then
- echo "${KV_int}"
- return 0
- fi
- return 1
-}
-
-g_int_to_KV() {
- local version=$1 major minor micro
- major=$((version / 65536))
- minor=$(((version % 65536) / 256))
- micro=$((version % 256))
- echo ${major}.${minor}.${micro}
-}
-
-eend_KV() {
- [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]]
- eend $?
-}
-
-get_kheader_version() {
- printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
- $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
- tail -n 1
-}
-
-# We collect all sanity checks here. Consistency is not guranteed between
-# pkg_ and src_ phases, so we call this function both in pkg_pretend and in
-# src_unpack.
-sanity_prechecks() {
- # Prevent native builds from downgrading
- if [[ ${MERGE_TYPE} != "buildonly" ]] && \
- [[ -z ${ROOT} ]] && \
- [[ ${CBUILD} == ${CHOST} ]] && \
- [[ ${CHOST} == ${CTARGET} ]] ; then
-
- # The high rev # is to allow people to downgrade between -r#
- # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2
- # should be fine. Hopefully we never actually use a r# this
- # high.
- if has_version ">${CATEGORY}/${P}-r10000" ; then
- eerror "Sanity check to keep you from breaking your system:"
- eerror " Downgrading glibc is not supported and a sure way to destruction."
- [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system."
- fi
-
- if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then
- eerror "Your old kernel is broken. You need to update it to a newer"
- eerror "version as syscall(<bignum>) will break. See bug 279260."
- die "Old and broken kernel."
- fi
- fi
-
- # Users have had a chance to phase themselves, time to give em the boot
- if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then
- eerror "You still haven't deleted ${EROOT}/etc/locales.build."
- eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher."
- die "Lazy upgrader detected"
- fi
-
- if [[ ${CTARGET} == i386-* ]] ; then
- eerror "i386 CHOSTs are no longer supported."
- eerror "Chances are you don't actually want/need i386."
- eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml"
- die "Please fix your CHOST"
- fi
-
- if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then
- ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS."
- ewarn "This will result in a 50% performance penalty when running with a 32bit"
- ewarn "hypervisor, which is probably not what you want."
- fi
-
- # ABI-specific checks follow here. Hey, we have a lot more specific conditions that
- # we test for...
- if ! is_crosscompile ; then
- if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then
- ebegin "Checking that IA32 emulation is enabled in the running kernel"
- echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c"
- local STAT
- if ${CC-${CHOST}-gcc} ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then
- "${T}/check-ia32-emulation.elf32"
- STAT=$?
- else
- # Don't fail here to allow single->multi ABI switch
- # or recover from breakage like bug #646424
- ewarn "Failed to compile the ABI test. Broken host glibc?"
- STAT=0
- fi
- rm -f "${T}/check-ia32-emulation.elf32"
- eend $STAT
- [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc."
- fi
-
- fi
-
- # When we actually have to compile something...
- if ! just_headers && [[ ${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
-
- 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
-}
-
-upgrade_warning() {
- 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() {
- # 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-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
- use experimental-loong && unpack glibc-2.35-loongarch-patches-20220422.tar.xz
- fi
-
- cd "${WORKDIR}" || die
- unpack locale-gen-${LOCALE_GEN_VER}.tar.gz
- use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz
-}
-
-src_prepare() {
- local patchsetname
- if ! use vanilla ; then
- if [[ ${PV} == 9999* ]] ; then
- patchsetname="from git master"
- else
- patchsetname="${RELEASE_VER}-${PATCH_VER}"
- fi
- einfo "Applying Gentoo Glibc Patchset ${patchsetname}"
- eapply "${WORKDIR}"/patches
- einfo "Done."
-
- if use experimental-loong ; then
- einfo "Applying experimental LoongArch patchset"
- eapply "${WORKDIR}"/loongarch-2.35
- einfo "Done."
- fi
- fi
-
- if use clone3 ; then
- append-cppflags -DGENTOO_USE_CLONE3
- else
- # See e.g. bug #827386, bug #819045.
- elog "Disabling the clone3 syscall for compatibility with older Electron apps."
- elog "Please re-enable this flag before filing bugs!"
- fi
-
- default
-
- gnuconfig_update
-
- cd "${WORKDIR}"
- find . -name configure -exec touch {} +
-
- # move the external locale-gen to its old place
- mkdir extra || die
- mv locale-gen-${LOCALE_GEN_VER} extra/locale || die
-
- eprefixify extra/locale/locale-gen
-
- # Fix permissions on some of the scripts.
- chmod u+x "${S}"/scripts/*.sh
-
- cd "${S}"
-}
-
-glibc_do_configure() {
-
- local v
- for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do
- einfo " $(printf '%15s' ${v}:) ${!v}"
- done
-
- echo
- 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) ;;
- # 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
- --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)
-
- # locale data is arch-independent
- # https://bugs.gentoo.org/753740
- libc_cv_complocaledir='${exec_prefix}/lib/locale'
-
- # -march= option tricks build system to infer too
- # high ISA level: https://sourceware.org/PR27318
- libc_cv_include_x86_isa_level=no
- # Explicit override of https://sourceware.org/PR27991
- # exposes a bug in glibc's configure:
- # https://sourceware.org/PR27991
- libc_cv_have_x86_lahf_sahf=no
- libc_cv_have_x86_movbe=no
-
- ${EXTRA_ECONF}
- )
-
- # We rely on sys-libs/timezone-data for timezone tools normally.
- myconf+=( $(use_enable vanilla timezone-tools) )
-
- # These libs don't have configure flags.
- ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no)
- ac_cv_lib_cap_cap_init=$(usex caps || echo no)
-
- # There is no configure option for this and we need to export it
- # since the glibc build will re-run configure on itself
- export libc_cv_rootsbindir="$(host_eprefix)/sbin"
- export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)"
-
- local builddir=$(builddir nptl)
- mkdir -p "${builddir}"
- cd "${builddir}"
- set -- "${S}"/configure "${myconf[@]}"
- echo "$@"
- "$@" || die "failed to configure glibc"
-
- # ia64 static cross-compilers are a pita in so much that they
- # can't produce static ELFs (as the libgcc.a is broken). so
- # disable building of the programs for those targets if it
- # doesn't work.
- # XXX: We could turn this into a compiler test, but ia64 is
- # the only one that matters, so this should be fine for now.
- if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
- sed -i '1i+link-static = touch $@' config.make
- fi
-
- # If we're trying to migrate between ABI sets, we need
- # to lie and use a local copy of gcc. Like if the system
- # is built with MULTILIB_ABIS="amd64 x86" but we want to
- # add x32 to it, gcc/glibc don't yet support x32.
- #
- if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib-bootstrap ; then
- echo 'main(){}' > "${T}"/test.c
- if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
- sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
- fi
- fi
-}
-
-glibc_headers_configure() {
- export ABI=default
-
- local builddir=$(builddir "headers")
- mkdir -p "${builddir}"
- cd "${builddir}"
-
- # if we don't have a compiler yet, we can't really test it now ...
- # hopefully they don't affect header generation, so let's hope for
- # the best here ...
- local v vars=(
- ac_cv_header_cpuid_h=yes
- libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes
- libc_cv_asm_cfi_directives=yes
- libc_cv_broken_visibility_attribute=no
- libc_cv_c_cleanup=yes
- libc_cv_compiler_powerpc64le_binary128_ok=yes
- libc_cv_forced_unwind=yes
- libc_cv_gcc___thread=yes
- libc_cv_mlong_double_128=yes
- libc_cv_mlong_double_128ibm=yes
- libc_cv_ppc_machine=yes
- libc_cv_ppc_rel16=yes
- libc_cv_predef_fortify_source=no
- libc_cv_target_power8_ok=yes
- libc_cv_visibility_attribute=yes
- libc_cv_z_combreloc=yes
- libc_cv_z_execstack=yes
- libc_cv_z_initfirst=yes
- libc_cv_z_nodelete=yes
- libc_cv_z_nodlopen=yes
- libc_cv_z_relro=yes
- libc_mips_abi=${ABI}
- libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard)
- # These libs don't have configure flags.
- ac_cv_lib_audit_audit_log_user_avc_message=no
- ac_cv_lib_cap_cap_init=no
- )
-
- einfo "Forcing cached settings:"
- for v in "${vars[@]}" ; do
- einfo " ${v}"
- export ${v}
- done
-
- local headers_only_arch_CPPFLAGS=()
-
- # Blow away some random CC settings that screw things up. #550192
- if [[ -d ${S}/sysdeps/mips ]]; then
- pushd "${S}"/sysdeps/mips >/dev/null
- sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die
- sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die
-
- # Force the mips ABI to the default. This is OK because the set of
- # installed headers in this phase is the same between the 3 ABIs.
- # If this ever changes, this hack will break, but that's unlikely
- # as glibc discourages that behavior.
- # https://crbug.com/647033
- sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die
-
- popd >/dev/null
- fi
-
- case ${CTARGET} in
- riscv*)
- # RISC-V interrogates the compiler to determine which target to
- # build. If building the headers then we don't strictly need a
- # RISC-V compiler, so the built-in definitions that are provided
- # along with all RISC-V compiler might not exist. This causes
- # glibc's RISC-V preconfigure script to blow up. Since we're just
- # building the headers any value will actually work here, so just
- # pick the standard one (rv64g/lp64d) to make the build scripts
- # happy for now -- the headers are all the same anyway so it
- # doesn't matter.
- headers_only_arch_CPPFLAGS+=(
- -D__riscv_xlen=64
- -D__riscv_flen=64
- -D__riscv_float_abi_double=1
- -D__riscv_atomic=1
- ) ;;
- esac
-
- local myconf=()
- myconf+=(
- --disable-sanity-checks
- --enable-hacker-mode
- --disable-werror
- --enable-bind-now
- --build=${CBUILD_OPT:-${CBUILD}}
- --host=${CTARGET_OPT:-${CTARGET}}
- --with-headers=$(build_eprefix)$(alt_build_headers)
- --prefix="$(host_eprefix)/usr"
- ${EXTRA_ECONF}
- )
-
- # Nothing is compiled here which would affect the headers for the target.
- # So forcing CC/CFLAGS is sane.
- local headers_only_CC=$(tc-getBUILD_CC)
- local headers_only_CFLAGS="-O1 -pipe"
- local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}"
- local headers_only_LDFLAGS=""
- set -- "${S}"/configure "${myconf[@]}"
- echo \
- "CC=${headers_only_CC}" \
- "CFLAGS=${headers_only_CFLAGS}" \
- "CPPFLAGS=${headers_only_CPPFLAGS}" \
- "LDFLAGS=${headers_only_LDFLAGS}" \
- "$@"
- CC=${headers_only_CC} \
- CFLAGS=${headers_only_CFLAGS} \
- CPPFLAGS=${headers_only_CPPFLAGS} \
- LDFLAGS="" \
- "$@" || die "failed to configure glibc"
-}
-
-do_src_configure() {
- if just_headers ; then
- glibc_headers_configure
- else
- glibc_do_configure nptl
- fi
-}
-
-src_configure() {
- foreach_abi do_src_configure
-}
-
-do_src_compile() {
- emake -C "$(builddir nptl)"
-}
-
-src_compile() {
- if just_headers ; then
- return
- fi
-
- foreach_abi do_src_compile
-}
-
-glibc_src_test() {
- cd "$(builddir nptl)"
-
- local myxfailparams=""
- if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then
- for myt in ${XFAIL_TEST_LIST[@]} ; do
- myxfailparams+="test-xfail-${myt}=yes "
- done
- fi
-
- # sandbox does not understand unshare() and prevents
- # writes to /proc/, which makes many tests fail
-
- SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check
-}
-
-do_src_test() {
- local ret=0
-
- glibc_src_test
- : $(( ret |= $? ))
-
- return ${ret}
-}
-
-src_test() {
- if just_headers ; then
- return
- fi
-
- # Give tests more time to complete.
- export TIMEOUTFACTOR=5
-
- foreach_abi do_src_test || die "tests failed"
-}
-
-run_locale_gen() {
- # if the host locales.gen contains no entries, we'll install everything
- local root="$1"
- local inplace=""
-
- if [[ "${root}" == "--inplace-glibc" ]] ; then
- inplace="--inplace-glibc"
- root="$2"
- fi
-
- local locale_list="${root%/}/etc/locale.gen"
-
- pushd "${ED}"/$(get_libdir) >/dev/null
-
- if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then
- [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space"
- locale_list="${root%/}/usr/share/i18n/SUPPORTED"
- fi
-
- set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \
- --destdir "${root}"
- echo "$@"
- "$@"
-
- popd >/dev/null
-}
-
-glibc_do_src_install() {
- local builddir=$(builddir nptl)
- cd "${builddir}"
-
- emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install
-
- # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support
- # which come without headers etc. Only needed for binary packages since the
- # external net-libs/libnsl has increased soversion. Keep only versioned libraries.
- find "${D}" -name "libnsl.a" -delete
- find "${D}" -name "libnsl.so" -delete
-
- # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need
- # to infer upstream version:
- # '#define VERSION "2.26.90"' -> '2.26.90'
- local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h)
-
- # Avoid stripping binaries not targeted by ${CHOST}. Or else
- # ${CHOST}-strip would break binaries build for ${CTARGET}.
- is_crosscompile && dostrip -x /
- # gdb thread introspection relies on local libpthreas symbols. stripping breaks it
- # See Note [Disable automatic stripping]
- dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so
-
- if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then
- # Move versioned .a file out of libdir to evade portage QA checks
- # instead of using gen_usr_ldscript(). We fix ldscript as:
- # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..."
- sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die
- dodir $(alt_usrlibdir)/${P}
- mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die
- fi
-
- # We'll take care of the cache ourselves
- rm -f "${ED}"/etc/ld.so.cache
-
- # Everything past this point just needs to be done once ...
- is_final_abi || return 0
-
- # Make sure the non-native interp can be found on multilib systems even
- # if the main library set isn't installed into the right place. Maybe
- # we should query the active gcc for info instead of hardcoding it ?
- local i ldso_abi ldso_name
- local ldso_abi_list=(
- # x86
- amd64 /lib64/ld-linux-x86-64.so.2
- x32 /libx32/ld-linux-x32.so.2
- x86 /lib/ld-linux.so.2
- # mips
- o32 /lib/ld.so.1
- n32 /lib32/ld.so.1
- n64 /lib64/ld.so.1
- # powerpc
- ppc /lib/ld.so.1
- # riscv
- ilp32d /lib/ld-linux-riscv32-ilp32d.so.1
- ilp32 /lib/ld-linux-riscv32-ilp32.so.1
- lp64d /lib/ld-linux-riscv64-lp64d.so.1
- lp64 /lib/ld-linux-riscv64-lp64.so.1
- # s390
- s390 /lib/ld.so.1
- s390x /lib/ld64.so.1
- # sparc
- sparc32 /lib/ld-linux.so.2
- sparc64 /lib64/ld-linux.so.2
- )
- case $(tc-endian) in
- little)
- ldso_abi_list+=(
- # arm
- arm64 /lib/ld-linux-aarch64.so.1
- # ELFv2 (glibc does not support ELFv1 on LE)
- ppc64 /lib64/ld64.so.2
- )
- ;;
- big)
- ldso_abi_list+=(
- # arm
- arm64 /lib/ld-linux-aarch64_be.so.1
- # ELFv1 (glibc does not support ELFv2 on BE)
- ppc64 /lib64/ld64.so.1
- )
- ;;
- esac
- if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then
- dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib
- fi
- for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do
- ldso_abi=${ldso_abi_list[i]}
- has ${ldso_abi} $(get_install_abis) || continue
-
- ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}"
- if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then
- dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name}
- fi
- done
-
- # In the LSB 5.0 definition, someone had the excellent idea to "standardize"
- # the runtime loader name, see also https://xkcd.com/927/
- # Normally, in Gentoo one should never come across executables that require this.
- # However, binary commercial packages are known to adhere to weird practices.
- # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB
- local lsb_ldso_name native_ldso_name lsb_ldso_abi
- local lsb_ldso_abi_list=(
- # x86
- amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3
- )
- for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do
- lsb_ldso_abi=${lsb_ldso_abi_list[i]}
- native_ldso_name=${lsb_ldso_abi_list[i+1]}
- lsb_ldso_name=${lsb_ldso_abi_list[i+2]}
- has ${lsb_ldso_abi} $(get_install_abis) || continue
-
- if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then
- dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name}"
- fi
- done
-
- # With devpts under Linux mounted properly, we do not need the pt_chown
- # binary to be setuid. This is because the default owners/perms will be
- # exactly what we want.
- if ! use suid ; then
- find "${ED}" -name pt_chown -exec chmod -s {} +
- fi
-
- #################################################################
- # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY #
- # Make sure we install some symlink hacks so that when we build
- # a 2nd stage cross-compiler, gcc finds the target system
- # headers correctly. See gcc/doc/gccinstall.info
- if is_crosscompile ; then
- # We need to make sure that /lib and /usr/lib always exists.
- # gcc likes to use relative paths to get to its multilibs like
- # /usr/lib/../lib64/. So while we don't install any files into
- # /usr/lib/, we do need it to exist.
- keepdir $(alt_prefix)/lib
- keepdir $(alt_prefix)/usr/lib
-
- dosym usr/include $(alt_prefix)/sys-include
- return 0
- fi
-
- # Files for Debian-style locale updating
- dodir /usr/share/i18n
- sed \
- -e "/^#/d" \
- -e "/SUPPORTED-LOCALES=/d" \
- -e "s: \\\\::g" -e "s:/: :g" \
- "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \
- || die "generating /usr/share/i18n/SUPPORTED failed"
- cd "${WORKDIR}"/extra/locale
- dosbin locale-gen
- doman *.[0-8]
- insinto /etc
- doins locale.gen
-
- keepdir /usr/lib/locale
-
- cd "${S}"
-
- # Install misc network config files
- insinto /etc
- doins posix/gai.conf
-
- 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}/"
- sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die
- fi
-}
-
-glibc_headers_install() {
- local builddir=$(builddir "headers")
- cd "${builddir}"
- emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers
-
- insinto $(alt_headers)/gnu
- doins "${S}"/include/gnu/stubs.h
-
- # Make sure we install the sys-include symlink so that when
- # we build a 2nd stage cross-compiler, gcc finds the target
- # system headers correctly. See gcc/doc/gccinstall.info
- dosym usr/include $(alt_prefix)/sys-include
-}
-
-src_install() {
- if just_headers ; then
- export ABI=default
- glibc_headers_install
- return
- fi
-
- foreach_abi glibc_do_src_install
-
- if ! use static-libs ; then
- einfo "Not installing static glibc libraries"
- find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete
- fi
-}
-
-# Simple test to make sure our new glibc isn't completely broken.
-# Make sure we don't test with statically built binaries since
-# they will fail. Also, skip if this glibc is a cross compiler.
-#
-# If coreutils is built with USE=multicall, some of these files
-# will just be wrapper scripts, not actual ELFs we can test.
-glibc_sanity_check() {
- cd / #228809
-
- # We enter ${ED} so to avoid trouble if the path contains
- # special characters; for instance if the path contains the
- # colon character (:), then the linker will try to split it
- # and look for the libraries in an unexpected place. This can
- # lead to unsafe code execution if the generated prefix is
- # within a world-writable directory.
- # (e.g. /var/tmp/portage:${HOSTNAME})
- pushd "${ED}"/$(get_libdir) >/dev/null
-
- # 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
-
- # 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
-}
-
-pkg_postinst() {
- # nothing to do if just installing headers
- just_headers && return
-
- if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then
- # Generate fastloading iconv module configuration file.
- "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/"
- fi
-
- if ! is_crosscompile && [[ -z ${ROOT} ]] ; then
- use compile-locales || run_locale_gen "${EROOT}/"
- fi
-
- 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.35-r6.ebuild b/sys-libs/glibc/glibc-2.35-r6.ebuild
deleted file mode 100644
index 1da6dd8768e4..000000000000
--- a/sys-libs/glibc/glibc-2.35-r6.ebuild
+++ /dev/null
@@ -1,1597 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc
-# Please read & adapt the page as necessary if obsolete.
-
-PYTHON_COMPAT=( python3_{8..10} )
-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=7
-PATCH_DEV=dilfridge
-
-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="~loong"
- SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
- SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
- SRC_URI+=" experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220522.tar.xz )"
-fi
-
-RELEASE_VER=${PV}
-
-GCC_BOOTSTRAP_VER=20201208
-
-LOCALE_GEN_VER=2.22
-
-GLIBC_SYSTEMD_VER=20210729
-
-SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz"
-SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
-SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )"
-
-IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla"
-
-# 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"
-
-# Here's how the cross-compile logic breaks down ...
-# CTARGET - machine that will target the binaries
-# CHOST - machine that will host the binaries
-# CBUILD - machine that will build the binaries
-# If CTARGET != CHOST, it means you want a libc for cross-compiling.
-# If CHOST != CBUILD, it means you want to cross-compile the libc.
-# CBUILD = CHOST = CTARGET - native build/install
-# CBUILD != (CHOST = CTARGET) - cross-compile a native build
-# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
-# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
-# For install paths:
-# CHOST = CTARGET - install into /
-# CHOST != CTARGET - install into /usr/CTARGET/
-#
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-
-# Note [Disable automatic stripping]
-# Disabling automatic stripping for a few reasons:
-# - portage's attempt to strip breaks non-native binaries at least on
-# arm: bug #697428
-# - portage's attempt to strip libpthread.so.0 breaks gdb thread
-# enumeration: bug #697910. This is quite subtle:
-# * gdb uses glibc's libthread_db-1.0.so to enumerate threads.
-# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols
-# via 'ps_pglobal_lookup' symbol defined in gdb.
-# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all
-# known symbols in 'libpthread.so.0'. Specifically 'nptl_version'
-# (unexported) is used to sanity check compatibility before enabling
-# debugging.
-# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint
-# * normal 'strip' command trims '.symtab'
-# Thus our main goal here is to prevent 'libpthread.so.0' from
-# losing it's '.symtab' entries.
-# As Gentoo's strip does not allow us to pass less aggressive stripping
-# options and does not check the machine target we strip selectively.
-
-# We need a new-enough binutils/gcc to match upstream baseline.
-# Also we need to make sure our binutils/gcc supports TLS,
-# and that gcc already contains the hardened patches.
-# Lastly, let's avoid some openssh nastiness, bug 708224, as
-# convenience to our users.
-
-# gzip, grep, awk are needed by locale-gen, bug 740750
-
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- sys-devel/bison
- doc? ( sys-apps/texinfo )
- !compile-locales? (
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- )
-"
-COMMON_DEPEND="
- gd? ( media-libs/gd:2= )
- nscd? ( selinux? (
- audit? ( sys-process/audit )
- caps? ( sys-libs/libcap )
- ) )
- suid? ( caps? ( sys-libs/libcap ) )
- selinux? ( sys-libs/libselinux )
- systemtap? ( dev-util/systemtap )
-"
-DEPEND="${COMMON_DEPEND}
- compile-locales? (
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- )
- test? ( >=net-dns/libidn2-2.3.0 )
-"
-RDEPEND="${COMMON_DEPEND}
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- sys-apps/gentoo-functions
- !<app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- !<net-misc/openssh-8.1_p1-r2
-"
-
-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
-)
-
-#
-# Small helper functions
-#
-
-is_crosscompile() {
- [[ ${CHOST} != ${CTARGET} ]]
-}
-
-just_headers() {
- is_crosscompile && use headers-only
-}
-
-alt_prefix() {
- is_crosscompile && echo /usr/${CTARGET}
-}
-
-# This prefix is applicable to CHOST when building against this
-# glibc. It is baked into the library at configure time.
-host_eprefix() {
- is_crosscompile || echo "${EPREFIX}"
-}
-
-# This prefix is applicable to CBUILD when building against this
-# glibc. It determines the destination path at install time.
-build_eprefix() {
- is_crosscompile && echo "${EPREFIX}"
-}
-
-# We need to be able to set alternative headers for compiling for non-native
-# platform. Will also become useful for testing kernel-headers without screwing
-# up the whole system.
-alt_headers() {
- echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
-}
-
-alt_build_headers() {
- if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
- ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
- if tc-is-cross-compiler ; then
- ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
- if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
- local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
- ALT_BUILD_HEADERS=${header_path%/linux/version.h}
- fi
- fi
- fi
- echo "${ALT_BUILD_HEADERS}"
-}
-
-alt_libdir() {
- echo $(alt_prefix)/$(get_libdir)
-}
-alt_usrlibdir() {
- echo $(alt_prefix)/usr/$(get_libdir)
-}
-
-builddir() {
- echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
-}
-
-do_compile_test() {
- local ret save_cflags=${CFLAGS}
- CFLAGS+=" $1"
- shift
-
- pushd "${T}" >/dev/null
-
- rm -f glibc-test*
- printf '%b' "$*" > glibc-test.c
-
- # 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
- ;;
- amd64)
- # -march needed for #185404 #199334
- # TODO: See cross-compile issues listed above for x86.
- [[ ${ABI} == x86 ]] &&
- if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then
- local t=${CTARGET_OPT:-${CTARGET}}
- t=${t%%-*}
- # Normally the target is x86_64-xxx, so turn that into the -march that
- # gcc actually accepts. #528708
- [[ ${t} == "x86_64" ]] && t="x86-64"
- filter-flags '-march=*'
- # ugly, ugly, ugly. ugly.
- CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}")
- export CFLAGS_x86="${CFLAGS_x86} -march=${t}"
- einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})"
- fi
- ;;
- mips)
- # The mips abi cannot support the GNU style hashes. #233233
- filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
- ;;
- ppc|ppc64)
- # Many arch-specific implementations do not work on ppc with
- # cache-block not equal to 128 bytes. This breaks memset:
- # https://sourceware.org/PR26522
- # https://bugs.gentoo.org/737996
- # Use default -mcpu=. For ppc it means non-multiarch setup.
- filter-flags '-mcpu=*'
- ;;
- sparc)
- # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though.
- filter-flags "-fcall-used-g7"
- append-flags "-fcall-used-g6"
-
- local cpu
- case ${CTARGET} in
- sparc64-*)
- cpu="sparc64"
- case $(get-flag mcpu) in
- v9)
- # We need to force at least v9a because the base build doesn't
- # work with just v9.
- # https://sourceware.org/bugzilla/show_bug.cgi?id=19477
- append-flags "-Wa,-xarch=v9a"
- ;;
- esac
- ;;
- sparc-*)
- case $(get-flag mcpu) in
- v8|supersparc|hypersparc|leon|leon3)
- cpu="sparcv8"
- ;;
- *)
- cpu="sparcv9"
- ;;
- esac
- ;;
- esac
- [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
- ;;
- esac
-}
-
-setup_flags() {
- # Make sure host make.conf doesn't pollute us
- if is_crosscompile || tc-is-cross-compiler ; then
- CHOST=${CTARGET} strip-unsupported-flags
- fi
-
- # Store our CFLAGS because it's changed depending on which CTARGET
- # we are building when pulling glibc on a multilib profile
- CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
- CFLAGS=${CFLAGS_BASE}
- CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
- CXXFLAGS=${CXXFLAGS_BASE}
- ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
- ASFLAGS=${ASFLAGS_BASE}
-
- # Allow users to explicitly avoid flag sanitization via
- # USE=custom-cflags.
- if ! use custom-cflags; then
- # Over-zealous CFLAGS can often cause problems. What may work for one
- # person may not work for another. To avoid a large influx of bugs
- # relating to failed builds, we strip most CFLAGS out to ensure as few
- # problems as possible.
- strip-flags
- # Lock glibc at -O2; we want to be conservative here.
- filter-flags '-O?'
- append-flags -O2
- fi
-
- strip-unsupported-flags
- filter-flags -m32 -m64 '-mabi=*'
-
- # glibc aborts if rpath is set by LDFLAGS
- filter-ldflags '-Wl,-rpath=*'
-
- # ld can't use -r & --relax at the same time, bug #788901
- # https://sourceware.org/PR27837
- filter-ldflags '-Wl,--relax'
-
- # #492892
- filter-flags -frecord-gcc-switches
-
- # #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"
- replace-flags -O0 -O1
-
- filter-flags '-fstack-protector*'
-
- # See end of bug #830454; we handle this via USE=cet
- filter-flags '-fcf-protection='
-}
-
-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=${__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
- export CXX=${__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
-
- # and make sure __ORIC_CC and __ORIG_CXX is defined now.
- export __ORIG_CC=${CC}
- export __ORIG_CXX=${CXX}
-
- if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
-
- # If we are running in an otherwise clang/llvm environment, we need to
- # recover the proper gcc and binutils settings here, at least until glibc
- # is finally building with clang. So let's override everything that is
- # set in the clang profiles.
- # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always
- # a good start into that direction.
- # Also, if you're crosscompiling, let's assume you know what you are doing.
- # Hopefully.
- # 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 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_CC=${CC}
- export __GLIBC_CXX=${CXX}
-
- export __abi_CFLAGS="$(get_abi_CFLAGS)"
-
- # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760
- # To build .S (assembly) files with the same ABI-specific flags
- # upstream currently recommends adding CFLAGS to CC/CXX:
- # https://sourceware.org/PR23273
- # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS
- # and breaks multiarch support. See 659030#c3 for an example.
- # The glibc configure script doesn't properly use LDFLAGS all the time.
- export CC="${__GLIBC_CC} ${__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}"
-
- # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548
- export CXX="${__GLIBC_CXX} ${__abi_CFLAGS} ${CFLAGS}"
-
- if is_crosscompile; then
- # Assume worst-case bootstrap: glibc is buil first time
- # when ${CTARGET}-g++ is not available yet. We avoid
- # building auxiliary programs that require C++: bug #683074
- # It should not affect final result.
- export libc_cv_cxx_link_ok=no
- # The line above has the same effect. We set CXX explicitly
- # to make build logs less confusing.
- export CXX=
- fi
-}
-
-foreach_abi() {
- setup_env
-
- local ret=0
- local abilist=""
- if use multilib ; then
- abilist=$(get_install_abis)
- else
- abilist=${DEFAULT_ABI}
- fi
- local -x ABI
- for ABI in ${abilist:-default} ; do
- setup_env
- einfo "Running $1 for ABI ${ABI}"
- $1
- : $(( ret |= $? ))
- done
- return ${ret}
-}
-
-glibc_banner() {
- local b="Gentoo ${PVR}"
- [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
- echo "${b}"
-}
-
-# The following Kernel version handling functions are mostly copied from portage
-# source. It's better not to use linux-info.eclass here since a) it adds too
-# much magic, see bug 326693 for some of the arguments, and b) some of the
-# functions are just not provided.
-
-g_get_running_KV() {
- uname -r
- return $?
-}
-
-g_KV_major() {
- [[ -z $1 ]] && return 1
- local KV=$@
- echo "${KV%%.*}"
-}
-
-g_KV_minor() {
- [[ -z $1 ]] && return 1
- local KV=$@
- KV=${KV#*.}
- echo "${KV%%.*}"
-}
-
-g_KV_micro() {
- [[ -z $1 ]] && return 1
- local KV=$@
- KV=${KV#*.*.}
- echo "${KV%%[^[:digit:]]*}"
-}
-
-g_KV_to_int() {
- [[ -z $1 ]] && return 1
- local KV_MAJOR=$(g_KV_major "$1")
- local KV_MINOR=$(g_KV_minor "$1")
- local KV_MICRO=$(g_KV_micro "$1")
- local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO ))
-
- # We make version 2.2.0 the minimum version we will handle as
- # a sanity check ... if its less, we fail ...
- if [[ ${KV_int} -ge 131584 ]] ; then
- echo "${KV_int}"
- return 0
- fi
- return 1
-}
-
-g_int_to_KV() {
- local version=$1 major minor micro
- major=$((version / 65536))
- minor=$(((version % 65536) / 256))
- micro=$((version % 256))
- echo ${major}.${minor}.${micro}
-}
-
-eend_KV() {
- [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]]
- eend $?
-}
-
-get_kheader_version() {
- printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
- $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
- tail -n 1
-}
-
-# We collect all sanity checks here. Consistency is not guranteed between
-# pkg_ and src_ phases, so we call this function both in pkg_pretend and in
-# src_unpack.
-sanity_prechecks() {
- # Prevent native builds from downgrading
- if [[ ${MERGE_TYPE} != "buildonly" ]] && \
- [[ -z ${ROOT} ]] && \
- [[ ${CBUILD} == ${CHOST} ]] && \
- [[ ${CHOST} == ${CTARGET} ]] ; then
-
- # The high rev # is to allow people to downgrade between -r#
- # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2
- # should be fine. Hopefully we never actually use a r# this
- # high.
- if has_version ">${CATEGORY}/${P}-r10000" ; then
- eerror "Sanity check to keep you from breaking your system:"
- eerror " Downgrading glibc is not supported and a sure way to destruction."
- [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system."
- fi
-
- if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then
- eerror "Your old kernel is broken. You need to update it to a newer"
- eerror "version as syscall(<bignum>) will break. See bug 279260."
- die "Old and broken kernel."
- fi
- fi
-
- # Users have had a chance to phase themselves, time to give em the boot
- if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then
- eerror "You still haven't deleted ${EROOT}/etc/locales.build."
- eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher."
- die "Lazy upgrader detected"
- fi
-
- if [[ ${CTARGET} == i386-* ]] ; then
- eerror "i386 CHOSTs are no longer supported."
- eerror "Chances are you don't actually want/need i386."
- eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml"
- die "Please fix your CHOST"
- fi
-
- if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then
- ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS."
- ewarn "This will result in a 50% performance penalty when running with a 32bit"
- ewarn "hypervisor, which is probably not what you want."
- fi
-
- # ABI-specific checks follow here. Hey, we have a lot more specific conditions that
- # we test for...
- if ! is_crosscompile ; then
- if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then
- ebegin "Checking that IA32 emulation is enabled in the running kernel"
- echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c"
- local STAT
- if ${CC-${CHOST}-gcc} ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then
- "${T}/check-ia32-emulation.elf32"
- STAT=$?
- else
- # Don't fail here to allow single->multi ABI switch
- # or recover from breakage like bug #646424
- ewarn "Failed to compile the ABI test. Broken host glibc?"
- STAT=0
- fi
- rm -f "${T}/check-ia32-emulation.elf32"
- eend $STAT
- [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc."
- fi
-
- fi
-
- # When we actually have to compile something...
- if ! just_headers && [[ ${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
-
- 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
-}
-
-upgrade_warning() {
- 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() {
- # 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-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
- use experimental-loong && unpack glibc-2.35-loongarch-patches-20220522.tar.xz
- fi
-
- cd "${WORKDIR}" || die
- unpack locale-gen-${LOCALE_GEN_VER}.tar.gz
- use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz
-}
-
-src_prepare() {
- local patchsetname
- if ! use vanilla ; then
- if [[ ${PV} == 9999* ]] ; then
- patchsetname="from git master"
- else
- patchsetname="${RELEASE_VER}-${PATCH_VER}"
- fi
- einfo "Applying Gentoo Glibc Patchset ${patchsetname}"
- eapply "${WORKDIR}"/patches
- einfo "Done."
-
- if use experimental-loong ; then
- einfo "Applying experimental LoongArch patchset"
- eapply "${WORKDIR}"/loongarch-2.35
- einfo "Done."
- fi
- fi
-
- if use clone3 ; then
- append-cppflags -DGENTOO_USE_CLONE3
- else
- # See e.g. bug #827386, bug #819045.
- elog "Disabling the clone3 syscall for compatibility with older Electron apps."
- elog "Please re-enable this flag before filing bugs!"
- fi
-
- default
-
- gnuconfig_update
-
- cd "${WORKDIR}"
- find . -name configure -exec touch {} +
-
- # move the external locale-gen to its old place
- mkdir extra || die
- mv locale-gen-${LOCALE_GEN_VER} extra/locale || die
-
- eprefixify extra/locale/locale-gen
-
- # Fix permissions on some of the scripts.
- chmod u+x "${S}"/scripts/*.sh
-
- cd "${S}"
-}
-
-glibc_do_configure() {
-
- local v
- for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do
- einfo " $(printf '%15s' ${v}:) ${!v}"
- done
-
- echo
- 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) ;;
- # 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
- --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)
-
- # locale data is arch-independent
- # https://bugs.gentoo.org/753740
- libc_cv_complocaledir='${exec_prefix}/lib/locale'
-
- # -march= option tricks build system to infer too
- # high ISA level: https://sourceware.org/PR27318
- libc_cv_include_x86_isa_level=no
- # Explicit override of https://sourceware.org/PR27991
- # exposes a bug in glibc's configure:
- # https://sourceware.org/PR27991
- libc_cv_have_x86_lahf_sahf=no
- libc_cv_have_x86_movbe=no
-
- ${EXTRA_ECONF}
- )
-
- # We rely on sys-libs/timezone-data for timezone tools normally.
- myconf+=( $(use_enable vanilla timezone-tools) )
-
- # These libs don't have configure flags.
- ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no)
- ac_cv_lib_cap_cap_init=$(usex caps || echo no)
-
- # There is no configure option for this and we need to export it
- # since the glibc build will re-run configure on itself
- export libc_cv_rootsbindir="$(host_eprefix)/sbin"
- export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)"
-
- local builddir=$(builddir nptl)
- mkdir -p "${builddir}"
- cd "${builddir}"
- set -- "${S}"/configure "${myconf[@]}"
- echo "$@"
- "$@" || die "failed to configure glibc"
-
- # ia64 static cross-compilers are a pita in so much that they
- # can't produce static ELFs (as the libgcc.a is broken). so
- # disable building of the programs for those targets if it
- # doesn't work.
- # XXX: We could turn this into a compiler test, but ia64 is
- # the only one that matters, so this should be fine for now.
- if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
- sed -i '1i+link-static = touch $@' config.make
- fi
-
- # If we're trying to migrate between ABI sets, we need
- # to lie and use a local copy of gcc. Like if the system
- # is built with MULTILIB_ABIS="amd64 x86" but we want to
- # add x32 to it, gcc/glibc don't yet support x32.
- #
- if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib-bootstrap ; then
- echo 'main(){}' > "${T}"/test.c
- if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
- sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
- fi
- fi
-}
-
-glibc_headers_configure() {
- export ABI=default
-
- local builddir=$(builddir "headers")
- mkdir -p "${builddir}"
- cd "${builddir}"
-
- # if we don't have a compiler yet, we can't really test it now ...
- # hopefully they don't affect header generation, so let's hope for
- # the best here ...
- local v vars=(
- ac_cv_header_cpuid_h=yes
- libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes
- libc_cv_asm_cfi_directives=yes
- libc_cv_broken_visibility_attribute=no
- libc_cv_c_cleanup=yes
- libc_cv_compiler_powerpc64le_binary128_ok=yes
- libc_cv_forced_unwind=yes
- libc_cv_gcc___thread=yes
- libc_cv_mlong_double_128=yes
- libc_cv_mlong_double_128ibm=yes
- libc_cv_ppc_machine=yes
- libc_cv_ppc_rel16=yes
- libc_cv_predef_fortify_source=no
- libc_cv_target_power8_ok=yes
- libc_cv_visibility_attribute=yes
- libc_cv_z_combreloc=yes
- libc_cv_z_execstack=yes
- libc_cv_z_initfirst=yes
- libc_cv_z_nodelete=yes
- libc_cv_z_nodlopen=yes
- libc_cv_z_relro=yes
- libc_mips_abi=${ABI}
- libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard)
- # These libs don't have configure flags.
- ac_cv_lib_audit_audit_log_user_avc_message=no
- ac_cv_lib_cap_cap_init=no
- )
-
- einfo "Forcing cached settings:"
- for v in "${vars[@]}" ; do
- einfo " ${v}"
- export ${v}
- done
-
- local headers_only_arch_CPPFLAGS=()
-
- # Blow away some random CC settings that screw things up. #550192
- if [[ -d ${S}/sysdeps/mips ]]; then
- pushd "${S}"/sysdeps/mips >/dev/null
- sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die
- sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die
-
- # Force the mips ABI to the default. This is OK because the set of
- # installed headers in this phase is the same between the 3 ABIs.
- # If this ever changes, this hack will break, but that's unlikely
- # as glibc discourages that behavior.
- # https://crbug.com/647033
- sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die
-
- popd >/dev/null
- fi
-
- case ${CTARGET} in
- riscv*)
- # RISC-V interrogates the compiler to determine which target to
- # build. If building the headers then we don't strictly need a
- # RISC-V compiler, so the built-in definitions that are provided
- # along with all RISC-V compiler might not exist. This causes
- # glibc's RISC-V preconfigure script to blow up. Since we're just
- # building the headers any value will actually work here, so just
- # pick the standard one (rv64g/lp64d) to make the build scripts
- # happy for now -- the headers are all the same anyway so it
- # doesn't matter.
- headers_only_arch_CPPFLAGS+=(
- -D__riscv_xlen=64
- -D__riscv_flen=64
- -D__riscv_float_abi_double=1
- -D__riscv_atomic=1
- ) ;;
- esac
-
- local myconf=()
- myconf+=(
- --disable-sanity-checks
- --enable-hacker-mode
- --disable-werror
- --enable-bind-now
- --build=${CBUILD_OPT:-${CBUILD}}
- --host=${CTARGET_OPT:-${CTARGET}}
- --with-headers=$(build_eprefix)$(alt_build_headers)
- --prefix="$(host_eprefix)/usr"
- ${EXTRA_ECONF}
- )
-
- # Nothing is compiled here which would affect the headers for the target.
- # So forcing CC/CFLAGS is sane.
- local headers_only_CC=$(tc-getBUILD_CC)
- local headers_only_CFLAGS="-O1 -pipe"
- local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}"
- local headers_only_LDFLAGS=""
- set -- "${S}"/configure "${myconf[@]}"
- echo \
- "CC=${headers_only_CC}" \
- "CFLAGS=${headers_only_CFLAGS}" \
- "CPPFLAGS=${headers_only_CPPFLAGS}" \
- "LDFLAGS=${headers_only_LDFLAGS}" \
- "$@"
- CC=${headers_only_CC} \
- CFLAGS=${headers_only_CFLAGS} \
- CPPFLAGS=${headers_only_CPPFLAGS} \
- LDFLAGS="" \
- "$@" || die "failed to configure glibc"
-}
-
-do_src_configure() {
- if just_headers ; then
- glibc_headers_configure
- else
- glibc_do_configure nptl
- fi
-}
-
-src_configure() {
- foreach_abi do_src_configure
-}
-
-do_src_compile() {
- emake -C "$(builddir nptl)"
-}
-
-src_compile() {
- if just_headers ; then
- return
- fi
-
- foreach_abi do_src_compile
-}
-
-glibc_src_test() {
- cd "$(builddir nptl)"
-
- local myxfailparams=""
- if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then
- for myt in ${XFAIL_TEST_LIST[@]} ; do
- myxfailparams+="test-xfail-${myt}=yes "
- done
- fi
-
- # sandbox does not understand unshare() and prevents
- # writes to /proc/, which makes many tests fail
-
- SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check
-}
-
-do_src_test() {
- local ret=0
-
- glibc_src_test
- : $(( ret |= $? ))
-
- return ${ret}
-}
-
-src_test() {
- if just_headers ; then
- return
- fi
-
- # Give tests more time to complete.
- export TIMEOUTFACTOR=5
-
- foreach_abi do_src_test || die "tests failed"
-}
-
-run_locale_gen() {
- # if the host locales.gen contains no entries, we'll install everything
- local root="$1"
- local inplace=""
-
- if [[ "${root}" == "--inplace-glibc" ]] ; then
- inplace="--inplace-glibc"
- root="$2"
- fi
-
- local locale_list="${root%/}/etc/locale.gen"
-
- pushd "${ED}"/$(get_libdir) >/dev/null
-
- if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then
- [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space"
- locale_list="${root%/}/usr/share/i18n/SUPPORTED"
- fi
-
- set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \
- --destdir "${root}"
- echo "$@"
- "$@"
-
- popd >/dev/null
-}
-
-glibc_do_src_install() {
- local builddir=$(builddir nptl)
- cd "${builddir}"
-
- emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install
-
- # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support
- # which come without headers etc. Only needed for binary packages since the
- # external net-libs/libnsl has increased soversion. Keep only versioned libraries.
- find "${D}" -name "libnsl.a" -delete
- find "${D}" -name "libnsl.so" -delete
-
- # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need
- # to infer upstream version:
- # '#define VERSION "2.26.90"' -> '2.26.90'
- local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h)
-
- # Avoid stripping binaries not targeted by ${CHOST}. Or else
- # ${CHOST}-strip would break binaries build for ${CTARGET}.
- is_crosscompile && dostrip -x /
- # gdb thread introspection relies on local libpthreas symbols. stripping breaks it
- # See Note [Disable automatic stripping]
- dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so
-
- if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then
- # Move versioned .a file out of libdir to evade portage QA checks
- # instead of using gen_usr_ldscript(). We fix ldscript as:
- # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..."
- sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die
- dodir $(alt_usrlibdir)/${P}
- mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die
- fi
-
- # We'll take care of the cache ourselves
- rm -f "${ED}"/etc/ld.so.cache
-
- # Everything past this point just needs to be done once ...
- is_final_abi || return 0
-
- # Make sure the non-native interp can be found on multilib systems even
- # if the main library set isn't installed into the right place. Maybe
- # we should query the active gcc for info instead of hardcoding it ?
- local i ldso_abi ldso_name
- local ldso_abi_list=(
- # x86
- amd64 /lib64/ld-linux-x86-64.so.2
- x32 /libx32/ld-linux-x32.so.2
- x86 /lib/ld-linux.so.2
- # mips
- o32 /lib/ld.so.1
- n32 /lib32/ld.so.1
- n64 /lib64/ld.so.1
- # powerpc
- ppc /lib/ld.so.1
- # riscv
- ilp32d /lib/ld-linux-riscv32-ilp32d.so.1
- ilp32 /lib/ld-linux-riscv32-ilp32.so.1
- lp64d /lib/ld-linux-riscv64-lp64d.so.1
- lp64 /lib/ld-linux-riscv64-lp64.so.1
- # s390
- s390 /lib/ld.so.1
- s390x /lib/ld64.so.1
- # sparc
- sparc32 /lib/ld-linux.so.2
- sparc64 /lib64/ld-linux.so.2
- )
- case $(tc-endian) in
- little)
- ldso_abi_list+=(
- # arm
- arm64 /lib/ld-linux-aarch64.so.1
- # ELFv2 (glibc does not support ELFv1 on LE)
- ppc64 /lib64/ld64.so.2
- )
- ;;
- big)
- ldso_abi_list+=(
- # arm
- arm64 /lib/ld-linux-aarch64_be.so.1
- # ELFv1 (glibc does not support ELFv2 on BE)
- ppc64 /lib64/ld64.so.1
- )
- ;;
- esac
- if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then
- dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib
- fi
- for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do
- ldso_abi=${ldso_abi_list[i]}
- has ${ldso_abi} $(get_install_abis) || continue
-
- ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}"
- if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then
- dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name}
- fi
- done
-
- # In the LSB 5.0 definition, someone had the excellent idea to "standardize"
- # the runtime loader name, see also https://xkcd.com/927/
- # Normally, in Gentoo one should never come across executables that require this.
- # However, binary commercial packages are known to adhere to weird practices.
- # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB
- local lsb_ldso_name native_ldso_name lsb_ldso_abi
- local lsb_ldso_abi_list=(
- # x86
- amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3
- )
- for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do
- lsb_ldso_abi=${lsb_ldso_abi_list[i]}
- native_ldso_name=${lsb_ldso_abi_list[i+1]}
- lsb_ldso_name=${lsb_ldso_abi_list[i+2]}
- has ${lsb_ldso_abi} $(get_install_abis) || continue
-
- if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then
- dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name}"
- fi
- done
-
- # With devpts under Linux mounted properly, we do not need the pt_chown
- # binary to be setuid. This is because the default owners/perms will be
- # exactly what we want.
- if ! use suid ; then
- find "${ED}" -name pt_chown -exec chmod -s {} +
- fi
-
- #################################################################
- # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY #
- # Make sure we install some symlink hacks so that when we build
- # a 2nd stage cross-compiler, gcc finds the target system
- # headers correctly. See gcc/doc/gccinstall.info
- if is_crosscompile ; then
- # We need to make sure that /lib and /usr/lib always exists.
- # gcc likes to use relative paths to get to its multilibs like
- # /usr/lib/../lib64/. So while we don't install any files into
- # /usr/lib/, we do need it to exist.
- keepdir $(alt_prefix)/lib
- keepdir $(alt_prefix)/usr/lib
-
- dosym usr/include $(alt_prefix)/sys-include
- return 0
- fi
-
- # Files for Debian-style locale updating
- dodir /usr/share/i18n
- sed \
- -e "/^#/d" \
- -e "/SUPPORTED-LOCALES=/d" \
- -e "s: \\\\::g" -e "s:/: :g" \
- "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \
- || die "generating /usr/share/i18n/SUPPORTED failed"
- cd "${WORKDIR}"/extra/locale
- dosbin locale-gen
- doman *.[0-8]
- insinto /etc
- doins locale.gen
-
- keepdir /usr/lib/locale
-
- cd "${S}"
-
- # Install misc network config files
- insinto /etc
- doins posix/gai.conf
-
- 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}/"
- sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die
- fi
-}
-
-glibc_headers_install() {
- local builddir=$(builddir "headers")
- cd "${builddir}"
- emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers
-
- insinto $(alt_headers)/gnu
- doins "${S}"/include/gnu/stubs.h
-
- # Make sure we install the sys-include symlink so that when
- # we build a 2nd stage cross-compiler, gcc finds the target
- # system headers correctly. See gcc/doc/gccinstall.info
- dosym usr/include $(alt_prefix)/sys-include
-}
-
-src_install() {
- if just_headers ; then
- export ABI=default
- glibc_headers_install
- return
- fi
-
- foreach_abi glibc_do_src_install
-
- if ! use static-libs ; then
- einfo "Not installing static glibc libraries"
- find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete
- fi
-}
-
-# Simple test to make sure our new glibc isn't completely broken.
-# Make sure we don't test with statically built binaries since
-# they will fail. Also, skip if this glibc is a cross compiler.
-#
-# If coreutils is built with USE=multicall, some of these files
-# will just be wrapper scripts, not actual ELFs we can test.
-glibc_sanity_check() {
- cd / #228809
-
- # We enter ${ED} so to avoid trouble if the path contains
- # special characters; for instance if the path contains the
- # colon character (:), then the linker will try to split it
- # and look for the libraries in an unexpected place. This can
- # lead to unsafe code execution if the generated prefix is
- # within a world-writable directory.
- # (e.g. /var/tmp/portage:${HOSTNAME})
- pushd "${ED}"/$(get_libdir) >/dev/null
-
- # 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
-
- # 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
-}
-
-pkg_postinst() {
- # nothing to do if just installing headers
- just_headers && return
-
- if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then
- # Generate fastloading iconv module configuration file.
- "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/"
- fi
-
- if ! is_crosscompile && [[ -z ${ROOT} ]] ; then
- use compile-locales || run_locale_gen "${EROOT}/"
- fi
-
- 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.35-r7.ebuild b/sys-libs/glibc/glibc-2.35-r7.ebuild
deleted file mode 100644
index 3e8358532526..000000000000
--- a/sys-libs/glibc/glibc-2.35-r7.ebuild
+++ /dev/null
@@ -1,1604 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc
-# Please read & adapt the page as necessary if obsolete.
-
-PYTHON_COMPAT=( python3_{8..11} )
-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=8
-PATCH_DEV=dilfridge
-
-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"
- SRC_URI+=" experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220522.tar.xz )"
-fi
-
-RELEASE_VER=${PV}
-
-GCC_BOOTSTRAP_VER=20201208
-
-LOCALE_GEN_VER=2.22
-
-GLIBC_SYSTEMD_VER=20210729
-
-SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz"
-SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
-SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )"
-
-IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp stack-realign +static-libs suid systemd systemtap test vanilla"
-
-# 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"
-
-# Here's how the cross-compile logic breaks down ...
-# CTARGET - machine that will target the binaries
-# CHOST - machine that will host the binaries
-# CBUILD - machine that will build the binaries
-# If CTARGET != CHOST, it means you want a libc for cross-compiling.
-# If CHOST != CBUILD, it means you want to cross-compile the libc.
-# CBUILD = CHOST = CTARGET - native build/install
-# CBUILD != (CHOST = CTARGET) - cross-compile a native build
-# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
-# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
-# For install paths:
-# CHOST = CTARGET - install into /
-# CHOST != CTARGET - install into /usr/CTARGET/
-#
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-
-# Note [Disable automatic stripping]
-# Disabling automatic stripping for a few reasons:
-# - portage's attempt to strip breaks non-native binaries at least on
-# arm: bug #697428
-# - portage's attempt to strip libpthread.so.0 breaks gdb thread
-# enumeration: bug #697910. This is quite subtle:
-# * gdb uses glibc's libthread_db-1.0.so to enumerate threads.
-# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols
-# via 'ps_pglobal_lookup' symbol defined in gdb.
-# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all
-# known symbols in 'libpthread.so.0'. Specifically 'nptl_version'
-# (unexported) is used to sanity check compatibility before enabling
-# debugging.
-# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint
-# * normal 'strip' command trims '.symtab'
-# Thus our main goal here is to prevent 'libpthread.so.0' from
-# losing it's '.symtab' entries.
-# As Gentoo's strip does not allow us to pass less aggressive stripping
-# options and does not check the machine target we strip selectively.
-
-# We need a new-enough binutils/gcc to match upstream baseline.
-# Also we need to make sure our binutils/gcc supports TLS,
-# and that gcc already contains the hardened patches.
-# Lastly, let's avoid some openssh nastiness, bug 708224, as
-# convenience to our users.
-
-# gzip, grep, awk are needed by locale-gen, bug 740750
-
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- sys-devel/bison
- doc? ( sys-apps/texinfo )
- !compile-locales? (
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- )
-"
-COMMON_DEPEND="
- gd? ( media-libs/gd:2= )
- nscd? ( selinux? (
- audit? ( sys-process/audit )
- caps? ( sys-libs/libcap )
- ) )
- suid? ( caps? ( sys-libs/libcap ) )
- selinux? ( sys-libs/libselinux )
- systemtap? ( dev-util/systemtap )
-"
-DEPEND="${COMMON_DEPEND}
- compile-locales? (
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- )
- test? ( >=net-dns/libidn2-2.3.0 )
-"
-RDEPEND="${COMMON_DEPEND}
- app-arch/gzip
- sys-apps/grep
- virtual/awk
- sys-apps/gentoo-functions
- !<app-misc/pax-utils-${MIN_PAX_UTILS_VER}
- !<net-misc/openssh-8.1_p1-r2
-"
-
-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
-)
-
-#
-# Small helper functions
-#
-
-is_crosscompile() {
- [[ ${CHOST} != ${CTARGET} ]]
-}
-
-just_headers() {
- is_crosscompile && use headers-only
-}
-
-alt_prefix() {
- is_crosscompile && echo /usr/${CTARGET}
-}
-
-# This prefix is applicable to CHOST when building against this
-# glibc. It is baked into the library at configure time.
-host_eprefix() {
- is_crosscompile || echo "${EPREFIX}"
-}
-
-# This prefix is applicable to CBUILD when building against this
-# glibc. It determines the destination path at install time.
-build_eprefix() {
- is_crosscompile && echo "${EPREFIX}"
-}
-
-# We need to be able to set alternative headers for compiling for non-native
-# platform. Will also become useful for testing kernel-headers without screwing
-# up the whole system.
-alt_headers() {
- echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
-}
-
-alt_build_headers() {
- if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
- ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
- if tc-is-cross-compiler ; then
- ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
- if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
- local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
- ALT_BUILD_HEADERS=${header_path%/linux/version.h}
- fi
- fi
- fi
- echo "${ALT_BUILD_HEADERS}"
-}
-
-alt_libdir() {
- echo $(alt_prefix)/$(get_libdir)
-}
-alt_usrlibdir() {
- echo $(alt_prefix)/usr/$(get_libdir)
-}
-
-builddir() {
- echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
-}
-
-do_compile_test() {
- local ret save_cflags=${CFLAGS}
- CFLAGS+=" $1"
- shift
-
- pushd "${T}" >/dev/null
-
- rm -f glibc-test*
- printf '%b' "$*" > glibc-test.c
-
- # 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"
- fi
- ;;
- mips)
- # The mips abi cannot support the GNU style hashes. #233233
- filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
- ;;
- ppc|ppc64)
- # Many arch-specific implementations do not work on ppc with
- # cache-block not equal to 128 bytes. This breaks memset:
- # https://sourceware.org/PR26522
- # https://bugs.gentoo.org/737996
- # Use default -mcpu=. For ppc it means non-multiarch setup.
- filter-flags '-mcpu=*'
- ;;
- sparc)
- # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though.
- filter-flags "-fcall-used-g7"
- append-flags "-fcall-used-g6"
-
- local cpu
- case ${CTARGET} in
- sparc64-*)
- cpu="sparc64"
- case $(get-flag mcpu) in
- v9)
- # We need to force at least v9a because the base build doesn't
- # work with just v9.
- # https://sourceware.org/bugzilla/show_bug.cgi?id=19477
- append-flags "-Wa,-xarch=v9a"
- ;;
- esac
- ;;
- sparc-*)
- case $(get-flag mcpu) in
- v8|supersparc|hypersparc|leon|leon3)
- cpu="sparcv8"
- ;;
- *)
- cpu="sparcv9"
- ;;
- esac
- ;;
- esac
- [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
- ;;
- esac
-}
-
-setup_flags() {
- # Make sure host make.conf doesn't pollute us
- if is_crosscompile || tc-is-cross-compiler ; then
- CHOST=${CTARGET} strip-unsupported-flags
- fi
-
- # Store our CFLAGS because it's changed depending on which CTARGET
- # we are building when pulling glibc on a multilib profile
- CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
- CFLAGS=${CFLAGS_BASE}
- CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
- CXXFLAGS=${CXXFLAGS_BASE}
- ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
- ASFLAGS=${ASFLAGS_BASE}
-
- # Allow users to explicitly avoid flag sanitization via
- # USE=custom-cflags.
- if ! use custom-cflags; then
- # Over-zealous CFLAGS can often cause problems. What may work for one
- # person may not work for another. To avoid a large influx of bugs
- # relating to failed builds, we strip most CFLAGS out to ensure as few
- # problems as possible.
- strip-flags
- # Lock glibc at -O2; we want to be conservative here.
- filter-flags '-O?'
- append-flags -O2
- fi
-
- strip-unsupported-flags
- filter-flags -m32 -m64 '-mabi=*'
-
- # glibc aborts if rpath is set by LDFLAGS
- filter-ldflags '-Wl,-rpath=*'
-
- # ld can't use -r & --relax at the same time, bug #788901
- # https://sourceware.org/PR27837
- filter-ldflags '-Wl,--relax'
-
- # #492892
- filter-flags -frecord-gcc-switches
-
- # #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"
- replace-flags -O0 -O1
-
- filter-flags '-fstack-protector*'
-
- # See end of bug #830454; we handle this via USE=cet
- filter-flags '-fcf-protection='
-}
-
-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=${__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
- export CXX=${__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
-
- # and make sure __ORIC_CC and __ORIG_CXX is defined now.
- export __ORIG_CC=${CC}
- export __ORIG_CXX=${CXX}
-
- if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
-
- # If we are running in an otherwise clang/llvm environment, we need to
- # recover the proper gcc and binutils settings here, at least until glibc
- # is finally building with clang. So let's override everything that is
- # set in the clang profiles.
- # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always
- # a good start into that direction.
- # Also, if you're crosscompiling, let's assume you know what you are doing.
- # Hopefully.
- # 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 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_CC=${CC}
- export __GLIBC_CXX=${CXX}
-
- export __abi_CFLAGS="$(get_abi_CFLAGS)"
-
- # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760
- # To build .S (assembly) files with the same ABI-specific flags
- # upstream currently recommends adding CFLAGS to CC/CXX:
- # https://sourceware.org/PR23273
- # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS
- # and breaks multiarch support. See 659030#c3 for an example.
- # The glibc configure script doesn't properly use LDFLAGS all the time.
- export CC="${__GLIBC_CC} ${__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}"
-
- # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548
- export CXX="${__GLIBC_CXX} ${__abi_CFLAGS} ${CFLAGS}"
-
- if is_crosscompile; then
- # Assume worst-case bootstrap: glibc is buil first time
- # when ${CTARGET}-g++ is not available yet. We avoid
- # building auxiliary programs that require C++: bug #683074
- # It should not affect final result.
- export libc_cv_cxx_link_ok=no
- # The line above has the same effect. We set CXX explicitly
- # to make build logs less confusing.
- export CXX=
- fi
-}
-
-foreach_abi() {
- setup_env
-
- local ret=0
- local abilist=""
- if use multilib ; then
- abilist=$(get_install_abis)
- else
- abilist=${DEFAULT_ABI}
- fi
- local -x ABI
- for ABI in ${abilist:-default} ; do
- setup_env
- einfo "Running $1 for ABI ${ABI}"
- $1
- : $(( ret |= $? ))
- done
- return ${ret}
-}
-
-glibc_banner() {
- local b="Gentoo ${PVR}"
- [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
- echo "${b}"
-}
-
-# The following Kernel version handling functions are mostly copied from portage
-# source. It's better not to use linux-info.eclass here since a) it adds too
-# much magic, see bug 326693 for some of the arguments, and b) some of the
-# functions are just not provided.
-
-g_get_running_KV() {
- uname -r
- return $?
-}
-
-g_KV_major() {
- [[ -z $1 ]] && return 1
- local KV=$@
- echo "${KV%%.*}"
-}
-
-g_KV_minor() {
- [[ -z $1 ]] && return 1
- local KV=$@
- KV=${KV#*.}
- echo "${KV%%.*}"
-}
-
-g_KV_micro() {
- [[ -z $1 ]] && return 1
- local KV=$@
- KV=${KV#*.*.}
- echo "${KV%%[^[:digit:]]*}"
-}
-
-g_KV_to_int() {
- [[ -z $1 ]] && return 1
- local KV_MAJOR=$(g_KV_major "$1")
- local KV_MINOR=$(g_KV_minor "$1")
- local KV_MICRO=$(g_KV_micro "$1")
- local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO ))
-
- # We make version 2.2.0 the minimum version we will handle as
- # a sanity check ... if its less, we fail ...
- if [[ ${KV_int} -ge 131584 ]] ; then
- echo "${KV_int}"
- return 0
- fi
- return 1
-}
-
-g_int_to_KV() {
- local version=$1 major minor micro
- major=$((version / 65536))
- minor=$(((version % 65536) / 256))
- micro=$((version % 256))
- echo ${major}.${minor}.${micro}
-}
-
-eend_KV() {
- [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]]
- eend $?
-}
-
-get_kheader_version() {
- printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
- $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
- tail -n 1
-}
-
-# We collect all sanity checks here. Consistency is not guranteed between
-# pkg_ and src_ phases, so we call this function both in pkg_pretend and in
-# src_unpack.
-sanity_prechecks() {
- # Prevent native builds from downgrading
- if [[ ${MERGE_TYPE} != "buildonly" ]] && \
- [[ -z ${ROOT} ]] && \
- [[ ${CBUILD} == ${CHOST} ]] && \
- [[ ${CHOST} == ${CTARGET} ]] ; then
-
- # The high rev # is to allow people to downgrade between -r#
- # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2
- # should be fine. Hopefully we never actually use a r# this
- # high.
- if has_version ">${CATEGORY}/${P}-r10000" ; then
- eerror "Sanity check to keep you from breaking your system:"
- eerror " Downgrading glibc is not supported and a sure way to destruction."
- [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system."
- fi
-
- if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then
- eerror "Your old kernel is broken. You need to update it to a newer"
- eerror "version as syscall(<bignum>) will break. See bug 279260."
- die "Old and broken kernel."
- fi
- fi
-
- # Users have had a chance to phase themselves, time to give em the boot
- if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then
- eerror "You still haven't deleted ${EROOT}/etc/locales.build."
- eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher."
- die "Lazy upgrader detected"
- fi
-
- if [[ ${CTARGET} == i386-* ]] ; then
- eerror "i386 CHOSTs are no longer supported."
- eerror "Chances are you don't actually want/need i386."
- eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml"
- die "Please fix your CHOST"
- fi
-
- if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then
- ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS."
- ewarn "This will result in a 50% performance penalty when running with a 32bit"
- ewarn "hypervisor, which is probably not what you want."
- fi
-
- # ABI-specific checks follow here. Hey, we have a lot more specific conditions that
- # we test for...
- if ! is_crosscompile ; then
- if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then
- ebegin "Checking that IA32 emulation is enabled in the running kernel"
- echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c"
- local STAT
- if ${CC-${CHOST}-gcc} ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then
- "${T}/check-ia32-emulation.elf32"
- STAT=$?
- else
- # Don't fail here to allow single->multi ABI switch
- # or recover from breakage like bug #646424
- ewarn "Failed to compile the ABI test. Broken host glibc?"
- STAT=0
- fi
- rm -f "${T}/check-ia32-emulation.elf32"
- eend $STAT
- [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc."
- fi
-
- fi
-
- # When we actually have to compile something...
- if ! just_headers && [[ ${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
-
- 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
-}
-
-upgrade_warning() {
- 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() {
- # 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-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
- use experimental-loong && unpack glibc-2.35-loongarch-patches-20220522.tar.xz
- fi
-
- cd "${WORKDIR}" || die
- unpack locale-gen-${LOCALE_GEN_VER}.tar.gz
- use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz
-}
-
-src_prepare() {
- local patchsetname
- if ! use vanilla ; then
- if [[ ${PV} == 9999* ]] ; then
- patchsetname="from git master"
- else
- patchsetname="${RELEASE_VER}-${PATCH_VER}"
- fi
- einfo "Applying Gentoo Glibc Patchset ${patchsetname}"
- eapply "${WORKDIR}"/patches
- einfo "Done."
-
- if use experimental-loong ; then
- einfo "Applying experimental LoongArch patchset"
- eapply "${WORKDIR}"/loongarch-2.35
- einfo "Done."
- fi
- fi
-
- if use clone3 ; then
- append-cppflags -DGENTOO_USE_CLONE3
- else
- # See e.g. bug #827386, bug #819045.
- elog "Disabling the clone3 syscall for compatibility with older Electron apps."
- elog "Please re-enable this flag before filing bugs!"
- fi
-
- default
-
- gnuconfig_update
-
- cd "${WORKDIR}"
- find . -name configure -exec touch {} +
-
- # move the external locale-gen to its old place
- mkdir extra || die
- mv locale-gen-${LOCALE_GEN_VER} extra/locale || die
-
- eprefixify extra/locale/locale-gen
-
- # Fix permissions on some of the scripts.
- chmod u+x "${S}"/scripts/*.sh
-
- cd "${S}"
-}
-
-glibc_do_configure() {
-
- local v
- for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do
- einfo " $(printf '%15s' ${v}:) ${!v}"
- done
-
- echo
- 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) ;;
- # 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
- --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)
-
- # locale data is arch-independent
- # https://bugs.gentoo.org/753740
- libc_cv_complocaledir='${exec_prefix}/lib/locale'
-
- # -march= option tricks build system to infer too
- # high ISA level: https://sourceware.org/PR27318
- libc_cv_include_x86_isa_level=no
- # Explicit override of https://sourceware.org/PR27991
- # exposes a bug in glibc's configure:
- # https://sourceware.org/PR27991
- libc_cv_have_x86_lahf_sahf=no
- libc_cv_have_x86_movbe=no
-
- ${EXTRA_ECONF}
- )
-
- # We rely on sys-libs/timezone-data for timezone tools normally.
- myconf+=( $(use_enable vanilla timezone-tools) )
-
- # These libs don't have configure flags.
- ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no)
- ac_cv_lib_cap_cap_init=$(usex caps || echo no)
-
- # There is no configure option for this and we need to export it
- # since the glibc build will re-run configure on itself
- export libc_cv_rootsbindir="$(host_eprefix)/sbin"
- export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)"
-
- local builddir=$(builddir nptl)
- mkdir -p "${builddir}"
- cd "${builddir}"
- set -- "${S}"/configure "${myconf[@]}"
- echo "$@"
- "$@" || die "failed to configure glibc"
-
- # ia64 static cross-compilers are a pita in so much that they
- # can't produce static ELFs (as the libgcc.a is broken). so
- # disable building of the programs for those targets if it
- # doesn't work.
- # XXX: We could turn this into a compiler test, but ia64 is
- # the only one that matters, so this should be fine for now.
- if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
- sed -i '1i+link-static = touch $@' config.make
- fi
-
- # If we're trying to migrate between ABI sets, we need
- # to lie and use a local copy of gcc. Like if the system
- # is built with MULTILIB_ABIS="amd64 x86" but we want to
- # add x32 to it, gcc/glibc don't yet support x32.
- #
- if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib-bootstrap ; then
- echo 'main(){}' > "${T}"/test.c
- if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
- sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
- fi
- fi
-}
-
-glibc_headers_configure() {
- export ABI=default
-
- local builddir=$(builddir "headers")
- mkdir -p "${builddir}"
- cd "${builddir}"
-
- # if we don't have a compiler yet, we can't really test it now ...
- # hopefully they don't affect header generation, so let's hope for
- # the best here ...
- local v vars=(
- ac_cv_header_cpuid_h=yes
- libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes
- libc_cv_asm_cfi_directives=yes
- libc_cv_broken_visibility_attribute=no
- libc_cv_c_cleanup=yes
- libc_cv_compiler_powerpc64le_binary128_ok=yes
- libc_cv_forced_unwind=yes
- libc_cv_gcc___thread=yes
- libc_cv_mlong_double_128=yes
- libc_cv_mlong_double_128ibm=yes
- libc_cv_ppc_machine=yes
- libc_cv_ppc_rel16=yes
- libc_cv_predef_fortify_source=no
- libc_cv_target_power8_ok=yes
- libc_cv_visibility_attribute=yes
- libc_cv_z_combreloc=yes
- libc_cv_z_execstack=yes
- libc_cv_z_initfirst=yes
- libc_cv_z_nodelete=yes
- libc_cv_z_nodlopen=yes
- libc_cv_z_relro=yes
- libc_mips_abi=${ABI}
- libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard)
- # These libs don't have configure flags.
- ac_cv_lib_audit_audit_log_user_avc_message=no
- ac_cv_lib_cap_cap_init=no
- )
-
- einfo "Forcing cached settings:"
- for v in "${vars[@]}" ; do
- einfo " ${v}"
- export ${v}
- done
-
- local headers_only_arch_CPPFLAGS=()
-
- # Blow away some random CC settings that screw things up. #550192
- if [[ -d ${S}/sysdeps/mips ]]; then
- pushd "${S}"/sysdeps/mips >/dev/null
- sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die
- sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die
-
- # Force the mips ABI to the default. This is OK because the set of
- # installed headers in this phase is the same between the 3 ABIs.
- # If this ever changes, this hack will break, but that's unlikely
- # as glibc discourages that behavior.
- # https://crbug.com/647033
- sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die
-
- popd >/dev/null
- fi
-
- case ${CTARGET} in
- riscv*)
- # RISC-V interrogates the compiler to determine which target to
- # build. If building the headers then we don't strictly need a
- # RISC-V compiler, so the built-in definitions that are provided
- # along with all RISC-V compiler might not exist. This causes
- # glibc's RISC-V preconfigure script to blow up. Since we're just
- # building the headers any value will actually work here, so just
- # pick the standard one (rv64g/lp64d) to make the build scripts
- # happy for now -- the headers are all the same anyway so it
- # doesn't matter.
- headers_only_arch_CPPFLAGS+=(
- -D__riscv_xlen=64
- -D__riscv_flen=64
- -D__riscv_float_abi_double=1
- -D__riscv_atomic=1
- ) ;;
- esac
-
- local myconf=()
- myconf+=(
- --disable-sanity-checks
- --enable-hacker-mode
- --disable-werror
- --enable-bind-now
- --build=${CBUILD_OPT:-${CBUILD}}
- --host=${CTARGET_OPT:-${CTARGET}}
- --with-headers=$(build_eprefix)$(alt_build_headers)
- --prefix="$(host_eprefix)/usr"
- ${EXTRA_ECONF}
- )
-
- # Nothing is compiled here which would affect the headers for the target.
- # So forcing CC/CFLAGS is sane.
- local headers_only_CC=$(tc-getBUILD_CC)
- local headers_only_CFLAGS="-O1 -pipe"
- local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}"
- local headers_only_LDFLAGS=""
- set -- "${S}"/configure "${myconf[@]}"
- echo \
- "CC=${headers_only_CC}" \
- "CFLAGS=${headers_only_CFLAGS}" \
- "CPPFLAGS=${headers_only_CPPFLAGS}" \
- "LDFLAGS=${headers_only_LDFLAGS}" \
- "$@"
- CC=${headers_only_CC} \
- CFLAGS=${headers_only_CFLAGS} \
- CPPFLAGS=${headers_only_CPPFLAGS} \
- LDFLAGS="" \
- "$@" || die "failed to configure glibc"
-}
-
-do_src_configure() {
- if just_headers ; then
- glibc_headers_configure
- else
- glibc_do_configure nptl
- fi
-}
-
-src_configure() {
- foreach_abi do_src_configure
-}
-
-do_src_compile() {
- emake -C "$(builddir nptl)"
-}
-
-src_compile() {
- if just_headers ; then
- return
- fi
-
- foreach_abi do_src_compile
-}
-
-glibc_src_test() {
- cd "$(builddir nptl)"
-
- local myxfailparams=""
- if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then
- for myt in ${XFAIL_TEST_LIST[@]} ; do
- myxfailparams+="test-xfail-${myt}=yes "
- done
- fi
-
- # sandbox does not understand unshare() and prevents
- # writes to /proc/, which makes many tests fail
-
- # we give the tests a bit more time to avoid spurious
- # bug reports on slow arches
-
- SANDBOX_ON=0 LD_PRELOAD= TIMEOUTFACTOR=16 emake ${myxfailparams} check
-}
-
-do_src_test() {
- local ret=0
-
- glibc_src_test
- : $(( ret |= $? ))
-
- return ${ret}
-}
-
-src_test() {
- if just_headers ; then
- return
- fi
-
- # Give tests more time to complete.
- export TIMEOUTFACTOR=5
-
- foreach_abi do_src_test || die "tests failed"
-}
-
-run_locale_gen() {
- # if the host locales.gen contains no entries, we'll install everything
- local root="$1"
- local inplace=""
-
- if [[ "${root}" == "--inplace-glibc" ]] ; then
- inplace="--inplace-glibc"
- root="$2"
- fi
-
- local locale_list="${root%/}/etc/locale.gen"
-
- pushd "${ED}"/$(get_libdir) >/dev/null
-
- if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then
- [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space"
- locale_list="${root%/}/usr/share/i18n/SUPPORTED"
- fi
-
- set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \
- --destdir "${root}"
- echo "$@"
- "$@"
-
- popd >/dev/null
-}
-
-glibc_do_src_install() {
- local builddir=$(builddir nptl)
- cd "${builddir}"
-
- emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install
-
- # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support
- # which come without headers etc. Only needed for binary packages since the
- # external net-libs/libnsl has increased soversion. Keep only versioned libraries.
- find "${D}" -name "libnsl.a" -delete
- find "${D}" -name "libnsl.so" -delete
-
- # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need
- # to infer upstream version:
- # '#define VERSION "2.26.90"' -> '2.26.90'
- local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h)
-
- # Avoid stripping binaries not targeted by ${CHOST}. Or else
- # ${CHOST}-strip would break binaries build for ${CTARGET}.
- is_crosscompile && dostrip -x /
- # gdb thread introspection relies on local libpthreas symbols. stripping breaks it
- # See Note [Disable automatic stripping]
- dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so
-
- if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then
- # Move versioned .a file out of libdir to evade portage QA checks
- # instead of using gen_usr_ldscript(). We fix ldscript as:
- # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..."
- sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die
- dodir $(alt_usrlibdir)/${P}
- mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die
- fi
-
- # We'll take care of the cache ourselves
- rm -f "${ED}"/etc/ld.so.cache
-
- # Everything past this point just needs to be done once ...
- is_final_abi || return 0
-
- # Make sure the non-native interp can be found on multilib systems even
- # if the main library set isn't installed into the right place. Maybe
- # we should query the active gcc for info instead of hardcoding it ?
- local i ldso_abi ldso_name
- local ldso_abi_list=(
- # x86
- amd64 /lib64/ld-linux-x86-64.so.2
- x32 /libx32/ld-linux-x32.so.2
- x86 /lib/ld-linux.so.2
- # mips
- o32 /lib/ld.so.1
- n32 /lib32/ld.so.1
- n64 /lib64/ld.so.1
- # powerpc
- ppc /lib/ld.so.1
- # riscv
- ilp32d /lib/ld-linux-riscv32-ilp32d.so.1
- ilp32 /lib/ld-linux-riscv32-ilp32.so.1
- lp64d /lib/ld-linux-riscv64-lp64d.so.1
- lp64 /lib/ld-linux-riscv64-lp64.so.1
- # s390
- s390 /lib/ld.so.1
- s390x /lib/ld64.so.1
- # sparc
- sparc32 /lib/ld-linux.so.2
- sparc64 /lib64/ld-linux.so.2
- )
- case $(tc-endian) in
- little)
- ldso_abi_list+=(
- # arm
- arm64 /lib/ld-linux-aarch64.so.1
- # ELFv2 (glibc does not support ELFv1 on LE)
- ppc64 /lib64/ld64.so.2
- )
- ;;
- big)
- ldso_abi_list+=(
- # arm
- arm64 /lib/ld-linux-aarch64_be.so.1
- # ELFv1 (glibc does not support ELFv2 on BE)
- ppc64 /lib64/ld64.so.1
- )
- ;;
- esac
- if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then
- dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib
- fi
- for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do
- ldso_abi=${ldso_abi_list[i]}
- has ${ldso_abi} $(get_install_abis) || continue
-
- ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}"
- if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then
- dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name}
- fi
- done
-
- # In the LSB 5.0 definition, someone had the excellent idea to "standardize"
- # the runtime loader name, see also https://xkcd.com/927/
- # Normally, in Gentoo one should never come across executables that require this.
- # However, binary commercial packages are known to adhere to weird practices.
- # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB
- local lsb_ldso_name native_ldso_name lsb_ldso_abi
- local lsb_ldso_abi_list=(
- # x86
- amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3
- )
- for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do
- lsb_ldso_abi=${lsb_ldso_abi_list[i]}
- native_ldso_name=${lsb_ldso_abi_list[i+1]}
- lsb_ldso_name=${lsb_ldso_abi_list[i+2]}
- has ${lsb_ldso_abi} $(get_install_abis) || continue
-
- if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then
- dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name}"
- fi
- done
-
- # With devpts under Linux mounted properly, we do not need the pt_chown
- # binary to be setuid. This is because the default owners/perms will be
- # exactly what we want.
- if ! use suid ; then
- find "${ED}" -name pt_chown -exec chmod -s {} +
- fi
-
- #################################################################
- # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY #
- # Make sure we install some symlink hacks so that when we build
- # a 2nd stage cross-compiler, gcc finds the target system
- # headers correctly. See gcc/doc/gccinstall.info
- if is_crosscompile ; then
- # We need to make sure that /lib and /usr/lib always exists.
- # gcc likes to use relative paths to get to its multilibs like
- # /usr/lib/../lib64/. So while we don't install any files into
- # /usr/lib/, we do need it to exist.
- keepdir $(alt_prefix)/lib
- keepdir $(alt_prefix)/usr/lib
-
- dosym usr/include $(alt_prefix)/sys-include
- return 0
- fi
-
- # Files for Debian-style locale updating
- dodir /usr/share/i18n
- sed \
- -e "/^#/d" \
- -e "/SUPPORTED-LOCALES=/d" \
- -e "s: \\\\::g" -e "s:/: :g" \
- "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \
- || die "generating /usr/share/i18n/SUPPORTED failed"
- cd "${WORKDIR}"/extra/locale
- dosbin locale-gen
- doman *.[0-8]
- insinto /etc
- doins locale.gen
-
- keepdir /usr/lib/locale
-
- cd "${S}"
-
- # Install misc network config files
- insinto /etc
- doins posix/gai.conf
-
- 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}/"
- sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die
- fi
-}
-
-glibc_headers_install() {
- local builddir=$(builddir "headers")
- cd "${builddir}"
- emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers
-
- insinto $(alt_headers)/gnu
- doins "${S}"/include/gnu/stubs.h
-
- # Make sure we install the sys-include symlink so that when
- # we build a 2nd stage cross-compiler, gcc finds the target
- # system headers correctly. See gcc/doc/gccinstall.info
- dosym usr/include $(alt_prefix)/sys-include
-}
-
-src_install() {
- if just_headers ; then
- export ABI=default
- glibc_headers_install
- return
- fi
-
- foreach_abi glibc_do_src_install
-
- if ! use static-libs ; then
- einfo "Not installing static glibc libraries"
- find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete
- fi
-}
-
-# Simple test to make sure our new glibc isn't completely broken.
-# Make sure we don't test with statically built binaries since
-# they will fail. Also, skip if this glibc is a cross compiler.
-#
-# If coreutils is built with USE=multicall, some of these files
-# will just be wrapper scripts, not actual ELFs we can test.
-glibc_sanity_check() {
- cd / #228809
-
- # We enter ${ED} so to avoid trouble if the path contains
- # special characters; for instance if the path contains the
- # colon character (:), then the linker will try to split it
- # and look for the libraries in an unexpected place. This can
- # lead to unsafe code execution if the generated prefix is
- # within a world-writable directory.
- # (e.g. /var/tmp/portage:${HOSTNAME})
- pushd "${ED}"/$(get_libdir) >/dev/null
-
- # 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
-
- # 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
-}
-
-pkg_postinst() {
- # nothing to do if just installing headers
- just_headers && return
-
- if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then
- # Generate fastloading iconv module configuration file.
- "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/"
- fi
-
- if ! is_crosscompile && [[ -z ${ROOT} ]] ; then
- use compile-locales || run_locale_gen "${EROOT}/"
- fi
-
- 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
-}