From 9ee6d97c2883d42f204a533a8bc1f4562df778fb Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 16 Sep 2020 09:32:48 +0100 Subject: gentoo resync : 16.09.2020 --- sys-libs/Manifest.gz | Bin 14916 -> 14909 bytes sys-libs/binutils-libs/Manifest | 2 +- .../binutils-libs/binutils-libs-2.34-r2.ebuild | 2 +- sys-libs/blocksruntime/Manifest | 2 +- .../blocksruntime-0_pre20171027-r1.ebuild | 42 + .../blocksruntime-0_pre20171027.ebuild | 41 - sys-libs/darwin-libc-headers/Manifest | 2 +- sys-libs/darwin-libc-headers/metadata.xml | 3 - sys-libs/db/Manifest | 2 +- sys-libs/db/db-5.3.28-r4.ebuild | 2 +- sys-libs/freeipmi/Manifest | 4 +- sys-libs/freeipmi/freeipmi-1.6.4.ebuild | 92 -- sys-libs/freeipmi/freeipmi-1.6.6.ebuild | 92 ++ sys-libs/gdbm/Manifest | 1 + sys-libs/gdbm/gdbm-1.18.1-r1.ebuild | 50 + sys-libs/glibc/Manifest | 12 +- sys-libs/glibc/glibc-2.30-r9.ebuild | 2 +- sys-libs/glibc/glibc-2.31-r6.ebuild | 4 +- sys-libs/glibc/glibc-2.31-r7.ebuild | 1495 ++++++++++++++++++++ sys-libs/glibc/glibc-2.32-r1.ebuild | 2 +- sys-libs/glibc/glibc-2.32.ebuild | 2 +- sys-libs/glibc/glibc-9999.ebuild | 6 +- sys-libs/gwenhywfar/Manifest | 2 +- sys-libs/gwenhywfar/metadata.xml | 4 +- sys-libs/libcap-ng/Manifest | 2 + sys-libs/libcap-ng/libcap-ng-0.8.ebuild | 89 ++ sys-libs/libcap/Manifest | 2 +- sys-libs/libcap/libcap-2.43.ebuild | 2 +- sys-libs/libchipcard/Manifest | 2 +- sys-libs/libchipcard/metadata.xml | 2 +- sys-libs/libhugetlbfs/Manifest | 7 +- .../libhugetlbfs-2.23-uncompressed-man-pages.patch | 34 + sys-libs/libhugetlbfs/libhugetlbfs-2.21.ebuild | 158 --- sys-libs/libhugetlbfs/libhugetlbfs-2.22.ebuild | 2 +- sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild | 160 +++ sys-libs/libhx/Manifest | 2 +- sys-libs/libhx/metadata.xml | 3 - sys-libs/libnih/Manifest | 2 +- sys-libs/libnih/libnih-1.0.3-r4.ebuild | 2 +- sys-libs/libseccomp/Manifest | 2 + sys-libs/libseccomp/libseccomp-2.4.4.ebuild | 41 + sys-libs/libselinux/Manifest | 4 +- sys-libs/libselinux/libselinux-3.1.ebuild | 155 ++ sys-libs/libselinux/libselinux-9999.ebuild | 10 +- sys-libs/libsemanage/Manifest | 6 +- sys-libs/libsemanage/libsemanage-3.1.ebuild | 130 ++ sys-libs/libsemanage/libsemanage-9999.ebuild | 33 +- sys-libs/libsemanage/metadata.xml | 1 - sys-libs/libsepol/Manifest | 6 +- sys-libs/libsepol/libsepol-3.1.ebuild | 55 + sys-libs/libsepol/libsepol-9999.ebuild | 6 +- sys-libs/libsepol/metadata.xml | 1 - sys-libs/libuuid/Manifest | 2 +- sys-libs/libuuid/metadata.xml | 5 +- sys-libs/libxcrypt/Manifest | 11 +- .../libxcrypt/files/libxcrypt-2.4-glibc-2.16.patch | 40 - .../files/libxcrypt-4.4.10-multibuild.patch | 25 - .../files/libxcrypt-4.4.10-pythonver.patch | 17 - sys-libs/libxcrypt/libxcrypt-2.4.ebuild | 28 - sys-libs/libxcrypt/libxcrypt-4.4.10-r1.ebuild | 153 -- sys-libs/libxcrypt/libxcrypt-4.4.12-r3.ebuild | 163 --- sys-libs/libxcrypt/libxcrypt-4.4.17.ebuild | 164 +++ sys-libs/native-uuid/Manifest | 2 +- sys-libs/native-uuid/metadata.xml | 5 +- sys-libs/pam/Manifest | 4 +- sys-libs/pam/pam-1.3.1_p20200128-r1.ebuild | 3 +- sys-libs/pam/pam-1.4.0_p20200829.ebuild | 3 +- sys-libs/uclibc-ng/Manifest | 2 + sys-libs/uclibc-ng/uclibc-ng-1.0.35.ebuild | 402 ++++++ 69 files changed, 2998 insertions(+), 816 deletions(-) create mode 100644 sys-libs/blocksruntime/blocksruntime-0_pre20171027-r1.ebuild delete mode 100644 sys-libs/blocksruntime/blocksruntime-0_pre20171027.ebuild delete mode 100644 sys-libs/freeipmi/freeipmi-1.6.4.ebuild create mode 100644 sys-libs/freeipmi/freeipmi-1.6.6.ebuild create mode 100644 sys-libs/gdbm/gdbm-1.18.1-r1.ebuild create mode 100644 sys-libs/glibc/glibc-2.31-r7.ebuild create mode 100644 sys-libs/libcap-ng/libcap-ng-0.8.ebuild create mode 100644 sys-libs/libhugetlbfs/files/libhugetlbfs-2.23-uncompressed-man-pages.patch delete mode 100644 sys-libs/libhugetlbfs/libhugetlbfs-2.21.ebuild create mode 100644 sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild create mode 100644 sys-libs/libseccomp/libseccomp-2.4.4.ebuild create mode 100644 sys-libs/libselinux/libselinux-3.1.ebuild create mode 100644 sys-libs/libsemanage/libsemanage-3.1.ebuild create mode 100644 sys-libs/libsepol/libsepol-3.1.ebuild delete mode 100644 sys-libs/libxcrypt/files/libxcrypt-2.4-glibc-2.16.patch delete mode 100644 sys-libs/libxcrypt/files/libxcrypt-4.4.10-multibuild.patch delete mode 100644 sys-libs/libxcrypt/files/libxcrypt-4.4.10-pythonver.patch delete mode 100644 sys-libs/libxcrypt/libxcrypt-2.4.ebuild delete mode 100644 sys-libs/libxcrypt/libxcrypt-4.4.10-r1.ebuild delete mode 100644 sys-libs/libxcrypt/libxcrypt-4.4.12-r3.ebuild create mode 100644 sys-libs/libxcrypt/libxcrypt-4.4.17.ebuild create mode 100644 sys-libs/uclibc-ng/uclibc-ng-1.0.35.ebuild (limited to 'sys-libs') diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz index b5f9eb695eed..be00a12af1cd 100644 Binary files a/sys-libs/Manifest.gz and b/sys-libs/Manifest.gz differ diff --git a/sys-libs/binutils-libs/Manifest b/sys-libs/binutils-libs/Manifest index 0f43debaf69f..7da98770288b 100644 --- a/sys-libs/binutils-libs/Manifest +++ b/sys-libs/binutils-libs/Manifest @@ -7,6 +7,6 @@ DIST binutils-2.35-patches-1.tar.xz 12216 BLAKE2B a811449da684e3501a7520a26639e0 DIST binutils-2.35.tar.xz 22042160 BLAKE2B 72ea79edf3a77aa93dcf38274123abbae5ce8f800a95e6379b4c8807050b05c2dfec314f06c027b1343c5570f369324fa3e195d7e0db5f8a57c0579937c49d3f SHA512 9f222e4ab6720036402d03904fb11b73ab87714b85cd84997f7d357f405c7e10581d70202f9165a1ee0c70538632db27ecc9dfe627dddb1e6bc7edb1537cf786 EBUILD binutils-libs-2.33.1-r1.ebuild 3549 BLAKE2B 931ae3c38edbeed8cca61909b5e0897bc37f3855820ac49ed97955c611a2c8a58c50df2e87d4f13674ea7de511638205f49932663f25afd9f2b96970803dd91c SHA512 9e17954c198e39f725603fd9b6d1c3c24e39c99ee823a3e15b3d5c4838ae507787cb23aaf36e5dbfb9052656955b114a95b2cb3f8b0fc96ecfb0b5ed970053d0 EBUILD binutils-libs-2.34-r1.ebuild 3694 BLAKE2B 26b6971b41cedd7a9cc13b5782cc845c81117ddda176fe757e2fce315cbcca3c466e080d8bc0a017ad9b763f8efe4871032d33d928d59b116d930396f46042bd SHA512 0e86a001fd345759cec21d20c5e99bedd8111a7704ef9555756e65f4d6aa7e11dbd3cb391e22462d8705afa1363bf2a937e8727d5bc1abeebe8535aff848cdb4 -EBUILD binutils-libs-2.34-r2.ebuild 3572 BLAKE2B f952d9612e34cd837c30e929bbb5a77e304423f01ea0cde86412812fa1b951c61d2f5aa9f720fbefb9ede9b2660251e81de59a36625ad64630ba1bc751b0c9a1 SHA512 8bb277dc39b6177797b98c0f5eb79f9cf116cc682c05e4dbd2ed93f9bebd2c5ba4dcb85df7155a9ca3ed64a25b4b0563e7bba8a1beaa05f7f86fa6baed28581b +EBUILD binutils-libs-2.34-r2.ebuild 3571 BLAKE2B eb19daa4b122dee3c1e725e2eb127c106c60fceb3c86eedbb9aa09ecb08201d91449e7b79aee9c019619be4460193c2ac32ebe01279acf4f25ec72e23372f3fc SHA512 0dbb75615a9dd91242c8fbc30286abc6a0e1b1a2894758d01d4bc81b6607399f2ab0fef09ddb9b6493348ce97d4d3c3a572118a438eb4445bf2248636df22821 EBUILD binutils-libs-2.35.ebuild 3573 BLAKE2B 23f988a36b4e7334644d5a17efb566140ef430aeee100e235f85470fe9c9a318d6804440f20d4da0858a118128d456ef23434bf08fc5ffe7adff228a02c69a4a SHA512 0d0cd1c97bf4c97aea8905dbd23a964565aaa43358553b282f62bbbc05122a93410d59f3ef06bfdd975e7f4e556d239a5b073b97d3969c4d8bdf5ab03ecc8f42 MISC metadata.xml 524 BLAKE2B 6f00793b2dc155b19d816b8acfd49e6bfc2ae35418ecc97fbbd3f9d0ed08b5f95a299b28fe6edad1a66f4d64abe99dc8a62a974fd70e28b535cd366239bf1cca SHA512 9db7c7a3082ee848ec4963831da06cced596d543e53660747fb56ac33998c219e1d7252892ffc32132d7db3c99ce9746fb6d9e85f866c3cba97552c31948342c diff --git a/sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild b/sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild index 953c5f6dcfa1..e9527f34be71 100644 --- a/sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild +++ b/sys-libs/binutils-libs/binutils-libs-2.34-r2.ebuild @@ -21,7 +21,7 @@ SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz LICENSE="|| ( GPL-3 LGPL-3 )" SLOT="0/${PV}" IUSE="64-bit-bfd multitarget nls static-libs" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" BDEPEND="nls? ( sys-devel/gettext )" DEPEND="sys-libs/zlib[${MULTILIB_USEDEP}]" diff --git a/sys-libs/blocksruntime/Manifest b/sys-libs/blocksruntime/Manifest index e1d36758f7b9..e4e212797798 100644 --- a/sys-libs/blocksruntime/Manifest +++ b/sys-libs/blocksruntime/Manifest @@ -1,4 +1,4 @@ AUX blocksruntime-0_pre20171027-ldflags-soname.patch 933 BLAKE2B 335a135b321bc57cfd63afa0c40ae91316dc5f446c4c412270ab78f3a2b9ee435900ebcdd8bb57dbd60d6a3d0bc412825a7f344141f3ef8ef6a042f29af34cc8 SHA512 7887727d2005dc70dee37b3dadbe49deeb9de7013e2d49f80248f71211a45f70e9a986991eb9bfc93668d635698f40504072fefdfca88511f8fc39121ba6f8f6 DIST blocksruntime-0_pre20171027.tar.gz 40571 BLAKE2B 5cb5cee10d482a3028b6ed496f7ed4fba25504c5e188dd21be37f0a65b72750e0ce31f7243e9cd848d10323e43e7d058fd2f7eb5ffed9a64e543d418ac96cfac SHA512 4008730f7ee4173f22c40220c4b87cd3f5cfadd12d5ddbaec244e3c4164111f036d0b859cf4bb5f2425313148f5c6445de30af2d4ccc83e1b97a66895ccc6dc5 -EBUILD blocksruntime-0_pre20171027.ebuild 905 BLAKE2B 60f6b3e05c433843c60238a64049cd6b1be61ff1bf5619e6e41989a43a51735f7e1c845edf9005e3becbb8cbe4e6c50ee2509bed81400b84161a5c8600f96010 SHA512 667e95c61e777c99057eedb2ebc197b6a584f2c0bcbd417065f66cccc86834564aa78226b7183a00c9beed5e665bca8530cba745d56cc0f2ec077fbc07c4a864 +EBUILD blocksruntime-0_pre20171027-r1.ebuild 958 BLAKE2B 47f91c62f762efd74226d77d3de061dd9c5cd8ce9f251c6a73e6ccce398a529ab717f85a7ec98d7546124f030c7acb33c6a4894e94dabcdf21b1858dc75b2ea4 SHA512 ee80b4b7fdd56e1ed52b9bfdec7674e0c9c0e0b2d038ea463a19faf80b1e79407b6a577729ed3bd6f6df734a351950d5780193e7cfec12fce217fdda44d06c8c MISC metadata.xml 337 BLAKE2B e2e4dc3f4bf390d4cd54194e85e6e2104e962d0ddd7b7381ddb7e1974c778bfe7d86162087b267faff5c306a6583b9ac092a79305e750ab6b1dbab758c6e780e SHA512 3dcbdca3013c551d20488c1b2d53525c5bc4e234403a2051c0dd8e7ad9db15f9cc946778764e1bf4aa19816a66a3922ed879614c01e46265195535fa91ebc481 diff --git a/sys-libs/blocksruntime/blocksruntime-0_pre20171027-r1.ebuild b/sys-libs/blocksruntime/blocksruntime-0_pre20171027-r1.ebuild new file mode 100644 index 000000000000..6c49e1748dba --- /dev/null +++ b/sys-libs/blocksruntime/blocksruntime-0_pre20171027-r1.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit toolchain-funcs vcs-snapshot + +COMMIT=9cc93ae2b58676c23fd02cf0c686fa15b7a3ff81 # 27 Oct 2017 + +DESCRIPTION="BlocksRuntime library needed for clang's -fblocks support" +HOMEPAGE="https://github.com/mackyle/blocksruntime" +SRC_URI="https://github.com/mackyle/blocksruntime/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="static-libs" + +RDEPEND="" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-0_pre20171027-ldflags-soname.patch +) + +src_prepare() { + default + + tc-export CC AR RANLIB +} + +src_compile() { + ./buildlib -shared || die +} + +src_install() { + prefix="${EPREFIX}/usr" \ + includedir="${EPREFIX}/usr/include/blocksruntime" \ + libdir="${EPREFIX}/usr/$(get_libdir)" \ + DESTDIR="${D}" \ + ./installlib $(use static-libs || echo -shared) || die +} diff --git a/sys-libs/blocksruntime/blocksruntime-0_pre20171027.ebuild b/sys-libs/blocksruntime/blocksruntime-0_pre20171027.ebuild deleted file mode 100644 index a855b832dba2..000000000000 --- a/sys-libs/blocksruntime/blocksruntime-0_pre20171027.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit toolchain-funcs vcs-snapshot - -COMMIT=9cc93ae2b58676c23fd02cf0c686fa15b7a3ff81 # 27 Oct 2017 - -DESCRIPTION="BlocksRuntime library needed for clang's -fblocks support" -HOMEPAGE="https://github.com/mackyle/blocksruntime" -SRC_URI="https://github.com/mackyle/blocksruntime/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="static-libs" - -RDEPEND="" -DEPEND="${RDEPEND}" - -PATCHES=( - "${FILESDIR}"/${PN}-0_pre20171027-ldflags-soname.patch -) - -src_prepare() { - default - - tc-export CC AR RANLIB -} - -src_compile() { - ./buildlib -shared || die -} - -src_install() { - prefix="${EPREFIX}/usr" \ - libdir="${EPREFIX}/usr/$(get_libdir)" \ - DESTDIR="${D}" \ - ./installlib $(use static-libs || echo -shared) || die -} diff --git a/sys-libs/darwin-libc-headers/Manifest b/sys-libs/darwin-libc-headers/Manifest index af6a4943af8a..4fede322d843 100644 --- a/sys-libs/darwin-libc-headers/Manifest +++ b/sys-libs/darwin-libc-headers/Manifest @@ -35,4 +35,4 @@ DIST libunwind-35.4.tar.gz 1094999 BLAKE2B 5ddc3bb3dca0ceb5c979fd55657ad3ca0a460 EBUILD darwin-libc-headers-1158.50.2-r4.ebuild 5176 BLAKE2B c0b3a15ebf53916c6ea2b99b0971e33667ed489c14b5be48774f4e84d6b61a5b7a8ee4a87ff4b1631f30d5db2a1360b1b8b0436902d4ce674cdac337d587dc07 SHA512 2c472e5d9c11913c52021a2dc2ad5185a371fd5cea7a2a40ce5c82248bf1c76c7074bf1de308197b400b5f5938ce7d51d78800a044dfbb9ac36b29ae622884a1 EBUILD darwin-libc-headers-1244.50.9-r4.ebuild 5180 BLAKE2B c413e9d916a83c730b14a8e8db62ef3f8c1ffd37bddd1d56b364d7d0022752321dacc6cc48db8164aea4fc2b614fb8506f94fa7df9526bfadc6fa73ac5d1d9c6 SHA512 6b733d866b6fd89b354f00f555e635d1f91f8a6ef6ddd1e56a3a4e1c9fa037e88af0936cc0c03390fba42885a059fd50f0ea9d3fbee3fa6e3fb861315086d108 EBUILD darwin-libc-headers-1272.250.1-r4.ebuild 5146 BLAKE2B 825ca5005551b44989fbcdef8249d942b30b91e634ef481a83a33b0b45c59d7e84fa27ebc572c60f17b9f26f3d97094966cdb292b3f33765f1e0f9cceefe5836 SHA512 26d3425807ba7e57579789b5e7475c3be50924d998cf94e0e8f80b75379e7bda31c52ea5b86b34c844f1a81b2865fd7838c2fe194842a25289abf6723870224b -MISC metadata.xml 533 BLAKE2B df8e811ac29ac4dfc64f46302aa7975f223b0ca01af65978e55049c63514872efc54821682bad5b7f544b35a5246e93c1ef8f781b8ee8b6256da30fb110bdd5e SHA512 6151f4de2c080a8ac5bb8676170e7c467bae9c730d6726bc590d34b3e653161f7c58d2dcebe199cbbf49b5129bd7d121c73119ea8d54943eb01bf2d5fdcd4ce8 +MISC metadata.xml 418 BLAKE2B 19bab44e3e375b0dce49cd07231049e9ac6eecdeb66761c105fb48680b5ceba06f760dff1ba64274a05b62567a9575992e5bd65264fadeddfb33118040a953dc SHA512 acdf28167fe5c74ac934fa673bd9d73ddf3e8b25c355e9a60199d94faa8f3b32b629d0a5139dafaef0e157e19cd04b8897b9ea3d8943301b471b8eed3b7a3032 diff --git a/sys-libs/darwin-libc-headers/metadata.xml b/sys-libs/darwin-libc-headers/metadata.xml index 7cbcb2c481e0..ec8d2a6ebeb4 100644 --- a/sys-libs/darwin-libc-headers/metadata.xml +++ b/sys-libs/darwin-libc-headers/metadata.xml @@ -12,7 +12,4 @@ Install the manpages - - /usr/include headers provided by Libc on macOS (Darwin) systems - diff --git a/sys-libs/db/Manifest b/sys-libs/db/Manifest index 5101fd202b6c..501e25fb8e39 100644 --- a/sys-libs/db/Manifest +++ b/sys-libs/db/Manifest @@ -76,7 +76,7 @@ EBUILD db-4.7.25_p4-r2.ebuild 4714 BLAKE2B 6b56de4aedb91dce39f2a99a665b5f9e130bf EBUILD db-4.8.30-r3.ebuild 5205 BLAKE2B 4480d161aa607fcc24c890ad6d71529ade3355838192c345d5efcff87e655b00e6517b9bcbfbfc66860d38f77fc406639e8eb0a592ea3b651c8368baa565ee04 SHA512 6116d916d5c509c6001033fdeb07a7c07cca6001fce64ccbc2a604d64e998d544cf94220d51e9fb78ffffab641c0608935f26ce764e6b6f8fa25a5932af77b82 EBUILD db-5.1.29-r2.ebuild 5852 BLAKE2B 134957fc864e77d18bb7ad43d1d042a464aa6afb741a04ae23f9ae332676c4fc4312f8fefbf6f7cb751c9dd14933eeb2f245e36d84880fcf2d4fadde1b3c0cb3 SHA512 4f686764cd7caa4bb0453ec482a9310b6887f40b3f79e76f02a0f2e33fd6095d715ec0b105035dd3a41ede58fc19d0b0b6267099ad3fbe977f2d4881bf1bf279 EBUILD db-5.3.28-r2.ebuild 7134 BLAKE2B 8fa99af39ae1c253152d9ce31b9f647db85dbdac3fd6cdfc61e673511158bbcd389e2770ac3175a6eb2c013500dc32937352153b8d2acf97e1bf346f8ca57a06 SHA512 a13f32fce2e3f351449b2e0ad12d4103838df89663aa2f9eb87b4fbf7a0aa425a8f4d17b20057abc6787e71f40514477df1490dcd9a974c74e7683d06864f0c6 -EBUILD db-5.3.28-r4.ebuild 7138 BLAKE2B 663da54915b4c999ccbcdee709dd9d9f3c32b932ba5aaea39d6632cf505fdacb43cf3810bd259c134bae068126991a51629837e75857b6e070584a9687577a29 SHA512 a3e6b517796856fa7a5489f14c4b65799398435f1b82d4b3d695548c44d4d73353517dd56738dd7e05167d3318de35d53dd1eea530e2f7e29d5f3bbedec61c1a +EBUILD db-5.3.28-r4.ebuild 7135 BLAKE2B 4e506689c16e475883a6c9e79b2a8ceae8a284299db2405dd2728b8768926f3e4ef16a17d485adefe756d03b1def7dd56dc2eb0585e42c2e57885d79375f97ea SHA512 3f01dea89145da5feabc9de374716aaa31431066fbed9e204cac5a1fe76c11dbe4d93b919dfb4bf0962469479107cdeeff29fb69fa8a6072b192ef29b6fa6faf EBUILD db-6.0.35-r2.ebuild 7133 BLAKE2B a8402401fd22d8c1d09094fe1ee01f887cb13a16ca73917f8147a57646c377661e0c4e3bef770e9e9d8addee01a9b70484a33b53d13814dd9cce910e1d6efa4c SHA512 05a4722efd0b38d20a565e548697b9e13d014939777698d19b38db4ba80ca3a042d89024750fb950ea41771b8abdfb1acbe938d172dcbad6a16ffaf21eba6deb EBUILD db-6.1.38.ebuild 6904 BLAKE2B fbabc619612aaef2db5c66666eb8585c7722c7c992bb645d11b14c19bd8749fa0699377060df9bbd00de8bbce55b35f563d2a8e1515c0ec2e827e1943923ff26 SHA512 c797ac1a3e3242e6f35f53533a9b63492dadf4c1ec47b5b6106f68744e633cba071b1ccaeefb7cd14ea44d79de2b6f6312f8f50b4a4dff335770e06c77656b90 EBUILD db-6.2.38.ebuild 6907 BLAKE2B 94f773f935b376169ea01aec6da4e6e7eba48761937fee184cc1af2e39a9a134fbce033e3ad5dcddbedaa76ed8e787ccf6f3cb708688f8a61e0032c7f527b1e7 SHA512 32ac2ae009fcea46fd530a4a444bd4e170d40778c238dd49e91a80445c2288903a27bc961fbd7bb8d0ff52f3d97d1a5ed5b603e4077e66b71775a38eb9d11a2c diff --git a/sys-libs/db/db-5.3.28-r4.ebuild b/sys-libs/db/db-5.3.28-r4.ebuild index 01c3e5b1835e..e675393c8b4b 100644 --- a/sys-libs/db/db-5.3.28-r4.ebuild +++ b/sys-libs/db/db-5.3.28-r4.ebuild @@ -29,7 +29,7 @@ done LICENSE="Sleepycat" SLOT="$(ver_cut 1-2)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc x86" IUSE="doc java cxx tcl test" REQUIRED_USE="test? ( tcl )" diff --git a/sys-libs/freeipmi/Manifest b/sys-libs/freeipmi/Manifest index 61003a260ca5..3eac01d6e757 100644 --- a/sys-libs/freeipmi/Manifest +++ b/sys-libs/freeipmi/Manifest @@ -4,9 +4,9 @@ AUX freeipmi.icinga 117 BLAKE2B 12409a509d0b06d54196961f703fbe91034e1f68cfc19e5c AUX ipmidetectd.confd 185 BLAKE2B ea7164e6b126cc684482557cafae3ac0c39611484243e95a3e8946488cc234f4d3100f931549f08c917d454768845e276d83fa3f9e2d7a57c4454a55090bfa38 SHA512 f10e908a451c646b2c61338d79e69663c05216a54093745bd2b659041e0b91adb9be4077c92d63f6f3d62cb5510168b6a57e5e86375533e235fd3abb2b72a49c AUX ipmiseld.confd 192 BLAKE2B 52b125e63ca3e13fcb24f5b304f73c78269fc58b2c3e40cb185b28697c409ccf5ecd4b95599c38119bfe8c97977c3cc87e3633989e2b9d4095cded4b2b248dc4 SHA512 0a031f29a4692085054d5fc2dfe6d0ad7fb762f7ee96849ce2d562a90d6e3b0f3ae8328ab852dc22bee6221bc5cd8b588bd02075222038fa0f0e2f64ac185799 DIST freeipmi-1.5.7.tar.gz 3321187 BLAKE2B c6f7e9c4e0a03ce1d50972fee99741ec00a8f5beb0323d61d9217b3773eed33cb04e7bb92e1f293cb39c8012872babdc4774e6d81cf808615b8b283510e1e67c SHA512 a4d39d11d4e4b9635c272ee3a197729ac61c3e1c909c202498fb480c41289116eb933cd716fe2e0b5aa6dc258751ee204892bfb009398b6d5c2c65ee1cc58544 -DIST freeipmi-1.6.4.tar.gz 3415832 BLAKE2B 6ea1bc7a0ecd36e0fafda05eb67c2ac128e17103058108443b20c64d1cc98228308bd8283fcaaf8390ddcdbdd2f18ed9cc95277ec5ad67b23f2edf16a5585002 SHA512 c0a543abed2c6c20f797379423efe56c165ed5b89885568eafc9bfb78c31f409f367140f85f86c01e378be83085e979dfce30bbd560e6d6e242e5a7e2a923e0b DIST freeipmi-1.6.5.tar.gz 3418664 BLAKE2B eac6d3bd08aec0535b64430366074d6e69574ac4607146c5139550586ebdd8f4fe7a69afe928ee926c308c3dcd90f26396b1baa8275936747a72aaad83112a36 SHA512 390f588015d4c359dccaa3fcaefe5ec7754aad559ace4cc6f4fafcde6ef292f16e014a1253cf0c03d40511539f8e444d8302398540278a5846ad68e7796267ba +DIST freeipmi-1.6.6.tar.gz 3419134 BLAKE2B dbdb8bf4440548b0b7885a7c940f810e5266245004c42b5d4acad2acc6058cdd580bd0e2908a6c66b62c7417101cec49981038145c743096fd6294d8ae2a7e75 SHA512 8a7be74bf003b8858c054bac24615f6fba0133e38e6f759ce81ed734a9ab107eb286c70554ad9663062c92eeccf342b80536aac0da74e4ede1ec51eedd497366 EBUILD freeipmi-1.5.7.ebuild 2369 BLAKE2B 9c2d64cd04e96409e6a1b5d1388ec20cd69092a0994556624b4dab33983695a6f65a92eef7b5ac29e2d2f4d95365f777fa503dcd981cdbe972eaef81a2cceb0b SHA512 cd19b406cf6f5d93d4cfb69da014fa548ac70ee60ddbd1f1ad2064ab449811570db8bebfa4397918f774de4a5d1f6fa25e5185758075ee9059a6edaca91699ac -EBUILD freeipmi-1.6.4.ebuild 2427 BLAKE2B c36ab708c207f8a491e78aac5be9065b28d41b2bdc7cafe0024967c1cd06c5ab7fb42fd79d730724ea4e42d13accaa5cabff936c6dacaba80f7e3db73ac9ce36 SHA512 f9f162b8732bbc5b9a11a028d7bacf330e4e43204302767d8a8de8a24ffa135edae800abfae84ae857cd3437d0477e23ca2351a3d482c3a9e743c6fe8600d5ad EBUILD freeipmi-1.6.5.ebuild 2427 BLAKE2B 13803c71cc7e590a4c33b7fd29a35c07aeeb94dd9c9c6ec80ad7d591262678bc9ac2fbb83a31aa145141151b50aeb5814e40f75e6b3147cb2b9beea13e3de615 SHA512 9d1a889e1d5c2f77b9316ac4e24c42b79df2f6b796592ef947a890b049869370614fcd62fac38aac5ce24db3bdadf641fac21a55d3f956fb9c25643dbffddd07 +EBUILD freeipmi-1.6.6.ebuild 2427 BLAKE2B 13803c71cc7e590a4c33b7fd29a35c07aeeb94dd9c9c6ec80ad7d591262678bc9ac2fbb83a31aa145141151b50aeb5814e40f75e6b3147cb2b9beea13e3de615 SHA512 9d1a889e1d5c2f77b9316ac4e24c42b79df2f6b796592ef947a890b049869370614fcd62fac38aac5ce24db3bdadf641fac21a55d3f956fb9c25643dbffddd07 MISC metadata.xml 376 BLAKE2B f9bd1d470315ace8e1a7b71b77a2616131dec7530cba329cf10118df75e78b5c26e2891f3f5ff78b5df94f1ff67e93e05721d941a94cef847eabfea90b860abf SHA512 10922a1b392edce6cdb447eb2a06694570a88f765fd49eb7f154deed1cb3a33901c68ff1881f3068ae212ba6182c61e598e7ab7d4d683602f4016adc3ca7d7e8 diff --git a/sys-libs/freeipmi/freeipmi-1.6.4.ebuild b/sys-libs/freeipmi/freeipmi-1.6.4.ebuild deleted file mode 100644 index 13778cd4d674..000000000000 --- a/sys-libs/freeipmi/freeipmi-1.6.4.ebuild +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -AT_M4DIR="config" - -DESCRIPTION="Provides Remote-Console and System Management Software as per IPMI v1.5/2.0" -HOMEPAGE="https://www.gnu.org/software/freeipmi/" - -MY_P="${P/_/.}" -S="${WORKDIR}/${MY_P}" -[[ ${MY_P} == *.beta* ]] && ALPHA="-alpha" -SRC_URI="mirror://gnu${ALPHA}/${PN}/${MY_P}.tar.gz" - -LICENSE="GPL-3" -SLOT="0" -KEYWORDS="~amd64 ~hppa ~x86" -IUSE="debug nagios" - -RDEPEND="dev-libs/libgcrypt:0=" -DEPEND="${RDEPEND} - virtual/os-headers" -RDEPEND="${RDEPEND} - nagios? ( - || ( net-analyzer/icinga net-analyzer/nagios ) - dev-lang/perl - ) -" - -src_configure() { - local myeconfargs=( - $(use_enable debug) - --disable-static - --disable-init-scripts - --localstatedir="${EPREFIX}"/var - ) - - econf "${myeconfargs[@]}" -} - -# There are no tests -src_test() { :; } - -src_install() { - default - - # freeipmi by defaults install _all_ commands to /usr/sbin, but - # quite a few can be run remotely as standard user, so move them - # in /usr/bin afterwards. - dodir /usr/bin - local prog - for prog in ipmi{detect,ping,power,console}; do - mv "${ED}"/usr/{s,}bin/${prog} || die - - # The default install symlinks these commands to add a dash - # after the ipmi prefix; we repeat those after move for - # consistency. - rm "${ED}"/usr/sbin/${prog/ipmi/ipmi-} - dosym ${prog} /usr/bin/${prog/ipmi/ipmi-} - done - - # Install the nagios plugin in its proper place, if desired - if use nagios; then - dodir /usr/$(get_libdir)/nagios/plugins - mv "${ED}"/usr/share/doc/${PF}/contrib/nagios/nagios_ipmi_sensors.pl \ - "${ED}"/usr/$(get_libdir)/nagios/plugins/ || die - fperms 0755 /usr/$(get_libdir)/nagios/plugins/nagios_ipmi_sensors.pl - - insinto /etc/icinga/conf.d - newins "${FILESDIR}"/freeipmi.icinga freeipmi-command.cfg - fi - - dodoc AUTHORS ChangeLog* DISCLAIMER* NEWS README* TODO doc/*.txt - - keepdir \ - /var/cache/ipmimonitoringsdrcache \ - /var/lib/freeipmi \ - /var/log/ipmiconsole - - # starting from version 1.2.0 the two daemons are similar enough - newinitd "${FILESDIR}"/bmc-watchdog.initd.4 ipmidetectd - newconfd "${FILESDIR}"/ipmidetectd.confd ipmidetectd - - newinitd "${FILESDIR}"/bmc-watchdog.initd.4 bmc-watchdog - newconfd "${FILESDIR}"/bmc-watchdog.confd bmc-watchdog - - newinitd "${FILESDIR}"/bmc-watchdog.initd.4 ipmiseld - newconfd "${FILESDIR}"/ipmiseld.confd ipmiseld - - find "${ED}" -type f -name "*.la" -delete || die -} diff --git a/sys-libs/freeipmi/freeipmi-1.6.6.ebuild b/sys-libs/freeipmi/freeipmi-1.6.6.ebuild new file mode 100644 index 000000000000..a4fc52d4d3cb --- /dev/null +++ b/sys-libs/freeipmi/freeipmi-1.6.6.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +AT_M4DIR="config" + +DESCRIPTION="Provides Remote-Console and System Management Software as per IPMI v1.5/2.0" +HOMEPAGE="https://www.gnu.org/software/freeipmi/" + +MY_P="${P/_/.}" +S="${WORKDIR}/${MY_P}" +[[ ${MY_P} == *.beta* ]] && ALPHA="-alpha" +SRC_URI="mirror://gnu${ALPHA}/${PN}/${MY_P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~hppa ~x86" +IUSE="debug nagios" + +RDEPEND="dev-libs/libgcrypt:0=" +DEPEND="${RDEPEND} + virtual/os-headers" +RDEPEND="${RDEPEND} + nagios? ( + || ( net-analyzer/icinga net-analyzer/nagios ) + dev-lang/perl + ) +" + +src_configure() { + local myeconfargs=( + $(use_enable debug) + --disable-static + --disable-init-scripts + --localstatedir="${EPREFIX}"/var + ) + + econf "${myeconfargs[@]}" +} + +# There are no tests +src_test() { :; } + +src_install() { + default + + # freeipmi by defaults install _all_ commands to /usr/sbin, but + # quite a few can be run remotely as standard user, so move them + # in /usr/bin afterwards. + dodir /usr/bin + local prog + for prog in ipmi{detect,ping,power,console}; do + mv "${ED}"/usr/{s,}bin/${prog} || die + + # The default install symlinks these commands to add a dash + # after the ipmi prefix; we repeat those after move for + # consistency. + rm "${ED}"/usr/sbin/${prog/ipmi/ipmi-} + dosym ${prog} /usr/bin/${prog/ipmi/ipmi-} + done + + # Install the nagios plugin in its proper place, if desired + if use nagios; then + dodir /usr/$(get_libdir)/nagios/plugins + mv "${ED}"/usr/share/doc/${PF}/contrib/nagios/nagios_ipmi_sensors.pl \ + "${ED}"/usr/$(get_libdir)/nagios/plugins/ || die + fperms 0755 /usr/$(get_libdir)/nagios/plugins/nagios_ipmi_sensors.pl + + insinto /etc/icinga/conf.d + newins "${FILESDIR}"/freeipmi.icinga freeipmi-command.cfg + fi + + dodoc AUTHORS ChangeLog* DISCLAIMER* NEWS README* TODO doc/*.txt + + keepdir \ + /var/cache/ipmimonitoringsdrcache \ + /var/lib/freeipmi \ + /var/log/ipmiconsole + + # starting from version 1.2.0 the two daemons are similar enough + newinitd "${FILESDIR}"/bmc-watchdog.initd.4 ipmidetectd + newconfd "${FILESDIR}"/ipmidetectd.confd ipmidetectd + + newinitd "${FILESDIR}"/bmc-watchdog.initd.4 bmc-watchdog + newconfd "${FILESDIR}"/bmc-watchdog.confd bmc-watchdog + + newinitd "${FILESDIR}"/bmc-watchdog.initd.4 ipmiseld + newconfd "${FILESDIR}"/ipmiseld.confd ipmiseld + + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/sys-libs/gdbm/Manifest b/sys-libs/gdbm/Manifest index 19091f68540e..b213a9ba14b6 100644 --- a/sys-libs/gdbm/Manifest +++ b/sys-libs/gdbm/Manifest @@ -11,6 +11,7 @@ DIST gdbm-1.8.3.tar.gz 228695 BLAKE2B 21b5833facb97fe937020d80b038c7b09e55eea6bd EBUILD gdbm-1.13-r2.ebuild 1844 BLAKE2B 4ab07bf0205140ff52040f07a994be6e83703d5ad75dfd7fae9e0f933355b8526a514b4da56ef64f63c6abcdbff5f6e7173963249ba20dfbc13d9bcedd2d0476 SHA512 5e158e014d255146c7b6d7d749777862d0259b71dc4e61162bc6b1a60be947c2425028fce020405276a38d4492baec10af19395df519c1cf8387f098ab58e5af EBUILD gdbm-1.14.1.ebuild 1762 BLAKE2B 573c5b48f5e65f1c00ea6dbed01f9af99db7873c0a9f51028eda17589d11c11b82444418d99cd24234d0bd96c3daf28920718aed6e00371766a67a34ff38442d SHA512 c5e4335786ad8b8fb4fc38f2b2a4a9f0db5a60bbb0e3c99fba80c74301c657f4b0f13f8a3f4d39a0a7ee27eeaa5727795be69c05332ad463464babde6ea31b5f EBUILD gdbm-1.17.ebuild 1358 BLAKE2B 663f146c1603834593e9f03fc037b5b54f73880458d00678447026253eaa0df7c2f0f874a694c7dc8a325e965b1fa2416cd7bcb11a91cabfc4b1dc086253ff51 SHA512 49fc0a53786f46aab733e30301e8547a98b338ba1f3c29f5e42e361a776514750744196538fe6a87027dba8e263f690bae6b4af2c5d37b4e43456fb6c299e703 +EBUILD gdbm-1.18.1-r1.ebuild 1356 BLAKE2B 5812e6b0f7bdbacd06ab5b69428491bc95178c61ad29a7e7b78644c464178e9b8f7e4654c5cc9062319d55ddb37d1b5b5dc990d9b48bf20eee43edbda7ac619b SHA512 3088edcd3b0c28be625174c7c1d67bd96fd044d559f6120e701156e0d43fdfa9b65992cd3fa3ed91def7f23c610175865a3eeae43f444ce66408876ac949d4b8 EBUILD gdbm-1.18.1.ebuild 1351 BLAKE2B 21f14dc56f13ec11b74e9380a5ae0a763f1f949c4b54ec6c41b7ed7d4cab4d7d564470290ccf5ddff4aeae50865c57370362b70c7b72992c3640e215c85cde80 SHA512 afc83c99588beee7921fe53aad3759916f891eb5f9d409c420e8e6b2eb4e1736e57a677bfa84dfe0a9ec18eeff8bf1037d5e3537676b341c55256b4571b21cab EBUILD gdbm-1.18.ebuild 1302 BLAKE2B d78144e2bbac7b03e9152defa9b480521f5910bf9f80d7d1af09c3c9599e38f82f5751f5e24da37179b45735b478d9ec77f5780dbbe0da33889cb04b21382444 SHA512 b2092b8159ca3d236abd1f80346f5df48ff8935f4d8da1a320b4926b4fe6eb64f55af739bea346dd373a2c0eac8e11a49e48dc47c8713e4aa8c8720c94b53e48 MISC metadata.xml 471 BLAKE2B d73a0a1493a17d9990451e721b5bccddbdc3cfb59af544b1cdd927e31c65795888b13c7e42274a454d7dd8762ba92c5ab94dae5af7389a67688e6b06840ebad5 SHA512 05f989aa1f1d2ca29d4084741af8465c3daa0713881130aeb8ba8ac65f89a8874d668a0ea32184ec404e19777aa1df9e8d2526fe2ce9a22cae8c08c608501d41 diff --git a/sys-libs/gdbm/gdbm-1.18.1-r1.ebuild b/sys-libs/gdbm/gdbm-1.18.1-r1.ebuild new file mode 100644 index 000000000000..0a1c428f7d42 --- /dev/null +++ b/sys-libs/gdbm/gdbm-1.18.1-r1.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools flag-o-matic multilib multilib-minimal + +DESCRIPTION="Standard GNU database libraries" +HOMEPAGE="https://www.gnu.org/software/gdbm/" +SRC_URI="mirror://gnu/gdbm/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0/6" # libgdbm.so version +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="+berkdb nls +readline static-libs" + +DEPEND=" + readline? ( sys-libs/readline:0=[${MULTILIB_USEDEP}] ) +" +RDEPEND="${DEPEND}" + +PATCHES=("${FILESDIR}"/${PN}-1.18.1-gcc-10.patch) + +src_prepare() { + default + eautoreconf +} + +multilib_src_configure() { + # gdbm doesn't appear to use either of these libraries + export ac_cv_lib_dbm_main=no ac_cv_lib_ndbm_main=no + + local myeconfargs=( + --includedir="${EPREFIX}"/usr/include/gdbm + $(use_enable berkdb libgdbm-compat) + $(use_enable nls) + $(use_enable static-libs static) + $(use_with readline) + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + einstalldocs + + if ! use static-libs ; then + find "${ED}" -name '*.la' -delete || die + fi + mv "${ED}"/usr/include/gdbm/gdbm.h "${ED}"/usr/include/ || die +} diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index 619e96e0b453..cbb6adb60f74 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -17,6 +17,7 @@ DIST glibc-2.30-patches-10.tar.xz 72808 BLAKE2B a7a95c99482524b2896d15539766f1e6 DIST glibc-2.30-sparc-reg-fix-clobber.patch 6106 BLAKE2B cad6a4cbef5d529519ef486f4ef8e189cb4d43dd67fa8f8d50d67072cbb682f60474d482a5c5152d1317de92b98851d8a88eee6b331eb5bc22de065c03c58fde SHA512 a018ef1f196257f3888af20a5cbc97892c8382a4f489da042568e087c077f30cf4dda6ac711b573e1274317866ce97cf817d92a28cf55f18f5e8d32787e6cb3f DIST glibc-2.30.tar.xz 16576920 BLAKE2B bd5aae4c9854f40785b91f83c3b632de6d48d811027ddfe61651cb1bc617db8017d7914c23a770cdd3feed06fcc316da841eea916cdba54179e7eace4ea45484 SHA512 37483990cd653685873e96c45dd1651b32b441b6d7919a68ebe3bae31a0c3f7ce183fc9b110f0b268b353f80312f18370559a1e7aecea0e5aa755c8f2aef1d6b DIST glibc-2.31-patches-8.tar.xz 60868 BLAKE2B c641a77cab0b3e5379a6911a548483266110d747300f6bd4c138754cc35aff266088be8682ba45ac105c946ee309db0bc094b0c3bc48fd4303c925a7594e17e2 SHA512 1bc069d487ff9d4cd33c5d293bb0789114f65af5179b3d9df8ff0a9f043d5ffbcd030d8eabc90b329c896dfdd0409c4b8dac371eafdd380ecc660b9540320637 +DIST glibc-2.31-patches-9.tar.xz 74712 BLAKE2B 62991b67de4def4cca944e8420d2f0139f88b6754c6bc81072bb321c574c1db22641857345325848e1dfb551c10758f582e4425e687a7921cdbd4e7e7923a047 SHA512 699d898e3a8ed02b04573c675f572076e8f747767bfc577a033a49cd7d9078a7a60ac325acd4bd419a93b56edf90ce067baa7578ab315e27885f1f0e13916354 DIST glibc-2.31.tar.xz 16676764 BLAKE2B 91df1792345f157265eae405185a81fd4b8ce36d4c2388f44b0d5b1ae38174ea374cbc909cd260770b9f38ea58051da13766d4fa22abf41c2d4a2493257b179b SHA512 735e4c0ef10418b6ea945ad3906585e5bbd8b282d76f2131309dce4cec6b15066a5e4a3731773ce428a819b542579c9957867bb0abf05ed2030983fca4412306 DIST glibc-2.32-patches-1.tar.xz 7640 BLAKE2B 849bdc1108e1f68f307bb9673f5ecda7c5470815f7d2de7956d529b638aafd4a8f37c22f79bc89d8e5f2efd51878927d3999d80586ec1074c46a52b6e148ea18 SHA512 a206d69693c3d9c527e17307b413aed05bcdefdf2537bb16af97ef31e85e4c48812971b60c00107b6a7c4bdc83c7e8ba1c9ea96f5641520852f98928f1018349 DIST glibc-2.32.tar.xz 16744512 BLAKE2B a56b4afbb35315c5cd6dca0f62e44455dceae3e6e88a8453621f9a5394a60ddf10ca9309b2db0911830c7fd77e3faa5d94694eb94d5b2c05fc5285cef52255da SHA512 8460c155b7003e04f18dabece4ed9ad77445fa2288a7dc08e80a8fc4c418828af29e0649951bd71a54ea2ad2d4da7570aafd9bdfe4a37e9951b772b442afe50b @@ -25,9 +26,10 @@ DIST locale-gen-2.10.tar.gz 7747 BLAKE2B 49f569c5ae5260fca128503bc6f22d6f6f1cda8 EBUILD glibc-2.19-r2.ebuild 38264 BLAKE2B 935f298661a925624e86efbcbce2a98db4c7136a7bf280971a7022b72130b3b7a05ae8ab876cea12c3d0000ebeba70cdb0c2db084322d1f33a2685d637d8864d SHA512 bad1c42660e84e8035699b91bad4a8765657f87251b6d68e795255209c2bf696cca0ad17f8e77a024e68d93120be2030ed7f4ad1bfd26774f0ec486c59f5641f EBUILD glibc-2.25-r11.ebuild 6063 BLAKE2B a995a2553fad56abe09f0f890e2c70f94568675057367795acc7e62fdeb8b103a8ed9b5228bbe3aa74a70c7d657808ee0420c6c8931386c7a9c2adb0c330d15c SHA512 1b8e906841492e4f9361f909e91069c3a642d84a0216fab18b434f61db991c13765a31e29175854d43bf1b8159b462cd02e138bd593990c2306afd70f163a0cd EBUILD glibc-2.30-r8.ebuild 43113 BLAKE2B e567ea4544419609ce3f02ac06ce8ee2175d11502e947187334ec02cca11dacbb5453d514fe8b1c77418259e8f0bbd4306cdfa6aa573426e95ba56f910a9534c SHA512 b85c7656eb09b9702d352b2e20c334d70b764ddedacc6a218b3a921c990314ec80a4ff14e234a3bebf810f3482c45b323e9edc3c2044266341125b7095186126 -EBUILD glibc-2.30-r9.ebuild 43269 BLAKE2B cfc1ca115def60424b14d76270e0b57dec754992bec50d52110e437c62a68bea860062e65705ba64ddd3e8156e61b6542227678a3613c782f441411d606b286b SHA512 37fe44bf17fe1d3b8f001dfea6326a64c21843a07bb2dc0229856c53eca8d2a6ec13687c3fd038a47045db817f8242deb7d30219b8f08b4b051cd86ccdbe1310 -EBUILD glibc-2.31-r6.ebuild 44378 BLAKE2B 0e123cb1baaecf80c587133becb26ffa8cf01da7f407f3741fb6f2557262fb404381130c3bf280f515b176bee39a8a52d98fc935ad0a23861a78caca2fada551 SHA512 1a1728a26509339e261aed4aaebc4870cf1d9154cd736726b66856b5065c824625f65b60d8e3030287283dad509f624e6fe3e13dc3dd4b0abb45b2f670bc3dc9 -EBUILD glibc-2.32-r1.ebuild 44748 BLAKE2B 69bd3219aae26964c743cdccb46b04a9a2fad734e32bd853c41d3f7a8b7de48c3aa9c54af48ca1fe583487b84b008afddba791707e07ea95d844d106c507847d SHA512 a3859eb73e952991659e33abfd24859dbd2484181f69d83e3c42be068470529b3f95c3f9e3e12c6a81421cc4b0663ca2d871f4fddec7d160c95fe56e8740b236 -EBUILD glibc-2.32.ebuild 44384 BLAKE2B 114aaddf3c1e3b2f9cf905e77d6b23ebccc4c72ba0e1eb0441cd80ddab36c6fa1e8888b10cf1ee75952be0b298edb019428e7e5c5ebc56e032c32321e9646ef7 SHA512 223b77b5b1b818490fed1250e66b7f25f230560bc2cf090e565d563a5c3018de0c31613b0c10e3449a692d3cee2b2a67764238c4408bfb84d886b9f9b5e00f1f -EBUILD glibc-9999.ebuild 44186 BLAKE2B 1ece1a20a2ec0c8a710f36fedd65dca77bdd30398b04ef4f0730df610d0fc68f0b5a032b823179511af3f379d2a44a9e826fc2adfda4139b1e80c3ba9c08331b SHA512 5fc334310399c48fc464c8bbec513ae2bf23c3d221d84133cc1aa2bc9b080f0bcea7de5e2f3b151f51cc1ef84606e49cda8f46a627f7b5ce581105b299cb0411 +EBUILD glibc-2.30-r9.ebuild 43267 BLAKE2B 5705e5c2c6558d1eecb0b1df532512cda073e1cd9e182d0864abf64f209f58f1fd8d73789381f1f6556e59e65134a361e3235299917588eb7ae881fb4c90c460 SHA512 38eb6ece3fba563af2d600acb4ec01f0f8b3719c953db82b5c6caf838bb5522f241cbd3b34da36cab89f10fcdfb9b3af3931ca48964e2292a88decc6567324ab +EBUILD glibc-2.31-r6.ebuild 44382 BLAKE2B 232d74149e6028963993873c373e1fc744e4b0a3eb33aed47cd045503d55c2a77836c5bf7a96a3496c9d2d863a691ae1268f62d3f029a5cdd417c9492f3b3392 SHA512 61d0bb3df2cba90d53956774d4b4d52fa63649c6d9e21cc08f903bc63dbb30d6e412c0e71824dde753553bd64dee711603cb094cdcf35bbd28f6b5e911ebf735 +EBUILD glibc-2.31-r7.ebuild 44391 BLAKE2B 85da5d9ae3ce8d16f7af48a8342e29637d1482c0eeb12880b85b19fa8dc2ac3d90cb2712726f395ccf99bde8883c691e22b19543d67900441da7590764e6a692 SHA512 a37fa0526a9c0d4235aa3a40611038903266f2422741cdc3ad0d2722c3c52238dcf007c46ae6a703e735d53ec48eb772f916081eaeb9dac51df44602afd4df79 +EBUILD glibc-2.32-r1.ebuild 44754 BLAKE2B 15b6de7f027bda31caf170311117faf0f82f68232559be863ce65e9edf1a9600fc50d6ce9cec84d8d40ed00765a3793ebeb18559a18d11b4b5f1105981a1aeb1 SHA512 00ae773906303be880f87a3f4c6413a5c99199e4c537081112fa6497d9c9f76b56dac1d06e822da213af248933a4a9168a68cc66d55951e65557466f21d188a2 +EBUILD glibc-2.32.ebuild 44390 BLAKE2B 3ba4b4f9bf36f7e381c4b2b0aef9c4337656b4200c17ea6039d3af89e600b7c2cbb93c92da579018977a64125ac8925b93a04e9e069b89a4b0c40fdb37227204 SHA512 d99cde411eff37e5059bde2e83366d671734999f166823059f37a27b1edcbc2e70b409f6634a5bd7d3e67576b35f7454ea220a09a22abe0a3c7ad69de13e5f5d +EBUILD glibc-9999.ebuild 44192 BLAKE2B 35137b65aefdf2022b758d8102c91811326679da8972dd2767055e2f61a6ae0611ca7cec070f8e5a86f047ab168ec219627b3f38240ad2e54e277148b25a701e SHA512 cbfc09d443000bca8cbdda9f7ce99e2f6eed8d5c44677e7645e13562154853b8c02c4215e9b3d1a472712ce46f8b219a1b8e0d59e74fb63ae3fc48fec7cad574 MISC metadata.xml 1491 BLAKE2B 4688b54e937163824a5895f4fbbcc9f09152378c68416f62294f7f1506379ecb82de43e8d2c6a64d1647c16700abe7c750b3cc658a9c7053891b3a9504f2ae93 SHA512 f6c002a52bb81471fbb631c7c430e1e91f6fdefc84a0c1f330606ac6347067b60f8a6d078169d49d2b30fa6991883466fff05caf4f93f53c00e5ced625dd8c88 diff --git a/sys-libs/glibc/glibc-2.30-r9.ebuild b/sys-libs/glibc/glibc-2.30-r9.ebuild index 2a22b0bde8ed..8765ce6d87e2 100644 --- a/sys-libs/glibc/glibc-2.30-r9.ebuild +++ b/sys-libs/glibc/glibc-2.30-r9.ebuild @@ -19,7 +19,7 @@ if [[ ${PV} == 9999* ]]; then EGIT_REPO_URI="https://sourceware.org/git/glibc.git" inherit git-r3 else - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" SRC_URI="mirror://gnu/glibc/${P}.tar.xz" fi diff --git a/sys-libs/glibc/glibc-2.31-r6.ebuild b/sys-libs/glibc/glibc-2.31-r6.ebuild index 3ac5fb0e9b15..671c8ee63a2b 100644 --- a/sys-libs/glibc/glibc-2.31-r6.ebuild +++ b/sys-libs/glibc/glibc-2.31-r6.ebuild @@ -22,7 +22,7 @@ PATCH_DEV=dilfridge if [[ ${PV} == 9999* ]]; then inherit git-r3 else - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" SRC_URI="mirror://gnu/glibc/${P}.tar.xz" SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" fi @@ -301,7 +301,7 @@ setup_target_flags() { # The mips abi cannot support the GNU style hashes. #233233 filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both ;; - ppc) + 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 diff --git a/sys-libs/glibc/glibc-2.31-r7.ebuild b/sys-libs/glibc/glibc-2.31-r7.ebuild new file mode 100644 index 000000000000..07f25009bd18 --- /dev/null +++ b/sys-libs/glibc/glibc-2.31-r7.ebuild @@ -0,0 +1,1495 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8} ) + +inherit python-any-r1 prefix eutils toolchain-funcs flag-o-matic gnuconfig \ + multilib systemd multiprocessing + +DESCRIPTION="GNU libc C library" +HOMEPAGE="https://www.gnu.org/software/libc/" +LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE" +SLOT="2.2" + +EMULTILIB_PKG="true" + +# Gentoo patchset (ignored for live ebuilds) +PATCH_VER=9 +PATCH_DEV=dilfridge + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 +else + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + SRC_URI="mirror://gnu/glibc/${P}.tar.xz" + SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" +fi + +RELEASE_VER=${PV} + +GCC_BOOTSTRAP_VER=20180511 + +LOCALE_GEN_VER=2.00 + +SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz" +SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" + +IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib nscd profile selinux +ssp +static-libs static-pie suid systemtap test vanilla" + +# Minimum kernel version that glibc requires +MIN_KERN_VER="3.2.0" + +# Here's how the cross-compile logic breaks down ... +# CTARGET - machine that will target the binaries +# CHOST - machine that will host the binaries +# CBUILD - machine that will build the binaries +# If CTARGET != CHOST, it means you want a libc for cross-compiling. +# If CHOST != CBUILD, it means you want to cross-compile the libc. +# CBUILD = CHOST = CTARGET - native build/install +# CBUILD != (CHOST = CTARGET) - cross-compile a native build +# (CBUILD = CHOST) != CTARGET - libc for cross-compiler +# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler +# For install paths: +# CHOST = CTARGET - install into / +# CHOST != CTARGET - install into /usr/CTARGET/ +# +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CTARGET} == ${CHOST} ]] ; then + if [[ ${CATEGORY} == cross-* ]] ; then + export CTARGET=${CATEGORY#cross-} + fi +fi + +# Note [Disable automatic stripping] +# Disabling automatic stripping for a few reasons: +# - portage's attempt to strip breaks non-native binaries at least on +# arm: bug #697428 +# - portage's attempt to strip libpthread.so.0 breaks gdb thread +# enumeration: bug #697910. This is quite subtle: +# * gdb uses glibc's libthread_db-1.0.so to enumerate threads. +# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols +# via 'ps_pglobal_lookup' symbol defined in gdb. +# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all +# known symbols in 'libpthread.so.0'. Specifically 'nptl_version' +# (unexported) is used to sanity check compatibility before enabling +# debugging. +# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint +# * normal 'strip' command trims '.symtab' +# Thus our main goal here is to prevent 'libpthread.so.0' from +# losing it's '.symtab' entries. +# As Gentoo's strip does not allow us to pass less aggressive stripping +# options and does not check the machine target we strip selectively. + +# We need a new-enough binutils/gcc to match upstream baseline. +# Also we need to make sure our binutils/gcc supports TLS, +# and that gcc already contains the hardened patches. +# Lastly, let's avoid some openssh nastiness, bug 708224, as +# convenience to our users. +BDEPEND=" + ${PYTHON_DEPS} + >=app-misc/pax-utils-0.1.10 + sys-devel/bison + doc? ( sys-apps/texinfo ) +" +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 ) + !' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h') + ALT_BUILD_HEADERS=${header_path%/linux/version.h} + fi + fi + fi + echo "${ALT_BUILD_HEADERS}" +} + +alt_libdir() { + echo $(alt_prefix)/$(get_libdir) +} +alt_usrlibdir() { + echo $(alt_prefix)/usr/$(get_libdir) +} + +builddir() { + echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1" +} + +do_compile_test() { + local ret save_cflags=${CFLAGS} + CFLAGS+=" $1" + shift + + pushd "${T}" >/dev/null + + rm -f glibc-test* + printf '%b' "$*" > glibc-test.c + + # Most of the time CC is already set, but not in early sanity checks. + nonfatal emake glibc-test CC="${CC-$(tc-getCC ${CTARGET})}" + ret=$? + + popd >/dev/null + + CFLAGS=${save_cflags} + return ${ret} +} + +do_run_test() { + local ret + + if [[ ${MERGE_TYPE} == "binary" ]] ; then + # ignore build failures when installing a binary package #324685 + do_compile_test "" "$@" 2>/dev/null || return 0 + else + if ! do_compile_test "" "$@" ; then + ewarn "Simple build failed ... assuming this is desired #324685" + return 0 + fi + fi + + pushd "${T}" >/dev/null + + ./glibc-test + ret=$? + rm -f glibc-test* + + popd >/dev/null + + return ${ret} +} + +setup_target_flags() { + # This largely mucks with compiler flags. None of which should matter + # when building up just the headers. + just_headers && return 0 + + case $(tc-arch) in + x86) + # -march needed for #185404 #199334 + # TODO: When creating the first glibc cross-compile, this test will + # always fail as it does a full link which in turn requires glibc. + # Probably also applies when changing multilib profile settings (e.g. + # enabling x86 when the profile was amd64-only previously). + # We could change main to _start and pass -nostdlib here so that we + # only test the gcc code compilation. Or we could do a compile and + # then look for the symbol via scanelf. + if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then + local t=${CTARGET_OPT:-${CTARGET}} + t=${t%%-*} + filter-flags '-march=*' + export CFLAGS="-march=${t} ${CFLAGS}" + einfo "Auto adding -march=${t} to CFLAGS #185404" + fi + ;; + amd64) + # -march needed for #185404 #199334 + # TODO: See cross-compile issues listed above for x86. + [[ ${ABI} == x86 ]] && + if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then + local t=${CTARGET_OPT:-${CTARGET}} + t=${t%%-*} + # Normally the target is x86_64-xxx, so turn that into the -march that + # gcc actually accepts. #528708 + [[ ${t} == "x86_64" ]] && t="x86-64" + filter-flags '-march=*' + # ugly, ugly, ugly. ugly. + CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}") + export CFLAGS_x86="${CFLAGS_x86} -march=${t}" + einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})" + fi + ;; + mips) + # The mips abi cannot support the GNU style hashes. #233233 + filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both + ;; + ppc|ppc64) + # Many arch-specific implementations do not work on ppc with + # cache-block not equal to 128 bytes. This breaks memset: + # https://sourceware.org/PR26522 + # https://bugs.gentoo.org/737996 + # Use default -mcpu=. For ppc it means non-multiarch setup. + filter-flags '-mcpu=*' + ;; + sparc) + # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though. + filter-flags "-fcall-used-g7" + append-flags "-fcall-used-g6" + + local cpu + case ${CTARGET} in + sparc64-*) + cpu="sparc64" + case $(get-flag mcpu) in + v9) + # We need to force at least v9a because the base build doesn't + # work with just v9. + # https://sourceware.org/bugzilla/show_bug.cgi?id=19477 + append-flags "-Wa,-xarch=v9a" + ;; + esac + ;; + sparc-*) + case $(get-flag mcpu) in + v8|supersparc|hypersparc|leon|leon3) + cpu="sparcv8" + ;; + *) + cpu="sparcv9" + ;; + esac + ;; + esac + [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}" + ;; + esac +} + +setup_flags() { + # Make sure host make.conf doesn't pollute us + if is_crosscompile || tc-is-cross-compiler ; then + CHOST=${CTARGET} strip-unsupported-flags + fi + + # Store our CFLAGS because it's changed depending on which CTARGET + # we are building when pulling glibc on a multilib profile + CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}} + CFLAGS=${CFLAGS_BASE} + CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}} + CXXFLAGS=${CXXFLAGS_BASE} + ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}} + ASFLAGS=${ASFLAGS_BASE} + + # Allow users to explicitly avoid flag sanitization via + # USE=custom-cflags. + if ! use custom-cflags; then + # Over-zealous CFLAGS can often cause problems. What may work for one + # person may not work for another. To avoid a large influx of bugs + # relating to failed builds, we strip most CFLAGS out to ensure as few + # problems as possible. + strip-flags + # Lock glibc at -O2; we want to be conservative here. + filter-flags '-O?' + append-flags -O2 + fi + strip-unsupported-flags + filter-flags -m32 -m64 '-mabi=*' + + # glibc aborts if rpath is set by LDFLAGS + filter-ldflags '-Wl,-rpath=*' + + # #492892 + filter-flags -frecord-gcc-switches + + unset CBUILD_OPT CTARGET_OPT + if use multilib ; then + CTARGET_OPT=$(get_abi_CTARGET) + [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST) + fi + + setup_target_flags + + if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then + CBUILD_OPT=${CTARGET_OPT} + fi + + # glibc's headers disallow -O0 and fail at build time: + # include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization" + replace-flags -O0 -O1 + + filter-flags '-fstack-protector*' +} + +want_tls() { + # Archs that can use TLS (Thread Local Storage) + case $(tc-arch) in + x86) + # requires i486 or better #106556 + [[ ${CTARGET} == i[4567]86* ]] && return 0 + return 1 + ;; + esac + return 0 +} + +want__thread() { + want_tls || return 1 + + # For some reason --with-tls --with__thread is causing segfaults on sparc32. + [[ ${PROFILE_ARCH} == "sparc" ]] && return 1 + + [[ -n ${WANT__THREAD} ]] && return ${WANT__THREAD} + + # only test gcc -- can't test linking yet + tc-has-tls -c ${CTARGET} + WANT__THREAD=$? + + return ${WANT__THREAD} +} + +use_multiarch() { + # Allow user to disable runtime arch detection in multilib. + use multiarch || return 1 + # Make sure binutils is new enough to support indirect functions, + # #336792. This funky sed supports gold and bfd linkers. + local bver nver + bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}') + case $(tc-arch ${CTARGET}) in + amd64|x86) nver="2.20" ;; + arm) nver="2.22" ;; + hppa) nver="2.23" ;; + ppc|ppc64) nver="2.20" ;; + # ifunc support was added in 2.23, but glibc also needs + # machinemode which is in 2.24. + s390) nver="2.24" ;; + sparc) nver="2.21" ;; + *) return 1 ;; + esac + ver_test ${bver} -ge ${nver} +} + +# Setup toolchain variables that had historically been defined in the +# profiles for these archs. +setup_env() { + # silly users + unset LD_RUN_PATH + unset LD_ASSUME_KERNEL + + if is_crosscompile || tc-is-cross-compiler ; then + multilib_env ${CTARGET_OPT:-${CTARGET}} + + if ! use multilib ; then + MULTILIB_ABIS=${DEFAULT_ABI} + else + MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}} + fi + + # If the user has CFLAGS_ in their make.conf, use that, + # and fall back on CFLAGS. + local VAR=CFLAGS_${CTARGET//[-.]/_} + CFLAGS=${!VAR-${CFLAGS}} + einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}" + fi + + setup_flags + + export ABI=${ABI:-${DEFAULT_ABI:-default}} + + if just_headers ; then + # Avoid mixing host's CC and target's CFLAGS_${ABI}: + # At this bootstrap stage we have only binutils for + # target but not compiler yet. + einfo "Skip CC ABI injection. We can't use (cross-)compiler yet." + return 0 + fi + local VAR=CFLAGS_${ABI} + # We need to export CFLAGS with abi information in them because glibc's + # configure script checks CFLAGS for some targets (like mips). Keep + # around the original clean value to avoid appending multiple ABIs on + # top of each other. + : ${__GLIBC_CC:=$(tc-getCC ${CTARGET})} + export __GLIBC_CC CC="${__GLIBC_CC} ${!VAR}" + einfo " $(printf '%15s' 'Manual CC:') ${CC}" +} + +foreach_abi() { + setup_env + + local ret=0 + local abilist="" + if use multilib ; then + abilist=$(get_install_abis) + else + abilist=${DEFAULT_ABI} + fi + local -x ABI + for ABI in ${abilist:-default} ; do + setup_env + einfo "Running $1 for ABI ${ABI}" + $1 + : $(( ret |= $? )) + done + return ${ret} +} + +glibc_banner() { + local b="Gentoo ${PVR}" + [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}" + echo "${b}" +} + +# The following Kernel version handling functions are mostly copied from portage +# source. It's better not to use linux-info.eclass here since a) it adds too +# much magic, see bug 326693 for some of the arguments, and b) some of the +# functions are just not provided. + +g_get_running_KV() { + uname -r + return $? +} + +g_KV_major() { + [[ -z $1 ]] && return 1 + local KV=$@ + echo "${KV%%.*}" +} + +g_KV_minor() { + [[ -z $1 ]] && return 1 + local KV=$@ + KV=${KV#*.} + echo "${KV%%.*}" +} + +g_KV_micro() { + [[ -z $1 ]] && return 1 + local KV=$@ + KV=${KV#*.*.} + echo "${KV%%[^[:digit:]]*}" +} + +g_KV_to_int() { + [[ -z $1 ]] && return 1 + local KV_MAJOR=$(g_KV_major "$1") + local KV_MINOR=$(g_KV_minor "$1") + local KV_MICRO=$(g_KV_micro "$1") + local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO )) + + # We make version 2.2.0 the minimum version we will handle as + # a sanity check ... if its less, we fail ... + if [[ ${KV_int} -ge 131584 ]] ; then + echo "${KV_int}" + return 0 + fi + return 1 +} + +g_int_to_KV() { + local version=$1 major minor micro + major=$((version / 65536)) + minor=$(((version % 65536) / 256)) + micro=$((version % 256)) + echo ${major}.${minor}.${micro} +} + +eend_KV() { + [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]] + eend $? +} + +get_kheader_version() { + printf '#include \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 \n#include \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() will break. See bug 279260." + die "Old and broken kernel." + fi + fi + + # Users have had a chance to phase themselves, time to give em the boot + if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then + eerror "You still haven't deleted ${EROOT}/etc/locales.build." + eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher." + die "Lazy upgrader detected" + fi + + if [[ ${CTARGET} == i386-* ]] ; then + eerror "i386 CHOSTs are no longer supported." + eerror "Chances are you don't actually want/need i386." + eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml" + die "Please fix your CHOST" + fi + + if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then + ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS." + ewarn "This will result in a 50% performance penalty when running with a 32bit" + ewarn "hypervisor, which is probably not what you want." + fi + + # Check for sanity of /etc/nsswitch.conf + if [[ -e ${EROOT}/etc/nsswitch.conf ]] ; then + local entry + for entry in passwd group shadow; do + if ! egrep -q "^[ \t]*${entry}:.*files" "${EROOT}"/etc/nsswitch.conf; then + eerror "Your ${EROOT}/etc/nsswitch.conf is out of date." + eerror "Please make sure you have 'files' entries for" + eerror "'passwd:', 'group:' and 'shadow:' databases." + eerror "For more details see:" + eerror " https://wiki.gentoo.org/wiki/Project:Toolchain/nsswitch.conf_in_glibc-2.26" + die "nsswitch.conf has no 'files' provider in '${entry}'." + fi + done + fi + + # ABI-specific checks follow here. Hey, we have a lot more specific conditions that + # we test for... + if ! is_crosscompile ; then + if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then + ebegin "Checking that IA32 emulation is enabled in the running kernel" + echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c" + local STAT + if "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then + "${T}/check-ia32-emulation.elf32" + STAT=$? + else + # Don't fail here to allow single->multi ABI switch + # or recover from breakage like bug #646424 + ewarn "Failed to compile the ABI test. Broken host glibc?" + STAT=0 + fi + rm -f "${T}/check-ia32-emulation.elf32" + eend $STAT + [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc." + fi + + fi + + # When we actually have to compile something... + if ! just_headers ; then + ebegin "Checking gcc for __thread support" + if ! eend $(want__thread ; echo $?) ; then + echo + eerror "Could not find a gcc that supports the __thread directive!" + eerror "Please update your binutils/gcc and try again." + die "No __thread support in gcc!" + fi + + if [[ ${CTARGET} == *-linux* ]] ; then + local run_kv build_kv want_kv + + run_kv=$(g_get_running_KV) + build_kv=$(g_int_to_KV $(get_kheader_version)) + want_kv=${MIN_KERN_VER} + + if ! is_crosscompile && ! tc-is-cross-compiler ; then + # Building fails on an non-supporting kernel + ebegin "Checking running kernel version (${run_kv} >= ${want_kv})" + if ! eend_KV ${run_kv} ${want_kv} ; then + echo + eerror "You need a kernel of at least ${want_kv}!" + die "Kernel version too low!" + fi + fi + + ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})" + if ! eend_KV ${build_kv} ${want_kv} ; then + echo + eerror "You need linux-headers of at least ${want_kv}!" + die "linux-headers version too low!" + fi + fi + fi +} + +# +# the phases +# + +# pkg_pretend + +pkg_pretend() { + # All the checks... + einfo "Checking general environment sanity." + sanity_prechecks +} + +pkg_setup() { + # see bug 682570 + [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup +} + +# src_unpack + +src_unpack() { + # Consistency is not guaranteed between pkg_ and src_ ... + sanity_prechecks + + use multilib && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz + + setup_env + + if [[ ${PV} == 9999* ]] ; then + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git" + EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git + git-r3_src_unpack + mv patches-git/9999 patches || die + + EGIT_REPO_URI="https://sourceware.org/git/glibc.git" + EGIT_CHECKOUT_DIR=${S} + git-r3_src_unpack + else + unpack ${P}.tar.xz + + cd "${WORKDIR}" || die + unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz + fi + + cd "${WORKDIR}" || die + unpack locale-gen-${LOCALE_GEN_VER}.tar.gz +} + +src_prepare() { + local patchsetname + if ! use vanilla ; then + if [[ ${PV} == 9999* ]] ; then + patchsetname="from git master" + else + patchsetname="${RELEASE_VER}-${PATCH_VER}" + fi + elog "Applying Gentoo Glibc Patchset ${patchsetname}" + eapply "${WORKDIR}"/patches + einfo "Done." + fi + + default + + gnuconfig_update + + cd "${WORKDIR}" + find . -name configure -exec touch {} + + + # move the external locale-gen to its old place + mkdir extra || die + mv locale-gen-${LOCALE_GEN_VER} extra/locale || die + + eprefixify extra/locale/locale-gen + + # Fix permissions on some of the scripts. + chmod u+x "${S}"/scripts/*.sh + + cd "${S}" +} + +glibc_do_configure() { + # Glibc does not work with gold (for various reasons) #269274. + tc-ld-disable-gold + + # CXX isnt handled by the multilib system, so if we dont unset here + # we accumulate crap across abis + unset CXX + + einfo "Configuring glibc for nptl" + + if use doc ; then + export MAKEINFO=makeinfo + else + export MAKEINFO=/dev/null + fi + + local v + for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM READELF; do + einfo " $(printf '%15s' ${v}:) ${!v}" + done + + # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760 + # To build .S (assembly) files with the same ABI-specific flags + # upstream currently recommends adding CFLAGS to CC/CXX: + # https://sourceware.org/PR23273 + # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS + # and breaks multiarch support. See 659030#c3 for an example. + # The glibc configure script doesn't properly use LDFLAGS all the time. + export CC="$(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS}" + einfo " $(printf '%15s' 'Manual CC:') ${CC}" + + # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548 + export CXX="$(tc-getCXX ${CTARGET}) $(get_abi_CFLAGS) ${CFLAGS}" + + if is_crosscompile; then + # Assume worst-case bootstrap: glibc is buil first time + # when ${CTARGET}-g++ is not available yet. We avoid + # building auxiliary programs that require C++: bug #683074 + # It should not affect final result. + export libc_cv_cxx_link_ok=no + # The line above has the same effect. We set CXX explicitly + # to make build logs less confusing. + export CXX= + fi + einfo " $(printf '%15s' 'Manual CXX:') ${CXX}" + + # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure + # can't detect them automatically due to ${CHOST} mismatch and fallbacks + # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup(). + export NM="$(tc-getNM ${CTARGET})" + export READELF="$(tc-getREADELF ${CTARGET})" + einfo " $(printf '%15s' 'Manual NM:') ${NM}" + einfo " $(printf '%15s' 'Manual READELF:') ${READELF}" + + echo + + local myconf=() + + case ${CTARGET} in + m68k*) + # setjmp() is not compatible with stack protection: + # https://sourceware.org/PR24202 + myconf+=( --enable-stack-protector=no ) + ;; + powerpc-*) + # Currently gcc on powerpc32 generates invalid code for + # __builtin_return_address(0) calls. Normally programs + # don't do that but malloc hooks in glibc do: + # https://gcc.gnu.org/PR81996 + # https://bugs.gentoo.org/629054 + myconf+=( --enable-stack-protector=no ) + ;; + *) + # Use '=strong' instead of '=all' to protect only functions + # worth protecting from stack smashes. + # '=all' is also known to have a problem in IFUNC resolution + # tests: https://sourceware.org/PR25680, bug #712356. + myconf+=( --enable-stack-protector=$(usex ssp strong no) ) + ;; + esac + myconf+=( --enable-stackguard-randomization ) + + # Keep a whitelist of targets supporing IFUNC. glibc's ./configure + # is not robust enough to detect proper support: + # https://bugs.gentoo.org/641216 + # https://sourceware.org/PR22634#c0 + case $(tc-arch ${CTARGET}) in + # Keep whitelist of targets where autodetection mostly works. + amd64|x86|sparc|ppc|ppc64|arm|arm64|s390) ;; + # Blacklist everywhere else + *) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;; + esac + + # Enable Intel Control-flow Enforcement Technology on amd64 if requested + case ${CTARGET} in + x86_64-*) myconf+=( $(use_enable cet) ) ;; + *) ;; + esac + + [[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp ) + + myconf+=( --enable-kernel=${MIN_KERN_VER} ) + + # Since SELinux support is only required for nscd, only enable it if: + # 1. USE selinux + # 2. only for the primary ABI on multilib systems + # 3. Not a crosscompile + if ! is_crosscompile && use selinux ; then + if use multilib ; then + if is_final_abi ; then + myconf+=( --with-selinux ) + else + myconf+=( --without-selinux ) + fi + else + myconf+=( --with-selinux ) + fi + else + myconf+=( --without-selinux ) + fi + + # Force a few tests where we always know the answer but + # configure is incapable of finding it. + if is_crosscompile ; then + export \ + libc_cv_c_cleanup=yes \ + libc_cv_forced_unwind=yes + fi + + myconf+=( + --without-cvs + --disable-werror + --enable-bind-now + --build=${CBUILD_OPT:-${CBUILD}} + --host=${CTARGET_OPT:-${CTARGET}} + $(use_enable profile) + $(use_with gd) + --with-headers=$(build_eprefix)$(alt_build_headers) + --prefix="$(host_eprefix)/usr" + --sysconfdir="$(host_eprefix)/etc" + --localstatedir="$(host_eprefix)/var" + --libdir='$(prefix)'/$(get_libdir) + --mandir='$(prefix)'/share/man + --infodir='$(prefix)'/share/info + --libexecdir='$(libdir)'/misc/glibc + --with-bugurl=https://bugs.gentoo.org/ + --with-pkgversion="$(glibc_banner)" + $(use_enable crypt) + $(use_multiarch || echo --disable-multi-arch) + $(use_enable static-pie) + $(use_enable systemtap) + $(use_enable nscd) + ${EXTRA_ECONF} + ) + + # We rely on sys-libs/timezone-data for timezone tools normally. + myconf+=( $(use_enable vanilla timezone-tools) ) + + # These libs don't have configure flags. + ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no) + ac_cv_lib_cap_cap_init=$(usex caps || echo no) + + # There is no configure option for this and we need to export it + # since the glibc build will re-run configure on itself + export libc_cv_rootsbindir="$(host_eprefix)/sbin" + export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)" + + # We take care of patching our binutils to use both hash styles, + # and many people like to force gnu hash style only, so disable + # this overriding check. #347761 + export libc_cv_hashstyle=no + + local builddir=$(builddir nptl) + mkdir -p "${builddir}" + cd "${builddir}" + set -- "${S}"/configure "${myconf[@]}" + echo "$@" + "$@" || die "failed to configure glibc" + + # ia64 static cross-compilers are a pita in so much that they + # can't produce static ELFs (as the libgcc.a is broken). so + # disable building of the programs for those targets if it + # doesn't work. + # XXX: We could turn this into a compiler test, but ia64 is + # the only one that matters, so this should be fine for now. + if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then + sed -i '1i+link-static = touch $@' config.make + fi + + # If we're trying to migrate between ABI sets, we need + # to lie and use a local copy of gcc. Like if the system + # is built with MULTILIB_ABIS="amd64 x86" but we want to + # add x32 to it, gcc/glibc don't yet support x32. + # + if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then + echo 'main(){}' > "${T}"/test.c + if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then + sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die + fi + fi +} + +glibc_headers_configure() { + export ABI=default + + local builddir=$(builddir "headers") + mkdir -p "${builddir}" + cd "${builddir}" + + # if we don't have a compiler yet, we can't really test it now ... + # hopefully they don't affect header generation, so let's hope for + # the best here ... + local v vars=( + ac_cv_header_cpuid_h=yes + libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes + libc_cv_asm_cfi_directives=yes + libc_cv_broken_visibility_attribute=no + libc_cv_c_cleanup=yes + libc_cv_compiler_powerpc64le_binary128_ok=yes + libc_cv_forced_unwind=yes + libc_cv_gcc___thread=yes + libc_cv_mlong_double_128=yes + libc_cv_mlong_double_128ibm=yes + libc_cv_ppc_machine=yes + libc_cv_ppc_rel16=yes + libc_cv_predef_fortify_source=no + libc_cv_target_power8_ok=yes + libc_cv_visibility_attribute=yes + libc_cv_z_combreloc=yes + libc_cv_z_execstack=yes + libc_cv_z_initfirst=yes + libc_cv_z_nodelete=yes + libc_cv_z_nodlopen=yes + libc_cv_z_relro=yes + libc_mips_abi=${ABI} + libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard) + # These libs don't have configure flags. + ac_cv_lib_audit_audit_log_user_avc_message=no + ac_cv_lib_cap_cap_init=no + ) + + einfo "Forcing cached settings:" + for v in "${vars[@]}" ; do + einfo " ${v}" + export ${v} + done + + local headers_only_arch_CPPFLAGS=() + + # Blow away some random CC settings that screw things up. #550192 + if [[ -d ${S}/sysdeps/mips ]]; then + pushd "${S}"/sysdeps/mips >/dev/null + sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die + sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die + + # Force the mips ABI to the default. This is OK because the set of + # installed headers in this phase is the same between the 3 ABIs. + # If this ever changes, this hack will break, but that's unlikely + # as glibc discourages that behavior. + # https://crbug.com/647033 + sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die + + popd >/dev/null + fi + + case ${CTARGET} in + riscv*) + # RISC-V interrogates the compiler to determine which target to + # build. If building the headers then we don't strictly need a + # RISC-V compiler, so the built-in definitions that are provided + # along with all RISC-V compiler might not exist. This causes + # glibc's RISC-V preconfigure script to blow up. Since we're just + # building the headers any value will actually work here, so just + # pick the standard one (rv64g/lp64d) to make the build scripts + # happy for now -- the headers are all the same anyway so it + # doesn't matter. + headers_only_arch_CPPFLAGS+=( + -D__riscv_xlen=64 + -D__riscv_flen=64 + -D__riscv_float_abi_double=1 + -D__riscv_atomic=1 + ) ;; + esac + + local myconf=() + myconf+=( + --disable-sanity-checks + --enable-hacker-mode + --without-cvs + --disable-werror + --enable-bind-now + --build=${CBUILD_OPT:-${CBUILD}} + --host=${CTARGET_OPT:-${CTARGET}} + --with-headers=$(build_eprefix)$(alt_build_headers) + --prefix="$(host_eprefix)/usr" + ${EXTRA_ECONF} + ) + + # Nothing is compiled here which would affect the headers for the target. + # So forcing CC/CFLAGS is sane. + local headers_only_CC=$(tc-getBUILD_CC) + local headers_only_CFLAGS="-O1 -pipe" + local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}" + local headers_only_LDFLAGS="" + set -- "${S}"/configure "${myconf[@]}" + echo \ + "CC=${headers_only_CC}" \ + "CFLAGS=${headers_only_CFLAGS}" \ + "CPPFLAGS=${headers_only_CPPFLAGS}" \ + "LDFLAGS=${headers_only_LDFLAGS}" \ + "$@" + CC=${headers_only_CC} \ + CFLAGS=${headers_only_CFLAGS} \ + CPPFLAGS=${headers_only_CPPFLAGS} \ + LDFLAGS="" \ + "$@" || die "failed to configure glibc" +} + +do_src_configure() { + if just_headers ; then + glibc_headers_configure + else + glibc_do_configure nptl + fi +} + +src_configure() { + foreach_abi do_src_configure +} + +do_src_compile() { + emake -C "$(builddir nptl)" +} + +src_compile() { + if just_headers ; then + return + fi + + foreach_abi do_src_compile +} + +glibc_src_test() { + cd "$(builddir nptl)" + + local myxfailparams="" + if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then + for myt in ${XFAIL_TEST_LIST[@]} ; do + myxfailparams+="test-xfail-${myt}=yes " + done + fi + + # sandbox does not understand unshare() and prevents + # writes to /proc/, which makes many tests fail + + SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check +} + +do_src_test() { + local ret=0 + + glibc_src_test + : $(( ret |= $? )) + + return ${ret} +} + +src_test() { + if just_headers ; then + return + fi + + # Give tests more time to complete. + export TIMEOUTFACTOR=5 + + foreach_abi do_src_test || die "tests failed" +} + +run_locale_gen() { + # if the host locales.gen contains no entries, we'll install everything + local root="$1" + local inplace="" + + if [[ "${root}" == "--inplace-glibc" ]] ; then + inplace="--inplace-glibc" + root="$2" + fi + + local locale_list="${root}/etc/locale.gen" + + pushd "${ED}"/$(get_libdir) >/dev/null + + if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then + [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space" + locale_list="${root}/usr/share/i18n/SUPPORTED" + fi + + set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \ + --destdir "${root}" + echo "$@" + "$@" + + popd >/dev/null +} + +glibc_do_src_install() { + local builddir=$(builddir nptl) + cd "${builddir}" + + emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install + + # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support + # which come without headers etc. Only needed for binary packages since the + # external net-libs/libnsl has increased soversion. Keep only versioned libraries. + find "${D}" -name "libnsl.a" -delete + find "${D}" -name "libnsl.so" -delete + + # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need + # to infer upstream version: + # '#define VERSION "2.26.90"' -> '2.26.90' + local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h) + + # Avoid stripping binaries not targeted by ${CHOST}. Or else + # ${CHOST}-strip would break binaries build for ${CTARGET}. + is_crosscompile && dostrip -x / + # gdb thread introspection relies on local libpthreas symbols. stripping breaks it + # See Note [Disable automatic stripping] + dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so + + if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then + # Move versioned .a file out of libdir to evade portage QA checks + # instead of using gen_usr_ldscript(). We fix ldscript as: + # "GROUP ( /usr/lib64/libm-.a ..." -> "GROUP ( /usr/lib64/glibc-/libm-.a ..." + sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die + dodir $(alt_usrlibdir)/${P} + mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die + fi + + # We'll take care of the cache ourselves + rm -f "${ED}"/etc/ld.so.cache + + # Everything past this point just needs to be done once ... + is_final_abi || return 0 + + # Make sure the non-native interp can be found on multilib systems even + # if the main library set isn't installed into the right place. Maybe + # we should query the active gcc for info instead of hardcoding it ? + local i ldso_abi ldso_name + local ldso_abi_list=( + # x86 + amd64 /lib64/ld-linux-x86-64.so.2 + x32 /libx32/ld-linux-x32.so.2 + x86 /lib/ld-linux.so.2 + # mips + o32 /lib/ld.so.1 + n32 /lib32/ld.so.1 + n64 /lib64/ld.so.1 + # powerpc + ppc /lib/ld.so.1 + ppc64 /lib64/ld64.so.1 + # riscv + lp64d /lib/ld-linux-riscv64-lp64d.so.1 + lp64 /lib/ld-linux-riscv64-lp64.so.1 + # s390 + s390 /lib/ld.so.1 + s390x /lib/ld64.so.1 + # sparc + sparc32 /lib/ld-linux.so.2 + sparc64 /lib64/ld-linux.so.2 + ) + case $(tc-endian) in + little) + ldso_abi_list+=( + # arm + arm64 /lib/ld-linux-aarch64.so.1 + ) + ;; + big) + ldso_abi_list+=( + # arm + arm64 /lib/ld-linux-aarch64_be.so.1 + ) + ;; + esac + if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then + dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib + fi + for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do + ldso_abi=${ldso_abi_list[i]} + has ${ldso_abi} $(get_install_abis) || continue + + ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}" + if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then + dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name} + fi + done + + # With devpts under Linux mounted properly, we do not need the pt_chown + # binary to be setuid. This is because the default owners/perms will be + # exactly what we want. + if ! use suid ; then + find "${ED}" -name pt_chown -exec chmod -s {} + + fi + + ################################################################# + # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY # + # Make sure we install some symlink hacks so that when we build + # a 2nd stage cross-compiler, gcc finds the target system + # headers correctly. See gcc/doc/gccinstall.info + if is_crosscompile ; then + # We need to make sure that /lib and /usr/lib always exists. + # gcc likes to use relative paths to get to its multilibs like + # /usr/lib/../lib64/. So while we don't install any files into + # /usr/lib/, we do need it to exist. + keepdir $(alt_prefix)/lib + keepdir $(alt_prefix)/usr/lib + + dosym usr/include $(alt_prefix)/sys-include + return 0 + fi + + # Files for Debian-style locale updating + dodir /usr/share/i18n + sed \ + -e "/^#/d" \ + -e "/SUPPORTED-LOCALES=/d" \ + -e "s: \\\\::g" -e "s:/: :g" \ + "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \ + || die "generating /usr/share/i18n/SUPPORTED failed" + cd "${WORKDIR}"/extra/locale + dosbin locale-gen + doman *.[0-8] + insinto /etc + doins locale.gen + + # Make sure all the ABI's can find the locales and so we only + # have to generate one set + local a + keepdir /usr/$(get_libdir)/locale + for a in $(get_install_abis) ; do + if [[ ! -e ${ED}/usr/$(get_abi_LIBDIR ${a})/locale ]] ; then + dosym ../$(get_libdir)/locale /usr/$(get_abi_LIBDIR ${a})/locale + fi + done + + # HACK: If we're building for riscv, we need to additionally make sure that + # we can find the locale archive afterwards + case ${CTARGET} in + riscv*) + if [[ ! -e ${ED}/usr/lib/locale ]] ; then + dosym ../$(get_libdir)/locale /usr/lib/locale + fi + ;; + *) ;; + esac + + cd "${S}" + + # Install misc network config files + insinto /etc + doins posix/gai.conf nss/nsswitch.conf + + # Gentoo-specific + newins "${FILESDIR}"/host.conf-1 host.conf + + if use nscd ; then + doins nscd/nscd.conf + + newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd + + local nscd_args=( + -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):" + ) + + sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd + + systemd_dounit nscd/nscd.service + systemd_newtmpfilesd nscd/nscd.tmpfiles nscd.conf + fi + + echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc + doenvd "${T}"/00glibc + + for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do + [[ -s ${d} ]] && dodoc ${d} + done + dodoc -r ChangeLog.old + + # Prevent overwriting of the /etc/localtime symlink. We'll handle the + # creation of the "factory" symlink in pkg_postinst(). + rm -f "${ED}"/etc/localtime + + # Generate all locales if this is a native build as locale generation + if use compile-locales && ! is_crosscompile ; then + run_locale_gen --inplace-glibc "${ED}/" + sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die + fi +} + +glibc_headers_install() { + local builddir=$(builddir "headers") + cd "${builddir}" + emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers + + insinto $(alt_headers)/gnu + doins "${S}"/include/gnu/stubs.h + + # Make sure we install the sys-include symlink so that when + # we build a 2nd stage cross-compiler, gcc finds the target + # system headers correctly. See gcc/doc/gccinstall.info + dosym usr/include $(alt_prefix)/sys-include +} + +src_install() { + if just_headers ; then + export ABI=default + glibc_headers_install + return + fi + + foreach_abi glibc_do_src_install + + if ! use static-libs ; then + elog "Not installing static glibc libraries" + find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete + fi +} + +# Simple test to make sure our new glibc isn't completely broken. +# Make sure we don't test with statically built binaries since +# they will fail. Also, skip if this glibc is a cross compiler. +# +# If coreutils is built with USE=multicall, some of these files +# will just be wrapper scripts, not actual ELFs we can test. +glibc_sanity_check() { + cd / #228809 + + # We enter ${ED} so to avoid trouble if the path contains + # special characters; for instance if the path contains the + # colon character (:), then the linker will try to split it + # and look for the libraries in an unexpected place. This can + # lead to unsafe code execution if the generated prefix is + # within a world-writable directory. + # (e.g. /var/tmp/portage:${HOSTNAME}) + pushd "${ED}"/$(get_libdir) >/dev/null + + local x striptest + for x in cal date env free ls true uname uptime ; do + x=$(type -p ${x}) + [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue + striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue + case ${striptest} in + *"statically linked"*) continue;; + *"ASCII text"*) continue;; + esac + # We need to clear the locale settings as the upgrade might want + # incompatible locale data. This test is not for verifying that. + LC_ALL=C \ + ./ld-*.so --library-path . ${x} > /dev/null \ + || die "simple run test (${x}) failed" + done + + popd >/dev/null +} + +pkg_preinst() { + # nothing to do if just installing headers + just_headers && return + + # prepare /etc/ld.so.conf.d/ for files + mkdir -p "${EROOT}"/etc/ld.so.conf.d + + # Default /etc/hosts.conf:multi to on for systems with small dbs. + if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then + sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf + einfo "Defaulting /etc/host.conf:multi to on" + fi + + [[ -n ${ROOT} ]] && return 0 + [[ -d ${ED}/$(get_libdir) ]] || return 0 + [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check +} + +pkg_postinst() { + # nothing to do if just installing headers + just_headers && return + + if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then + # Generate fastloading iconv module configuration file. + "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/" + fi + + if ! is_crosscompile && [[ -z ${ROOT} ]] ; then + use compile-locales || run_locale_gen "${EROOT}/" + fi + + # Check for sanity of /etc/nsswitch.conf, take 2 + if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then + local entry + for entry in passwd group shadow; do + if egrep -q "^[ \t]*${entry}:.*nis" "${EROOT}"/etc/nsswitch.conf; then + ewarn "" + ewarn "Your ${EROOT}/etc/nsswitch.conf uses NIS. Support for that has been" + ewarn "removed from glibc and is now provided by the package" + ewarn " sys-auth/libnss-nis" + ewarn "Install it now to keep your NIS setup working." + ewarn "" + fi + done + fi +} diff --git a/sys-libs/glibc/glibc-2.32-r1.ebuild b/sys-libs/glibc/glibc-2.32-r1.ebuild index b51024529ad6..18d94a7b0ef0 100644 --- a/sys-libs/glibc/glibc-2.32-r1.ebuild +++ b/sys-libs/glibc/glibc-2.32-r1.ebuild @@ -302,7 +302,7 @@ setup_target_flags() { # The mips abi cannot support the GNU style hashes. #233233 filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both ;; - ppc) + 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 diff --git a/sys-libs/glibc/glibc-2.32.ebuild b/sys-libs/glibc/glibc-2.32.ebuild index 062f5445621b..bf2ba5df8529 100644 --- a/sys-libs/glibc/glibc-2.32.ebuild +++ b/sys-libs/glibc/glibc-2.32.ebuild @@ -301,7 +301,7 @@ setup_target_flags() { # The mips abi cannot support the GNU style hashes. #233233 filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both ;; - ppc) + 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 diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild index 13ff94e526a8..643e0b3883cd 100644 --- a/sys-libs/glibc/glibc-9999.ebuild +++ b/sys-libs/glibc/glibc-9999.ebuild @@ -117,13 +117,13 @@ RESTRICT="!test? ( test )" if [[ ${CATEGORY} == cross-* ]] ; then BDEPEND+=" !headers-only? ( - >=${CATEGORY}/binutils-2.24 + >=${CATEGORY}/binutils-2.27 >=${CATEGORY}/gcc-6 )" [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers" else BDEPEND+=" - >=sys-devel/binutils-2.24 + >=sys-devel/binutils-2.27 >=sys-devel/gcc-6 " DEPEND+=" virtual/os-headers " @@ -302,7 +302,7 @@ setup_target_flags() { # The mips abi cannot support the GNU style hashes. #233233 filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both ;; - ppc) + 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 diff --git a/sys-libs/gwenhywfar/Manifest b/sys-libs/gwenhywfar/Manifest index 73b8de7c4b5e..61ad5a83cc3c 100644 --- a/sys-libs/gwenhywfar/Manifest +++ b/sys-libs/gwenhywfar/Manifest @@ -1,3 +1,3 @@ DIST gwenhywfar-5.1.2.tar.gz 2354910 BLAKE2B e73519d33da9268f90ae2924b177c4ef684c9d991faa1f788f8c30ea669fa27d645481e6e41673b22d2796376aaab9cec72de6874b89c2fe141102cfbac2d2e4 SHA512 20374ed6c134b310f375eb286d83bf6074e397e3c6e22b0370d06fb870b9506f171a9276cad9a809331d8917e3bca1eca30a5d5776818ca7f5b06100474a7e0f EBUILD gwenhywfar-5.1.2.ebuild 2783 BLAKE2B af1f16ea97f1fc19ab3185369a375896e24b198d97e338319da2011c29e31a261db331e8463a1df7a24828e258145c79880a96fddd84770fe177498ccc77f35e SHA512 50dc4ee66df60b5ddd339262f0d2d66a409609ea4dded49e1092eb0bfa23006fe05319eb3080ff99e2283493904c1282c6532632640c4e671f688f9c1cebed24 -MISC metadata.xml 691 BLAKE2B 9130a34b5011ee2a5b446794a036961e6e83e3083ba580a4d77da2686d9cc75620f0b38cc21d5c4014361d698cf4ff24084ae93b46cdecaaf1e7c522d4f5d3d4 SHA512 3eb26d730501a60512fca15ea05d27e9c74bd020961b09c406837cc2de8558b6abca63336857c0206c41825101afa9f3eef91280afbd7147733cb811e5469213 +MISC metadata.xml 642 BLAKE2B 42a9becdbbea5b2bc7a0bf9a907f1bbdf63ca4eb18fdd5fc73ba8f1b5605fd253442f16ed117a3b69b3bceb191440555d7dabc5289d83ac01cd2aca8502b17e6 SHA512 b0bae0cc2d3a50d04cceeed41ab51b25aa591f29ef14e62093b5bfc7724271dc5f3e23b1412b93e1b186fdd7c8cc2aff99975dcdaa33929e55b0e2f9178ed306 diff --git a/sys-libs/gwenhywfar/metadata.xml b/sys-libs/gwenhywfar/metadata.xml index 762819655dde..dbdb950a22e6 100644 --- a/sys-libs/gwenhywfar/metadata.xml +++ b/sys-libs/gwenhywfar/metadata.xml @@ -1,9 +1,7 @@ - - hanno@gentoo.org - + Build plugins for dev-qt/designer Use x11-libs/fox graphical toolkit diff --git a/sys-libs/libcap-ng/Manifest b/sys-libs/libcap-ng/Manifest index 8f00b2c065fc..50fa71c9bcd0 100644 --- a/sys-libs/libcap-ng/Manifest +++ b/sys-libs/libcap-ng/Manifest @@ -1,5 +1,7 @@ DIST libcap-ng-0.7.10.tar.gz 450243 BLAKE2B 8eb21b0309e46b05fa42752b9c814d90bc1eda4852ac7a4975868c279764431a8d5eafc53e50998470f622e2a59e2b4c6c2ac1ac20525c6fcd0633b09b113012 SHA512 1b93c7f5c20ae5cc705fe5244af3e299454e988388cda95f006e248d97c0713e77da2a81c67ecf15755f3958df373fc6d1ca14197d6357ab1f2d8c3a0fd12def DIST libcap-ng-0.7.11.tar.gz 450541 BLAKE2B 66217f7fb9e3b3876ada6f355a2b69f16fda4ab3ab490e524358c4120583280ce6497770ec6452596426594b877d79c0e03db10d6413c1cf20bd01e996f7347b SHA512 150c4f48d7334966aa7af683e46bc3b8b4d4a2e80be826e6f6a61a0ea0666e2f4dafcd012c536fa321c4954c00059c689cc8d6dc089000ca1dca2fd52e3efe9c +DIST libcap-ng-0.8.tar.gz 453181 BLAKE2B 8f4b2e13e5c2c21f1ac1455ebdaf04b42e07fa79d9026651f41eab041cdf99bd40d91b8ce2262e58bc2de3e2a793f676df8c69d832ccadfa4b486ebefeb4b128 SHA512 d410d66f46ad25765f35ffac17e0d36740329c334c6535d55a13fa218718a750763b7ad4610efa47efe7c256c143ead7dde7d37a29e99cb5c55161f577c40bb2 EBUILD libcap-ng-0.7.10.ebuild 2051 BLAKE2B 0af271d6ac33450aea40a2a30babe0aa35944ae805a7ce19cb68811aaa37d2232ae661d43206c7ada85f41e97ade23d502e7fe572981ced38555bbc5337ff0e9 SHA512 67c4fe214505c9be91fdcf3b71962619533669ec1383d23391d96b8d9624201bd18096fea674aee55f6ab34a7e8a32a61c96ef5282e59de2ac29c566f523dea4 EBUILD libcap-ng-0.7.11.ebuild 2059 BLAKE2B 1449b5306be6edf0ff31c2065ee8752be4404e85cd00c43a30e9ee7f40f5e188cda77119b201683b49d26abfbd83dd62b38067d2dacb23f9c30735a4fb776a14 SHA512 31618b5b583ae3bdb8025dcb706abdda819f965c59a993de0acd2c81ad905754151db3a23dc519f73c2aa9d4a92ec094a17b57e4cd10c8bdaca451de4ef4dacc +EBUILD libcap-ng-0.8.ebuild 2059 BLAKE2B 1449b5306be6edf0ff31c2065ee8752be4404e85cd00c43a30e9ee7f40f5e188cda77119b201683b49d26abfbd83dd62b38067d2dacb23f9c30735a4fb776a14 SHA512 31618b5b583ae3bdb8025dcb706abdda819f965c59a993de0acd2c81ad905754151db3a23dc519f73c2aa9d4a92ec094a17b57e4cd10c8bdaca451de4ef4dacc MISC metadata.xml 673 BLAKE2B f4890411426cd85bc65373e34f5e1c2b5b294ee6774b8af47cb8effcb4d5730772fee52bcf0fdd477f56b412b1918214467cc0afc3f13b56098d45a98009ce4d SHA512 8f15beccf0bed144b7cceb7699e9e90e05bca2b0fa2bc198dc6cdc5af95f57c9fb07c9049d5b7229b2ec71b945cee3b20210874ebb030566caee850d50980d95 diff --git a/sys-libs/libcap-ng/libcap-ng-0.8.ebuild b/sys-libs/libcap-ng/libcap-ng-0.8.ebuild new file mode 100644 index 000000000000..846ebcd8aae4 --- /dev/null +++ b/sys-libs/libcap-ng/libcap-ng-0.8.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8} ) + +inherit autotools flag-o-matic python-r1 + +DESCRIPTION="POSIX 1003.1e capabilities" +HOMEPAGE="https://people.redhat.com/sgrubb/libcap-ng/" +SRC_URI="https://people.redhat.com/sgrubb/${PN}/${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux" +IUSE="python static-libs" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND="python? ( ${PYTHON_DEPS} )" +DEPEND="${RDEPEND} + sys-kernel/linux-headers" +BDEPEND="python? ( >=dev-lang/swig-2 )" + +src_prepare() { + default + if use prefix ; then + sed -i "s@cat /usr@cat ${EPREFIX}/usr@" bindings/python*/Makefile.am || die + eautomake #668722 + fi +} + +src_configure() { + use sparc && replace-flags -O? -O0 + + local ECONF_SOURCE="${S}" + + local myconf=( + $(use_enable static-libs static) + ) + + local pythonconf=( --without-python --without-python3 ) + + # set up python bindings build(s) + if use python ; then + setup_python_flags_configure() { + pythonconf=( --without-python --with-python3 ) + run_in_build_dir econf "${pythonconf[@]}" "${myconf[@]}" + } + + python_foreach_impl setup_python_flags_configure + else + local BUILD_DIR=${WORKDIR}/build + run_in_build_dir econf "${pythonconf[@]}" "${myconf[@]}" + fi +} + +src_compile() { + if use python; then + python_foreach_impl run_in_build_dir emake + else + local BUILD_DIR=${WORKDIR}/build + emake -C "${BUILD_DIR}" + fi +} + +src_test() { + if [[ "${EUID}" -eq 0 ]]; then + ewarn "Skipping tests due to root permissions." + return + fi + + if use python; then + python_foreach_impl run_in_build_dir emake check + else + local BUILD_DIR=${WORKDIR}/build + emake -C "${BUILD_DIR}" check + fi +} + +src_install() { + if use python; then + python_foreach_impl run_in_build_dir emake DESTDIR="${D}" install + else + local BUILD_DIR=${WORKDIR}/build + emake -C "${BUILD_DIR}" DESTDIR="${D}" install + fi + find "${ED}" -name '*.la' -delete || die +} diff --git a/sys-libs/libcap/Manifest b/sys-libs/libcap/Manifest index 57ae8eeca760..fe930b53ee37 100644 --- a/sys-libs/libcap/Manifest +++ b/sys-libs/libcap/Manifest @@ -14,5 +14,5 @@ EBUILD libcap-2.26-r2.ebuild 2064 BLAKE2B aa5abfd36287b9c97d2d738b7ee22c79861a65 EBUILD libcap-2.27.ebuild 2073 BLAKE2B 97374abb2a068288ec1456020d3896bf59ef358715b749e8fd01c6dab55001944f658623aef58b1415cdb434d441728f0b3c264034d6e71850919c71f0f6a29f SHA512 e76a058c37dd0f4eeae4efebba9f92c4c0f3a8cf924a461870795d6405b832124e79031f3f3e4723eca749cdd8795ec9aa022ca257f10b1d7df3d31912983d46 EBUILD libcap-2.41.ebuild 2181 BLAKE2B 74eddd214dab22c022b4ef8c9947651f7aa18b758956f8d00399c9e7ac8b4a84502f4e236a43d542bfa234a8b084608e4dba875b5bb9277dcb85f273015657bd SHA512 6da0c74cd79261791e0b46f5baf5c46ae068e72a0c0ea831acabf5f37af4e9b7d83387468603fea7f6549aa91ae3aae7e2efaf05a36e580505892695f640713d EBUILD libcap-2.42.ebuild 2181 BLAKE2B c9a26f0bea1a14794fa3692057aa7742cd3f4237279b44f941271c94ce57515505141f6f74718730a159e2a801c3cd13ca0a01db2dfff2eeab8c578628adcc43 SHA512 52e5a0b1bdd050b8e55e6380881bcb45697bec2a03bb8d1c39f3200c36c55ff82c736842117a0c3db03ea5164698a50cda610a72fc7e9cecec3d6e718ccc8ed7 -EBUILD libcap-2.43.ebuild 2181 BLAKE2B c9a26f0bea1a14794fa3692057aa7742cd3f4237279b44f941271c94ce57515505141f6f74718730a159e2a801c3cd13ca0a01db2dfff2eeab8c578628adcc43 SHA512 52e5a0b1bdd050b8e55e6380881bcb45697bec2a03bb8d1c39f3200c36c55ff82c736842117a0c3db03ea5164698a50cda610a72fc7e9cecec3d6e718ccc8ed7 +EBUILD libcap-2.43.ebuild 2173 BLAKE2B 6cac09ca73c84400c9ff9693f650faeef0190b4ef2d2a38f0c899131c2c22866184767f9d33337441b845f975e3e2a7d399429e7b0c6fb8c705a695894b608b5 SHA512 b656a7939d7cac0b688bc783dccfd8106d0c8f6b4418210f6bb6c7a05a6097160c84719fb8214973726350f2e5892e349332b72e6e6b13fe2f9c4cbc6c9f51f6 MISC metadata.xml 332 BLAKE2B 2177c836192a85a6d943221da405f7f11f355011767789d81009d5e4d822a203302a946fa1a0ffbc66be6a37a7069aa94a796125fa1dedbdf023762b47f8f614 SHA512 a9887500fd60b72156ac2589b1fefab8dd70b0c03477dd795f147fdc91bbe6fd027b8cf58c3e86cdb6e831368d34b4881cdf0e833af5aee9e7d1a01e90408ae1 diff --git a/sys-libs/libcap/libcap-2.43.ebuild b/sys-libs/libcap/libcap-2.43.ebuild index acba4de6b6cd..802f65af23c8 100644 --- a/sys-libs/libcap/libcap-2.43.ebuild +++ b/sys-libs/libcap/libcap-2.43.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P} # it's available under either of the licenses LICENSE="|| ( GPL-2 BSD )" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" IUSE="pam static-libs" # While the build system optionally uses gperf, we don't DEPEND on it because diff --git a/sys-libs/libchipcard/Manifest b/sys-libs/libchipcard/Manifest index f258df39ddac..5957df56c775 100644 --- a/sys-libs/libchipcard/Manifest +++ b/sys-libs/libchipcard/Manifest @@ -1,3 +1,3 @@ DIST libchipcard-5.1.5rc2.tar.gz 877820 BLAKE2B dfe82e3d6aea26e95e5f69298ea17ad4bb9a1d106cca02a9fc23f5aa5ea338471ae5628248350e01571f4819567da2a0f5a3699d56d8f02ed58971d6ac715abe SHA512 5e86068bd688f72e04073dbd076f21646a6b75d2a7a73c25bba4396e8657c4df28cf5cfb61eef7b243186f8313cea1262e415f2acad5348fa5179b46d7f96ed1 EBUILD libchipcard-5.1.5_rc2.ebuild 1125 BLAKE2B bea1ad33a208fdee22bbe923174b54f01b0ab86611a311f923f84f95e75842bef495faa21fa69b7faf13eed71e6e5ea1bf5f8599d60cdd9f1e05c2e208a08c3a SHA512 f2bb2dc2032dd078a2e78bfaf9ca9d88942689de9a46916daab7bace0a1c740314558798ca26ffbdd7f179ca6e7abd63ea1b9442ecde23ab6317f401a0172f85 -MISC metadata.xml 210 BLAKE2B a547b5e8dbb5d674ce2df4bcc6ee71c3aae3b0c7863c38a66c1fac3cf0f0c16c7bb302264082f345d2da87d0e544d321e6fd8385a16d01620a733a8ab29082a3 SHA512 27fbc849a311e57c8dbad0cae9975d564c03ae8a7b495b2e7a5cd160c6a09c0101e695ba4d2edf07c0d4c4d7329ff9a4bd91656aa685623342883b83bcb9ac0f +MISC metadata.xml 167 BLAKE2B e4dadf27fd344484f2bccb5b904909c89aac568c32e5b3c44bdf139eacefd4b4fae74419f503d2b7da0dccc1b68ba05d777d11292c0f89270d1ac5c9c703e8ca SHA512 7c8decb24ee3a850e38186cf3c7f8933a28017426806870ad6ef9ceb2533be147a2681fc789b535a81cb528af8c29d90d3006e4f250aee23bd7dea4561294e33 diff --git a/sys-libs/libchipcard/metadata.xml b/sys-libs/libchipcard/metadata.xml index 28ef3c7b080f..7a38bb900964 100644 --- a/sys-libs/libchipcard/metadata.xml +++ b/sys-libs/libchipcard/metadata.xml @@ -1,5 +1,5 @@ -hanno@gentoo.org + diff --git a/sys-libs/libhugetlbfs/Manifest b/sys-libs/libhugetlbfs/Manifest index c7fa61c117e1..b8f77f6009dd 100644 --- a/sys-libs/libhugetlbfs/Manifest +++ b/sys-libs/libhugetlbfs/Manifest @@ -1,6 +1,7 @@ +AUX libhugetlbfs-2.23-uncompressed-man-pages.patch 1515 BLAKE2B b43415a3059f1071f0fc04ec834cd51d87a8bd93f2df6b428a33296b1b55745f23861415a463d5899b12699c5f4a3e5bdd837a8ec2894d1fc89039924330d77d SHA512 ea3ef19a688866676315af59422233681a41338fd049cfa50ed91f660f0baf1950ba056b9fcd540e6694b8ec348c0d1fbb3aa6b8c1840e22a77634e26555c9bc AUX libhugetlbfs-2.6-fixup-testsuite.patch 1231 BLAKE2B e49ac448b4ac17a6ce9c32543e3ad7391bc8525e147d7a5100ef7ae15e4b0cf48b58ff1fe62d9a0fa61f142b7b8366228974c6628999edaa61d96114371bc09d SHA512 af9ee541ac4a30260e17baab1616cee13fdcc679ae3fdceed29ca6282c12a6b60d24b04bb61e3aa5f42092e017eb3bae59a56fd2b03954e40803f9f6f2cc4f80 -DIST libhugetlbfs-2.21.tar.gz 173052 BLAKE2B a65fdeee3ed9ad8cb69f772847646befbf5deef0b82d6cb7338e5ff448d5c2461ceb1e381b9515e79f4243482589bb0203874cc52e5c8c6d98667df4eacffa8b SHA512 87fd95a826bedc2c53b1aa440f5db7ff3ece482d520545b597d4d1231cf84276103c312899b812166872444331bc7b6f1692f0d3b7cbff691efdcf9c2e99b1d0 DIST libhugetlbfs-2.22.tar.gz 175099 BLAKE2B e67a6a678065b10492d510b733b7c6e2926f4f01dd741d49f6e76cedde002fa81d7dad6a6fd8922443c6aacd527c9b3df35f84b8da7332c04e3fcf8c52e23084 SHA512 7f38f9fa576841f36c7cd5192a9ee3f79b275b7b64d7e2a838a43636489cf88627bdba3a045d6b3302a4a509cf64627972b569b4c2c3c4fe05d5aa4ae1d66fd8 -EBUILD libhugetlbfs-2.21.ebuild 4061 BLAKE2B 93e5777e62c7002285854bda8e2f6b7560ef4a2a00347407bee21d0bbba46ed4e9b0d21f5b054c65a05564271c5a39efd1989131735eac257dec270c8a8bf4a0 SHA512 19b644e0e4c67417ca4e3e3c8da804f00efecb13a68f241eaafc869183c1512e96099fbc6b528cf87484119d6e31cdd692ccd9b90d16e87dd551574a5a5ef753 -EBUILD libhugetlbfs-2.22.ebuild 4147 BLAKE2B 24cda5809fe5c341f5db4edc76d5fb22076a9f15746de30b101f1bbf15e0b2539546ee17969b16dcf6a7e8e93a18d3a9353eac5ea17bce6b72cb75570971f697 SHA512 27e6859a338099acf6437411c6ba51ba294ea0e8ab4abddb120b76dbb1abea23d571ce84e8f30ec71564a32b1cd175c8434f1b057e278da8671b24bdbff10c1f +DIST libhugetlbfs-2.23.tar.gz 175459 BLAKE2B f469ff9a65364e9f0e04c11c8010c958855ebd4d50e1dd719576cda7c280586623404304be64a794907a5fb1d97bd9c0620a91d7a2492577e04fa40ff432b4c7 SHA512 fc9a7d59bcda9d3ca9c9e43a3a348f989c9cbdbbb77f21a43a06e71eacd05bbe5a7b2b51e20ae9ea00da9f1c4d1130da529bbfb702e8c9d11cab6efadd3dc168 +EBUILD libhugetlbfs-2.22.ebuild 4151 BLAKE2B 2c3b3a749a70b4f7948c0ba9accf6e8925e68ed7a47632253a915a8d5f49c3523b29cad91495c504c8ea8d32f7908e6bb8e87bb29a7211c1bd5562dd3b9f36aa SHA512 b721f102e9098219a14cbe46c8dc10ec74bf99c9eddfc21d4921d1bf88627ea6da885bc31eca32bbda09e9e54c2b219f0725fd4041f0b88b5c573a28fec892b7 +EBUILD libhugetlbfs-2.23.ebuild 4206 BLAKE2B 7c5644df49b210f4adabdf72e8f3c7c9a693107049072a0df4c694ac11ef0dfd506d7a5c6033f6c78942b0ce15bad3a73c99f9c4919fb8c3c203bf29b25a5547 SHA512 fe71f4b377678d433e966b8d791b9fc0669c9ff7916ff470113af8e6e97ccb545bc6b681ba4de48743d311eb7020b06b2bb92145919d08057674add9399112b8 MISC metadata.xml 396 BLAKE2B 261776d0894dc66459b99826ce4721148b0916cacca7fa4cadf70eef720c19a0d8fbd9e3a5e63323ba98778843e715e3e493645de701f2276259ebfaa6ae9e87 SHA512 95adcf5f0a47473f679d37ba1a6559b45681f288f7c4c70a8b9dd18c67eab3b4c222df996c3eb83d1317aa9a8a2710dc788ebc23e1255713ed81db33f57df3b8 diff --git a/sys-libs/libhugetlbfs/files/libhugetlbfs-2.23-uncompressed-man-pages.patch b/sys-libs/libhugetlbfs/files/libhugetlbfs-2.23-uncompressed-man-pages.patch new file mode 100644 index 000000000000..c0ca6a398e70 --- /dev/null +++ b/sys-libs/libhugetlbfs/files/libhugetlbfs-2.23-uncompressed-man-pages.patch @@ -0,0 +1,34 @@ +--- a/Makefile ++++ b/Makefile +@@ -436,27 +436,19 @@ install-man: + $(INSTALL) -d $(DESTDIR)$(MANDIR8) + for x in $(INSTALL_MAN1); do \ + $(INSTALL) -m 444 man/$$x $(DESTDIR)$(MANDIR1); \ +- gzip -f $(DESTDIR)$(MANDIR1)/$$x; \ + done + for x in $(INSTALL_MAN3); do \ + $(INSTALL) -m 444 man/$$x $(DESTDIR)$(MANDIR3); \ +- gzip -f $(DESTDIR)$(MANDIR3)/$$x; \ + done +- rm -f $(DESTDIR)$(MANDIR3)/free_huge_pages.3.gz +- rm -f $(DESTDIR)$(MANDIR3)/free_hugepage_region.3.gz +- rm -f $(DESTDIR)$(MANDIR3)/hugetlbfs_unlinked_fd_for_size.3.gz +- rm -f $(DESTDIR)$(MANDIR3)/hugetlbfs_find_path_for_size.3.gz +- ln -s get_huge_pages.3.gz $(DESTDIR)$(MANDIR3)/free_huge_pages.3.gz +- ln -s get_hugepage_region.3.gz $(DESTDIR)$(MANDIR3)/free_hugepage_region.3.gz +- ln -s hugetlbfs_unlinked_fd.3.gz $(DESTDIR)$(MANDIR3)/hugetlbfs_unlinked_fd_for_size.3.gz +- ln -s hugetlbfs_find_path.3.gz $(DESTDIR)$(MANDIR3)/hugetlbfs_find_path_for_size.3.gz ++ ln -s get_huge_pages.3 $(DESTDIR)$(MANDIR3)/free_huge_pages.3 ++ ln -s get_hugepage_region.3 $(DESTDIR)$(MANDIR3)/free_hugepage_region.3 ++ ln -s hugetlbfs_unlinked_fd.3 $(DESTDIR)$(MANDIR3)/hugetlbfs_unlinked_fd_for_size.3 ++ ln -s hugetlbfs_find_path.3 $(DESTDIR)$(MANDIR3)/hugetlbfs_find_path_for_size.3 + for x in $(INSTALL_MAN7); do \ + $(INSTALL) -m 444 man/$$x $(DESTDIR)$(MANDIR7); \ +- gzip -f $(DESTDIR)$(MANDIR7)/$$x; \ + done + for x in $(INSTALL_MAN8); do \ + $(INSTALL) -m 444 man/$$x $(DESTDIR)$(MANDIR8); \ +- gzip -f $(DESTDIR)$(MANDIR8)/$$x; \ + done + + install-bin: diff --git a/sys-libs/libhugetlbfs/libhugetlbfs-2.21.ebuild b/sys-libs/libhugetlbfs/libhugetlbfs-2.21.ebuild deleted file mode 100644 index 8afaeb6120b1..000000000000 --- a/sys-libs/libhugetlbfs/libhugetlbfs-2.21.ebuild +++ /dev/null @@ -1,158 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) - -inherit multilib toolchain-funcs python-any-r1 - -DESCRIPTION="easy hugepage access" -HOMEPAGE="https://github.com/libhugetlbfs/libhugetlbfs" -SRC_URI="https://github.com/libhugetlbfs/libhugetlbfs/archive/${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~s390 ~x86" -IUSE="static-libs test" -RESTRICT="!test? ( test )" - -DEPEND="test? ( ${PYTHON_DEPS} )" - -PATCHES=( - "${FILESDIR}"/${PN}-2.6-fixup-testsuite.patch -) - -src_prepare() { - default - sed -i \ - -e '/^PREFIX/s:/local::' \ - -e '1iBUILDTYPE = NATIVEONLY' \ - -e '1iV = 1' \ - -e '/gzip.*MANDIR/d' \ - -e "/^LIB\(32\)/s:=.*:= $(get_libdir):" \ - -e '/^CC\(32\|64\)/s:=.*:= $(CC):' \ - -e 's@^\(ARCH\) ?=@\1 =@' \ - Makefile || die "sed failed" - if [ "$(get_libdir)" == "lib64" ]; then - sed -i \ - -e "/^LIB\(32\)/s:=.*:= lib32:" \ - Makefile - fi - - # Tarballs from github don't have the version set. - # https://github.com/libhugetlbfs/libhugetlbfs/issues/7 - [[ -f version ]] || echo "${PV}" > version -} - -src_compile() { - tc-export AR - emake CC="$(tc-getCC)" libs tools -} - -src_install() { - default - use static-libs || rm -f "${ED%/}"/usr/$(get_libdir)/*.a -} - -src_test_alloc_one() { - hugeadm="$1" - sign="$2" - pagesize="$3" - pagecount="$4" - ${hugeadm} \ - --pool-pages-max ${pagesize}:${sign}${pagecount} \ - && \ - ${hugeadm} \ - --pool-pages-min ${pagesize}:${sign}${pagecount} - return $? -} - -# die is NOT allowed in this src_test block after the marked point, so that we -# can clean up memory allocation. You'll leak at LEAST 64MiB per run otherwise. -src_test() { - [[ $UID -eq 0 ]] || die "Need FEATURES=-userpriv to run this testsuite" - einfo "Building testsuite" - emake -j1 tests - - hugeadm='obj/hugeadm' - allocated='' - rc=0 - # the testcases need 64MiB per pagesize. - MIN_HUGEPAGE_RAM=$((64*1024*1024)) - - einfo "Planning allocation" - PAGESIZES="$(${hugeadm} --page-sizes-all)" - - # Need to do this before we can create the mountpoints. - for pagesize in ${PAGESIZES} ; do - # The kernel depends on the location :-( - mkdir -p /var/lib/hugetlbfs/pagesize-${pagesize} - addwrite /var/lib/hugetlbfs/pagesize-${pagesize} - done - addwrite /proc/sys/vm/ - addwrite /proc/sys/kernel/shmall - addwrite /proc/sys/kernel/shmmax - addwrite /proc/sys/kernel/shmmni - - einfo "Checking HugeTLB mountpoints" - ${hugeadm} --create-mounts || die "Failed to set up hugetlb mountpoints." - - # ----------------------------------------------------- - # --------- die is unsafe after this point. ----------- - # ----------------------------------------------------- - - einfo "Starting allocation" - for pagesize in ${PAGESIZES} ; do - pagecount=$((${MIN_HUGEPAGE_RAM}/${pagesize})) - einfo " ${pagecount} @ ${pagesize}" - addwrite /var/lib/hugetlbfs/pagesize-${pagesize} - src_test_alloc_one "$hugeadm" "+" "${pagesize}" "${pagecount}" - rc=$? - if [[ $rc -eq 0 ]]; then - allocated="${allocated} ${pagesize}:${pagecount}" - else - eerror "Failed to add ${pagecount} pages of size ${pagesize}" - fi - done - - einfo "Allocation status" - ${hugeadm} --pool-list - - if [[ -n "${allocated}" ]]; then - # All our allocations worked, so time to run. - einfo "Starting tests" - cd "${S}"/tests - TESTOPTS="-t func" - case $ARCH in - amd64|ppc64) - TESTOPTS="${TESTOPTS} -b 64" - ;; - x86) - TESTOPTS="${TESTOPTS} -b 32" - ;; - esac - # This needs a bit of work to give a nice exit code still. - ./run_tests.py ${TESTOPTS} - rc=$? - else - eerror "Failed to make HugeTLB allocations." - rc=1 - fi - - einfo "Cleaning up memory" - cd "${S}" - # Cleanup memory allocation - for alloc in ${allocated} ; do - pagesize="${alloc/:*}" - pagecount="${alloc/*:}" - einfo " ${pagecount} @ ${pagesize}" - src_test_alloc_one "$hugeadm" "-" "${pagesize}" "${pagecount}" - done - - # --------------------------------------------------------- - # --------- die is safe again after this point. ----------- - # --------------------------------------------------------- - - return $rc -} diff --git a/sys-libs/libhugetlbfs/libhugetlbfs-2.22.ebuild b/sys-libs/libhugetlbfs/libhugetlbfs-2.22.ebuild index d0f6b415a629..255bcb160f23 100644 --- a/sys-libs/libhugetlbfs/libhugetlbfs-2.22.ebuild +++ b/sys-libs/libhugetlbfs/libhugetlbfs-2.22.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python3_{6,7} ) +PYTHON_COMPAT=( python3_{6,7,8,9} ) inherit multilib toolchain-funcs python-any-r1 diff --git a/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild b/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild new file mode 100644 index 000000000000..509763949e6a --- /dev/null +++ b/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild @@ -0,0 +1,160 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8,9} ) + +inherit multilib toolchain-funcs python-any-r1 + +DESCRIPTION="easy hugepage access" +HOMEPAGE="https://github.com/libhugetlbfs/libhugetlbfs" +SRC_URI="https://github.com/libhugetlbfs/libhugetlbfs/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~s390 ~x86" +IUSE="static-libs test" +RESTRICT="!test? ( test )" + +DEPEND="test? ( ${PYTHON_DEPS} )" + +PATCHES=( + "${FILESDIR}"/${PN}-2.6-fixup-testsuite.patch + "${FILESDIR}"/${PN}-2.23-uncompressed-man-pages.patch +) + +src_prepare() { + default + sed -i \ + -e '/^PREFIX/s:/local::' \ + -e '1iBUILDTYPE = NATIVEONLY' \ + -e '1iV = 1' \ + -e '/gzip.*MANDIR/d' \ + -e "/^LIB\(32\)/s:=.*:= $(get_libdir):" \ + -e '/^CC\(32\|64\)/s:=.*:= $(CC):' \ + -e 's@^\(ARCH\) ?=@\1 =@' \ + Makefile || die "sed failed" + if [ "$(get_libdir)" == "lib64" ]; then + sed -i \ + -e "/^LIB\(32\)/s:=.*:= lib32:" \ + Makefile + fi + + # Tarballs from github don't have the version set. + # https://github.com/libhugetlbfs/libhugetlbfs/issues/7 + [[ -f version ]] || echo "${PV}" > version +} + +src_compile() { + tc-export AR + emake CC="$(tc-getCC)" libs tools +} + +src_install() { + default + use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.a +} + +src_test_alloc_one() { + hugeadm="$1" + sign="$2" + pagesize="$3" + pagecount="$4" + ${hugeadm} \ + --pool-pages-max ${pagesize}:${sign}${pagecount} \ + && \ + ${hugeadm} \ + --pool-pages-min ${pagesize}:${sign}${pagecount} + return $? +} + +# die is NOT allowed in this src_test block after the marked point, so that we +# can clean up memory allocation. You'll leak at LEAST 64MiB per run otherwise. +src_test() { + [[ $UID -eq 0 ]] || die "Need FEATURES=-userpriv to run this testsuite" + einfo "Building testsuite" + emake -j1 tests + + local hugeadm='obj/hugeadm' + local allocated='' + local rc=0 + # the testcases need 64MiB per pagesize. + local MIN_HUGEPAGE_RAM=$((64*1024*1024)) + + einfo "Planning allocation" + local PAGESIZES="$(${hugeadm} --page-sizes-all)" + + # Need to do this before we can create the mountpoints. + local pagesize pagecount + for pagesize in ${PAGESIZES} ; do + # The kernel depends on the location :-( + mkdir -p /var/lib/hugetlbfs/pagesize-${pagesize} + addwrite /var/lib/hugetlbfs/pagesize-${pagesize} + done + addwrite /proc/sys/vm/ + addwrite /proc/sys/kernel/shmall + addwrite /proc/sys/kernel/shmmax + addwrite /proc/sys/kernel/shmmni + + einfo "Checking HugeTLB mountpoints" + ${hugeadm} --create-mounts || die "Failed to set up hugetlb mountpoints." + + # ----------------------------------------------------- + # --------- die is unsafe after this point. ----------- + # ----------------------------------------------------- + + einfo "Starting allocation" + for pagesize in ${PAGESIZES} ; do + pagecount=$((${MIN_HUGEPAGE_RAM}/${pagesize})) + einfo " ${pagecount} @ ${pagesize}" + addwrite /var/lib/hugetlbfs/pagesize-${pagesize} + src_test_alloc_one "${hugeadm}" "+" "${pagesize}" "${pagecount}" + rc=$? + if [[ ${rc} -eq 0 ]]; then + allocated="${allocated} ${pagesize}:${pagecount}" + else + eerror "Failed to add ${pagecount} pages of size ${pagesize}" + fi + done + + einfo "Allocation status" + ${hugeadm} --pool-list + + if [[ -n "${allocated}" ]]; then + # All our allocations worked, so time to run. + einfo "Starting tests" + cd "${S}"/tests || die + local TESTOPTS="-t func" + case ${ARCH} in + amd64|ppc64) + TESTOPTS="${TESTOPTS} -b 64" + ;; + x86) + TESTOPTS="${TESTOPTS} -b 32" + ;; + esac + # This needs a bit of work to give a nice exit code still. + ./run_tests.py ${TESTOPTS} + rc=$? + else + eerror "Failed to make HugeTLB allocations." + rc=1 + fi + + einfo "Cleaning up memory" + cd "${S}" || die + # Cleanup memory allocation + for alloc in ${allocated} ; do + pagesize="${alloc/:*}" + pagecount="${alloc/*:}" + einfo " ${pagecount} @ ${pagesize}" + src_test_alloc_one "$hugeadm" "-" "${pagesize}" "${pagecount}" + done + + # --------------------------------------------------------- + # --------- die is safe again after this point. ----------- + # --------------------------------------------------------- + + return ${rc} +} diff --git a/sys-libs/libhx/Manifest b/sys-libs/libhx/Manifest index 85665bf4ff15..9db8ea3641b2 100644 --- a/sys-libs/libhx/Manifest +++ b/sys-libs/libhx/Manifest @@ -3,4 +3,4 @@ DIST libHX-3.22.tar.xz 875516 BLAKE2B 1a782834bb792898275ed549eff1b70b3356f9efe7 DIST libHX-3.24.tar.xz 876992 BLAKE2B 518b99e78acc0cb412f444c0dacaae830a853294a0ee549facfbe65a423a9f32d0388e30e255c87c3f5325102bea45e5e9d72d3fce5b89139b689fddcb299f93 SHA512 faf7af53b628efe1531568ccb2b7e9910db833b14583ab1487eb6a554b407a7546bc75348f7d2344c29ab53fd2df061f6f8de8db634bbd62c3672dc4347d27e4 EBUILD libhx-3.22-r1.ebuild 709 BLAKE2B f7a01fb27edd2031018031ac5fb2f6e8598c66b8766661e400bfd90dd2766d1fc953030d4aefa3f2f4cbf844d7a0b9713a56bfd83409ae8913b6f807b9a7d219 SHA512 47abb821f0e087b219f82cfc900727d4548e60ad80c40f852280be5a275943cb55a47dea155ae25d78725d8ef26cca9b4a93825998ead6d4b91c16389859cd0b EBUILD libhx-3.24.ebuild 715 BLAKE2B 7126386f55a104a6c4acb34e37cea593d19abe8c5c2f39e85dd97e64994c6606b1c4c107cb2de5633bb7cb04a589f3f25fc56aac865700cf087a8e6cf3af734b SHA512 21690472f32d85174965638b40a4298592f96ea901a68994e9781d8189eab5a76d79e79721422f326651a9c09eedf47dad1467587ce992545b4035cf6b0f065d -MISC metadata.xml 398 BLAKE2B f72cf11453ffa182e00a8c32e0f1160e2d0ad9f5659ebc76e4139e5494eb3f7e4f5256a7a92e70ebe5b82912a57dd45ca02317557c789958091d2b68a28d884f SHA512 74a2fb87430a3e105fcfdacdbd594f9f64710749760ec4b49f6c7c3fec64f59641c5204b72481d436ae8abd46438b27d04d392ce7d93be68613608909c772fd0 +MISC metadata.xml 321 BLAKE2B 1410ec484da1ae53d0f21c278b0f208b1bc87f179df17afd4bbf3f963b7b1790d818374f31b3b81862e0f95497f9d11193420b1de23f4a7d8364313562e39e10 SHA512 b97b5a7b8c3bc0a90c28a377787b1ee4cf08a969264a22f5637388d7946baf4cd06ad78679c8844f3ec38061b41c2551f53ee77a9d7301b378b273fbb974d277 diff --git a/sys-libs/libhx/metadata.xml b/sys-libs/libhx/metadata.xml index fc0ea3009123..462ecca452b3 100644 --- a/sys-libs/libhx/metadata.xml +++ b/sys-libs/libhx/metadata.xml @@ -1,9 +1,6 @@ - - hanno@gentoo.org - mattst88@gentoo.org Matt Turner diff --git a/sys-libs/libnih/Manifest b/sys-libs/libnih/Manifest index 334756144230..e01cbae34d55 100644 --- a/sys-libs/libnih/Manifest +++ b/sys-libs/libnih/Manifest @@ -6,5 +6,5 @@ AUX libnih-1.0.3-pkg-config.patch 393 BLAKE2B 77ed2af4429624e03e86f00cdb58c015f1 AUX libnih-1.0.3-signal-race.patch 1432 BLAKE2B b08b7356d2fae755fbe45b2a45b4081c9e1b27ab5aa3a1f71a6945ced5048bc587883de5b9181887a8124f4fc025bcbea4e668ae0e93d5b97e56f67788dd42a8 SHA512 5bd1ff4d7774db62cb6f54721c3b30b5fba1f085a69b28da12f85f448efacb6efd0dd9b9b61801ceb3fc94ca1616fb898bdce33e873f9e57486e44f26c063ed5 DIST libnih-1.0.3.tar.gz 1187624 BLAKE2B f8f9fcdda86eabff39de0b0f92cd1f8c1c0eeb0c86ec4970e5bef1cc0dff0fda83db64975ece93d5d8ede5d0613d5f363dd7456c59fe966feb5e61e5b8913627 SHA512 fce40d2445b28c27b8838631681ca3206a4f053b2dd4fc488fc9ef98bbd3d933e3d62b82cf346be2ef1677f6457f692cf5544cd915a6bb1e5c618f98ffa101b4 EBUILD libnih-1.0.3-r3.ebuild 1499 BLAKE2B 81ebd631c031c5f18ca79c582cd582c21b5d605e65976c48f0a75623ed0469bee634387ef976f2c8910ac2365c9944cd9cbd960836704908a4af9c6e62fb113e SHA512 845a2a47d3e193f3c09e5c0486252da24c246dccd409b56d702725995ee1845e719c14fa3ecba6916d2f986aed9762e6f0776792d64206a68af1314a4885fc3d -EBUILD libnih-1.0.3-r4.ebuild 1552 BLAKE2B 21a4741dd091df02a6e156cf515111de2461990b728a01913874b8c594d27f8d3968f8b5b1e0716047124ca0253a9597a50575558ee475bdba7c2c442a31e54d SHA512 f2aea977ec4fd90692122468bd41352aacafab31c499bda5c95c0565b436d5842965793b86ccc78186f0254a05af5deb987f477bc9c64f5034e00829f55e4306 +EBUILD libnih-1.0.3-r4.ebuild 1551 BLAKE2B 4f352a444139073cb924c5bebb7abeabc1661cda7a2fd00eb09db61c17a25d49dcf00baa5a7ab3ab4e9d6aade9b00dd1b131beb4cc891dddcc05bca3e0c49d99 SHA512 4a6608e5f9fd731b4c35d9bc8f26f5d66fba49dd61cbbbbc5831d1190fdeca578a0604a7d01000068634cb366474ab3acb15cd0599a9745b1e1a17cb66c5aa57 MISC metadata.xml 241 BLAKE2B 02f7c7b912751df8725055416a093647e79dfdbf7f06c9f56246c67f6a1176997454dd3aaaa493ecf7d00d8ae295066e2861ac10bee860a94eef6085437561af SHA512 31e21c0bed310c4a025385f24c5b76f2e588999912fa548ca343947d95ad448b3a1232211cd4427607550c0f5de2e562e2b4e492415b6d207c954a516b811a84 diff --git a/sys-libs/libnih/libnih-1.0.3-r4.ebuild b/sys-libs/libnih/libnih-1.0.3-r4.ebuild index 4453646be49d..03155daef1ee 100644 --- a/sys-libs/libnih/libnih-1.0.3-r4.ebuild +++ b/sys-libs/libnih/libnih-1.0.3-r4.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://launchpad.net/${PN}/$(ver_cut 1-2)/${PV}/+download/${P}.tar.gz" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc ~x86" IUSE="+dbus nls static-libs +threads" # The configure phase will check for valgrind headers, and the tests will use diff --git a/sys-libs/libseccomp/Manifest b/sys-libs/libseccomp/Manifest index a168a9595a70..75ce5573d1c4 100644 --- a/sys-libs/libseccomp/Manifest +++ b/sys-libs/libseccomp/Manifest @@ -1,6 +1,8 @@ DIST libseccomp-2.4.3.tar.gz 598147 BLAKE2B 272c9f1ca7e4059790f633a79cae8612831aa483d28630fb85b31dc2be0192907a8897819d835b61324e0b3fb0d77b8781e2a85e9750ef8d7974d8680b8cdea3 SHA512 7b7af2e98493243ffe1934fefff5723b24ae9b9bdc4bf039343ee8456c15acb0ea34e81ec292a41143848272aeca794ef92ad38fc3f42c77465170cb540479ef +DIST libseccomp-2.4.4.tar.gz 604420 BLAKE2B 04a2e22996d94f2525c1f4a890f325e7c75abb7ac84928a1ffde5e4cc569ef6355fcda8415e0c9937139e187f458602714cfd042008de74637c7bf30e9bd58e2 SHA512 53e5aa338a1c30ce826551e33be6ef877af43b1d8cfd2e1b6ffb70789eb2070d2610fb7cb5cec4a3a4c4a1221767f867f3d2bc07b6b1d9742719b1e053630b24 DIST libseccomp-2.5.0.tar.gz 638793 BLAKE2B c1f30624e210d632175b734c49411ee3f95e8f0ee68819ad83a342434231baef10c292f23fca0127394365a37efb043f9f24ade9534deecd61f50e7111a6fbc8 SHA512 00ef5aeb4db8dafb546ae680b2d6d9b6aeed008df805d0f28f9dd15c074ff6ea7a5e5131ab503825b8011c59aa23046baedd5849ca040aa73352f43ab2d602ae EBUILD libseccomp-2.4.3.ebuild 1032 BLAKE2B 3f2942ea4f43382a14eb139cb56b04d8dec31c9869ca21f5acc2114b647e15187348e42c60c0e5beb14e8827cff9a9c29072081cd5f5053f1dd023f9b5861046 SHA512 3baa16f3d3e6e0f897285a5243d8eef410d664bcd913e203b534bbfe978d9c351f4d5cfebff4975734e73ec5cf9b5a34d67a5ccbe7fe9365ea60d72d7ab08cb7 +EBUILD libseccomp-2.4.4.ebuild 1040 BLAKE2B 3b47fe8281da898943b0c8886e38e35330df9f32a1253c5f5b8fc632ba999654bad4182a0ab4c2d4d30e004c95064cfbea729eebb5bc8a59a4cfffe920ac28f8 SHA512 88a050dcf1d36b223465e417f3764237ea8f6c7226e6661288ffb0d5c3c9e85307373d8ac13864553a1b7e736a20e0e3f0120b7ec5c23f83d435d4cb7a32c2f8 EBUILD libseccomp-2.5.0.ebuild 1949 BLAKE2B ebbc4dcc9e29f097b552f5f2d408e4fb9217ba979e75592fb787c70606e14a312c0e181aedb0250261e66bd11724993c5943d2951ebf49a9aab58f420e020bcf SHA512 0b61000ce9a7cde9b0ac55c8c01f0f65eb4b012e7f4b5e76287b38105d330fecf7c12909ad720c6483b93c86ba7993531155152166e22f4897169ca737735fca EBUILD libseccomp-9999.ebuild 1949 BLAKE2B ebbc4dcc9e29f097b552f5f2d408e4fb9217ba979e75592fb787c70606e14a312c0e181aedb0250261e66bd11724993c5943d2951ebf49a9aab58f420e020bcf SHA512 0b61000ce9a7cde9b0ac55c8c01f0f65eb4b012e7f4b5e76287b38105d330fecf7c12909ad720c6483b93c86ba7993531155152166e22f4897169ca737735fca MISC metadata.xml 468 BLAKE2B f09a751736d4f5f5b5d1cacfbbce2280f2c07f2a435882e833ecd0db3f363ae9e4e7aafaea23d21946279fef27a55d93af9549d75a5f929d6a965dc82f53cfb6 SHA512 3fb402831ab2522948f9514cf0dfad2ed1b035c773eeadb78d958766b92b480b1fb55a274e0990f1913b5be5e4c7de734f8f691f4b3c111949f68f604fb3edc9 diff --git a/sys-libs/libseccomp/libseccomp-2.4.4.ebuild b/sys-libs/libseccomp/libseccomp-2.4.4.ebuild new file mode 100644 index 000000000000..5224cb3571a8 --- /dev/null +++ b/sys-libs/libseccomp/libseccomp-2.4.4.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# TODO: Add python support. + +EAPI=7 + +inherit multilib-minimal + +DESCRIPTION="high level interface to Linux seccomp filter" +HOMEPAGE="https://github.com/seccomp/libseccomp" +SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0" +KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~s390 ~x86 ~amd64-linux ~x86-linux" +IUSE="static-libs" + +# We need newer kernel headers; we don't keep strict control of the exact +# version here, just be safe and pull in the latest stable ones. #551248 +DEPEND=">=sys-kernel/linux-headers-4.3" + +src_prepare() { + default + sed -i \ + -e '/_LDFLAGS/s:-static::' \ + tools/Makefile.in || die +} + +multilib_src_configure() { + local myeconfargs=( + $(use_enable static-libs static) + --disable-python + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_install_all() { + find "${ED}" -type f -name "${PN}.la" -delete || die + einstalldocs +} diff --git a/sys-libs/libselinux/Manifest b/sys-libs/libselinux/Manifest index 69f29ca751f7..e9bb9b4fc4ad 100644 --- a/sys-libs/libselinux/Manifest +++ b/sys-libs/libselinux/Manifest @@ -1,7 +1,9 @@ AUX 0001-libselinux-Use-Python-distutils-to-install-SELinux-p.patch 8172 BLAKE2B 3c301b206a809311fd7eb1eb35b3925c064731146e35702b7dab5b47f41cb2a61723db7243d67caf4ce317f3b4ca2d1a999b0533e0185c44b2892e72d8cf8bb0 SHA512 287e82b5888f973bc3545b1777d9baa33965fb2bb3810834871b6843b163d11e4dacde9a7361088f715f70947e9087de89331b0b35dec1e37bddd523e5a12c1b DIST libselinux-2.9.tar.gz 211546 BLAKE2B 5b06b922690e48924865c98ed34ebfc1ce5e30e78dbeaccb6b9c931a35bed113c030f8f8575084429fe13b91aeafc73abaa24fe609a17ba54c8472d783f6ac61 SHA512 727b211d09f374d45aa3fa4dec7fd5463dfdcf5aaa47f7fcaccee51fb74896c3aa1a6f0bac9cdd47ebe4929effff13f66f5f70447b27b783dca5f7b1576d30d0 DIST libselinux-3.0.tar.gz 212096 BLAKE2B 7502c77243928adfc445f55357b0e894087859c3a83e2beb446c31818362d10111c3e52b970150638c055f96cccca6fccde79440026201a2a48bfda3565c27d3 SHA512 6fd8c3711e25cb1363232e484268609b71d823975537b3863e403836222eba026abce8ca198f64dba6f4c1ea4deb7ecef68a0397b9656a67b363e4d74409cd95 +DIST libselinux-3.1.tar.gz 204703 BLAKE2B 72ff2d99dd6640405e804f58bdfbf05e152615ea92f902b3942602af13dc17080afeabb942ed33ae6b3f528870f4b11584e533848e455a97bf8f7151a8d44646 SHA512 57730cddd2d4751556d9e1f207c0f85119c81848f0620c16239e997150989e3f9a586a8c23861fd51ed89f7e084ad441190a58a288258a49a95f7beef7dbbb13 EBUILD libselinux-2.9-r1.ebuild 4245 BLAKE2B b0e9aeb008f9a1d8e0cb540960020a5627ff1c2b9f65142fdcf0ad97b84fee1cdfc3b194a9af9f9a934c41a79e0a50506536ad91be14e9ab34a59f01b2e23a5e SHA512 1dcaa430921c721a9d390dca4152124d6f794cc954d0314780ca5d7c7769e1c16e98a02c40e6485b5136f993145e19fdd3036833b3912e8a07b03b7196e62c60 EBUILD libselinux-3.0.ebuild 4215 BLAKE2B 09618d2fec347866b6bff952aa543a097ac5e183eca36ca7bcb338da8003a66a2b57e3cb12fe789639f7205ec630584dae67b0aaf58f20436efa10419ce3110a SHA512 90fad4e56ba9c1a511ddef1b76374be8adec12c4d3c72d2c44712485eb0f4982710978a3894e314eadff60d070009a48906eab1f29181b55ede7f0dfd58bab6f -EBUILD libselinux-9999.ebuild 4217 BLAKE2B 33f9d5e630e6b88e9810abc8248b8fa69e96bd5785fcf98b3dffb4147f5514320e4ab46115b49490d0eb32b42268b291bed0f7355694a6c6a1aff28164b54526 SHA512 f172dbb42d65fda9391519642acae80b31a76f25541fc6f48559d108e658b06d1536363207b83677c347756ff774d388eb3d4fca94bb25364fb9d9ece3581257 +EBUILD libselinux-3.1.ebuild 4217 BLAKE2B f624a303a3fb05d27b55cb216363eb277e885e83e84d981dea855583f51c9be011ab6b1cad0774a11f093a791d9e02cf09a35878af68a272d9c50c44a052728d SHA512 d0144ffb3876aa1ba5941752111f9176b27647c4b84ee45f497892a91d1f48ab0a4fa1aafd5fd446b8b4b2f616432fad6707e1f4ccff048eb7dc4b886c4d1695 +EBUILD libselinux-9999.ebuild 4217 BLAKE2B f624a303a3fb05d27b55cb216363eb277e885e83e84d981dea855583f51c9be011ab6b1cad0774a11f093a791d9e02cf09a35878af68a272d9c50c44a052728d SHA512 d0144ffb3876aa1ba5941752111f9176b27647c4b84ee45f497892a91d1f48ab0a4fa1aafd5fd446b8b4b2f616432fad6707e1f4ccff048eb7dc4b886c4d1695 MISC metadata.xml 745 BLAKE2B 6658dad55bd195725b345865e152b62528e04201b9743dd3688058eeb6f3ca87add86035c2a14bea0b238273328464f5e2fa36ce6b96ac35fb1cc679e3cb4a7c SHA512 ee405602d0345a118c4b8eac9126417f082f4a37a7d5816a991e21191d4ce71ec883abe7e91f10f5330cdc61e6f7a174968c12f873b08a4bda5186cc4986b363 diff --git a/sys-libs/libselinux/libselinux-3.1.ebuild b/sys-libs/libselinux/libselinux-3.1.ebuild new file mode 100644 index 000000000000..2f2a870f2d6c --- /dev/null +++ b/sys-libs/libselinux/libselinux-3.1.ebuild @@ -0,0 +1,155 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" +PYTHON_COMPAT=( python3_{6..9} ) +USE_RUBY="ruby25 ruby26 ruby27" + +# No, I am not calling ruby-ng +inherit multilib python-r1 toolchain-funcs multilib-minimal + +MY_P="${P//_/-}" +SEPOL_VER="${PV}" +MY_RELEASEDATE="20200710" + +DESCRIPTION="SELinux userland library" +HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" + +if [[ ${PV} == 9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" + S="${WORKDIR}/${MY_P}/${PN}" +else + SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" + S="${WORKDIR}/${MY_P}" +fi + +LICENSE="public-domain" +SLOT="0" +IUSE="pcre2 python ruby static-libs ruby_targets_ruby25 ruby_targets_ruby26 ruby_targets_ruby27" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=">=sys-libs/libsepol-${SEPOL_VER}:=[${MULTILIB_USEDEP}] + !pcre2? ( >=dev-libs/libpcre-8.33-r1:=[static-libs?,${MULTILIB_USEDEP}] ) + pcre2? ( dev-libs/libpcre2:=[static-libs?,${MULTILIB_USEDEP}] ) + python? ( ${PYTHON_DEPS} ) + ruby? ( + ruby_targets_ruby25? ( dev-lang/ruby:2.5 ) + ruby_targets_ruby26? ( dev-lang/ruby:2.6 ) + ruby_targets_ruby27? ( dev-lang/ruby:2.7 ) + ) + elibc_musl? ( sys-libs/fts-standalone )" +DEPEND="${RDEPEND} + virtual/pkgconfig + python? ( >=dev-lang/swig-2.0.9 ) + ruby? ( >=dev-lang/swig-2.0.9 )" + +src_prepare() { + eapply_user + + multilib_copy_sources +} + +multilib_src_compile() { + tc-export AR CC PKG_CONFIG RANLIB + + emake \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + LDFLAGS="-fPIC ${LDFLAGS} -pthread" \ + USE_PCRE2="$(usex pcre2 y n)" \ + FTS_LDLIBS="$(usex elibc_musl '-lfts' '')" \ + all + + if multilib_is_native_abi && use python; then + building() { + emake \ + LDFLAGS="-fPIC ${LDFLAGS} -lpthread" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_PCRE2="$(usex pcre2 y n)" \ + FTS_LDLIBS="$(usex elibc_musl '-lfts' '')" \ + pywrap + } + python_foreach_impl building + fi + + if multilib_is_native_abi && use ruby; then + building() { + einfo "Calling rubywrap for ${1}" + # Clean up .lo file to force rebuild + rm -f src/selinuxswig_ruby_wrap.lo || die + emake \ + RUBY=${1} \ + LDFLAGS="-fPIC ${LDFLAGS} -lpthread" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_PCRE2="$(usex pcre2 y n)" \ + FTS_LDLIBS="$(usex elibc_musl '-lfts' '')" \ + rubywrap + } + for RUBYTARGET in ${USE_RUBY}; do + use ruby_targets_${RUBYTARGET} || continue + + building ${RUBYTARGET} + done + fi +} + +multilib_src_install() { + emake DESTDIR="${D}" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_PCRE2="$(usex pcre2 y n)" \ + install + + if multilib_is_native_abi && use python; then + installation() { + emake DESTDIR="${D}" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_PCRE2="$(usex pcre2 y n)" \ + install-pywrap + python_optimize # bug 531638 + } + python_foreach_impl installation + fi + + if multilib_is_native_abi && use ruby; then + installation() { + einfo "Calling install-rubywrap for ${1}" + # Forcing (re)build here as otherwise the resulting SO file is used for all ruby versions + rm src/selinuxswig_ruby_wrap.lo + emake DESTDIR="${D}" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + RUBY=${1} \ + USE_PCRE2="$(usex pcre2 y n)" \ + install-rubywrap + } + for RUBYTARGET in ${USE_RUBY}; do + use ruby_targets_${RUBYTARGET} || continue + + installation ${RUBYTARGET} + done + fi + + use static-libs || rm "${D}"/usr/lib*/*.a || die +} + +pkg_postinst() { + # Fix bug 473502 + for POLTYPE in ${POLICY_TYPES}; + do + mkdir -p /etc/selinux/${POLTYPE}/contexts/files || die + touch /etc/selinux/${POLTYPE}/contexts/files/file_contexts.local || die + # Fix bug 516608 + for EXPRFILE in file_contexts file_contexts.homedirs file_contexts.local ; do + if [[ -f "/etc/selinux/${POLTYPE}/contexts/files/${EXPRFILE}" ]]; then + sefcontext_compile /etc/selinux/${POLTYPE}/contexts/files/${EXPRFILE} \ + || die "Failed to recompile contexts" + fi + done + done +} diff --git a/sys-libs/libselinux/libselinux-9999.ebuild b/sys-libs/libselinux/libselinux-9999.ebuild index 48ecacbdf7a8..2f2a870f2d6c 100644 --- a/sys-libs/libselinux/libselinux-9999.ebuild +++ b/sys-libs/libselinux/libselinux-9999.ebuild @@ -1,16 +1,16 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="6" +EAPI="7" PYTHON_COMPAT=( python3_{6..9} ) -USE_RUBY="ruby24 ruby25 ruby26" +USE_RUBY="ruby25 ruby26 ruby27" # No, I am not calling ruby-ng inherit multilib python-r1 toolchain-funcs multilib-minimal MY_P="${P//_/-}" SEPOL_VER="${PV}" -MY_RELEASEDATE="20191204" +MY_RELEASEDATE="20200710" DESCRIPTION="SELinux userland library" HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" @@ -27,7 +27,7 @@ fi LICENSE="public-domain" SLOT="0" -IUSE="pcre2 python ruby static-libs ruby_targets_ruby24 ruby_targets_ruby25 ruby_targets_ruby26" +IUSE="pcre2 python ruby static-libs ruby_targets_ruby25 ruby_targets_ruby26 ruby_targets_ruby27" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" RDEPEND=">=sys-libs/libsepol-${SEPOL_VER}:=[${MULTILIB_USEDEP}] @@ -35,9 +35,9 @@ RDEPEND=">=sys-libs/libsepol-${SEPOL_VER}:=[${MULTILIB_USEDEP}] pcre2? ( dev-libs/libpcre2:=[static-libs?,${MULTILIB_USEDEP}] ) python? ( ${PYTHON_DEPS} ) ruby? ( - ruby_targets_ruby24? ( dev-lang/ruby:2.4 ) ruby_targets_ruby25? ( dev-lang/ruby:2.5 ) ruby_targets_ruby26? ( dev-lang/ruby:2.6 ) + ruby_targets_ruby27? ( dev-lang/ruby:2.7 ) ) elibc_musl? ( sys-libs/fts-standalone )" DEPEND="${RDEPEND} diff --git a/sys-libs/libsemanage/Manifest b/sys-libs/libsemanage/Manifest index 5d49a5bdb354..2bdf0f8f34cc 100644 --- a/sys-libs/libsemanage/Manifest +++ b/sys-libs/libsemanage/Manifest @@ -1,7 +1,9 @@ DIST libsemanage-2.9.tar.gz 157690 BLAKE2B 98a7800a4f4a5b6eeaad8be9870a49bc697cec6cd053cb44bcd618d22146ed1adc32b432667f8fd245ac073a458e048894cbaf68903b79577bc8596b1c255f56 SHA512 ea2924e8ce97d376519d40d499145b3db413cf9cc1eb995ed338b95c131e043d8c43b87b2012cee2bb6354a6e3161ebf5ce4a1200278d3ecd4294b43d177a5c2 DIST libsemanage-3.0.tar.gz 180745 BLAKE2B a7e7f0c98e365fcc132e2e66de736db29b46599be2da227dbf1384110a607120f141975b859e55073f734e3ff533bdf90b7bbefd79f7bc5857bbb0722a75ad4e SHA512 f960e1bd6815d3c9f000efa7ae717bc7937e742af5a7fea4aa865cf1aee49486e34897d83dbdb9cf77975a09a5ad77e5512d47690a74512a468a89432b72a42c +DIST libsemanage-3.1.tar.gz 179601 BLAKE2B 69450a4eda1f3728d339f65db1eec9940995fcea5208d17dca531ebc998aefbfec48fe91beffa3490e1502953aa550405fb696635d01b0eb8050c8f00f11106a SHA512 8609ca7d13b5c603677740f2b14558fea3922624af182d20d618237ba11fcf2559fab82fc68d1efa6ff118f064d426f005138521652c761de92cd66150102197 EBUILD libsemanage-2.9.ebuild 4646 BLAKE2B 1ed46e0bec6805c3759a182e839a3f296954dc643f560b4e343e14790919f5ad082cbb3e3bc5f45162f9bfa9a0a1392001a06f42344e6e17108d06bcc73104f2 SHA512 39f5b2672d5425e205f76ea05fe2761bc29dbd7aa2c7399a713d3aedcf56038cc4f89ef094979322dab66795786dc1f1ac8c0fd2645a51b25a55f7396af389d8 EBUILD libsemanage-3.0-r1.ebuild 4700 BLAKE2B 2ba6d17b0bfd6ebc2d3e88c2e4b61a3022e2d602ba4ae621802a92a005852650dcba58062997941bcc72fa250161b85754734451f87b7e15b0a16a1de7749491 SHA512 bbd622c190ec2d68d7d10bea5fc6ebb81b39c640a3849c4b86b4e6ac40ace1f575eeb06e6a822ffe7d0a781c9b4d1c2b03e7f66572e262b90651f5ac757b9bc3 EBUILD libsemanage-3.0.ebuild 4658 BLAKE2B 9de1e8527dd161016ee3ea2a3bfc23f901b7f77818a41ffb0b4722d16cca9cdd6d94628fc241e8f9602a9b1eb25a4d2730985807375ee437e414d835a213bd75 SHA512 d54343724a8b853c549c68ff2331ad705f9db6725b8a4680069b504d84c39f0ba0b57eca5c01b7aa93e61a3f13b3720c3e44b0ee79f91f6c8d5e7547b43e7ff6 -EBUILD libsemanage-9999.ebuild 4658 BLAKE2B c2f36b3910258e7fcf8d27d8d8cb0b72f99ec9821bc31513c7b1573d3dacd8f9dc5d7327d95a4389ee4abed02426f9f2f8d16dbd3953439cd675385cd4ffae2c SHA512 9d31cd86657b868f762328779f63abe50ce8ffb8576b0bcf668e870005592f88159f798464b1202ef02fe6a3778326dc162d744ac0f90b07e78752c8874dbf3d -MISC metadata.xml 406 BLAKE2B c9f83aef9f66b26a895bad604ab829ba1d6b6865cb519ac23be395cfb9b81f06d35a3ac4602d5a0b53f0ca58e50a8ca71efba8dc8d70740294cee2a49ed0e777 SHA512 742aba47cdd9ad8f97fcb03a01cc2552c6e1d715f6b717c9dff2ae86ab34b850745888e4f2e3963ec2c258cf16a33cb161205f4ea72563446eada82f6c298479 +EBUILD libsemanage-3.1.ebuild 4337 BLAKE2B 10d60f68cd0caf92dd15b4552d0c7e38af0685cbbe3d06a1b81ada223cbd99318318e6feddd0bb94bcdcd7a8bdc277f166738628c926ecde2e912ed195e2c66d SHA512 c9f701157255f0f6e03f8c18a54a9cb17e96858179ebfd1fda85d2b138cf5455194ba4d922b3a73c82c6f90c5e839b533f072b978aedccf76e9ddda46fdabbd3 +EBUILD libsemanage-9999.ebuild 4337 BLAKE2B 10d60f68cd0caf92dd15b4552d0c7e38af0685cbbe3d06a1b81ada223cbd99318318e6feddd0bb94bcdcd7a8bdc277f166738628c926ecde2e912ed195e2c66d SHA512 c9f701157255f0f6e03f8c18a54a9cb17e96858179ebfd1fda85d2b138cf5455194ba4d922b3a73c82c6f90c5e839b533f072b978aedccf76e9ddda46fdabbd3 +MISC metadata.xml 334 BLAKE2B a76cd05e8b752345f7624b375455c1f25ca0417c60a16cc0f2a37d2a876ce237faa80b4c997d34de967e61f05c299a4b1fbe848799d93a5f16dcfebcfed5ebdf SHA512 3bee1c898adaf223c205ba41afe4adfc620ccdff69ea77abfd02b3e33d21a307b889945f2d674b1c88fb4f853c6ace7cca67143f7339315abc3d167f752a1cd5 diff --git a/sys-libs/libsemanage/libsemanage-3.1.ebuild b/sys-libs/libsemanage/libsemanage-3.1.ebuild new file mode 100644 index 000000000000..f41d7dffde0a --- /dev/null +++ b/sys-libs/libsemanage/libsemanage-3.1.ebuild @@ -0,0 +1,130 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" +PYTHON_COMPAT=( python{3_6,3_7,3_8} ) + +inherit multilib python-r1 toolchain-funcs multilib-minimal + +MY_P="${P//_/-}" +MY_RELEASEDATE="20200710" + +SEPOL_VER="${PV}" +SELNX_VER="${PV}" + +DESCRIPTION="SELinux kernel and policy management library" +HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" + S="${WORKDIR}/${MY_P}/${PN}" +else + SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" + S="${WORKDIR}/${MY_P}" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=">=sys-libs/libsepol-${SEPOL_VER}[${MULTILIB_USEDEP}] + >=sys-libs/libselinux-${SELNX_VER}[${MULTILIB_USEDEP}] + >=sys-process/audit-2.2.2[${MULTILIB_USEDEP}] + >=dev-libs/ustr-1.0.4-r2[${MULTILIB_USEDEP}] + ${PYTHON_DEPS}" +DEPEND="${RDEPEND} + >=dev-lang/swig-2.0.4-r1 + sys-devel/bison + sys-devel/flex + virtual/pkgconfig" + +# tests are not meant to be run outside of the +# full SELinux userland repo +RESTRICT="test" + +src_prepare() { + eapply_user + + echo >> "${S}/src/semanage.conf" + echo "# Set this to true to save the linked policy." >> "${S}/src/semanage.conf" + echo "# This is normally only useful for analysis" >> "${S}/src/semanage.conf" + echo "# or debugging of policy." >> "${S}/src/semanage.conf" + echo "save-linked=false" >> "${S}/src/semanage.conf" + echo >> "${S}/src/semanage.conf" + echo "# Set this to 0 to disable assertion checking." >> "${S}/src/semanage.conf" + echo "# This should speed up building the kernel policy" >> "${S}/src/semanage.conf" + echo "# from policy modules, but may leave you open to" >> "${S}/src/semanage.conf" + echo "# dangerous rules which assertion checking" >> "${S}/src/semanage.conf" + echo "# would catch." >> "${S}/src/semanage.conf" + echo "expand-check=1" >> "${S}/src/semanage.conf" + echo >> "${S}/src/semanage.conf" + echo "# Modules in the module store can be compressed" >> "${S}/src/semanage.conf" + echo "# with bzip2. Set this to the bzip2 blocksize" >> "${S}/src/semanage.conf" + echo "# 1-9 when compressing. The higher the number," >> "${S}/src/semanage.conf" + echo "# the more memory is traded off for disk space." >> "${S}/src/semanage.conf" + echo "# Set to 0 to disable bzip2 compression." >> "${S}/src/semanage.conf" + echo "bzip-blocksize=0" >> "${S}/src/semanage.conf" + echo >> "${S}/src/semanage.conf" + echo "# Reduce memory usage for bzip2 compression and" >> "${S}/src/semanage.conf" + echo "# decompression of modules in the module store." >> "${S}/src/semanage.conf" + echo "bzip-small=true" >> "${S}/src/semanage.conf" + + multilib_copy_sources +} + +multilib_src_compile() { + emake \ + AR="$(tc-getAR)" \ + CC="$(tc-getCC)" \ + LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ + all + + if multilib_is_native_abi; then + building_py() { + emake \ + AR="$(tc-getAR)" \ + CC="$(tc-getCC)" \ + LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ + "$@" + } + python_foreach_impl building_py swigify + python_foreach_impl building_py pywrap + fi +} + +multilib_src_install() { + emake \ + LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ + DESTDIR="${ED}" install + + if multilib_is_native_abi; then + installation_py() { + emake DESTDIR="${ED}" \ + LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ + install-pywrap + python_optimize # bug 531638 + } + python_foreach_impl installation_py + fi +} + +multiib_src_install_all() { + python_setup + python_fix_shebang "${ED}"/usr/libexec/selinux/semanage_migrate_store +} + +pkg_postinst() { + # Migrate the SELinux semanage configuration store if not done already + local selinuxtype=$(awk -F'=' '/SELINUXTYPE=/ {print $2}' "${EROOT}"/etc/selinux/config 2>/dev/null) + if [ -n "${selinuxtype}" ] && [ ! -d "${EROOT}"/var/lib/selinux/${selinuxtype}/active ] ; then + ewarn "Since the 2.4 SELinux userspace, the policy module store is moved" + ewarn "from /etc/selinux to /var/lib/selinux. The migration will be run now." + ewarn "If there are any issues, it can be done manually by running:" + ewarn "/usr/libexec/selinux/semanage_migrate_store" + ewarn "For more information, please see" + ewarn "- https://github.com/SELinuxProject/selinux/wiki/Policy-Store-Migration" + fi +} diff --git a/sys-libs/libsemanage/libsemanage-9999.ebuild b/sys-libs/libsemanage/libsemanage-9999.ebuild index 767ab9d45e12..f41d7dffde0a 100644 --- a/sys-libs/libsemanage/libsemanage-9999.ebuild +++ b/sys-libs/libsemanage/libsemanage-9999.ebuild @@ -1,13 +1,13 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="6" +EAPI="7" PYTHON_COMPAT=( python{3_6,3_7,3_8} ) inherit multilib python-r1 toolchain-funcs multilib-minimal MY_P="${P//_/-}" -MY_RELEASEDATE="20191204" +MY_RELEASEDATE="20200710" SEPOL_VER="${PV}" SELNX_VER="${PV}" @@ -27,21 +27,19 @@ fi LICENSE="GPL-2" SLOT="0" -IUSE="python" -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" +IUSE="" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" RDEPEND=">=sys-libs/libsepol-${SEPOL_VER}[${MULTILIB_USEDEP}] >=sys-libs/libselinux-${SELNX_VER}[${MULTILIB_USEDEP}] >=sys-process/audit-2.2.2[${MULTILIB_USEDEP}] >=dev-libs/ustr-1.0.4-r2[${MULTILIB_USEDEP}] - python? ( ${PYTHON_DEPS} )" + ${PYTHON_DEPS}" DEPEND="${RDEPEND} + >=dev-lang/swig-2.0.4-r1 sys-devel/bison sys-devel/flex - python? ( - >=dev-lang/swig-2.0.4-r1 - virtual/pkgconfig - )" + virtual/pkgconfig" # tests are not meant to be run outside of the # full SELinux userland repo @@ -84,7 +82,7 @@ multilib_src_compile() { LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ all - if multilib_is_native_abi && use python; then + if multilib_is_native_abi; then building_py() { emake \ AR="$(tc-getAR)" \ @@ -102,7 +100,7 @@ multilib_src_install() { LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ DESTDIR="${ED}" install - if multilib_is_native_abi && use python; then + if multilib_is_native_abi; then installation_py() { emake DESTDIR="${ED}" \ LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ @@ -113,6 +111,11 @@ multilib_src_install() { fi } +multiib_src_install_all() { + python_setup + python_fix_shebang "${ED}"/usr/libexec/selinux/semanage_migrate_store +} + pkg_postinst() { # Migrate the SELinux semanage configuration store if not done already local selinuxtype=$(awk -F'=' '/SELINUXTYPE=/ {print $2}' "${EROOT}"/etc/selinux/config 2>/dev/null) @@ -124,12 +127,4 @@ pkg_postinst() { ewarn "For more information, please see" ewarn "- https://github.com/SELinuxProject/selinux/wiki/Policy-Store-Migration" fi - - # Run the store migration without rebuilds - for POLICY_TYPE in ${POLICY_TYPES} ; do - if [ ! -d "${EROOT}/var/lib/selinux/${POLICY_TYPE}/active" ] ; then - einfo "Migrating store ${POLICY_TYPE} (without policy rebuild)." - "${EROOT}/usr/libexec/selinux/semanage_migrate_store" -n -s "${POLICY_TYPE}" || die "Failed to migrate store ${POLICY_TYPE}" - fi - done } diff --git a/sys-libs/libsemanage/metadata.xml b/sys-libs/libsemanage/metadata.xml index d4dc9ab41f9f..9a9681c39bd3 100644 --- a/sys-libs/libsemanage/metadata.xml +++ b/sys-libs/libsemanage/metadata.xml @@ -5,7 +5,6 @@ selinux@gentoo.org SELinux Team - SELinux policy management libraries SELinuxProject/selinux diff --git a/sys-libs/libsepol/Manifest b/sys-libs/libsepol/Manifest index 73ae1155fe09..6835d02ba791 100644 --- a/sys-libs/libsepol/Manifest +++ b/sys-libs/libsepol/Manifest @@ -1,6 +1,8 @@ DIST libsepol-2.9.tar.gz 474861 BLAKE2B 2d0941a003bbe6f15f047e3e55ce4561c36fb4946ce46b618df1b884881579cd192a0ac7cbedfb67ae5e926ab03ca35988d2a4fc279f31a88c83874e85862d13 SHA512 415af623c2b2898d98828c9bf0b12cf05d05790d2b412cad291f0759a8c3feacf1bd88c2ba6f2f1bca8f9f71e1627e9d5b1b69d60e7ef96fdd52df8a3d57d3e9 DIST libsepol-3.0.tar.gz 473864 BLAKE2B ff4da6e12c1635de88a2aaba26bd3630576a3806543d7176d8fbdb4deda5c9c5fbf8a5a4f68c8041cca0af97429e720d908cd31052d13ac72780bc85db1f56c8 SHA512 82a5bae0afd9ae53b55ddcfc9f6dd61724a55e45aef1d9cd0122d1814adf2abe63c816a7ac63b64b401f5c67acb910dd8e0574eec546bed04da7842ab6c3bb55 +DIST libsepol-3.1.tar.gz 473842 BLAKE2B ef1d596c4d53cc0a87e899ef4aeb5bf29c9d6b8303632ddc866c100d30debd8aedd0e8b38cb4ce3141b80421cd914148ff072e492d63dc2dacf03ac2ce59ca5a SHA512 4b5f4e82853ff3e9b4fac2dbdea5c2fc3bb7b508af912217ac4b75da6540fbcd77aa314ab95cd9dfa94fbc4a885000656a663c1a152f65b4cf6970ea0b6034ab EBUILD libsepol-2.9.ebuild 1101 BLAKE2B 15d24d96643fe4cd0448a5fa917f0784bf34310ad5f326f428896e58eb7e4b4de02f6acab25c9f4f833b237a06b4ac7044e9c10d15548b8bc56dd00308515ad1 SHA512 caf47ce74e8463c2ece4bf8c39271f28c92a9700a6eaed4e39d35356a0169f09f83af257e7afa1b56099b22e6b79e373427e644a017eb9addf515ae0da2e18a6 EBUILD libsepol-3.0.ebuild 1175 BLAKE2B 5a6b43474a6d61bc1f17351d50e0c95808132c4c05eb4a836e2089575c46a6fe1969fe2e5d075da05ac24831d2e51d755d92832a06e904624b6137f14494ad09 SHA512 928fd7ccbd052b9b2d66d195db9d702fea2d4c76be0e7634d52a8bad44a4934d0ec0fb211b55133aa4228beeb75e3d6de897562bbc0bad3035eaf840aa7d80d0 -EBUILD libsepol-9999.ebuild 1177 BLAKE2B 9d221ed45304b77508c36b75f178ea20d0e49e28516541e9d8533f7eaaa6370102722cdc8f4795983b05522c110a3914ef076ef50b91808fc25354cdcd3afef4 SHA512 2834dbac780b691a5d2e43e1ece46d1c25827fc822720a189b00a4c7c377de97f60e44ea633219029dadb23874e49cd46b8ad6a47a915576bd1d830d9137f985 -MISC metadata.xml 495 BLAKE2B 2cf1b786b99f7cdcbf7e393957ee741ff23b69c4f2d326f306e3576ab7e17eb17148c1f34d32797fa669a05506eee0d86ba7c9b41c24c62f72aaa2b7d97ecdb5 SHA512 bf55f1da0e997ebc521b5c74f9f721e38971630e9201a6c8aa458e44291c8480eef082b526c746b20ee7335a231fa69ac9d0f1953ee8cd5a63a1c2346708de1c +EBUILD libsepol-3.1.ebuild 1177 BLAKE2B c57df83301d492f61448cf804de24e1f6d4eec6c50fb2215684e9321eb734ecd3d5542d6c9514fbcb6326cf3a18adf9ffac62e93c540608400798b16ba7ac609 SHA512 dabaaff3825a5e71fd0ad66d6de40fc03273115d018f91b0faba0a2935829983f2f39392afc5a5ade5091f65b9455cc0c332a514792a8fc8fde51bb35da68776 +EBUILD libsepol-9999.ebuild 1177 BLAKE2B c57df83301d492f61448cf804de24e1f6d4eec6c50fb2215684e9321eb734ecd3d5542d6c9514fbcb6326cf3a18adf9ffac62e93c540608400798b16ba7ac609 SHA512 dabaaff3825a5e71fd0ad66d6de40fc03273115d018f91b0faba0a2935829983f2f39392afc5a5ade5091f65b9455cc0c332a514792a8fc8fde51bb35da68776 +MISC metadata.xml 401 BLAKE2B 8d8df536f4fc4276a16dd448cd50fc3344f4f934ec7a8bc34a69e86e368ba47e69d1b8522771229f24dcb6400b3256106b26f9662ec1173cacfd539bffd7ba9a SHA512 67f5d428e108ff13135a3260189f3a4ae70b50f52e1d342029c25fa7e2c8ff2bc1ad579117a0f0caa0cad427a6f1f2aa6b8a6c540551656dd61849b495e10029 diff --git a/sys-libs/libsepol/libsepol-3.1.ebuild b/sys-libs/libsepol/libsepol-3.1.ebuild new file mode 100644 index 000000000000..5b122e23e551 --- /dev/null +++ b/sys-libs/libsepol/libsepol-3.1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit multilib toolchain-funcs multilib-minimal + +MY_P="${P//_/-}" +MY_RELEASEDATE="20200710" + +DESCRIPTION="SELinux binary policy representation library" +HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" + S="${WORKDIR}/${MY_P}/${PN}" +else + SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" + S="${WORKDIR}/${MY_P}" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="" + +DEPEND="" +RDEPEND="" + +# tests are not meant to be run outside of the full SELinux userland repo +RESTRICT="test" + +src_prepare() { + eapply_user + multilib_copy_sources +} + +multilib_src_compile() { + tc-export CC AR RANLIB + + # https://bugs.gentoo.org/706730 + local -x CFLAGS="${CFLAGS} -fcommon" + + emake \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" +} + +multilib_src_install() { + emake DESTDIR="${D}" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + install +} diff --git a/sys-libs/libsepol/libsepol-9999.ebuild b/sys-libs/libsepol/libsepol-9999.ebuild index bffc7757949b..5b122e23e551 100644 --- a/sys-libs/libsepol/libsepol-9999.ebuild +++ b/sys-libs/libsepol/libsepol-9999.ebuild @@ -1,12 +1,12 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="6" +EAPI="7" inherit multilib toolchain-funcs multilib-minimal MY_P="${P//_/-}" -MY_RELEASEDATE="20191204" +MY_RELEASEDATE="20200710" DESCRIPTION="SELinux binary policy representation library" HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" diff --git a/sys-libs/libsepol/metadata.xml b/sys-libs/libsepol/metadata.xml index 1ff444ab65c6..5adbcb6f6f16 100644 --- a/sys-libs/libsepol/metadata.xml +++ b/sys-libs/libsepol/metadata.xml @@ -5,7 +5,6 @@ selinux@gentoo.org SELinux Team - SELinux library for manipulating binary security policies cpe:/a:selinuxproject:libsepol SELinuxProject/selinux diff --git a/sys-libs/libuuid/Manifest b/sys-libs/libuuid/Manifest index e322f41e4d75..6ad86a1dd75a 100644 --- a/sys-libs/libuuid/Manifest +++ b/sys-libs/libuuid/Manifest @@ -1,3 +1,3 @@ DIST libuuid-1.0.3.tar.gz 318256 BLAKE2B 31318e5de019d73b87221f3fff3e3cc8598d02adbdcfd2065fbae6fd2373ab0e3e01241476124e0c80210aa45b4796927dcbb7d5ba0804315eb0e0610d995ec4 SHA512 77488caccc66503f6f2ded7bdfc4d3bc2c20b24a8dc95b2051633c695e99ec27876ffbafe38269b939826e1fdb06eea328f07b796c9e0aaca12331a787175507 EBUILD libuuid-1.0.3.ebuild 590 BLAKE2B 30ffe1700a6cc7d8a08f348a6400346a0a0fa0c0c4a3900ea2ab923d6f3fe434378070d609e13ecbd65e209830c2f31f12cee8edd03475f913ad3edcc338099a SHA512 c9ed0b6e8d7f28d90828ebac91e532f8cf2d01949c303b18779185a0f56b6282bccf62f5e7750e1fca866d093e3bc6f76f83709c647b51b87eb9bdb83a351ab2 -MISC metadata.xml 508 BLAKE2B a6cc8fa72e9bb381f4fcc8edb89932f7832d289588760d667c28e7b18f4a7b2e4a4fef08c4b3e38b8d7984ad29fd6019c806991d7fb470f59ee9ddb9390d3ea3 SHA512 228b4fdea521eebd03e869547ffde1156aabee76fdf08f034308109e9b4ea030d953fc8c8fccdc4121863a5660a5b24e0aa40b30fdef01477280cc8b7bec3361 +MISC metadata.xml 433 BLAKE2B f9b7bd876ed16293d399e922fdfdd42b58adcd132fac694538b442227098a5bf5d8cc276a5980d506c617585af47a36a062a851aefaf8293b1747c30c30fb2e1 SHA512 ac560e403b2fa6889ce4c17674b905927afad46f8390d49066244f02024d0fdd8de8ee8b15389e21a6be3a8b6526085b0ba9c2e26317bb416314e4e93384a36d diff --git a/sys-libs/libuuid/metadata.xml b/sys-libs/libuuid/metadata.xml index 5e0aa119415d..183ef343272e 100644 --- a/sys-libs/libuuid/metadata.xml +++ b/sys-libs/libuuid/metadata.xml @@ -1,4 +1,4 @@ - + @@ -9,9 +9,6 @@ prefix@gentoo.org Gentoo Prefix - - Portable uuid C library - libuuid diff --git a/sys-libs/libxcrypt/Manifest b/sys-libs/libxcrypt/Manifest index 84794409d3b8..a992b4434c64 100644 --- a/sys-libs/libxcrypt/Manifest +++ b/sys-libs/libxcrypt/Manifest @@ -1,14 +1,7 @@ -AUX libxcrypt-2.4-glibc-2.16.patch 1024 BLAKE2B 8dd6aa90feef9b056de81e8d499ad4699c8050bd243cd581db691cfd8b4457b997f245f76eaa1abce2c5a93a1155c75455925ff148632f9fd86f09f73def1664 SHA512 72dc3944ea6ad600887d99ba0a9b3c0acb9d107f6591a139f863032a45a5efa516ec8b08a06e564552694d14febed0a1e065b96dc4aef06cd274aebf98baedcd -AUX libxcrypt-4.4.10-multibuild.patch 637 BLAKE2B c7c81457457b6262a5236a378fe3a2487b6da1f10ac84b4b3bc42f0beb47c52a42d20836ae44f647819d2b2042ff03b69a7681f76fc5eea5ab1333f9cd6f3ac0 SHA512 8222636d4b29909f1fa09aecd9a2284ceaa732707d4242df73bc9215edbb3c59fe517227fae66251c6312fb98ee79b6e73aab7b3c7dc5db1594740f9bd514cc6 -AUX libxcrypt-4.4.10-pythonver.patch 617 BLAKE2B 2d3779020a63899f9e4f0275e279baee2128b6c491bc6c2e6a5f9f1ce53b467838f82b4a7c4ec176c69f520544acc896b6372a8beca879aa4acdff80b384bccd SHA512 c1fda3843f02e9ffde09307147ed7cf617e2ab5a86c1766f85bb99fa377dcd4ac37e9bbcca814623c22bcf45a3d7da19237409d88a4578f38795ddd65abd1a7f AUX libxcrypt-4.4.12-multibuild.patch 636 BLAKE2B 51fdf0b0f3ffe209c270cc2ff4bec7ea458bc5ec5267415aea8b7e151c24c49b70c7f12f1172c460e660fbbdf97901b833c5bc5e431e94e93341335da64ce686 SHA512 f7f581cf4ac375d4ff33b70f3d09ce7e9db88f6cae487303d62ff0f09abbff99c35cee4d4f774bf7360e496f3c92bf813424ea58f9d1aeded9e44449844e4974 AUX libxcrypt-4.4.12-pythonver.patch 616 BLAKE2B 73c7039127b23c075a7b8e5bc897299c3e083bece50638d025649e2146325f78fa82427b7690f0df3e5a0eeb0fc66ddb13992e0d14ccf8380fc11f641c2d90a1 SHA512 dffbbfe09c4c8a93e1f6cf63acb5f237ce143585fe22eeb7c44f6929131137011c1777184f802ad86bda2e2c64de60131f6dbe18c8c309d6848d330c1cb13364 -DIST libxcrypt-4.4.10.tar.gz 499736 BLAKE2B 32da99488c21a21c3310a735a08a70002a3a56d7d9d4a9fd0c16436ef2b42ee8a9b877c5b5dcbf1bc9a38fbef3370d5ff4585167ff25025f854ccd020014dcd4 SHA512 fd714542dad40db721c03270b5a03e2c068b0750e887dcac4c651433d5905d08bd5c5db3762cc2e4ceee0103bd62810559ea197d164126169e0b253675415ca2 -DIST libxcrypt-4.4.12.tar.gz 493620 BLAKE2B 185cc9a0b9f573801e75bf2ffb3eaa578016804d175443a53b2cef01334acb6f8fa5a0fe72e346ff368e3db355338b1f1dbd00e93828dde2594f0adee3753f69 SHA512 945dfd307ebd3d1b3dd9f22057b23b651c0ffaab55bf4151950565a3f0fea8b0e2bc2886318ceea707985d720e83e8663e4590bc72e91f470bae3a98f41ab30f DIST libxcrypt-4.4.16.tar.gz 480694 BLAKE2B 0e93c2ff45a8148f82a80a67fb732a3ef42e87505d19258023f91d3352a382483204e77e2704e7a0de15f4f1e38a326d0867506a5580faf8c81857270588a4a3 SHA512 e1d3b1262c6be7c6c8847b8c4eb8191d9e5e482798be6f1186876c72f3d8c737124378ec45a38aa464f556e10a557b96f855bd371f03c3611eada27904bf6781 -DIST libxcrypt_2.4.orig.tar.gz 361503 BLAKE2B 6347bea4b22ae7742cb516a0a8673bbd7c37f645b2dbb383f4c4a6bbcc95a12897068ab7354fa015bbb65f6dc331b95ce24b48aa4bdd7a57433d8f5bc245392d SHA512 7171ce1b5b7f949232c4db94cf98bdd6396c3e2a8f2f483c041cab92d752e3a2fa93d564ede7efece57c069df129e6cc03049cf3e3f07bd3556031a7c4197cbf -EBUILD libxcrypt-2.4.ebuild 649 BLAKE2B 672890b0c7988494047e064cccd5a53323a25a1f40b953a516547fd302abac2c435e2185f31ed3e95884b3136c843f6e1fcc701b08bfc7c68a00e1bae717c124 SHA512 1aa50cd37c918682f043abc694696f6f0b1ac20d71ca2443d776d3eebfddccddab9e8e31f19ba8b473099124fb9f1d8eccb92d2efe5e7aa1b7b1bcd6393cbbcb -EBUILD libxcrypt-4.4.10-r1.ebuild 3662 BLAKE2B 3ca592fb85f417b6d36613123ea86067dc1153b8e59acbb76ffbfad3aa1bb3b7024907225e8bd1f401e4bfbf766072c750cf39e3f0d270920520560b61dd3140 SHA512 3002fc88260a5b3a7695de457e9bcf4b0a085de239d4bcd06d627fea29d9567734ef73e4dd5eae73c29d36928e5fb9834a3335879ef7628c23b323aff484f6a6 -EBUILD libxcrypt-4.4.12-r3.ebuild 4177 BLAKE2B e0094f7c1a9ea955a0570951c33ba4e8ed114500b2426295e106d090f4cfd73671327f7da22721714e6026375cc2cd0e8584c3460b198ef593767b82fb614e67 SHA512 d10ba7899927c3aaefeab8e7eb282cd1ca89744dfa36e715c668f4f7077b0e03027db5c1c70ebf2f82de41aa8b66ac8123c56e82cb62524fe0b70106cb55e808 +DIST libxcrypt-4.4.17.tar.gz 519096 BLAKE2B 12cbe3d1f235baddd8d2ec8159f2a7514e75c2f91cf0db18ef909ec11c38ac19efebecec647a90cafb27c7ebc7e940da448ca8f3edd1c49e5cb9cc4407d5198c SHA512 94aaba6ccf9b6d1a32f9a571ee32261cecd393d5b8d8c6f18d740dc7bb29ac0fbd381124e7f0d84882559bb634208c08151b3dc05c9138fa0a229c4ba20fb6f7 EBUILD libxcrypt-4.4.16.ebuild 4194 BLAKE2B 2db05b3f147b69116373aa37f83591cf9eb82dabe4ee57dcb2c39c41df7b76107e43054ea886589d6f3521a57a4dffb3ba7de9eb259c431f7375fde4cfb899f7 SHA512 288c81206e0e3c32901bacd0ce5d8b96275162801dddaed62490615297df7628f80193bfd0f36c1282d052377f4360e2e77679ffa29f7f403ecb1cd66df440fb +EBUILD libxcrypt-4.4.17.ebuild 4195 BLAKE2B 73c49e0e491b95ce780b595d1b103edf147eddbeb111f1707ea1005c6191935bc150361478c019fb02178fe44590f53f185d25c1246887bf861c31c542e05388 SHA512 753725a1a997ed011756e1137f15a37a7ca6c0b370643998faadae33282e7802960228b643d1ad004c09e00261e1a075d3051d2e5c3a917817e29f8adabad743 MISC metadata.xml 856 BLAKE2B e9fea1aa08f5b3f0abdd4d490973da2f133ea90e3a366d4549361233f51e674cc646b2fb6b4b15bca72d5a4e3b36be9a06e55afd3a4cb8f439d3958f09f8af25 SHA512 862cf3201efbecfc23167ecd1f6798f6729ba4e76749c174d17baf8aa4887f21d36f40234f35bc1b896e4384d110033b3f2260f01930b926f759e0243039adf8 diff --git a/sys-libs/libxcrypt/files/libxcrypt-2.4-glibc-2.16.patch b/sys-libs/libxcrypt/files/libxcrypt-2.4-glibc-2.16.patch deleted file mode 100644 index 150ff99ab2f9..000000000000 --- a/sys-libs/libxcrypt/files/libxcrypt-2.4-glibc-2.16.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff -urN libxcrypt-3.0.2/src/crypt_util.c libxcrypt-3.0.2.new/src/crypt_util.c ---- libxcrypt-3.0.2/src/crypt_util.c 2007-10-25 15:17:46.000000000 +0200 -+++ libxcrypt-3.0.2.new/src/crypt_util.c 2013-02-04 12:45:20.560191479 +0100 -@@ -30,8 +30,7 @@ - #endif - #include - --#include --#define __libc_lock_t pthread_mutex_t -+#include - - #ifndef STATIC - #define STATIC static -@@ -265,7 +264,7 @@ - */ - struct crypt_data _ufc_foobar; - --__libc_lock_define_initialized (static, _ufc_tables_lock) -+static pthread_mutex_t _ufc_tables_lock = PTHREAD_MUTEX_INITIALIZER; - - #ifdef DEBUG - -@@ -362,7 +361,7 @@ - #endif - - if(small_tables_initialized == 0) { -- __libc_lock_lock (_ufc_tables_lock); -+ pthread_mutex_lock (&_ufc_tables_lock); - if(small_tables_initialized) - goto small_tables_done; - -@@ -471,7 +470,7 @@ - } - small_tables_initialized = 1; - small_tables_done: -- __libc_lock_unlock(_ufc_tables_lock); -+ pthread_mutex_unlock (&_ufc_tables_lock); - } - - /* diff --git a/sys-libs/libxcrypt/files/libxcrypt-4.4.10-multibuild.patch b/sys-libs/libxcrypt/files/libxcrypt-4.4.10-multibuild.patch deleted file mode 100644 index aee7d7229b1b..000000000000 --- a/sys-libs/libxcrypt/files/libxcrypt-4.4.10-multibuild.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/Makefile.am b/Makefile.am -index 3502a5c..afb8079 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -84,11 +84,7 @@ noinst_HEADERS = \ - test/des-cases.h \ - test/crypt-kat.inc - --if ENABLE_XCRYPT_COMPAT_FILES - nodist_include_HEADERS += xcrypt.h --else --nodist_noinst_HEADERS += xcrypt.h --endif - - noinst_PROGRAMS = \ - lib/gen-des-tables -@@ -137,7 +133,7 @@ uninstall_hook_targets = \ - uninstall-hook-pkgconfig - install-data-hook-pkgconfig: - cd $(DESTDIR)$(pkgconfigdir) && \ -- $(LN_S) libxcrypt.pc libcrypt.pc -+ $(LN_S) -f libxcrypt.pc libcrypt.pc - uninstall-hook-pkgconfig: - -rm -f $(DESTDIR)$(pkgconfigdir)/libcrypt.pc - diff --git a/sys-libs/libxcrypt/files/libxcrypt-4.4.10-pythonver.patch b/sys-libs/libxcrypt/files/libxcrypt-4.4.10-pythonver.patch deleted file mode 100644 index 0ca1563995bd..000000000000 --- a/sys-libs/libxcrypt/files/libxcrypt-4.4.10-pythonver.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/configure.ac b/configure.ac -index 16885c8..fd8c8e3 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -247,11 +247,7 @@ ENABLE_CRYPT_KAT_GEN="no" - # This way we just need one call to AC_PATH_PROGS to likely get a - # suitable version of Python. The version check afterwards is for - # the case just a generic 'python3' or 'python' executable was found. --PYTHON_CANDIDATE_VERSIONS="python3 python" -- --for ver in `seq 6 1 10`; do -- PYTHON_CANDIDATE_VERSIONS="python3.$ver $PYTHON_CANDIDATE_VERSIONS" --done -+PYTHON_CANDIDATE_VERSIONS="${EPYTHON}" - - AC_PATH_PROGS([PYTHON], [$PYTHON_CANDIDATE_VERSIONS], []) - diff --git a/sys-libs/libxcrypt/libxcrypt-2.4.ebuild b/sys-libs/libxcrypt/libxcrypt-2.4.ebuild deleted file mode 100644 index 28ba5c5295c1..000000000000 --- a/sys-libs/libxcrypt/libxcrypt-2.4.ebuild +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -inherit eutils ltprune multilib - -DESCRIPTION="A replacement for libcrypt with DES, MD5 and blowfish support" -SRC_URI="mirror://debian/pool/main/libx/${PN}/${PN}_${PV}.orig.tar.gz" -HOMEPAGE="http://packages.debian.org/sid/libxcrypt1" - -LICENSE="LGPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86" -IUSE="" - -src_prepare() { - epatch "${FILESDIR}/${PN}-2.4-glibc-2.16.patch" -} - -src_configure() { - # Do not install into /usr so that tcb and pam can use us. - econf --libdir=/$(get_libdir) --disable-static -} - -src_install() { - default - prune_libtool_files -} diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.10-r1.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.10-r1.ebuild deleted file mode 100644 index 8e27bd3934b4..000000000000 --- a/sys-libs/libxcrypt/libxcrypt-4.4.10-r1.ebuild +++ /dev/null @@ -1,153 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python3_{6,7} ) -inherit autotools multibuild python-any-r1 multilib-minimal - -DESCRIPTION="Extended crypt library for descrypt, md5crypt, bcrypt, and others " -SRC_URI="https://github.com/besser82/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" -HOMEPAGE="https://github.com/besser82/libxcrypt" - -LICENSE="LGPL-2.1+ public-domain BSD BSD-2" -SLOT="0/1" -KEYWORDS="~amd64 ~x86" -IUSE="+compat split-usr static-libs system test" - -DEPEND="system? ( - elibc_glibc? ( sys-libs/glibc[-crypt(+)] ) - !sys-libs/musl - )" -RDEPEND="${DEPEND}" -BDEPEND="sys-apps/findutils - test? ( - ${PYTHON_DEPS} - $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') - )" - -# Gentoo CI complained about not having this -RESTRICT="!test? ( test )" - -PATCHES=( - "${FILESDIR}/libxcrypt-4.4.10-pythonver.patch" - "${FILESDIR}/libxcrypt-4.4.10-multibuild.patch" -) - -pkg_setup() { - MULTIBUILD_VARIANTS=( - $(usex compat 'xcrypt_compat' '') - xcrypt_nocompat - ) - - use test && python-any-r1_pkg_setup -} - -src_prepare() { - default - eautoreconf -} - -src_configure() { - multibuild_foreach_variant multilib-minimal_src_configure -} - -get_xclibdir() { - printf -- "%s\n" "$(usex split-usr '' '/usr')/$(get_libdir)/$(usex system '' 'xcrypt')" -} - -multilib_src_configure() { - local -a myconf=( - --libdir=$(get_xclibdir) - --with-pkgconfigdir=/usr/$(get_libdir)/pkgconfig - --includedir="${EPREFIX}/usr/include/$(usex system '' 'xcrypt')" - ) - - case "${MULTIBUILD_ID}" in - xcrypt_compat-*) - myconf+=( - --disable-static - --disable-xcrypt-compat-files - --enable-obsolete-api=yes - ) - ;; - xcrypt_nocompat-*) - myconf+=( - --enable-obsolete-api=no - $(use_enable static-libs static) - ) - ;; - *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; - esac - - ECONF_SOURCE="${S}" econf "${myconf[@]}" -} - -src_compile() { - multibuild_foreach_variant multilib-minimal_src_compile -} - -multilib_src_test() { - emake check -} - -src_test() { - multibuild_foreach_variant multilib-minimal_src_test -} - -src_install() { - multibuild_foreach_variant multilib-minimal_src_install - - ( - shopt -s failglob || die "failglob failed" - - # make sure out man pages don't collide with glibc or man-pages - for manpage in "${ED}"/usr/share/man/man3/crypt{,_r}.?*; do - mv -n "${manpage}" "$(dirname "${manpage}")/xcrypt_$(basename "${manpage}")" \ - || die "mv failed" - done - ) || die "failglob error" - - # remove useless stuff from installation - find "${D}"/usr/share/doc/${PF} -type l -delete || die - find "${D}" -name '*.la' -delete || die -} - -multilib_install() { - local install_target - - case "${MULTIBUILD_ID}" in - xcrypt_compat-*) install_target="install-libLTLIBRARIES";; - xcrypt_nocompat-*) - if is_final_abi; then - install_target="install" - else - install_target="install-libLTLIBRARIES" - fi - ;; - *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; - esac - - emake DESTDIR="${D}" ${install_target} - - # don't install the libcrypt.so symlink for the "compat" version - case "${MULTIBUILD_ID}" in - xcrypt_compat-*) - rm "${D}"$(get_xclibdir)/libcrypt$(get_libname) \ - "${D}"/usr/include/$(usex system '' 'xcrypt/')xcrypt.h || die - ;; - xcrypt_nocompat-*) - if use split-usr; then - ( - shopt -s failglob || die "failglob failed" - - for so_file in "${D}"$(get_xclibdir)/*$(get_libname)*; do - so_file=$(basename "${so_file}") || die - - dosym ../../$(usex system '' '../')$(get_libdir)/$(usex system '' 'xcrypt')/${so_file} \ - /usr/$(get_libdir)/$(usex system '' 'xcrypt/')${so_file} - done - ) || die "symlinking library failure" - fi - ;; - esac -} diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.12-r3.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.12-r3.ebuild deleted file mode 100644 index 166f638a5790..000000000000 --- a/sys-libs/libxcrypt/libxcrypt-4.4.12-r3.ebuild +++ /dev/null @@ -1,163 +0,0 @@ -# Copyright 2004-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python3_{6,7,8} ) -inherit autotools multibuild python-any-r1 multilib-minimal - -DESCRIPTION="Extended crypt library for descrypt, md5crypt, bcrypt, and others " -SRC_URI="https://github.com/besser82/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" -HOMEPAGE="https://github.com/besser82/libxcrypt" - -LICENSE="LGPL-2.1+ public-domain BSD BSD-2" -SLOT="0/1" -KEYWORDS="~amd64 ~x86" -IUSE="+compat split-usr +static-libs system test" - -DEPEND="system? ( - elibc_glibc? ( sys-libs/glibc[-crypt(+)] ) - !sys-libs/musl - )" -RDEPEND="${DEPEND}" -BDEPEND="sys-apps/findutils - test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') )" - -RESTRICT="!test? ( test )" - -REQUIRED_USE="split-usr? ( system )" - -PATCHES=( - "${FILESDIR}/libxcrypt-4.4.12-pythonver.patch" - "${FILESDIR}/libxcrypt-4.4.12-multibuild.patch" -) - -python_check_deps() { - has_version -b "dev-python/passlib[${PYTHON_USEDEP}]" -} - -pkg_setup() { - MULTIBUILD_VARIANTS=( - $(usex compat 'xcrypt_compat' '') - xcrypt_nocompat - ) - - use test && python-any-r1_pkg_setup -} - -src_prepare() { - default - eautoreconf -} - -src_configure() { - multibuild_foreach_variant multilib-minimal_src_configure -} - -get_xclibdir() { - printf -- "%s/%s/%s\n" \ - "$(usex split-usr '' '/usr')" \ - "$(get_libdir)" \ - "$(usex system '' 'xcrypt')" -} - -multilib_src_configure() { - local -a myconf=( - --libdir=$(get_xclibdir) - --with-pkgconfigdir=/usr/$(get_libdir)/pkgconfig - --includedir="${EPREFIX}/usr/include/$(usex system '' 'xcrypt')" - ) - - case "${MULTIBUILD_ID}" in - xcrypt_compat-*) - myconf+=( - --disable-static - --disable-xcrypt-compat-files - --enable-obsolete-api=yes - ) - ;; - xcrypt_nocompat-*) - myconf+=( - --enable-obsolete-api=no - $(use_enable static-libs static) - ) - ;; - *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; - esac - - ECONF_SOURCE="${S}" econf "${myconf[@]}" -} - -src_compile() { - multibuild_foreach_variant multilib-minimal_src_compile -} - -multilib_src_test() { - emake check -} - -src_test() { - multibuild_foreach_variant multilib-minimal_src_test -} - -src_install() { - multibuild_foreach_variant multilib-minimal_src_install - - ( - shopt -s failglob || die "failglob failed" - - # Make sure our man pages do not collide with glibc or man-pages. - for manpage in "${ED}"/usr/share/man/man3/crypt{,_r}.?*; do - mv -n "${manpage}" "$(dirname "${manpage}")/xcrypt_$(basename "${manpage}")" \ - || die "mv failed" - done - ) || die "failglob error" - - # remove useless stuff from installation - find "${D}"/usr/share/doc/${PF} -type l -delete || die - find "${D}" -name '*.la' -delete || die -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - # don't install the libcrypt.so symlink for the "compat" version - case "${MULTIBUILD_ID}" in - xcrypt_compat-*) - rm "${D}"$(get_xclibdir)/libcrypt$(get_libname) \ - || die "failed to remove extra compat libraries" - ;; - xcrypt_nocompat-*) - if use split-usr; then - ( - if use static-libs; then - # .a files are installed to /$(get_libdir) by default - # move static libraries to /usr prefix or portage will abort - shopt -s nullglob || die "failglob failed" - static_libs=( "${ED}"/$(get_xclibdir)/*.a ) - - if [[ -n ${static_libs[*]} ]]; then - dodir "/usr/$(get_xclibdir)" - mv "${static_libs[@]}" "${D}/usr/$(get_xclibdir)" \ - || die "moving static libs failed" - fi - fi - - if use system; then - # Move versionless .so symlinks from /$(get_libdir) to /usr/$(get_libdir) - # to allow linker to correctly find shared libraries. - shopt -s failglob || die "failglob failed" - - for lib_file in "${ED}"$(get_xclibdir)/*$(get_libname); do - lib_file_basename="$(basename "${lib_file}")" - lib_file_target="$(basename "$(readlink -f "${lib_file}")")" - dosym "../../$(get_libdir)/${lib_file_target}" "/usr/$(get_xclibdir)/${lib_file_basename}" - done - - rm "${ED}"$(get_xclibdir)/*$(get_libname) || die "removing symlinks in incorrect location failed" - fi - ) - fi - ;; - *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; - esac -} diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.17.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.17.ebuild new file mode 100644 index 000000000000..0a1ca516b2b2 --- /dev/null +++ b/sys-libs/libxcrypt/libxcrypt-4.4.17.ebuild @@ -0,0 +1,164 @@ +# Copyright 2004-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python3_{6..9} ) +inherit autotools multibuild python-any-r1 multilib-minimal + +DESCRIPTION="Extended crypt library for descrypt, md5crypt, bcrypt, and others " +SRC_URI="https://github.com/besser82/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" +HOMEPAGE="https://github.com/besser82/libxcrypt" + +LICENSE="LGPL-2.1+ public-domain BSD BSD-2" +SLOT="0/1" +KEYWORDS="~amd64 ~x86" +IUSE="+compat split-usr +static-libs system test" + +DEPEND="system? ( + elibc_glibc? ( sys-libs/glibc[-crypt(+)] ) + !sys-libs/musl + )" +RDEPEND="${DEPEND}" +BDEPEND="sys-apps/findutils + test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') )" + +RESTRICT="!test? ( test )" + +REQUIRED_USE="split-usr? ( system )" + +PATCHES=( + "${FILESDIR}/libxcrypt-4.4.12-pythonver.patch" + "${FILESDIR}/libxcrypt-4.4.12-multibuild.patch" +) + +python_check_deps() { + has_version -b "dev-python/passlib[${PYTHON_USEDEP}]" +} + +pkg_setup() { + MULTIBUILD_VARIANTS=( + $(usex compat 'xcrypt_compat' '') + xcrypt_nocompat + ) + + use test && python-any-r1_pkg_setup +} + +src_prepare() { + default + eautoreconf +} + +src_configure() { + multibuild_foreach_variant multilib-minimal_src_configure +} + +get_xclibdir() { + printf -- "%s/%s/%s\n" \ + "$(usex split-usr '' '/usr')" \ + "$(get_libdir)" \ + "$(usex system '' 'xcrypt')" +} + +multilib_src_configure() { + local -a myconf=( + --disable-werror + --libdir=$(get_xclibdir) + --with-pkgconfigdir=/usr/$(get_libdir)/pkgconfig + --includedir="${EPREFIX}/usr/include/$(usex system '' 'xcrypt')" + ) + + case "${MULTIBUILD_ID}" in + xcrypt_compat-*) + myconf+=( + --disable-static + --disable-xcrypt-compat-files + --enable-obsolete-api=yes + ) + ;; + xcrypt_nocompat-*) + myconf+=( + --enable-obsolete-api=no + $(use_enable static-libs static) + ) + ;; + *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; + esac + + ECONF_SOURCE="${S}" econf "${myconf[@]}" +} + +src_compile() { + multibuild_foreach_variant multilib-minimal_src_compile +} + +multilib_src_test() { + emake check +} + +src_test() { + multibuild_foreach_variant multilib-minimal_src_test +} + +src_install() { + multibuild_foreach_variant multilib-minimal_src_install + + ( + shopt -s failglob || die "failglob failed" + + # Make sure our man pages do not collide with glibc or man-pages. + for manpage in "${ED}"/usr/share/man/man3/crypt{,_r}.?*; do + mv -n "${manpage}" "$(dirname "${manpage}")/xcrypt_$(basename "${manpage}")" \ + || die "mv failed" + done + ) || die "failglob error" + + # remove useless stuff from installation + find "${D}"/usr/share/doc/${PF} -type l -delete || die + find "${D}" -name '*.la' -delete || die +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + # don't install the libcrypt.so symlink for the "compat" version + case "${MULTIBUILD_ID}" in + xcrypt_compat-*) + rm "${D}"$(get_xclibdir)/libcrypt$(get_libname) \ + || die "failed to remove extra compat libraries" + ;; + xcrypt_nocompat-*) + if use split-usr; then + ( + if use static-libs; then + # .a files are installed to /$(get_libdir) by default + # move static libraries to /usr prefix or portage will abort + shopt -s nullglob || die "failglob failed" + static_libs=( "${ED}"/$(get_xclibdir)/*.a ) + + if [[ -n ${static_libs[*]} ]]; then + dodir "/usr/$(get_xclibdir)" + mv "${static_libs[@]}" "${D}/usr/$(get_xclibdir)" \ + || die "moving static libs failed" + fi + fi + + if use system; then + # Move versionless .so symlinks from /$(get_libdir) to /usr/$(get_libdir) + # to allow linker to correctly find shared libraries. + shopt -s failglob || die "failglob failed" + + for lib_file in "${ED}"$(get_xclibdir)/*$(get_libname); do + lib_file_basename="$(basename "${lib_file}")" + lib_file_target="$(basename "$(readlink -f "${lib_file}")")" + dosym "../../$(get_libdir)/${lib_file_target}" "/usr/$(get_xclibdir)/${lib_file_basename}" + done + + rm "${ED}"$(get_xclibdir)/*$(get_libname) || die "removing symlinks in incorrect location failed" + fi + ) + fi + ;; + *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";; + esac +} diff --git a/sys-libs/native-uuid/Manifest b/sys-libs/native-uuid/Manifest index 726b96a12342..ece440194c5b 100644 --- a/sys-libs/native-uuid/Manifest +++ b/sys-libs/native-uuid/Manifest @@ -1,2 +1,2 @@ EBUILD native-uuid-1.0.ebuild 701 BLAKE2B 40d9e50877a40b9f784f3526a60ad845c259109b8da245bf5ae8c04eeb483e3957b1573fbfc41681706b31eaf650699c6cedf92d05f6f839fda33766c4266387 SHA512 0064541825531d80f12e4e3ef9409d3b2e4049d56bf2830d50ab1085a1451ab8dd4935681098685e5944b56f54a696242649d82f19128a5793da86307b3c6be3 -MISC metadata.xml 464 BLAKE2B ed7b8ddc489f3b55ff96f06a49d270881423481b2e99ab8e1470e30b8535f7258cf07cdb7128a99cc65b095d8628f26bfda8c51c9dfa1793da91c160ff26faa8 SHA512 dcd353281c0d18ad7414071fe46861733cc928be817c283b2f4ab9aeb7ef0d35551db62f29380e613f78cdd4dd1718fe404335f0210e1dabe364c2eb0abfbcec +MISC metadata.xml 356 BLAKE2B 3def15d5c44716f86adf00f06b2d3e2ae61b8f7fdc8f11bd0115aee546763d097cd0250840689b48e0560a069ff9306753eb2cd37897caf2764f42030177c3e4 SHA512 6f7f03d2c39477d4fdf30aa01d2351494182d49b9b405aad70ea88520c07bc2f7524de3bd361fa499883e029c4be0d0e0e13dcd90cbb3fe37de2918715553b00 diff --git a/sys-libs/native-uuid/metadata.xml b/sys-libs/native-uuid/metadata.xml index 06454c38b1ef..64c864af679a 100644 --- a/sys-libs/native-uuid/metadata.xml +++ b/sys-libs/native-uuid/metadata.xml @@ -1,4 +1,4 @@ - + @@ -9,7 +9,4 @@ prefix@gentoo.org Gentoo Prefix - - pkgconfig file for host-provided uuid for Prefix systems - diff --git a/sys-libs/pam/Manifest b/sys-libs/pam/Manifest index b4b544481c84..cdde322f64f1 100644 --- a/sys-libs/pam/Manifest +++ b/sys-libs/pam/Manifest @@ -2,6 +2,6 @@ AUX pam-remove-browsers.patch 985 BLAKE2B 3e258e00f7287436b1b6a97323764612a3098d DIST pam-1.4.0_p20200809-doc.tar.xz 42680 BLAKE2B e8371bd76b589db06ce95f2d10343be163aa5149f566f7d9bd5e9cd0340b95eecedb6a7d20d299fd2188c736fca3c69c0bd2f8eea4541dfd3312227c3dcf4e2d SHA512 5007aaa811b6321f124245493c6a4bc9ae07ab4ff651fc817843e8b4a74661c07418e2479363a72c35320f0f1cb469a2494c5d354dc819b920de7d1918e6ce5e DIST pam-4dd9b97b762cc73816cb867d49c9d0d0b91d642c.tar.gz 765455 BLAKE2B 8a8543b51c9fa877cd48d483d9af489df00376f92f26fea648d38a0ce3168702888a662e5d3c7423cce8a5d56896e84e4c1829e56d08fca8c3ab878b20945a7d SHA512 bdb236a47a5810449fb96546ff89d70dec185a215b0d047178a12e40945fde4ffdb801dbbd87ff95eead1bb7acb4748333a2d3383881d5de0dbd89ec5ceddd3f DIST pam-e42e178c71c11bb25740a5177eed110ee17b8af2.tar.gz 810595 BLAKE2B 897f64a7f55c033601665b0ecc292cdcbd0d9b2f24199ed6ca5fc69c2da4da7401677493bed09a118b1fc0a475dc016fc7a3a318787c650212b056064ed0b817 SHA512 3c2bc401df51dbd4118698afc80a0448559bc6b5d8c7c45c800c2f6421034a131c0bee971f9640aec6b0d77f8a31ec055c7a84a646d9a11690dfda4af4e1068a -EBUILD pam-1.3.1_p20200128-r1.ebuild 3522 BLAKE2B 39445b685c2f2bb4237dcaa4e72eee7a426a00b4385b442a4e0c5f1092324446c62918f9642e7afe76b9b85bf2d55f6af3129c842c98450fae57bd22fa93a6d0 SHA512 7420fa938ab27a76a5a7b3c7921f815e85cf38a96b53407efbd4806ae043f84db1b3a32afa76fa400c6c279ceb6c72786cbc49e58dbbae9adc7b59459b5b7508 -EBUILD pam-1.4.0_p20200829.ebuild 3874 BLAKE2B 79afdd656faa38801d9fa64deac6b209adc494a7f07f6a235caac6ab52f4a5f8860f846502e65273999d7aef4c869f88fb8feef894cb2b897bf9398091660624 SHA512 d887a46ec17f239d7bcb09d36604fe5a51d0638bf22e702939eabaa9a773e3fada9566423f66b0583348d9aef8503db8782f047605b46ae8b470d2dddbe7324d +EBUILD pam-1.3.1_p20200128-r1.ebuild 3536 BLAKE2B e43cb4b3c60177b3abc2a41b89922c1b49649334d073ef0c2bd01c293cdbd59aa2dad79088174ca1f85ccaec29f12913662ea6d977b6f4d4ffd7e8eb5cbe8f57 SHA512 9f51fdb2cb3a60981e93fdf30cc968b757188fe9a05afe2ec3e4bd017cec292b338dbdc01d9a4779f2341e329754c41fb4fcc949f347d9cf121528262bfeace1 +EBUILD pam-1.4.0_p20200829.ebuild 3894 BLAKE2B d1376649610e75807a8dec847e6722e4d7ee52a78e8d39783a8f63a99773e6e9a5a15833c00db1ac12abe9dd86665a61ef8fc475871f3c5bcf468929d438de8d SHA512 fd3acd3ea543204dd29a88a50446794e187ca4a266a70871fc0ef68a035843631c19628fcc36e2cc3490096cd7fc6a3fabadab232d5492d825a11f57e6aff678 MISC metadata.xml 1086 BLAKE2B 39d2291ff9553394ce684a87a49a2c41b18689102d8cf352c905ce2ede28508501aa41a4a473d287c461b77e5732aa4ed0eaac94db94c851ed9491bffdac8acf SHA512 6743a2021ef7d7ab9fc547b270c17b205747a498e0e2bafc07ad171d52657a4aa3f84803c2b4e5c088b73b1732d600b5b2189c958d4b15fba8e081714790fc72 diff --git a/sys-libs/pam/pam-1.3.1_p20200128-r1.ebuild b/sys-libs/pam/pam-1.3.1_p20200128-r1.ebuild index c378c14137bf..d5a007ca1d2c 100644 --- a/sys-libs/pam/pam-1.3.1_p20200128-r1.ebuild +++ b/sys-libs/pam/pam-1.3.1_p20200128-r1.ebuild @@ -23,7 +23,8 @@ BDEPEND="app-text/docbook-xml-dtd:4.1.2 dev-libs/libxslt sys-devel/flex sys-devel/gettext - virtual/pkgconfig" + virtual/pkgconfig + virtual/yacc" DEPEND=" virtual/libcrypt:=[${MULTILIB_USEDEP}] diff --git a/sys-libs/pam/pam-1.4.0_p20200829.ebuild b/sys-libs/pam/pam-1.4.0_p20200829.ebuild index 5dfee2448fa0..7667b4ca24ab 100644 --- a/sys-libs/pam/pam-1.4.0_p20200829.ebuild +++ b/sys-libs/pam/pam-1.4.0_p20200829.ebuild @@ -10,7 +10,7 @@ HOMEPAGE="https://github.com/linux-pam/linux-pam" COMMIT_HASH="e42e178c71c11bb25740a5177eed110ee17b8af2" SRC_URI="https://github.com/linux-pam/linux-pam/archive/${COMMIT_HASH}.tar.gz#/${PN}-${COMMIT_HASH}.tar.gz - https://dev.gentoo.org/~zlogene/distfiles/${CATEGORY}/${PN}-1.4.0_p20200809-doc.tar.xz" + https://dev.gentoo.org/~zlogene/distfiles/${CATEGORY}/${PN}/${PN}-1.4.0_p20200809-doc.tar.xz" LICENSE="|| ( BSD GPL-2 )" SLOT="0" @@ -22,6 +22,7 @@ BDEPEND=" sys-devel/flex sys-devel/gettext virtual/pkgconfig + virtual/yacc " DEPEND=" diff --git a/sys-libs/uclibc-ng/Manifest b/sys-libs/uclibc-ng/Manifest index 75be2d464bc0..98d7ba00d921 100644 --- a/sys-libs/uclibc-ng/Manifest +++ b/sys-libs/uclibc-ng/Manifest @@ -3,8 +3,10 @@ AUX uclibc-ng-1.0.30-fix-ld.so.cache.patch 1515 BLAKE2B 20f317c623cf66f835191563 DIST uClibc-ng-1.0.30.tar.bz2 2302796 BLAKE2B 21888dfe5a68f83b7ba56bb557ecc5aa19fd75cedc82f2ed48073f47655888719feb27943e0309f8101a24fd2fd9165af31d5679f21c00b12f27ebfccf354bac SHA512 ddd1d91dcfdf7be8471afecf13196563ad348c41e2fa8b63ae50b83f103cf8ed8d9f003b51a54a58db2935b84692b7c011a4779582f30610ede44cb583aae742 DIST uClibc-ng-1.0.32.tar.bz2 2352471 BLAKE2B 887b67f7f03fc8610d8236a18f90584720a78bfc3a036cd6616453bea6e31140f5fd1dfd1d207cc5100854bf3e0c5cc1ca38fe6c31cf97b631892767ae23ec27 SHA512 1de5d4e99b94eeeada4233c53a95ea1b9e704ce1d4aa19ca9b17535c0328b2372ed93d24591c6ea5bfbc0b950aa575c18dcf6950fb04342924bb2b5f9ee235e8 DIST uClibc-ng-1.0.33.tar.bz2 2399235 BLAKE2B c20fd767487b2f24a0af432a1366bfb6ddf02243495d2f1c3fa95db25551a8d6215be184608528ee544661ec2ddbc2f439299245ff3dff4597b376dc7a4658ec SHA512 cab89fb6a6e314c6cc8ac964604bdfae01d2e45dc71678bbb6a8985871f625ac680fec3ddc1cb29f6d15585b7fcb782eaf40fa6c89207cde2a04286c3d610169 +DIST uClibc-ng-1.0.35.tar.bz2 2396789 BLAKE2B b4e08ccb2bbf15d6a63e279f80792520edba78a9b95cde0432a2dbfc10d4830a621d71af97d4f2bbd867e6367182847c35b62f3c315dff85ecf0c680122238e0 SHA512 da2a1bc6e4a9ce1e3f436b9987fc5f6bb968e52f09508bef6588b409b861ece29d9c1411ffb88863de3a700cb19ad52a8d38596955d3b7bbfb3b0d3745daa25f EBUILD uclibc-ng-1.0.30-r1.ebuild 10333 BLAKE2B ffa5feeb97445afc2e383dedcc1bc9a323c555f6e6804bc5a36fc94fffd61ae1924de915dd502c0201bf05c458a8ccdb855cfd823392bdf9414fcb168834c035 SHA512 f58101bbdc06e4c8f1174bd03eec3cb0618f348960f4e9c920d9e5a96a48b57077248e47899b31280f23aedb0a359400a89faabff9371bdb07a9987b1e1fd659 EBUILD uclibc-ng-1.0.32.ebuild 10283 BLAKE2B c62bcdc2976c3856b1588521df51b4cc73aecb4f7d071345fa73e4eae56590affdfe2bb6a6dfbb5502c737f96e91629e52150684a9287c4bd0d6f53ab1af2c7c SHA512 21140aa3c9f86262f6a5a7d3c44115fd1ab515966c27d54edb2db535cdd82bd1b7cb4ff2555261082d2a66f7466b257851bede3a2b36cd6da4adfd69e2244b0e EBUILD uclibc-ng-1.0.33.ebuild 10289 BLAKE2B 60b576b1bc404fa3b2785c62117e8cb51642db55b352d372e1327ac42a4571802711574bef3ff8e21f4285df0efdf511a85b535e82cc1ea258e37107d91a9b3b SHA512 44b0782d2e914b3f05cff2e34f1c94176cb340d8940efeb2b0f0d3719c12adf9a61d540ee722835eb4370ead2c7326a6b34ade1c55d6a821002c7286fc023327 +EBUILD uclibc-ng-1.0.35.ebuild 10291 BLAKE2B eb05c3ddf01a6654dde891395cf530662f6310ad1d20743f27a63f8c019a06ab06d84a7cb7e4a961de4575a574b9bc74779b96d292d73d31a5b9e07ef9c47a63 SHA512 19254a93c71a4d5bc3eea3f3d49b0f507fa28770c8e88265a461f3826f09f2e58318500c75e9d6a8f4dcd4d171ceb0c1edd2a9cf892cd768c93a726f60e3b0e5 EBUILD uclibc-ng-9999.ebuild 10291 BLAKE2B eb05c3ddf01a6654dde891395cf530662f6310ad1d20743f27a63f8c019a06ab06d84a7cb7e4a961de4575a574b9bc74779b96d292d73d31a5b9e07ef9c47a63 SHA512 19254a93c71a4d5bc3eea3f3d49b0f507fa28770c8e88265a461f3826f09f2e58318500c75e9d6a8f4dcd4d171ceb0c1edd2a9cf892cd768c93a726f60e3b0e5 MISC metadata.xml 790 BLAKE2B b48396e1f8dca79f2b9e452982007573959e89ab8467e2c0d65863a0c00dee140f9a7a5a4f02c916da76018dacdcd9993434c30ba0a511888248f83a9c063e7f SHA512 a8e955511974be64f2360c16a883eec4b9450eebb393bee5f97b50e233275de1cce62e2ef3b9945174a9dca19a7f30aaab6e90c5c28f283c378709eb3fab3ac4 diff --git a/sys-libs/uclibc-ng/uclibc-ng-1.0.35.ebuild b/sys-libs/uclibc-ng/uclibc-ng-1.0.35.ebuild new file mode 100644 index 000000000000..5ef7e61a3a91 --- /dev/null +++ b/sys-libs/uclibc-ng/uclibc-ng-1.0.35.ebuild @@ -0,0 +1,402 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit flag-o-matic multilib savedconfig toolchain-funcs + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="git://uclibc-ng.org/git/uclibc-ng" + inherit git-r3 + MY_P=uclibc-ng-${PV} +else + MY_P=uClibc-ng-${PV} +fi + +DESCRIPTION="C library for developing embedded Linux systems" +HOMEPAGE="https://uclibc-ng.org/" +if [[ ${PV} != "9999" ]] ; then + PATCH_VER="" + SRC_URI="https://downloads.uclibc-ng.org/releases/${PV}/${MY_P}.tar.bz2" + KEYWORDS="-* ~amd64 ~arm ~mips ~ppc ~x86" +fi + +LICENSE="LGPL-2" +SLOT="0" +IUSE="debug hardened iconv ipv6 symlink-compat headers-only" +# tests fail due to unusual makefile +RESTRICT="strip test" + +# 1) We can't upgrade from uclibc to uclibc-ng via a soft blocker since portage +# will delete the ld.so sym link prematurely and break the system. So we +# will hard block and give manual migration instructions. +# 2) Currently uclibc and uclibc-ng's iconv are in bad shape. We've been using +# the breakout library. The disadvantage here is that we have to sprinkle +# LDFAGS=-liconv on build systems that need to link against libiconv. +RDEPEND=" + !!sys-libs/uclibc + iconv? ( dev-libs/libiconv )" + +S=${WORKDIR}/${MY_P} + +export CBUILD=${CBUILD:-${CHOST}} +export CTARGET=${CTARGET:-${CHOST}} +if [[ ${CHOST} == ${CTARGET} ]] ; then + if [[ ${CATEGORY} == cross-* ]] ; then + export CTARGET=${CATEGORY#cross-} + fi +fi + +is_crosscompile() { + [[ ${CHOST} != ${CTARGET} ]] +} + +alt_build_kprefix() { + if [[ ${CBUILD} == ${CHOST} && ${CHOST} == ${CTARGET} ]] ; then + echo /usr/include + else + echo /usr/${CTARGET}/usr/include + fi +} + +just_headers() { + use headers-only && is_crosscompile +} + +uclibc_endian() { + # XXX: this wont work for a toolchain which is bi-endian, but we + # dont have any such thing at the moment, so not a big deal + touch "${T}"/endian.s + $(tc-getAS ${CTARGET}) "${T}"/endian.s -o "${T}"/endian.o + case $(file "${T}"/endian.o) in + *" MSB "*) echo "BIG";; + *" LSB "*) echo "LITTLE";; + *) echo "NFC";; + esac + rm -f "${T}"/endian.{s,o} +} + +kconfig_q_opt() { + local flag=$1; shift + case ${flag} in + y|n) ;; + *) flag=$(usex ${flag} y n) ;; + esac + + local var="defs_${flag}" + eval "${var}+=( $* )" +} + +get_opt() { + ( + unset ${1} + . ${2:-"${S}"/.config} + echo ${!1} + ) +} + +make_oldconfig() { + yes "" 2>/dev/null | emake -s oldconfig >/dev/null +} + +make_config() { + restore_config .config + if [ -f .config ]; then + make_oldconfig + return 0 + else + ewarn "Could not locate user configfile, so we will save a default one" + fi + + emake ARCH=$1 defconfig >/dev/null + + local defs_{y,n} + + # These are forced off + defs_n=( + DOASSERTS + DODEBUG_PT + HAS_NO_THREADS + PROPOLICE_BLOCK_ABRT + SSP_QUICK_CANARY + SUPPORT_LD_DEBUG_EARLY + UCLIBC_HAS_CTYPE_UNSAFE + UCLIBC_HAS_LOCALE + LDSO_SAFE_RUNPATH + ) + + # These are forced on + defs_y=( + DO_C99_MATH + DO_XSI_MATH + FORCE_SHAREABLE_TEXT_SEGMENTS + LDSO_GNU_HASH_SUPPORT + LDSO_PRELOAD_FILE_SUPPORT + LDSO_RUNPATH + LDSO_RUNPATH_OF_EXECUTABLE + LDSO_STANDALONE_SUPPORT + PROPOLICE_BLOCK_SEGV + PTHREADS_DEBUG_SUPPORT + UCLIBC_HAS_ARC4RANDOM + UCLIBC_HAS_BACKTRACE + UCLIBC_HAS_BSD_RES_CLOSE + UCLIBC_HAS_CONTEXT_FUNCS + UCLIBC_HAS_CTYPE_CHECKED + UCLIBC_HAS_EXTRA_COMPAT_RES_STATE + UCLIBC_HAS_FENV + UCLIBC_HAS_FOPEN_CLOSEEXEC_MODE + UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE + UCLIBC_HAS_FOPEN_LARGEFILE_MODE + UCLIBC_HAS_FTS + UCLIBC_HAS_FTW + UCLIBC_HAS_GETPT + UCLIBC_HAS_GLIBC_CUSTOM_PRINTF + UCLIBC_HAS_GLIBC_CUSTOM_STREAMS + UCLIBC_HAS_GNU_GLOB + UCLIBC_HAS_HEXADECIMAL_FLOATS + UCLIBC_HAS_LIBUTIL + UCLIBC_HAS_NFTW + UCLIBC_HAS_OBSOLETE_BSD_SIGNAL + UCLIBC_HAS_PRINTF_M_SPEC + UCLIBC_HAS_PROGRAM_INVOCATION_NAME + UCLIBC_HAS_RESOLVER_SUPPORT + UCLIBC_HAS_SHA256_CRYPT_IMPL + UCLIBC_HAS_SHA512_CRYPT_IMPL + UCLIBC_HAS_SSP + UCLIBC_HAS_STUBS + UCLIBC_HAS_SYS_ERRLIST + UCLIBC_HAS_SYS_SIGLIST + UCLIBC_HAS_THREADS_NATIVE + UCLIBC_HAS_TZ_FILE_READ_MANY + UCLIBC_HAS_UTMP + UCLIBC_HAS_UTMPX + UCLIBC_HAS_WCHAR + UCLIBC_HAS_WORDEXP + UCLIBC_NTP_LEGACY + UCLIBC_SUPPORT_AI_ADDRCONFIG + UCLIBC_SUSV2_LEGACY + UCLIBC_SUSV3_LEGACY + UCLIBC_SUSV3_LEGACY_MACROS + UCLIBC_SUSV4_LEGACY + UCLIBC_USE_NETLINK + ) + + sed -i -e '/ARCH_.*_ENDIAN/d' .config + kconfig_q_opt y "ARCH_WANTS_$(uclibc_endian)_ENDIAN" + + kconfig_q_opt debug DODEBUG + kconfig_q_opt debug SUPPORT_LD_DEBUG + kconfig_q_opt debug UCLIBC_HAS_PROFILING + + kconfig_q_opt ipv6 UCLIBC_HAS_IPV6 + + kconfig_q_opt hardened UCLIBC_BUILD_NOEXECSTACK + kconfig_q_opt hardened UCLIBC_BUILD_NOW + kconfig_q_opt hardened UCLIBC_BUILD_PIE + kconfig_q_opt hardened UCLIBC_BUILD_RELRO + kconfig_q_opt hardened UCLIBC_BUILD_SSP + + local count def + for count in 1 2 ; do + # Run twice as some config opts depend on others being enabled first. + for def in ${defs_y[@]} ; do + sed -i -e "s|.*\<${def}\>.*set|${def}=y|g" .config + done + for def in ${defs_n[@]} ; do + sed -i -e "s|${def}=y|# ${def} is not set|g" .config + done + make_oldconfig + done + + einfo "Enabled options:" + for def in ${defs_y[@]} ; do + einfo " " $(grep "^${def}=y" .config || echo "could not find ${def}") + done + einfo "Disabled options:" + for def in ${defs_n[@]} ; do + einfo " " $(grep "^# ${def} is not set" .config || echo "could not find ${def}") + done + + # setup build and run paths + sed -i \ + -e "/^CROSS_COMPILER_PREFIX/s|=.*|=\"${CTARGET}-\"|" \ + -e "/^KERNEL_HEADERS/s|=.*|=\"$(alt_build_kprefix)\"|" \ + -e "/^SHARED_LIB_LOADER_PREFIX/s|=.*|=\"/$(get_libdir)\"|" \ + -e "/^DEVEL_PREFIX/s|=.*|=\"/usr\"|" \ + -e "/^RUNTIME_PREFIX/s|=.*|=\"/\"|" \ + -e "/^UCLIBC_EXTRA_CFLAGS/s|=.*|=\"${UCLIBC_EXTRA_CFLAGS}\"|" \ + .config || die + + make_oldconfig +} + +pkg_setup() { + # Make sure our CHOST is a uclibc toolchain for native compiling + if [[ ${CHOST} == ${CTARGET} ]]; then + case ${CHOST} in + *-uclinux*|*-uclibc*) ;; + *) die "Use sys-devel/crossdev to build a uclibc toolchain" ;; + esac + fi + + # uClibc-ng doesn't carry old Linux threads, and since we force + # threading our only choice is NPTL which requires i486 and later. + [[ ${CTARGET} == i386* ]] && die "i386 can't support Native Posix Threads (NPTL)." +} + +src_prepare() { + local version subversion extraversion + + # uclibc-ng tries to create a two sym link with ld.so, + # ld-uClibc.so.{0,MAJOR_VERSION} -> ld-uClibc-.so + # where MAJOR_VERSION != 0 indicates the ABI verison. + # We want to get rid of this and just have ABI = 0. + eapply "${FILESDIR}"/uclibc-compat-r1.patch + + # We need to change the major.minor.sublevel of uclibc-ng. + # Upstream sets MAJOR_VERSION = 1 which breaks runtime linking. + # If we really want the ABI bump, we'll have to hack the gcc + # spec file and change the '*link:' rule. + version_0=$(ver_cut 1) + version_1=$(ver_cut 2) + version_2=$(ver_cut 3) + if [[ -z ${version_1} ]]; then + subversion=0 + extraversion=0 + else + subversion=${version_1} + if [[ -z ${version_2} ]]; then + extraversion=0 + else + extraversion=.${version_2} + fi + fi + + sed -i \ + -e "/^MAJOR_VERSION/s|:=.*|:= 0|" \ + -e "/^MINOR_VERSION/s|:=.*|:= ${version_0}|" \ + -e "/^SUBLEVEL/s|:=.*|:= ${subversion}|" \ + -e "/^EXTRAVERSION/s|:=.*|:= ${extraversion}|" \ + Rules.mak || die + + eapply_user +} + +src_configure() { + # Map our toolchain arch name to the name expected by uClibc-ng. + local target=$(tc-arch) + case ${target} in + amd64) target="x86_64";; + arm) target="arm";; + mips) target="mips";; + ppc) target="powerpc";; + x86) target="i386";; + esac + + # Do arch specific configuration by changing the defaults in + # extra/Configs/Config.. If these are not overridden + # by an save .config, they will be selected by default. + + # For i386, i486, i586 and i686 + local cpu + if [[ ${target} == "i386" ]]; then + [[ ${CTARGET} == i[456]86* ]] && cpu="${CTARGET:1:1}86" + sed -i -e "s|default CONFIG_686|default CONFIG_${cpu:-486}|" \ + extra/Configs/Config.i386 || die + fi + + # For arm + if [[ ${target} == "arm" ]]; then + sed -i -e '/Build for EABI/a \\tdefault y' extra/Configs/Config.arm + fi + + # We set HOSTCC to the proper tuple rather than just 'gcc' + sed -i -e "s|^HOSTCC.*=.*|HOSTCC=$(tc-getBUILD_CC)|" Rules.mak + + make_config ${target} + + einfo + einfo "Runtime Prefix: /" + einfo "Devel Prefix: /usr" + einfo "Kernel Prefix: $(alt_build_kprefix)" + einfo "CBUILD: ${CBUILD}" + einfo "CHOST: ${CHOST}" + einfo "CTARGET: ${CTARGET}" + einfo "ABI: ${ABI}" + einfo "ENDIAN: $(uclibc_endian)" + einfo +} + +src_compile() { + emake headers + just_headers && return 0 + + emake + if is_crosscompile ; then + emake -C utils hostutils + else + emake utils + fi +} + +src_test() { + is_crosscompile && return 0 + + # assert test fails on pax/grsec enabled kernels + # normal vfork test fails in sandbox (both glibc/uclibc) + emake UCLIBC_ONLY=1 check +} + +src_install() { + local sysroot=${D} + is_crosscompile && sysroot+="/usr/${CTARGET}" + + local target="install" + just_headers && target="install_headers" + emake DESTDIR="${sysroot}" ${target} + + save_config .config + + # remove files coming from kernel-headers + rm -rf "${sysroot}"/usr/include/{linux,asm*} + + # 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 + if is_crosscompile ; then + dosym usr/include /usr/${CTARGET}/sys-include + if ! just_headers && [[ -n $(get_opt HAVE_SHARED) ]] ; then + newbin utils/ldconfig.host ${CTARGET}-ldconfig + newbin utils/ldd.host ${CTARGET}-ldd + fi + return 0 + fi + + if use symlink-compat; then + dosym libc.so.0 "${DESTDIR}"/lib/libcrypt.so.0 + dosym libc.so.0 "${DESTDIR}"/lib/libdl.so.0 + dosym libc.so.0 "${DESTDIR}"/lib/libm.so.0 + dosym libc.so.0 "${DESTDIR}"/lib/libpthread.so.0 + dosym libc.so.0 "${DESTDIR}"/lib/librt.so.0 + dosym libc.so.0 "${DESTDIR}"/lib/libresolv.so.0 + dosym libc.so.0 "${DESTDIR}"/lib/libubacktrace.so.0 + dosym libc.so.0 "${DESTDIR}"/lib/libutil.so.0 + fi + + emake DESTDIR="${D}" install_utils + dobin extra/scripts/getent + dodoc README docs/*.txt +} + +pkg_postinst() { + is_crosscompile && return 0 + + if [ ! -e "${ROOT}"/etc/TZ ] ; then + ewarn "Please remember to set your timezone in /etc/TZ" + mkdir -p "${ROOT}"/etc + echo "UTC" > "${ROOT}"/etc/TZ + fi + [ "${ROOT}" != "/" ] && return 0 + # update cache before reloading init + ldconfig +} -- cgit v1.2.3