diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-06-23 07:00:28 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-06-23 07:00:28 +0100 |
commit | e23cdda4dbb0c83b9e682ab5e916085a35203da5 (patch) | |
tree | 5a4ac448a3b288b731c24d947e0ce52df3cab07b /sys-libs | |
parent | 8187a741807f3e9a9e26304973cf18087dcf2560 (diff) |
gentoo resync : 23.06.2018
Diffstat (limited to 'sys-libs')
24 files changed, 256 insertions, 1529 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz Binary files differindex 1de80e426df2..fc2c19412be1 100644 --- a/sys-libs/Manifest.gz +++ b/sys-libs/Manifest.gz diff --git a/sys-libs/binutils-libs/Manifest b/sys-libs/binutils-libs/Manifest index dbf70495570c..6f5417f55f86 100644 --- a/sys-libs/binutils-libs/Manifest +++ b/sys-libs/binutils-libs/Manifest @@ -13,6 +13,6 @@ EBUILD binutils-libs-2.25.1-r2.ebuild 2725 BLAKE2B a4fe58fe79272a65c7703b3be801b EBUILD binutils-libs-2.27.ebuild 2847 BLAKE2B 3d02dfccc46d3398646d338e01f096de36a74fdf6d224a8ae221120fe8105cc674ed09840b01d84994ff11c4f73c88b39737b3ff484d32dbfb1183f20eb3a1a4 SHA512 629aeca9ec392f957fbbe7f2a3d5564016d096b7cbe63ef9337351e599722bced4c3eb190d8dd0f091eb3ff816e839b03f7a7662f22f9e22b36ef3e8e5bb93ae EBUILD binutils-libs-2.28.1.ebuild 2872 BLAKE2B f0ef199dfc0025b06dbdab74f76f0a1775ca47030bd26cf2cf4ce4f6b7f3c5325d1629b3713aa40a1f85b9b0151555cf0a978c0390bef48846b3b1eb0c89b05d SHA512 b00d0080957824bf447035172b4941fecfd358f2cbbdeb82a578e11e0a8b4c712091344b904d8f74840164032d210834b30ed8a90ac3dddb47dc9632d66f8a9b EBUILD binutils-libs-2.29.1-r1.ebuild 2921 BLAKE2B f38060716462c9c51bc84b98348b82952b6bb47cd33136d7eaaca822ba6e40504fad2b0c778a4a02989ca9e20f812d928d718295376141dd02e519e541a605a3 SHA512 8fc849244e3cdb9b1a35e9bed1f2e57e8bba210e6ab9aa7408904b5a04cc532dfff52a9840e866df5985f6b1d05c96ce7549c7514389a8dae9a4d5d798d48c8e -EBUILD binutils-libs-2.30-r2.ebuild 3207 BLAKE2B 99ff0feac55ae0b30338651337b749ef2b4f1e0b39b183260f18ccd47728fb811b202572583487d8817475f783b690e7171c481187160a2fc6dc4141b832da38 SHA512 8f43b50249c972a2e7e6aca1becb10ce21d577c02801868bcfb09abd23e386fb48a3c5ec15bed7efe2832ef51da0d1dec327f6875c8b9834a28a60811e687c96 +EBUILD binutils-libs-2.30-r2.ebuild 3206 BLAKE2B 706e878c6cf39df89fa70e1cc996aa4c1268272af030f301fdb4f8aa4104e8608c4430bb4bc23d259b92b3ed43264903a29a55a2d18ade2fff976423971a3337 SHA512 f9ccb80fd70d91165a967e0363c9ded41e9004b0a16e615ae3af8fef75bdaf4a5f30ebf24ebff72fb21c31ed83e7eaa6b7fa486db9a84a9544b8b9ba27d75b01 EBUILD binutils-libs-2.30-r3.ebuild 3211 BLAKE2B 7715a2ba111df9c62f3b00998ecb7d2b6d9aa42273195488fd121ea3f0d52554a7dd1a98e138d5b9870becfe9038ba57da8254c84720f5768af60822113386b8 SHA512 f08ecc65cb4ec222ae651ecb9fce48ebe2503ffb18204fb3183f18e802485721937e41f9140b54d56068bfa69468261d32aacaeffe595feb8788bcc837795c39 MISC metadata.xml 524 BLAKE2B 6f00793b2dc155b19d816b8acfd49e6bfc2ae35418ecc97fbbd3f9d0ed08b5f95a299b28fe6edad1a66f4d64abe99dc8a62a974fd70e28b535cd366239bf1cca SHA512 9db7c7a3082ee848ec4963831da06cced596d543e53660747fb56ac33998c219e1d7252892ffc32132d7db3c99ce9746fb6d9e85f866c3cba97552c31948342c diff --git a/sys-libs/binutils-libs/binutils-libs-2.30-r2.ebuild b/sys-libs/binutils-libs/binutils-libs-2.30-r2.ebuild index 31f6e054bf7e..a21b1a8327e1 100644 --- a/sys-libs/binutils-libs/binutils-libs-2.30-r2.ebuild +++ b/sys-libs/binutils-libs/binutils-libs-2.30-r2.ebuild @@ -20,7 +20,7 @@ SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz LICENSE="|| ( GPL-3 LGPL-3 )" # The shared lib SONAMEs use the ${PV} in them. SLOT="0/${PV}" -KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="64-bit-bfd multitarget nls static-libs" COMMON_DEPEND="sys-libs/zlib[${MULTILIB_USEDEP}]" diff --git a/sys-libs/gdbm/Manifest b/sys-libs/gdbm/Manifest index 16fcb3c4621a..f2e2ae57cfa1 100644 --- a/sys-libs/gdbm/Manifest +++ b/sys-libs/gdbm/Manifest @@ -2,7 +2,9 @@ AUX gdbm-1.13-fix-a-typo-in-gdbm.h.patch 657 BLAKE2B af19808507b00d941a51756bbc2 AUX gdbm-1.13-fix-build-with-enable-gdbm-export.patch 1568 BLAKE2B 65a841191f362ca94d0b7d1b9df042b5f6b75aaf560aceaa702c8a11e9fa9430deb106aac6a50b211b07c66f9457732ca164352a62fc244fd4e3f2862c69265c SHA512 8bd5308a95abb7df3dd8edc63eba5c8830a6f4aa47066ac644cf5ec19767bcd97618834c598fbc1603093a8e1516b4ef325afe2a68b001d5353d2e4247d562a2 DIST gdbm-1.13.tar.gz 891987 BLAKE2B f73cb89aeed140a584c5a8bce9c2324cc39a7647ee288364af66fbe1c1cd8662e53f7cb82a208e795a6d27adc048018153671d964ecad518407eb888283e17c5 SHA512 fdb777f5b415b0578ea46b4a6fc70151a04a3568e2f2c8c0219ccad8c0d34abb773d80d5d7a06462ad1a3d6c1f3b5b7ab25f9de4f43ccf05c58db05f9a2906ad DIST gdbm-1.14.1.tar.gz 894412 BLAKE2B e519af45d670ec4285ece01edc17770dcb0d77f12edcf2d3d4cb9580c6d2bb6d6dddb57d4f33490e11dc9df7cd08fd44ab7737b62271c5cfdc9485b90d0d4888 SHA512 a15d7acb0ebf459f4f7d262e5a05393a9a7c8e9ae906d12ccb3b38715de15a41c9254e7814555e2f9af306ef63b2dc68b5f9f6c7b75dd0db77e07a58831ff603 +DIST gdbm-1.15.tar.gz 928945 BLAKE2B 78214262fb50f7fbfe7141c60cc1c3a4e31bfa89067264979ef11e28c4d68daec4dac54feadb6ed21919fd1af68b1ca4fe6ab7725d4ad3057af46246274171fa SHA512 04f1f13b0d62e7506b05329fd52a0df0af8320f00297e88efef49a6be76838695960d49198a6a0c268e588397f6442ff49f094de7e31241fa63925c40ae70d21 DIST gdbm-1.8.3.tar.gz 228695 BLAKE2B 21b5833facb97fe937020d80b038c7b09e55eea6bdb9ec323d185a0980f235ff6a225d180d86d984469ce04a3f0266d20881f317f4339915bc6f61ab150ac2ac SHA512 2a01751ee8f730db563b4f52185c72f1c7a4f66530d6736f05f7446153be685ea0bb6ea1d2bad16ce31547fea879dc48507ff65ad35b0973df9aa385713b10d7 EBUILD gdbm-1.13-r2.ebuild 1880 BLAKE2B 93488b07da9e466dfd1ba72283a73285ad99400af89edd57e3f1af0f17a797cadbe819dd7eae9bee06cbbc85f7381460c1caa7d8a3c3e2ce194c492fea8092f4 SHA512 4ff430d01e7f803c4783cb143da5b988533331fe40887870142aa11501ec1a1d12bda68021ca888dfd19019ee8b85f1275da9c290faf4ba5156c26ebff767af6 EBUILD gdbm-1.14.1.ebuild 1802 BLAKE2B a9872ffcb3aa6c7b0656095b30a4ea5e71fe6c7967244b59c84a0e59a739976ed08b89318a22e35548d00904bb7c51aacaaffe7f0f21c9ff059252d37a08ca38 SHA512 b0d3430a85a19106aea0e6a57c7334ca99e008bdb3f83e5413cfb19e9c9ab75d3cd54714bfdb2e172ed4edcc74f5c732ad4c9ca6e37fa806c76f25ceb6f8c244 +EBUILD gdbm-1.15.ebuild 1342 BLAKE2B cf3f17073ba5838915b99bb8938511423a3e4df7a5cc659a06fb1afa61b90ab7027f465dac823cfa0e83d7ca70aae5d59d4724e1fb1b5185bfee037e33c935e5 SHA512 616a8e23631fbdf41fcd5320d18a09adb159b4872bc0f0331dfc1f78a337d415e0e4209e6704ecbfabd9a8382779b2f2963a9b5fe90e32e3585b9e71c672b4a8 MISC metadata.xml 471 BLAKE2B d73a0a1493a17d9990451e721b5bccddbdc3cfb59af544b1cdd927e31c65795888b13c7e42274a454d7dd8762ba92c5ab94dae5af7389a67688e6b06840ebad5 SHA512 05f989aa1f1d2ca29d4084741af8465c3daa0713881130aeb8ba8ac65f89a8874d668a0ea32184ec404e19777aa1df9e8d2526fe2ce9a22cae8c08c608501d41 diff --git a/sys-libs/gdbm/gdbm-1.15.ebuild b/sys-libs/gdbm/gdbm-1.15.ebuild new file mode 100644 index 000000000000..fa77f1fe956a --- /dev/null +++ b/sys-libs/gdbm/gdbm-1.15.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +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 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-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}" + +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 baca79f4ce1f..d7b914bbb338 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -36,7 +36,7 @@ DIST glibc-2.27-patches-2.tar.bz2 129983 BLAKE2B fad8d14f5330bc301804913f92f4805 DIST glibc-2.27.tar.xz 15395316 BLAKE2B ea206d304c8c9aa86d69db981a14bea008602cea06a6c151c4971a8df059949ffe5632b42a67ab0ffcd7c4d7ce1ec02ac48815dac4dade1c4dd41eaee8a6ed33 SHA512 7c5581154487d38d173ce1feb944e60207139cca148bccf066eaae322c0c2d219423bdcfa15c7f9be1b5e45dfc43c641cc5d80d3c3c65837d08a83cdb4e2a147 DIST glibc-9999-patches-6.tar.bz2 15026 BLAKE2B 1db592be7c8e92a0c1e2cc88910cc3ddf39786551df14c3c99e973a2b3ea3a6f7d8afbe4f309d387121b131fde74253b00e07c2c3ffbe937be0fbf0d86ee8479 SHA512 4927a31e608bbb21f78bd2c0fbf75adee852f8b3c2ccb1f0d638b79e260628a2bf54aa7d56978f2ca8def5a3b41103d564888f42b18686d02945fa29f2a1e988 EBUILD glibc-2.19-r1.ebuild 5456 BLAKE2B 8d446e7b7d9c521925a2a37f1373f354991b89cc59a8e2e163cafb5d76284897cc7573b0e520f50aeda2da28d9477ae6cc3e9d42c6174c517cff7bc10a89bbda SHA512 250b5c69f0b9a3b1cf140223b1acb17d05d840c01a959c4cbc3859f2f87c86566d0d8a4a686c403058cc29c4fefdc11fec696f24de9816b35617fcb3f4666d70 -EBUILD glibc-2.19-r2.ebuild 40613 BLAKE2B 3cb96b82da71e6019d1e2721de6287366ae19d207d931f8d5b6455f81a440728bf63d1136543f82618230a85420e494f81e4a90dc9379ab1d8d9d052872d97b9 SHA512 c3e018b24caf7fcbc15ee11e444f74246eca8d0bf16eaafb93add19d1501dcb827f5f4f1dd7d82fec0fe1643ad5df4b71bcdf48dafae486d0614ab9632155329 +EBUILD glibc-2.19-r2.ebuild 40626 BLAKE2B 5c0a70e55df2288f7c0046005692daf1507324460ad35d0fee15048bf27069ff57a16b4c7c5110252ecfbad1e9527aec8b728a87b5b3c48d2deadd02e8fc58dd SHA512 fced8d70b3befad67b77ffa234506cea690e562fa54bae9d25610feb08585b320be0592f06cc456b836979b80b80f6c04a6500131785151a80c1313e27048ebe EBUILD glibc-2.20-r2.ebuild 4924 BLAKE2B 8f2b71dd56f535915564e2517769844b234b5b02cbd4edaeb9ffd0a323e8cc7be663e6e57bad0c28df453ea332bfbb5891b07a569a0885a76c9427d680959ecd SHA512 00af5f249a1fcb0eb3ecc460ccd288daf752575df6ef3887bbffbaf3999360a24ae4058ad7e770206d8c2a86828238981d1820e28780be38481361f2f55518a8 EBUILD glibc-2.21-r2.ebuild 4899 BLAKE2B 4097f29160b437edb96e6f731c797cba43bfb65fe164c1ffc3af0025d52c18a286b9a75d56d3e371e33e87f99a71a2115ba2eba7cb174dd2787a9b6a6d84b674 SHA512 68cc49c310ff816b2433b4f9e389e992d64f623809d4a4c3391dcce7ee4c385365ef4278de79bf4b6b9a4ed969e10b94bebabe86e560295bd1c0a9652aec12ec EBUILD glibc-2.22-r4.ebuild 4950 BLAKE2B 8d048dafaf8eec034d2ed2f3a8f400b3f4aedab39d7fe11795376a135ed9a42843f9cc6888e721ef242f78bc4230188d53cdccaf7686186d43201101519cc60b SHA512 64387259f921dc26d91d5d4e86bbbbfd740bb4b2e1337c121f799370abc9c6298745f9686e6aa501b10c05150ac1129ef8bd37d140e9c83c41ac3c0f54ee052f @@ -44,7 +44,6 @@ EBUILD glibc-2.23-r4.ebuild 4949 BLAKE2B 99db0ec4a452f04a2aef9b347a5ddec03cc88fb EBUILD glibc-2.24-r4.ebuild 4988 BLAKE2B 8e08345c96e176984b73a073efca21f771d41af1af75106ec88a22bd55d7f69f28d9c01989026a3e58f3df4fac2a59db68d5ac8a8bbb0f411c75da8792f3402a SHA512 dd1d996eaf35197f7b7b6c111957eb98ef776d0a76a949b95f9bb17075dca43b2a354f8d15be133b9f3ff6c40a5b1f4ec28bd8d41c5cfc51da006eda8b005a05 EBUILD glibc-2.25-r11.ebuild 4975 BLAKE2B cef32f5d160644845e7cf45a9dd4c8cef1dcff8fca6b64c083c3e05d07533e445a6139939710b9284f7587bbf3977ca556caeb964e73ac21a382d942423d886a SHA512 f26645acc02f16209ec068641a800ef0a4ad2a422c9473e14a273fdece9b53074b837907d635a8585cf9dbb1acea14178166a4a3410aa4c70a745b89a764b6f1 EBUILD glibc-2.26-r7.ebuild 25622 BLAKE2B b912a2a2d9cbad70190e53bf85443bb24ec360c248f88825fc39b90bbc795d1b9999b4a3ebf8f21e6d87d122dd764805ffb50c3d1e318bfbb90fb4a815226acf SHA512 1e88a2ddecb2f93ab81afe2a3aadc1d9c9be778896182076d66e305518324eadfadabd3dc3255f4cb00f5842c57eea4e20022168d5dac7cb16e4590822969287 -EBUILD glibc-2.27-r3.ebuild 41086 BLAKE2B b07976ab3bc79dad3d578c02210d98ec1454ef0adb5de2917c08b6dc927b4d915c70b0159c602e57048c579ddfc7381d16b1c0de093c1485b4038c8a1c087ce9 SHA512 321f0582569214ff63c6a1c730b7d94d24a881c59cb118578e73c3336c4dc4127b53ff62ae5cc31bf0b4947fddcda3f43e084e1d4d67062cb6a4a138592bceda -EBUILD glibc-2.27-r4.ebuild 41417 BLAKE2B 7fea2ac7551e32e21f84d3b4161f2a00a66107e0155b59b3bd1a2ad8cb732d3eea0d98dae67e5b7d1cf5e53d5d7c005bae392c08ebe2db5009da3b5da1d39f1e SHA512 c35ddcafaedc82df8295ec9667953525659350c8372a95d05a07609c6e80077773a35f3e05bc296ba01fbc96b7f38417f2ca7d00101d299f97f5261e36d16e3b -EBUILD glibc-9999.ebuild 41433 BLAKE2B 8f8d1e0a9dd0a6fe87d01cba22e9d814143e49ebd7690534ff4b486b11515b904b2c1d971b7465906a967d32a6239d7a19af3f95488333a663a7507d8646597a SHA512 aca46c4474154610678330c6a316337aa9122401a8ebbbe5cf9f9f957362cf9cf0c9ce32e368b1531c087641c4fd6823f99e873cdd89ee0b7a548e949d2b0839 +EBUILD glibc-2.27-r4.ebuild 41434 BLAKE2B ad24af35925a429c5680824554f9b388fec11f574ec6be63a327aaca485a3d80c2656d29c25c6562634580ef1f22022fb748c794d8e1b7482cef404f4f7d1e4d SHA512 58b98614032c0a7c383a833dffdb93862b30c1e19dff8d0d62c4363c5f4d18ce7edc5b481ad5ee58d12511b682c962ed8db4e411a68d069dbf340f9a23f1a268 +EBUILD glibc-9999.ebuild 41515 BLAKE2B b30c869593aea9e490b87efe36d28f0add734da2ff54ec6d45d684daca56404ef14c870593b30e6a898ff1753d36754a03ef019ca1ca5f43cef2374c55fabfaa SHA512 392f347bcd410547547cf3eb7e2c837edd9116558e2d2875e211bd9759bfd27c2ed3daef15e5e3c8141b72ec93b4ef3ea0d1074a0154c8c4d3b6b7b648d32eb0 MISC metadata.xml 1054 BLAKE2B dbc091e54130729385bc02aaa1025885f101caa88d601b1f7670974d89e7e24aae5d37fd6699278a37c0064e1f3232c04954dc127869427317b5d80b499f3813 SHA512 65474b7d32ceb6bafe8ae0e18aa0b46b68cefecce5570a0e8d4a0117019e6540f2feae35cecbebad382b4f06d6e5ae1dfa9b8a61889881e8534956dd42df8e4b diff --git a/sys-libs/glibc/glibc-2.19-r2.ebuild b/sys-libs/glibc/glibc-2.19-r2.ebuild index b2b9a397b55c..a398dd3650e1 100644 --- a/sys-libs/glibc/glibc-2.19-r2.ebuild +++ b/sys-libs/glibc/glibc-2.19-r2.ebuild @@ -367,6 +367,7 @@ setup_flags() { append-flags -O2 -fno-strict-aliasing filter-flags '-fstack-protector*' + append-flags '-fno-stack-protector' # Starting with gcc-6 (and fully upstreamed pie patches) we control # default enabled/disabled pie via use flags. So nothing to do @@ -1250,7 +1251,6 @@ glibc_do_src_install() { 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(). diff --git a/sys-libs/glibc/glibc-2.27-r3.ebuild b/sys-libs/glibc/glibc-2.27-r3.ebuild deleted file mode 100644 index f8a12e89714c..000000000000 --- a/sys-libs/glibc/glibc-2.27-r3.ebuild +++ /dev/null @@ -1,1410 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit prefix eutils versionator 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" -RESTRICT="strip" # Strip ourself #46186 -SLOT="2.2" - -EMULTILIB_PKG="true" - -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 ~s390 ~sh ~sparc ~x86" - SRC_URI="mirror://gnu/glibc/${P}.tar.xz" -fi - -RELEASE_VER=${PV} - -GCC_BOOTSTRAP_VER=20180511 - -# Gentoo patchset -PATCH_VER=2 - -SRC_URI+=" https://dev.gentoo.org/~dilfridge/distfiles/${P}-patches-${PATCH_VER}.tar.bz2" -SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" - -IUSE="audit caps compile-locales doc gd hardened headers-only multilib nscd profile selinux suid systemtap 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 - -# We need a new-enough binutils/gcc to match upstream baseline. -# Also we need to make sure our binutils/gcc supports TLS. -COMMON_DEPEND=" - nscd? ( selinux? ( - audit? ( sys-process/audit ) - caps? ( sys-libs/libcap ) - ) ) - suid? ( caps? ( sys-libs/libcap ) ) - selinux? ( sys-libs/libselinux ) - systemtap? ( dev-util/systemtap ) -" -DEPEND="${COMMON_DEPEND} - >=app-misc/pax-utils-0.1.10 - !<sys-apps/sandbox-1.6 - !<sys-apps/portage-2.1.2 - !<sys-devel/bison-2.7 - doc? ( sys-apps/texinfo ) -" -RDEPEND="${COMMON_DEPEND} - sys-apps/gentoo-functions - !sys-kernel/ps3-sources - !sys-libs/nss-db -" - -if [[ ${CATEGORY} == cross-* ]] ; then - DEPEND+=" !headers-only? ( - >=${CATEGORY}/binutils-2.24 - >=${CATEGORY}/gcc-4.9 - )" - [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers" -else - DEPEND+=" - >=sys-devel/binutils-2.24 - >=sys-devel/gcc-4.9 - virtual/os-headers - " - RDEPEND+=" vanilla? ( !sys-libs/timezone-data )" - PDEPEND+=" !vanilla? ( sys-libs/timezone-data )" -fi - -# -# Small helper functions -# - -is_crosscompile() { - [[ ${CHOST} != ${CTARGET} ]] -} - -just_headers() { - is_crosscompile && use headers-only -} - -alt_prefix() { - is_crosscompile && echo /usr/${CTARGET} -} - -# We need to be able to set alternative headers for compiling for non-native -# platform. Will also become useful for testing kernel-headers without screwing -# up the whole system. -alt_headers() { - echo ${ALT_HEADERS:=$(alt_prefix)/usr/include} -} - -alt_build_headers() { - if [[ -z ${ALT_BUILD_HEADERS} ]] ; then - ALT_BUILD_HEADERS="${EPREFIX}$(alt_headers)" - if tc-is-cross-compiler ; then - ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers) - if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then - local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h') - ALT_BUILD_HEADERS=${header_path%/linux/version.h} - fi - fi - fi - echo "${ALT_BUILD_HEADERS}" -} - -alt_libdir() { - echo $(alt_prefix)/$(get_libdir) -} -alt_usrlibdir() { - echo $(alt_prefix)/usr/$(get_libdir) -} - -builddir() { - echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1" -} - -do_compile_test() { - local ret save_cflags=${CFLAGS} - CFLAGS+=" $1" - shift - - pushd "${T}" >/dev/null - - rm -f glibc-test* - printf '%b' "$*" > glibc-test.c - - nonfatal emake -s glibc-test - ret=$? - - popd >/dev/null - - CFLAGS=${save_cflags} - return ${ret} -} - -do_run_test() { - local ret - - if [[ ${MERGE_TYPE} == "binary" ]] ; then - # ignore build failures when installing a binary package #324685 - do_compile_test "" "$@" 2>/dev/null || return 0 - else - if ! do_compile_test "" "$@" ; then - ewarn "Simple build failed ... assuming this is desired #324685" - return 0 - fi - fi - - pushd "${T}" >/dev/null - - ./glibc-test - ret=$? - rm -f glibc-test* - - popd >/dev/null - - return ${ret} -} - -setup_target_flags() { - # This largely mucks with compiler flags. None of which should matter - # when building up just the headers. - just_headers && return 0 - - case $(tc-arch) in - x86) - # -march needed for #185404 #199334 - # TODO: When creating the first glibc cross-compile, this test will - # always fail as it does a full link which in turn requires glibc. - # Probably also applies when changing multilib profile settings (e.g. - # enabling x86 when the profile was amd64-only previously). - # We could change main to _start and pass -nostdlib here so that we - # only test the gcc code compilation. Or we could do a compile and - # then look for the symbol via scanelf. - if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n' 2>/dev/null ; 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 - # Note: This test only matters when the x86 ABI is enabled, so we could - # optimize a bit and elide it. - # TODO: See cross-compile issues listed above for 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' 2>/dev/null ; 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" - fi - ;; - mips) - # The mips abi cannot support the GNU style hashes. #233233 - filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both - ;; - sparc) - # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though. - filter-flags "-fcall-used-g7" - append-flags "-fcall-used-g6" - - # If the CHOST is the basic one (e.g. not sparcv9-xxx already), - # try to pick a better one so glibc can use cpu-specific .S files. - # We key off the CFLAGS to get a good value. Also need to handle - # version skew. - # We can't force users to set their CHOST to their exact machine - # as many of these are not recognized by config.sub/gcc and such :(. - # Note: If the mcpu values don't scale, we might try probing CPP defines. - # Note: Should we factor in -Wa,-AvXXX flags too ? Or -mvis/etc... ? - - local cpu - case ${CTARGET} in - sparc64-*) - case $(get-flag mcpu) in - niagara[234]) - if version_is_at_least 2.8 ; then - cpu="sparc64v2" - elif version_is_at_least 2.4 ; then - cpu="sparc64v" - elif version_is_at_least 2.2.3 ; then - cpu="sparc64b" - fi - ;; - niagara) - if version_is_at_least 2.4 ; then - cpu="sparc64v" - elif version_is_at_least 2.2.3 ; then - cpu="sparc64b" - fi - ;; - ultrasparc3) - cpu="sparc64b" - ;; - *) - # 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 - [[ -z ${cpu} ]] && append-flags "-Wa,-xarch=v9a" - ;; - esac - ;; - sparc-*) - case $(get-flag mcpu) in - niagara[234]) - if version_is_at_least 2.8 ; then - cpu="sparcv9v2" - elif version_is_at_least 2.4 ; then - cpu="sparcv9v" - elif version_is_at_least 2.2.3 ; then - cpu="sparcv9b" - else - cpu="sparcv9" - fi - ;; - niagara) - if version_is_at_least 2.4 ; then - cpu="sparcv9v" - elif version_is_at_least 2.2.3 ; then - cpu="sparcv9b" - else - cpu="sparcv9" - fi - ;; - ultrasparc3) - cpu="sparcv9b" - ;; - v9|ultrasparc) - cpu="sparcv9" - ;; - v8|supersparc|hypersparc|leon|leon3) - cpu="sparcv8" - ;; - 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} - - # 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 - 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 - - # Lock glibc at -O2; we want to be conservative here. - # -fno-strict-aliasing is to work around #155906. - filter-flags '-O?' - append-flags -O2 -fno-strict-aliasing - - filter-flags '-fstack-protector*' - - # Starting with gcc-6 (and fully upstreamed pie patches) we control - # default enabled/disabled pie via use flags. So nothing to do - # here then. #618160 - if [[ $(gcc-major-version) -lt 6 ]]; then - if use hardened && tc-enables-pie ; then - # Force PIC macro definition for all compilations since they're all - # either -fPIC or -fPIE with the default-PIE compiler. - append-cppflags -DPIC - else - # Don't build -fPIE without the default-PIE compiler and the - # hardened-pie patch - filter-flags -fPIE - fi - fi -} - -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() { - # 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 - version_is_at_least ${nver} ${bver} -} - -# Setup toolchain variables that had historically been defined in the -# profiles for these archs. -setup_env() { - # silly users - unset LD_RUN_PATH - unset LD_ASSUME_KERNEL - - if is_crosscompile || tc-is-cross-compiler ; then - multilib_env ${CTARGET_OPT:-${CTARGET}} - - if ! use multilib ; then - MULTILIB_ABIS=${DEFAULT_ABI} - else - MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}} - fi - - # If the user has CFLAGS_<CTARGET> in their make.conf, use that, - # and fall back on CFLAGS. - local VAR=CFLAGS_${CTARGET//[-.]/_} - CFLAGS=${!VAR-${CFLAGS}} - einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}" - fi - - setup_flags - - export ABI=${ABI:-${DEFAULT_ABI:-default}} - - if use headers-only ; 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_OPT:-${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}" -} - -check_devpts() { - # Make sure devpts is mounted correctly for use w/out setuid pt_chown. - - # If merely building the binary package, then there's nothing to verify. - [[ ${MERGE_TYPE} == "buildonly" ]] && return - - # Only sanity check when installing the native glibc. - [[ ${ROOT} != "/" ]] && return - - # If they're opting in to the old suid code, then no need to check. - use suid && return - - if awk '$3 == "devpts" && $4 ~ /[, ]gid=5[, ]/ { exit 1 }' /proc/mounts ; then - eerror "In order to use glibc with USE=-suid, you must make sure that" - eerror "you have devpts mounted at /dev/pts with the gid=5 option." - eerror "Openrc should do this for you, so you should check /etc/fstab" - eerror "and make sure you do not have any invalid settings there." - die "mount & fix your /dev/pts settings" - fi -} - -# The following Kernel version handling functions are mostly copied from portage -# source. It's better not to use linux-info.eclass here since a) it adds too -# much magic, see bug 326693 for some of the arguments, and b) some of the -# functions are just not provided. - -g_get_running_KV() { - uname -r - return $? -} - -g_KV_major() { - [[ -z $1 ]] && return 1 - local KV=$@ - echo "${KV%%.*}" -} - -g_KV_minor() { - [[ -z $1 ]] && return 1 - local KV=$@ - KV=${KV#*.} - echo "${KV%%.*}" -} - -g_KV_micro() { - [[ -z $1 ]] && return 1 - local KV=$@ - KV=${KV#*.*.} - echo "${KV%%[^[:digit:]]*}" -} - -g_KV_to_int() { - [[ -z $1 ]] && return 1 - local KV_MAJOR=$(g_KV_major "$1") - local KV_MINOR=$(g_KV_minor "$1") - local KV_MICRO=$(g_KV_micro "$1") - local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO )) - - # We make version 2.2.0 the minimum version we will handle as - # a sanity check ... if its less, we fail ... - if [[ ${KV_int} -ge 131584 ]] ; then - echo "${KV_int}" - return 0 - fi - return 1 -} - -g_int_to_KV() { - local version=$1 major minor micro - major=$((version / 65536)) - minor=$(((version % 65536) / 256)) - micro=$((version % 256)) - echo ${major}.${minor}.${micro} -} - -eend_KV() { - [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]] - eend $? -} - -get_kheader_version() { - printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \ - $(tc-getCPP ${CTARGET}) -I "${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() { - # Make sure devpts is mounted correctly for use w/out setuid pt_chown - check_devpts - - # Prevent native builds from downgrading - if [[ ${MERGE_TYPE} != "buildonly" ]] && \ - [[ ${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." - die "Aborting to save your system." - fi - - if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then - eerror "Your old kernel is broken. You need to update it to a newer" - eerror "version as syscall(<bignum>) will break. See bug 279260." - die "Old and broken kernel." - fi - fi - - # Users have had a chance to phase themselves, time to give em the boot - if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then - eerror "You still haven't deleted ${EROOT}/etc/locales.build." - eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher." - die "Lazy upgrader detected" - fi - - if [[ ${CTARGET} == i386-* ]] ; then - eerror "i386 CHOSTs are no longer supported." - eerror "Chances are you don't actually want/need i386." - eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml" - die "Please fix your CHOST" - fi - - if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then - ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS." - ewarn "This will result in a 50% performance penalty when running with a 32bit" - ewarn "hypervisor, which is probably not what you want." - fi - - use hardened && ! tc-enables-pie && \ - ewarn "PIE hardening not applied, as your compiler doesn't default to PIE" - - # 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 - 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} - - 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 ! 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 -} - -# -# the phases -# - -# pkg_pretend - -pkg_pretend() { - # All the checks... - einfo "Checking general environment sanity." - sanity_prechecks -} - -# 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 [[ -n ${EGIT_REPO_URI} ]] ; then - git-r3_src_unpack - else - unpack ${P}.tar.xz - fi - - cd "${S}" || die - touch locale/C-translit.h || die #185476 #218003 - - cd "${WORKDIR}" || die - unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.bz2 -} - -src_prepare() { - if ! use vanilla ; then - elog "Applying Gentoo Glibc Patchset ${RELEASE_VER}-${PATCH_VER}" - eapply "${WORKDIR}"/patches - einfo "Done." - fi - - default - - gnuconfig_update - - cd "${WORKDIR}" - find . -name configure -exec touch {} + - - 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 ; do - einfo " $(printf '%15s' ${v}:) ${!v}" - done - - # The glibc configure script doesn't properly use LDFLAGS all the time. - export CC="$(tc-getCC ${CTARGET}) ${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)" - einfo " $(printf '%15s' 'Manual CXX:') ${CXX}" - - echo - - local myconf=() - - case ${CTARGET} in - 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 ) - ;; - *) - myconf+=( --enable-stack-protector=all ) - ;; - 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 - - [[ $(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=$(alt_build_headers) - --prefix="${EPREFIX}/usr" - --sysconfdir="${EPREFIX}/etc" - --localstatedir="${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_multiarch || echo --disable-multi-arch) - $(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="${EPREFIX}/sbin" - export libc_cv_slibdir="${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=$(alt_build_headers) - --prefix="${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)" || die "make nptl for ${ABI} failed" -} - -src_compile() { - if just_headers ; then - return - fi - - foreach_abi do_src_compile -} - -glibc_src_test() { - cd "$(builddir nptl)" - emake 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 locale_list="${root}/etc/locale.gen" - if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then - ewarn "Generating all locales; edit /etc/locale.gen to save time/space" - locale_list="${root}/usr/share/i18n/SUPPORTED" - fi - - locale-gen --jobs $(makeopts_jobs) --config "${locale_list}" \ - --destdir "${root}" -} - -glibc_do_src_install() { - local builddir=$(builddir nptl) - cd "${builddir}" - - emake install_root="${D}$(alt_prefix)" install || die - - # 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) - - if [[ -e ${ED}$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then - # Move versioned .a file out of libdir to evade portage QA checks - # instead of using gen_usr_ldscript(). We fix ldscript as: - # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..." - sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"$(alt_usrlibdir)/libm.a || die - dodir $(alt_usrlibdir)/${P} - mv "${ED}"$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die - fi - - # We'll take care of the cache ourselves - rm -f "${ED}"/etc/ld.so.cache - - # Everything past this point just needs to be done once ... - is_final_abi || return 0 - - # Make sure the non-native interp can be found on multilib systems even - # if the main library set isn't installed into the right place. Maybe - # we should query the active gcc for info instead of hardcoding it ? - local i ldso_abi ldso_name - local ldso_abi_list=( - # x86 - amd64 /lib64/ld-linux-x86-64.so.2 - x32 /libx32/ld-linux-x32.so.2 - x86 /lib/ld-linux.so.2 - # mips - o32 /lib/ld.so.1 - n32 /lib32/ld.so.1 - n64 /lib64/ld.so.1 - # powerpc - ppc /lib/ld.so.1 - ppc64 /lib64/ld64.so.1 - # 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. - cd "${ED}"$(alt_libdir)/.. - [[ -e lib ]] || mkdir lib - cd "${ED}"$(alt_usrlibdir)/.. - [[ -e lib ]] || mkdir 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 - - cd "${S}" - - # Install misc network config files - insinto /etc - doins nscd/nscd.conf posix/gai.conf nss/nsswitch.conf - doins "${WORKDIR}"/extra/etc/*.conf - - if use nscd ; then - doinitd "$(prefixify_ro "${WORKDIR}"/extra/etc/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 - else - # Do this since extra/etc/*.conf above might have nscd.conf. - rm -f "${ED}"/etc/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 "${ED}" - fi -} - -glibc_headers_install() { - local builddir=$(builddir "headers") - cd "${builddir}" - emake install_root="${D}$(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_strip() { - # gdb is lame and requires some debugging information to remain in - # libpthread, so we need to strip it by hand. libthread_db makes no - # sense stripped as it is only used when debugging. - local pthread=$(has splitdebug ${FEATURES} && echo "libthread_db" || echo "lib{pthread,thread_db}") - env \ - -uRESTRICT \ - CHOST=${CTARGET} \ - STRIP_MASK="/*/{,tls/}${pthread}*" \ - prepallstrip - # if user has stripping enabled and does not have split debug turned on, - # then leave the debugging sections in libpthread. - if ! has nostrip ${FEATURES} && ! has splitdebug ${FEATURES} ; then - ${STRIP:-${CTARGET}-strip} --strip-debug "${ED}"$(alt_prefix)/*/libpthread-*.so - fi -} - -src_install() { - if just_headers ; then - export ABI=default - glibc_headers_install - return - fi - - foreach_abi glibc_do_src_install - src_strip -} - -# 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 - - [[ ${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 && [[ ${ROOT} == "/" ]] ; then - # Reload init ... if in a chroot or a diff init package, ignore - # errors from this step #253697 - /sbin/telinit U 2>/dev/null - - 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.27-r4.ebuild b/sys-libs/glibc/glibc-2.27-r4.ebuild index 41fee4261d56..070319f2fc26 100644 --- a/sys-libs/glibc/glibc-2.27-r4.ebuild +++ b/sys-libs/glibc/glibc-2.27-r4.ebuild @@ -72,6 +72,7 @@ COMMON_DEPEND=" " DEPEND="${COMMON_DEPEND} >=app-misc/pax-utils-0.1.10 + sys-devel/bison !<sys-apps/sandbox-1.6 !<sys-apps/portage-2.1.2 !<sys-devel/bison-2.7 diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild index 4b2e7331da98..11e503dd7aad 100644 --- a/sys-libs/glibc/glibc-9999.ebuild +++ b/sys-libs/glibc/glibc-9999.ebuild @@ -33,7 +33,7 @@ PATCH_VER=6 SRC_URI+=" https://dev.gentoo.org/~dilfridge/distfiles/${P}-patches-${PATCH_VER}.tar.bz2" SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" -IUSE="audit caps compile-locales doc gd hardened headers-only multilib nscd profile selinux suid systemtap vanilla" +IUSE="audit caps compile-locales doc gd hardened headers-only multilib nscd profile selinux suid systemtap test vanilla" # Minimum kernel version that glibc requires MIN_KERN_VER="3.2.0" @@ -73,12 +73,15 @@ COMMON_DEPEND=" " DEPEND="${COMMON_DEPEND} >=app-misc/pax-utils-0.1.10 + sys-devel/bison !<sys-apps/sandbox-1.6 !<sys-apps/portage-2.1.2 !<sys-devel/bison-2.7 doc? ( sys-apps/texinfo ) + test? ( >=net-dns/libidn2-2.0.5 ) " RDEPEND="${COMMON_DEPEND} + >=net-dns/libidn2-2.0.5 sys-apps/gentoo-functions !sys-kernel/ps3-sources !sys-libs/nss-db diff --git a/sys-libs/gwenhywfar/Manifest b/sys-libs/gwenhywfar/Manifest index ef45e05f3e4c..21f202edfa58 100644 --- a/sys-libs/gwenhywfar/Manifest +++ b/sys-libs/gwenhywfar/Manifest @@ -1,5 +1,5 @@ DIST gwenhywfar-4.19.0.tar.gz 2362848 BLAKE2B cfdde7b26c9ab26d0ab8ce45ccb8da417bc118507e24d7c4315d0f0480deb92e60f331147cde2145b7b41e4764d18266ed221632b0110e3735a20ce6a6a674b2 SHA512 d05b230f7c00247301428046bf9ed643915d0939d804c78622892ae85c81dfe244832a8375820d489277251b407e424a5cf9b19224ad14f7fbfae83485e00da1 DIST gwenhywfar-4.20.0.tar.gz 2379537 BLAKE2B 7e3439959f61c28d8845ee8355b21b71446f3108f5e344ee600eda58cdccb31cfe93a45cdc9ef8b682fbb3171d20658766918924b48150fea5f2abc1eaa76af1 SHA512 bc1d47c39654940198396f1bdb9f4a87ff4e0e6b07cb4525c10f7f8e6ce93445d5b9d85586a47c93c558e86eb826f7006eca29b93fad6371dfe72830bf9b88e1 EBUILD gwenhywfar-4.19.0-r1.ebuild 2801 BLAKE2B 7d542d3f8e6f51c2ec9ed90abb4e890b07f21f3bbed1e3abc46450d7ecf460eed2c83fbfd7f77fd6906726ed8d000c783ddcf461ae113c3ae3ebd8b836480cf0 SHA512 cd53962b1f7422c7c25259dcb1a5e20289de1b7d67db45f3e940d2d62c8b1757ea41d68a49615f207d189542e09e91cc1bfb92414b742f35477764016bfff485 -EBUILD gwenhywfar-4.20.0.ebuild 2797 BLAKE2B 2cafecf691510ae84168aea779785bd70c8fee2faacf42afdd44e77d5a9c89e17ed266ca0af7bd107d07d211ffc43e05a5c04da6ece49d48b3f430521e50902b SHA512 3d05b86d4ac64d6b5f2bec07ec33956cc828be5ce8a4f2cb0aa82de6e0b660b70301c4e02116ea20b9e30de9c65a57197115e93e66c2b611294f1dc6bfa9bcfe +EBUILD gwenhywfar-4.20.0.ebuild 2796 BLAKE2B 473328b159c0144137986b904609902471372ec673821f4cb6cf944d59b0d6c3b7803733bb8ab66776178c38285b8482a15246e72c2a27f80d0ca2fbcbb2714e SHA512 2ce70a8f11a0c6434f76d7bb493f38dac0d34349821a5a6f8656c384c4e65ca303a3b2f671d05dfa8a5c566742b83568919270d8d4e38003ad879e8e2927ed9a MISC metadata.xml 691 BLAKE2B 9130a34b5011ee2a5b446794a036961e6e83e3083ba580a4d77da2686d9cc75620f0b38cc21d5c4014361d698cf4ff24084ae93b46cdecaaf1e7c522d4f5d3d4 SHA512 3eb26d730501a60512fca15ea05d27e9c74bd020961b09c406837cc2de8558b6abca63336857c0206c41825101afa9f3eef91280afbd7147733cb811e5469213 diff --git a/sys-libs/gwenhywfar/gwenhywfar-4.20.0.ebuild b/sys-libs/gwenhywfar/gwenhywfar-4.20.0.ebuild index 8dea2d2b663f..cddbd2641528 100644 --- a/sys-libs/gwenhywfar/gwenhywfar-4.20.0.ebuild +++ b/sys-libs/gwenhywfar/gwenhywfar-4.20.0.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://www.aquamaniac.de/sites/download/download.php?package=01&releas LICENSE="LGPL-2.1" SLOT="0/60" # correspond with libgwenhywfar.so version -KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86" +KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc x86" IUSE="debug designer doc fox gtk libressl qml qt5 sensors serialport test webkit" REQUIRED_USE="designer? ( qt5 ) qml? ( qt5 ) sensors? ( qt5 ) serialport? ( qt5 ) webkit? ( qt5 )" diff --git a/sys-libs/ldb/Manifest b/sys-libs/ldb/Manifest index 4df460349bca..6049d10f2e48 100644 --- a/sys-libs/ldb/Manifest +++ b/sys-libs/ldb/Manifest @@ -16,6 +16,6 @@ EBUILD ldb-1.1.26.ebuild 2354 BLAKE2B d2842c0d9fab64092bdba589836f0e488ba3544bb4 EBUILD ldb-1.1.29-r1.ebuild 2557 BLAKE2B 6f23b14f5c826708addf796e96a6513cfac6c8b06609e3335cc3ac0fc551dd68ebef6f3f08b6bfc272af68c32ffc98af392292e891ece3ec16dd11dc87e1cd38 SHA512 165ab8aa5d0fb02620de597488e48048de2250a264c72adb31f044543b301a2584b5eddb1b75e7788d2501af67d74b7eda2e223f2732207ff0d381a185c26edb EBUILD ldb-1.1.31.ebuild 2691 BLAKE2B 240d2ccb3f152cbd134b3611d6db02185d6bddf7980b2a816d822fbb924817b798860edd08373d7eb452e451454591a7ce9db24a4475daa210b9e1ce014c14ae SHA512 368998dad5aa47bb8b971936aa5104d1ea5e7a594cd80af79f55e56cb49c2b28aa0322c15781f121bc4aef15d43e56690df324bb0900a7a15eac522b821d5872 EBUILD ldb-1.2.3.ebuild 2619 BLAKE2B 447fe4e7cfb1e1e9350f215f93a818d0251861e3dfbd00a2f866dadfe260a76beb14e489b91eac279c52e800e93ac680131d27fde26d4ea22ce18ec15bf270d4 SHA512 b937f76a1b04d68a2117a8097890a7bfcfb4ef1fdef03c3a4e47908ded9cd0404cc7b26b26e6989fff9076d3e482f6d797ff9249c93ab616acce710d2b22b0d7 -EBUILD ldb-1.3.3.ebuild 2570 BLAKE2B 4170e55f4cc42534607350adebc8b2b09cd72aa77547330bf9e58fbb733293f8e946cfbfc951f20d91b46ddfd6ca58657cff1e3eba356c3f48bbf89ef67f9ca1 SHA512 639849572850bd6ac74ca3e69a916a10191757c6cf7049b4da4c582b97236373be90bb18315a9f0e516d7cf887d31d1a30aa65f7d283755ee4e7c3211c476d1b -EBUILD ldb-1.4.0-r1.ebuild 2664 BLAKE2B 001f0cbfbcdffe68a57b36c8a0b7bb100e428df326a40dfb1b451b0add00adb0d3dbfa958061e3cc21378f29365fac9b47ae30e7cafd6849b171d307c1de359e SHA512 aada7ee1dc3c8415ecb2a6f2e46a09308436acb62fbc65099c03f178930aec11d47fb752867fa6549ecc807b90ad5d53c87977e1e604b09bce80602fb2d102ee +EBUILD ldb-1.3.3.ebuild 2572 BLAKE2B 2b1702de50c15c7b9f05fd9f630c805010a24b7b469a3cc1f969b63809c475af0dbcaf820d6182e48153cae4afa83a817c046db0fc78f62060d7be4954731a15 SHA512 d830c5c6b6d312a111485f76f5ec296fcaf52be3fa3fac34cc270caa9e61ef420f06382e309f1e5b933f7a5343de8adcb681c55ee8cf45113c9e2e0a8af36390 +EBUILD ldb-1.4.0-r1.ebuild 2666 BLAKE2B e9d6cc2dd551d3219a099214892aaeaa4f27187d5ab121844fce0270a9f9c24b062549beeab863f9170b6d1c8856d7d21e43d0fdf8626656ce53d112b6294172 SHA512 ff0bcb83eab974e543d294bf874cb517c7b002948a331afc1e4bcae36d175fc2cf46575bdf422402ff4a10f0f5518715f86583863afcd360a8ed9013a822fa1b MISC metadata.xml 445 BLAKE2B 959f0dc450ab8518bcbdbaf2802a3660c180e0eb95028e7b13fb0c0c0b47c8e68a81a1c970ca023ac441a1c43027b4b567c3643519b7c33ac6c0d1e11dcd0ff3 SHA512 b701ef9375735fb561c2e7c46ad13d30b62739fbf780e4343882898ecf13961e4f8381997109290e70a79993692aec2adc602bbc4bb9c881780349bebc75e4e1 diff --git a/sys-libs/ldb/ldb-1.3.3.ebuild b/sys-libs/ldb/ldb-1.3.3.ebuild index 4cd8446d25dc..1b38c776939c 100644 --- a/sys-libs/ldb/ldb-1.3.3.ebuild +++ b/sys-libs/ldb/ldb-1.3.3.ebuild @@ -8,8 +8,8 @@ PYTHON_REQ_USE="threads" inherit python-single-r1 waf-utils multilib-minimal eutils DESCRIPTION="An LDAP-like embedded database" -HOMEPAGE="http://ldb.samba.org" -SRC_URI="http://www.samba.org/ftp/pub/${PN}/${P}.tar.gz" +HOMEPAGE="https://ldb.samba.org" +SRC_URI="https://www.samba.org/ftp/pub/${PN}/${P}.tar.gz" LICENSE="LGPL-3" SLOT="0/${PV}" diff --git a/sys-libs/ldb/ldb-1.4.0-r1.ebuild b/sys-libs/ldb/ldb-1.4.0-r1.ebuild index a42012a74531..e50191199d58 100644 --- a/sys-libs/ldb/ldb-1.4.0-r1.ebuild +++ b/sys-libs/ldb/ldb-1.4.0-r1.ebuild @@ -8,8 +8,8 @@ PYTHON_REQ_USE="threads" inherit python-single-r1 waf-utils multilib-minimal eutils DESCRIPTION="An LDAP-like embedded database" -HOMEPAGE="http://ldb.samba.org" -SRC_URI="http://www.samba.org/ftp/pub/${PN}/${P}.tar.gz" +HOMEPAGE="https://ldb.samba.org" +SRC_URI="https://www.samba.org/ftp/pub/${PN}/${P}.tar.gz" LICENSE="LGPL-3" SLOT="0/${PV}" diff --git a/sys-libs/libblockdev/Manifest b/sys-libs/libblockdev/Manifest index 27d45790c542..a1baf052b7bc 100644 --- a/sys-libs/libblockdev/Manifest +++ b/sys-libs/libblockdev/Manifest @@ -1,9 +1,7 @@ DIST libblockdev-2.14-1.tar.gz 274241 BLAKE2B 64c4c2a298ed95ed24a79716ccef5930f4276faaca02acf883c386b85a662d3fa1dc6f30e00d99bd835832e3c65acb89b445eff6fb35f9090dc949efde737d1a SHA512 fb80e840ed2f247912da93a6cc0cb1846be73dcc16b917f5231f5d7a87eaa7b43d07d5b2110038dd783fefa7ef7df0893785a60079ed02567f1e08bfcbd82343 -DIST libblockdev-2.15-1.tar.gz 279744 BLAKE2B caabeffdc2ee27bec63f0e799c632eab4e02867b866a83b03613e84567dbb0a5a6d8a59b4a34b9130b55a546bfa4a76b439bf901247da2d4d87b88b66c386ed6 SHA512 a58ee6ca75c0ee8706796afb6bf26334cc1716bb3ba9230f35c485643faf4921e70ff3a86ebb2be41b2d0177e68fdc0f8011e198e46d66aca9e9712a228c4ea3 -DIST libblockdev-2.16-1.tar.gz 282247 BLAKE2B 0645ffe9f0cadc6e412de813b32f4e37ead67039a69f7e8938b41f5ea10983a18d31e29653eab50dc41889952b00658b91853908dff3e62b50c1e85a267b4a63 SHA512 d48d4b0e3174ad7b93558534d7f0285b398e47e2c9dce3cc60cbe0a32a78fef32601cca2508f30a882609ceb3cc59efe2761720af191e6394ca1b8c51878b535 DIST libblockdev-2.17-1.tar.gz 300882 BLAKE2B a7300ecf59a3ea37c2bb3245dcb4c0434ed8292e8fca87634224557112183de5fab2e66428d9b769537eebde341a3858182f9e9b9cefa68654c1d580fe4b63b2 SHA512 e882642e124100abf578699272bf1f0a2618b5eeed3ded4582f8535173238f145f3d4a2ea7dbe4b3b464d646f6e98ef0a891e7dfa7dde7e8c3322c883f7264e6 +DIST libblockdev-2.18-1.tar.gz 310870 BLAKE2B afeb904938c9700917e3bf55665bfa5612677b963e4273378046edae15f94b90f2e85c31f12b196317fe26c4befe9ae514822d987fdc8003bc1b0cc49cd61dac SHA512 c7837b0abb7747baf8dc2a21a0a75bc5fb80693a1685ddb310bf7d606d44ea65fa4c934cff6c09c5069806dea3ee056eb53c64122ec43b5c0485cdf92fda58d5 EBUILD libblockdev-2.14-r1.ebuild 1504 BLAKE2B 8da60dc425c0b83f6e75705815bc94275937bd1c1d5ace0798c850d04d561910a1f7086f32d131b7aaf0d785cbacfc9179909d0e8909646524f34638a38ae399 SHA512 6e19060b01e9b21f1969d35cfff4a58c20456d4594f22ec4e8ae961480302abb639816f97212956e067b0df921ed17d8c1298ef025598c56aab663cb430e0ad9 -EBUILD libblockdev-2.15-r1.ebuild 1502 BLAKE2B cb40718f826b061ec21624de515eaa213b84f358d98105370a37db5b7065083b14bee73ca8331faf50fd8bbe20284e9bcdaafca44554af510a833425201d0d04 SHA512 413343fcde87c99dddad2301b2cd70c18c986412d605b4105b19cc3e714e0a367132e33a9b5f08ece8884984c0dfc88f304eed2d208c057099b6d940e069fa9c -EBUILD libblockdev-2.16.ebuild 1508 BLAKE2B 3c68ad36fbfeece628e6580e95c90b8221082f2e778697ab81fcd8205939a8948638439b9035f34f6d5e96b22ff4451273a9460f48d72ebf10dee949fd236db7 SHA512 8d07d63497ddbecdba40fb3a916cbab21a34eebaa611eb3f10b3421314b2b21e5a7faa8b91574e293dff8d9bcb6c700a9c9ea2ecc8c910e7a8901f56853eb92e EBUILD libblockdev-2.17.ebuild 1694 BLAKE2B 835076e88046dd4f21aefbc89245e66a2e6e5c318a437a36c2957cc46cc1264a4d04f3e3893c49e3f99f5beeb5ba6d4c8f33b078ca7dd6cb7e3ea575bfb92610 SHA512 9eff7dd1adbce9ea74230aa066ca2f4b0fe368371f666420b337443ebaef1373fc895dc6eba8b1276d0e35eb705117185ddcbd573d2052f3a0c8bd8272cb67b5 -MISC metadata.xml 871 BLAKE2B 2647bb2461cb50f75c8069c924a0b488f37dcf8fc72eb56cb5611acc66adaaf59a159d93d39e333b2c04ad2b977893c7e69d149a1afe9f341c8d875f2455d17b SHA512 f5f3fbe8ae05d8c822275e43f76ab194bad069e94d82302395583098fb95324b5d1230273e8392eb5555f41ac0f260c5533d0530760f47a2d0d678068d00762f +EBUILD libblockdev-2.18-r1.ebuild 1715 BLAKE2B dfa7ba8585a51fbfe9d42126c6eb18dca2c8b798cf1cadc143da7de1b6fbeb04f189d290b6581ac4fa286ab982b31e7a0bfdff68af785daf2a1d8244dffae510 SHA512 964120a29175090ffee4a9b69213d486f3f99a92bdf808116d0baae84cd03113a5f7bf400028867d2bc516c61ea742b15d11ef4615c501f89d170b2119c43f42 +MISC metadata.xml 938 BLAKE2B 3527b371818b7b6ab3362ab4335098447dbc3541ebc95d1c8dc5487ae4a323e9d0bd5462201ce3432df95399b8acdb1f5735260000c967b4b786f2483507b110 SHA512 ccd9292fc8eabb982a3f016c15cf53b4d8d307109dbd5896d1190019a2f35032cc393454568c0a48223c0e9a2a8e42e8e015f16b9a52c758d55c904a308f6e66 diff --git a/sys-libs/libblockdev/libblockdev-2.15-r1.ebuild b/sys-libs/libblockdev/libblockdev-2.15-r1.ebuild deleted file mode 100644 index 11885ae1c964..000000000000 --- a/sys-libs/libblockdev/libblockdev-2.15-r1.ebuild +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python3_{4,5,6} ) -inherit autotools python-single-r1 - -MY_PV="${PV}-1" -MY_P="${PN}-${MY_PV}" - -DESCRIPTION="A library for manipulating block devices" -HOMEPAGE="https://github.com/rhinstaller/libblockdev" -SRC_URI="https://github.com/rhinstaller/${PN}/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz" -LICENSE="LGPL-2+" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" -IUSE="bcache +cryptsetup dmraid doc lvm kbd test" - -CDEPEND=" - >=dev-libs/glib-2.42.2 - dev-libs/libbytesize - >=sys-apps/kmod-19 - >=sys-apps/util-linux-2.27 - >=sys-block/parted-3.1 - cryptsetup? ( - >=dev-libs/nss-3.18.0 - dev-libs/volume_key - >=sys-fs/cryptsetup-1.6.7:= - ) - dmraid? ( - sys-fs/dmraid - sys-fs/lvm2 - ) - lvm? ( - sys-fs/lvm2 - virtual/udev - ) - ${PYTHON_DEPS} -" - -DEPEND=" - ${CDEPEND} - >=dev-libs/gobject-introspection-1.3.0 - doc? ( dev-util/gtk-doc ) -" - -RDEPEND=" - ${CDEPEND} -" - -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -S="${WORKDIR}/${MY_P}" - -pkg_setup() { - python-single-r1_pkg_setup -} - -src_prepare() { - default - eautoreconf -} - -src_configure() { - local myeconfargs=( - --with-btrfs - --with-fs - --with-part - --with-python3 - --without-mpath - $(use_enable test tests) - $(use_with bcache) - $(use_with cryptsetup crypto) - $(use_with dmraid dm) - $(use_with doc gtk-doc) - $(use_with lvm lvm) - $(use_with lvm lvm-dbus) - $(use_with kbd) - ) - econf "${myeconfargs[@]}" -} diff --git a/sys-libs/libblockdev/libblockdev-2.16.ebuild b/sys-libs/libblockdev/libblockdev-2.18-r1.ebuild index 9cf4560ec988..839822874e03 100644 --- a/sys-libs/libblockdev/libblockdev-2.16.ebuild +++ b/sys-libs/libblockdev/libblockdev-2.18-r1.ebuild @@ -1,9 +1,9 @@ # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 -PYTHON_COMPAT=( python3_{4,5,6} ) +PYTHON_COMPAT=( python{2_7,3_{4,5,6}} ) inherit autotools python-single-r1 MY_PV="${PV}-1" @@ -15,17 +15,19 @@ SRC_URI="https://github.com/rhinstaller/${PN}/archive/${MY_PV}.tar.gz -> ${MY_P} LICENSE="LGPL-2+" SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" -IUSE="bcache +cryptsetup dmraid doc lvm kbd test" +IUSE="bcache +cryptsetup dmraid doc escrow lvm kbd test vdo" -CDEPEND=" +RDEPEND=" >=dev-libs/glib-2.42.2 dev-libs/libbytesize >=sys-apps/kmod-19 >=sys-apps/util-linux-2.27 >=sys-block/parted-3.1 cryptsetup? ( - >=dev-libs/nss-3.18.0 - dev-libs/volume_key + escrow? ( + >=dev-libs/nss-3.18.0 + dev-libs/volume_key + ) >=sys-fs/cryptsetup-1.6.7:= ) dmraid? ( @@ -36,20 +38,18 @@ CDEPEND=" sys-fs/lvm2 virtual/udev ) + vdo? ( dev-libs/libyaml ) ${PYTHON_DEPS} " DEPEND=" - ${CDEPEND} + ${RDEPEND} >=dev-libs/gobject-introspection-1.3.0 doc? ( dev-util/gtk-doc ) " -RDEPEND=" - ${CDEPEND} -" - -REQUIRED_USE="${PYTHON_REQUIRED_USE}" +REQUIRED_USE="${PYTHON_REQUIRED_USE} + escrow? ( cryptsetup )" S="${WORKDIR}/${MY_P}" @@ -67,16 +67,20 @@ src_configure() { --with-btrfs --with-fs --with-part - --with-python3 --without-mpath + --without-nvdimm $(use_enable test tests) $(use_with bcache) $(use_with cryptsetup crypto) - $(use_with dmraid dm) + $(use_with dmraid) $(use_with doc gtk-doc) + $(use_with escrow) $(use_with lvm lvm) $(use_with lvm lvm-dbus) $(use_with kbd) + $(use_with python_single_target_python2_7 python2) + $(use_with !python_single_target_python2_7 python3) + $(use_with vdo) ) econf "${myeconfargs[@]}" } diff --git a/sys-libs/libblockdev/metadata.xml b/sys-libs/libblockdev/metadata.xml index 4f133ca27fa9..00d0c434c27c 100644 --- a/sys-libs/libblockdev/metadata.xml +++ b/sys-libs/libblockdev/metadata.xml @@ -12,6 +12,7 @@ <flag name="dmraid">Support for dmraid devices, also known as ATA-RAID, or Fake RAID.</flag> <flag name="lvm">Enable support for Logical Volume Management via <pkg>sys-fs/lvm2</pkg>.</flag> <flag name="kbd">Enable kernel block device support.</flag> + <flag name="vdo">Enable Virtual Data Optimizer support.</flag> </use> <upstream> <remote-id type="github">storaged-project/libblockdev</remote-id> diff --git a/sys-libs/libchipcard/Manifest b/sys-libs/libchipcard/Manifest index dbf82938da00..d98d52589f49 100644 --- a/sys-libs/libchipcard/Manifest +++ b/sys-libs/libchipcard/Manifest @@ -1,5 +1,5 @@ DIST libchipcard-5.0.2.tar.gz 736107 BLAKE2B 0dbf58081930388da99a621e781c69a3258782bbdd9109df2a0cabf5d404e209e84bdf2d46d86210ce86358a43966d9d54106847aa3415963e564a7904f8e475 SHA512 82c9100b31086900d3fc66f9b04eb7f365cf09b65959e06dfc7927f2e8328d70d64ad33b40615cc382321dfd50720e721198c0308668a27f1a2db9ce46a292c9 DIST libchipcard-5.0.4.tar.gz 801499 BLAKE2B 7966002dbf5c9eb7a53490aa8df68765901d7ebb7c7a16d8b24bf087a9886883aeb8a5c4f4be21ca5740215ce4f1b8d0023409f7b0f843ce1ce894a2cc115f40 SHA512 3b5b049f8ed676994c00ca758248c842de1119a0cee9e55682971839dc72cca226910559763bf858ceb126d998284b0c9f37459e0c87831d52ac39b6c4317293 EBUILD libchipcard-5.0.2.ebuild 1069 BLAKE2B eb4f9bdde27afa6848c6ce86fd489a4193c5a5d7c022686da6fe4908d2ef13ac03ab448661e9b7b85a225b48e7f24225ac0b9edd1c55d35fcc8395fc89d3a789 SHA512 5f19deb9a4d074cecb30040951191a63c54e863b01edcef811c3d25d1153f7ee43f59477380d0c0912cd6b33dc9fc9b72ef016ddf79ed8153eaebe970397ac01 -EBUILD libchipcard-5.0.4.ebuild 1086 BLAKE2B 3d73fba3a0a6ca44edbb550811ab8a568565432976b70d654d79e10436ab139093cc5acb57959e732b0a5c8c97258272a0acc3585470fecb8a81dcf7ac4f808a SHA512 3a18ced906c4bd506e2e4b22f7d724d766f70e629a78e6ed0e2e48fc64282812ebcc5c10a1f75e13249ced5d8baa7b879fdc9dfad2ee67a8ff018fcd581b589e +EBUILD libchipcard-5.0.4.ebuild 1085 BLAKE2B 8e0e20c24f9fc9b3b6bc64e52fc16b94fe321927945acc88d0d332f5a6665f70328545777f90367a1ee583ed1444d099451f239c528346e9eb924d6e89580c52 SHA512 4fb8fe731e372193f328988ad55f4198c1c50733d9a90405c04df5128fbb3df601fa6da60e53510ff1bbb21ead7662d45431c7c7134d4ebc02b13aea728e96ca MISC metadata.xml 210 BLAKE2B a547b5e8dbb5d674ce2df4bcc6ee71c3aae3b0c7863c38a66c1fac3cf0f0c16c7bb302264082f345d2da87d0e544d321e6fd8385a16d01620a733a8ab29082a3 SHA512 27fbc849a311e57c8dbad0cae9975d564c03ae8a7b495b2e7a5cd160c6a09c0101e695ba4d2edf07c0d4c4d7329ff9a4bd91656aa685623342883b83bcb9ac0f diff --git a/sys-libs/libchipcard/libchipcard-5.0.4.ebuild b/sys-libs/libchipcard/libchipcard-5.0.4.ebuild index ee467583b689..0b958227933f 100644 --- a/sys-libs/libchipcard/libchipcard-5.0.4.ebuild +++ b/sys-libs/libchipcard/libchipcard-5.0.4.ebuild @@ -9,7 +9,7 @@ SRC_URI="https://www.aquamaniac.de/sites/download/download.php?package=02&releas LICENSE="LGPL-2.1" SLOT="0" -KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86" +KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc x86" IUSE="doc examples" RDEPEND=" diff --git a/sys-libs/zlib/Manifest b/sys-libs/zlib/Manifest index 4a2c00bc440a..81ce38423fcd 100644 --- a/sys-libs/zlib/Manifest +++ b/sys-libs/zlib/Manifest @@ -1,5 +1,7 @@ AUX zlib-1.2.11-fix-deflateParams-usage.patch 2937 BLAKE2B 42fcb91b99b004921dce12b4e71c12c62e80d50243a1cec97522dbaa1cf5fb09cf701e9f988bddd0470c3dafe743d42e60b9ac6903afb2185859d62b1fdf78bc SHA512 9b949d894be2bbb60d687820e79d7a02e733e8426e6602482f3a3902fca3571bbfba38ddd84a88f5a093fdb25ac90e4076905d19b86ab70ebce6e250fd118286 +AUX zlib-1.2.11-minizip-drop-crypt-header.patch 997 BLAKE2B a964dfb26d05045507cb2ebf1154b890782d9952288627dd5093eeeaed9265a6041922e9fef378333ad3b9ac2333d692b06db1d6425df25d6062b9fc42ec8c50 SHA512 158c4b711e8afc248cbd55f2057dede18540ad35ec1a47d0cfb0fe9bf10b1507bb1b4525badcc0a8b6505062d838ee4fb2d4ebfbf9c9d1694336a704bc0b690e DIST zlib-1.2.11.tar.gz 607698 BLAKE2B 6bfc4bca5dcadba8a0d4121a2b3ed0bfe440c261003521862c8e6381f1a6f0a72d3fc037351d30afd7ef321e8e8d2ec817c046ac749f2ca0c97fbdc2f7e840b7 SHA512 73fd3fff4adeccd4894084c15ddac89890cd10ef105dd5e1835e1e9bbb6a49ff229713bd197d203edfa17c2727700fce65a2a235f07568212d820dca88b528ae EBUILD zlib-1.2.11-r1.ebuild 3029 BLAKE2B 7264674176992d231b0e70a7511de1e44f29f57b4facf4c6774854235c0fa0c1a29b11aa8ca7dde025c1990a88489a620d1d012a9634d82d9b75353fd19b5845 SHA512 be364c4b76bbbfe15de428a72bad82575078e1e4ebbfbaecafe7c409bcaece2e03d85415364abc5e4cd959ef602189dc21433196ed94c301f47306afddb67af2 +EBUILD zlib-1.2.11-r2.ebuild 3119 BLAKE2B c0eae9e266068daeff3cb25cd542c954b5be3cc50344476634e02a62efd22d93f13b58275cdb29ac59a61233120e2e9fb77cdc2f93f67f9bdc05793eb2850b04 SHA512 3a693efdd2950b188a25926ddb28c7406593e8fbb372897eff678301954e37a499b9a16585f2727fa2cdbbf29174306933ffa2057f6713128a7445ba66ce18c2 EBUILD zlib-1.2.11.ebuild 2963 BLAKE2B 73b5a86f22babd1b34c8f4a4941114094c948e52ea0e31b092878a5c566e931ecaada4344ba8f038fe7808f9949da32bd9bd5710025195343a650f36d2b0b912 SHA512 851835307c49a56e87c1b741b00a2c69d904978cccf0f236cf09c58169b7ee638e2694797a867825096f94eb77d96f400d6bdd01d78d767e3ec41e91ba3521e5 MISC metadata.xml 432 BLAKE2B 80b2aa4dbc687fa23b3e64f12af789d2b1f308ccba611de152efde3008a5b6f66ee56121c2c4846a482e426c78e5f921ee7cf9b196c28504ee0de420725a6239 SHA512 947d4b2035ab49c42f6141f14553f1e8f4796b4ddc24c6a4f071ac2300eb120648dd03eef49773295d3e3f30cd9d3cbb391bde798dacf1187b46ff75abd59420 diff --git a/sys-libs/zlib/files/zlib-1.2.11-minizip-drop-crypt-header.patch b/sys-libs/zlib/files/zlib-1.2.11-minizip-drop-crypt-header.patch new file mode 100644 index 000000000000..2e0a93e91944 --- /dev/null +++ b/sys-libs/zlib/files/zlib-1.2.11-minizip-drop-crypt-header.patch @@ -0,0 +1,38 @@ +https://bugs.gentoo.org/658536 +https://github.com/madler/zlib/pull/229 + +From e490ddad3091574a0c2e3b5a66a8fee9a7ab212f Mon Sep 17 00:00:00 2001 +From: Pavel Raiskup <praiskup@redhat.com> +Date: Sun, 19 Feb 2017 16:42:12 +0100 +Subject: [PATCH] minizip: don't install crypt.h + +People did mistakenly or unintentionally include crypt.h before, +don't install this internal header from now. +--- + contrib/minizip/Makefile.am | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/contrib/minizip/Makefile.am b/contrib/minizip/Makefile.am +index d343011ebc3b..4f46610238d2 100644 +--- a/contrib/minizip/Makefile.am ++++ b/contrib/minizip/Makefile.am +@@ -26,13 +26,15 @@ libminizip_la_LDFLAGS = $(AM_LDFLAGS) -version-info 1:0:0 -lz + + minizip_includedir = $(includedir)/minizip + minizip_include_HEADERS = \ +- crypt.h \ + ioapi.h \ + mztools.h \ + unzip.h \ + zip.h \ + ${iowin32_h} + ++noinst_HEADERS = \ ++ crypt.h ++ + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = minizip.pc + +-- +2.17.1 + diff --git a/sys-libs/zlib/zlib-1.2.11-r2.ebuild b/sys-libs/zlib/zlib-1.2.11-r2.ebuild new file mode 100644 index 000000000000..3133384c67c8 --- /dev/null +++ b/sys-libs/zlib/zlib-1.2.11-r2.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" +AUTOTOOLS_AUTO_DEPEND="no" + +inherit autotools toolchain-funcs multilib multilib-minimal + +DESCRIPTION="Standard (de)compression library" +HOMEPAGE="https://zlib.net/" +SRC_URI="https://zlib.net/${P}.tar.gz + http://www.gzip.org/zlib/${P}.tar.gz + http://www.zlib.net/current/beta/${P}.tar.gz" + +LICENSE="ZLIB" +SLOT="0/1" # subslot = SONAME +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd" +IUSE="minizip static-libs" + +DEPEND="minizip? ( ${AUTOTOOLS_DEPEND} )" +RDEPEND="!<dev-libs/libxml2-2.7.7" #309623 + +src_prepare() { + epatch "${FILESDIR}"/${PN}-1.2.11-fix-deflateParams-usage.patch + epatch "${FILESDIR}"/${PN}-1.2.11-minizip-drop-crypt-header.patch #658536 + + if use minizip ; then + cd contrib/minizip || die + eautoreconf + fi + + case ${CHOST} in + *-mingw*|mingw*) + # uses preconfigured Makefile rather than configure script + multilib_copy_sources + ;; + esac +} + +echoit() { echo "$@"; "$@"; } + +multilib_src_configure() { + case ${CHOST} in + *-mingw*|mingw*) + ;; + *) # not an autoconf script, so can't use econf + local uname=$("${EPREFIX}"/usr/share/gnuconfig/config.sub "${CHOST}" | cut -d- -f3) #347167 + echoit "${S}"/configure \ + --shared \ + --prefix="${EPREFIX}/usr" \ + --libdir="${EPREFIX}/usr/$(get_libdir)" \ + ${uname:+--uname=${uname}} \ + || die + ;; + esac + + if use minizip ; then + local minizipdir="contrib/minizip" + mkdir -p "${BUILD_DIR}/${minizipdir}" || die + cd ${minizipdir} || die + ECONF_SOURCE="${S}/${minizipdir}" \ + econf $(use_enable static-libs static) + fi +} + +multilib_src_compile() { + case ${CHOST} in + *-mingw*|mingw*) + emake -f win32/Makefile.gcc STRIP=true PREFIX=${CHOST}- + sed \ + -e 's|@prefix@|/usr|g' \ + -e 's|@exec_prefix@|${prefix}|g' \ + -e 's|@libdir@|${exec_prefix}/'$(get_libdir)'|g' \ + -e 's|@sharedlibdir@|${exec_prefix}/'$(get_libdir)'|g' \ + -e 's|@includedir@|${prefix}/include|g' \ + -e 's|@VERSION@|'${PV}'|g' \ + zlib.pc.in > zlib.pc || die + ;; + *) + emake + ;; + esac + use minizip && emake -C contrib/minizip +} + +sed_macros() { + # clean up namespace a little #383179 + # we do it here so we only have to tweak 2 files + sed -i -r 's:\<(O[FN])\>:_Z_\1:g' "$@" || die +} + +multilib_src_install() { + case ${CHOST} in + *-mingw*|mingw*) + emake -f win32/Makefile.gcc install \ + BINARY_PATH="${ED}/usr/bin" \ + LIBRARY_PATH="${ED}/usr/$(get_libdir)" \ + INCLUDE_PATH="${ED}/usr/include" \ + SHARED_MODE=1 + # overwrites zlib.pc created from win32/Makefile.gcc #620136 + insinto /usr/$(get_libdir)/pkgconfig + doins zlib.pc + ;; + + *) + emake install DESTDIR="${D}" LDCONFIG=: + gen_usr_ldscript -a z + ;; + esac + sed_macros "${ED}"/usr/include/*.h + + if use minizip ; then + emake -C contrib/minizip install DESTDIR="${D}" + sed_macros "${ED}"/usr/include/minizip/*.h + fi + + use static-libs || rm -f "${ED}"/usr/$(get_libdir)/lib{z,minizip}.{a,la} #419645 +} + +multilib_src_install_all() { + dodoc FAQ README ChangeLog doc/*.txt + use minizip && dodoc contrib/minizip/*.txt +} |