From 7c7c2c9727d6b2ff30945b5aea0d575e1c406d8b Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 2 May 2018 14:13:35 +0100 Subject: gentoo resync : 02.05.2018 --- sys-libs/Manifest.gz | Bin 15762 -> 15753 bytes sys-libs/binutils-libs/Manifest | 2 +- .../binutils-libs/binutils-libs-2.30-r2.ebuild | 3 +- sys-libs/db/Manifest | 16 +- sys-libs/db/db-1.85-r3.ebuild | 4 +- sys-libs/db/db-3.2.9_p2.ebuild | 4 +- sys-libs/db/db-4.2.52_p5-r1.ebuild | 4 +- sys-libs/db/db-4.3.29_p1-r1.ebuild | 2 + sys-libs/db/db-4.4.20_p4-r1.ebuild | 4 +- sys-libs/db/db-4.5.20_p2-r1.ebuild | 2 + sys-libs/db/db-4.6.21_p4.ebuild | 2 + sys-libs/db/db-4.7.25_p4.ebuild | 2 + sys-libs/glibc/Manifest | 9 +- sys-libs/glibc/glibc-2.18-r1.ebuild | 2 + sys-libs/glibc/glibc-2.19-r1.ebuild | 2 + sys-libs/glibc/glibc-2.26-r7.ebuild | 849 ++++++++++++ sys-libs/glibc/glibc-2.27-r2.ebuild | 1428 ++++++++++++++++++++ sys-libs/glibc/glibc-9999.ebuild | 8 +- sys-libs/libavc1394/Manifest | 2 +- sys-libs/libavc1394/libavc1394-0.5.3.ebuild | 4 +- sys-libs/libservicelog/Manifest | 4 +- sys-libs/libservicelog/libservicelog-1.0.1.ebuild | 4 +- sys-libs/libservicelog/libservicelog-1.1.11.ebuild | 4 +- sys-libs/libspe2/Manifest | 4 +- sys-libs/libspe2/libspe2-2.2.80_p95-r1.ebuild | 4 +- sys-libs/libspe2/libspe2-2.3.0_p135.ebuild | 4 +- sys-libs/libstatgrab/Manifest | 2 +- sys-libs/libstatgrab/libstatgrab-0.91.ebuild | 2 +- sys-libs/libstdc++-v3-bin/Manifest | 2 +- .../libstdc++-v3-bin/libstdc++-v3-bin-3.3.6.ebuild | 4 +- sys-libs/libstdc++-v3/Manifest | 2 +- sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r1.ebuild | 2 + sys-libs/libtermcap-compat/Manifest | 2 +- .../libtermcap-compat-2.0.8-r2.ebuild | 4 +- sys-libs/libxcrypt/Manifest | 2 +- sys-libs/libxcrypt/libxcrypt-2.0.ebuild | 4 +- sys-libs/lrmi/Manifest | 2 +- sys-libs/lrmi/lrmi-0.10-r1.ebuild | 4 +- sys-libs/lwp/Manifest | 2 +- sys-libs/lwp/lwp-2.2.ebuild | 4 +- sys-libs/mars/Manifest | 2 +- sys-libs/mars/mars-1.0.1.ebuild | 4 +- sys-libs/rvm/Manifest | 2 +- sys-libs/rvm/rvm-1.12.ebuild | 4 +- sys-libs/system-config-base/Manifest | 2 +- .../system-config-base-1-r1.ebuild | 4 +- 46 files changed, 2378 insertions(+), 51 deletions(-) create mode 100644 sys-libs/glibc/glibc-2.26-r7.ebuild create mode 100644 sys-libs/glibc/glibc-2.27-r2.ebuild (limited to 'sys-libs') diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz index 57aa1abbc2b6..c52d6ccbf914 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 f9ece5058631..639f2d11d6a3 100644 --- a/sys-libs/binutils-libs/Manifest +++ b/sys-libs/binutils-libs/Manifest @@ -14,5 +14,5 @@ EBUILD binutils-libs-2.27.ebuild 2847 BLAKE2B 3d02dfccc46d3398646d338e01f096de36 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-r1.ebuild 3211 BLAKE2B 904a3ea6dcb1f24da2e2bcb8b586d41a7b9040eb6be9271ab8818737d231ea3626b812e69eb2bb5e97bb186624c88af132742c81a5bed1483980d69f434c72e9 SHA512 60ceaef881e24019d7785cd36d10f5983f0d3043d44c85d8a113237478ac6559beac59e57b9aed3765f68c6b3d381969214112d2ee1602bff11d9c35f5df517c -EBUILD binutils-libs-2.30-r2.ebuild 3224 BLAKE2B 0ca2588e7ef328b4ba6cdf78e5ad9efa8def0239ce98a255b32a0895c8e5bea22f5b46adb32725157655d3c95594a83f765aaba5c36bebfc34bd808aaea091e9 SHA512 1ab2fb01bed8c2d8f9ddbd6bbf5a4489ac0e061efa99fc8f15bd39834a24593391f273e267e61ae039576063780b51a0b67a8898f84ed1eb5e4915dc59658cbf +EBUILD binutils-libs-2.30-r2.ebuild 3211 BLAKE2B 5a865b7c543aba55f1f5655aa4d2b09da9b421a5c95201b2f998aa68dfba285ea06778e164b08bbeadf1c4bef2c0c93b22836dfe774b003c90e9264ad207655e SHA512 0b8618879425eb5aaa9a774b5107fa63f6a58d6a2a50b691bcfdb2d9d800b91961d29217af1a5538415130008389385d5ecac752a1bb39a7e823a3616a99f783 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 2434d85063c3..03c2c5cc868d 100644 --- a/sys-libs/binutils-libs/binutils-libs-2.30-r2.ebuild +++ b/sys-libs/binutils-libs/binutils-libs-2.30-r2.ebuild @@ -20,8 +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="" +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/db/Manifest b/sys-libs/db/Manifest index 6c8e07de2627..450723d1a7db 100644 --- a/sys-libs/db/Manifest +++ b/sys-libs/db/Manifest @@ -63,14 +63,14 @@ DIST patch.4.7.25.1 2072 BLAKE2B 773fb96f9c5995cee22931fcd504b9962d0c3407f7b4239 DIST patch.4.7.25.2 2210 BLAKE2B 3e9727a4e006fa8e4502f1481a44144458401d0df0eeea26eb135b1979f330f354cd5016f56b86400118f13fe29a92798b0dcf19581738d3e9cf83b9be1ebb6d SHA512 d57746a527574966606955a8ad6b97742ff3979e85a0d087ae0c33b64b4fc2fd854f3ac145e2efc061b3479de5ee8172a02183cf54ada91fce3e331ab948ff18 DIST patch.4.7.25.3 8442 BLAKE2B 666b643b3bf0d1e5ef5e445ae03228f436a5528bc197338c3c9bd468d7002bc81a16e295cf34fe6b38903e7f65c2c5c3cd9be0a3227f1122aeda22afc165e2a9 SHA512 815560c45c9c8491fd58d881a0bc1d23a82a13298d4757ed7d2ae4df4b88b278b8e4d6063eb46349a8f6f11ca9aa5b8555f3ce01df025715c2579dfa36241238 DIST patch.4.7.25.4 5647 BLAKE2B 60ecb24fb137f7aeacb9689d8edc41791f78f96d1aa15c7fa47032371533d668c5dc12a5e1641945402f0e21f4e596cebb5010ac170ef462279b2efb887be020 SHA512 df9810034773a9d0556cbd174e4f131f0461402bf3f476ae5da1deb92f3e2e9ef789687c5cc5c2df6385f6b14251e893be225ffacd895d71dfb305b9de32567e -EBUILD db-1.85-r3.ebuild 1317 BLAKE2B 562859ea0cb085156f80bef5db9a8b51c5eb2f54206b4e0d40148ff26d47fdcbe8bca659bb8cbf755bdc79f65f22c86b735f32229aa564bd9abd5e497cdf2c43 SHA512 86f94dfcb55449d961e3b25f139ab968ac1091db313b7906a0e3de941cd5da22e86546426dfbae39d4b25c328ad7991b2feaa1d013ac016ede4bbea8f302b2ba -EBUILD db-3.2.9_p2.ebuild 4947 BLAKE2B 6fe86d9e7278a3d7d4f4cc439b5a68061c6c8886ce751c0775bd7e4869804f9f72eaa53f94cf1fbaf434262456c66dfd4fc816bf9d5f043b0194ca334b2c42c5 SHA512 435dd3a6743369e373b99cca0ed926aad98c91d2d79bce8af3ab97868c1624afd8a9ffc46cc5f1d035289211ceb222bc38fce214df1f358bf62d35cc4b1ec0af -EBUILD db-4.2.52_p5-r1.ebuild 4994 BLAKE2B abae8bd056b3222bda147de00b69e94b1c3aa4d5c0a5403321c33c27f52bd1df335fb741fcfd583cb24e4141bf3eb53f25555648e66b854b7df526b60c62fcb5 SHA512 facc045c230d6c69dc821b308ad50acea7c64a16438d1d1eb8e09d95fefbb2f03f658f9eb8ca59eb538f66e4eabbedc6899ae94fbe3b4cd37cc69cc2dce54209 -EBUILD db-4.3.29_p1-r1.ebuild 4941 BLAKE2B 030fa31a1ebf518e60230393eddd965128b231ed9f7eb42c768abfc69d77c332976f82fe14bc752ccb76147de515dbac156307efa6e99fe57af2951d271fe5bb SHA512 bd45849c6c699cdd4511ee4e289a6fc1c0c2ca9419f43f0385b4777c5bb6f4fec97295ff1df480bd812dcba8be08b57e6cc443b3911ac5836b7ba2543a582f14 -EBUILD db-4.4.20_p4-r1.ebuild 4833 BLAKE2B e61c054a9ed43ebbcf5afac9970034cc1e700596015b035d8d5eeb0a2f35fa58eee3d66ff2df53543e32c4a66afb445031a735d996cfc786c81ba91f874a7e97 SHA512 dc4d0d17ae2470cbf294a4e1dfaa2e0d5b3c7eb12131b59bc47eaba11347810a055deeb77e869471529bb31dd442eafeedce7c751386db8ee54a2e0217075531 -EBUILD db-4.5.20_p2-r1.ebuild 5100 BLAKE2B 8306f6d5c563d782347d5ddc1c2405404cb834966dc8247dc1adb38f39fef43a9e0d0a4cd34f05f180267224bf97af22e9b02eda7b6d6fe2209fc5937bda9475 SHA512 c7fcfaf05fd56d49758e3c32db505622b32d7b62f572b0865c17a32c9a505de6b40d27b085ac2de64eed1a6c7f4168cc72f9f90c2fbfc548fefff13fa0628245 -EBUILD db-4.6.21_p4.ebuild 4829 BLAKE2B 669e22398bcf581b01e2d2d049e55949ddf58e17da9c8ae5e03898f4c72c7d563a044ea439c27eebf6472064d4207ffc44f99e69c23f4b7032a27162e9624861 SHA512 bea9f25513d3496abf35199c1749ab3262688f43dd9f71043ac6c3011e4c4dcd673616942c58fcee063ea8db28efcf215674a12c521a72e94495bf4b77e722ea -EBUILD db-4.7.25_p4.ebuild 4279 BLAKE2B 217822eb27f4c99d19797ece71587b2cf963638aaa9a29f53cf93a4c8454f6a00ea64c99253f0094a7bb050ea6bc7739ba4d38efba1b7a586894f60d8748bf06 SHA512 236c9cbff1c703a66ad785a6542337853a7fcc11db3b2fc89a607b761175e1e03ad69b1f9db542804ade020e68dd254fb1a7071c8605223b82bd7024c57d5a58 +EBUILD db-1.85-r3.ebuild 1325 BLAKE2B 7dfb82cdc266defa521ad8c65d504372bcfa4857eb6c4053e725c0171627057249c964afbacfd5f1afe0865daf8a5c3b3704c3832070c1579ff69fa3099bb9b1 SHA512 1c418f0f608de7a74dac4b8d3d9e7951b64cbd6b1318ee2cf0bf3d45f19e81ce9d1c33b0be6f992fdeb09762f39d87d809640f8992841250755cd85dbc740ce6 +EBUILD db-3.2.9_p2.ebuild 4955 BLAKE2B 6410a4491d2a774b48a4f188b4e550119ac2197a9c598d91b49f999e745de027697a4356e2f8a36d33742d42906f05208c8f349afcb71a65654bffc6da8df6d0 SHA512 a87c906e804a84de5bdbcbdf60f7c7aef03b6faf27a1137c91724d9649e9a00b5315751aca771453879fa9d36772e01ac92688e79a04585c4744b63ccb9bcdea +EBUILD db-4.2.52_p5-r1.ebuild 5002 BLAKE2B b5fc961846e6367194c185069d1d1f0e0fa78f21efa78e833c32f91db1750918e8b281e1db537ebe053fd72ce58d943018e37da21d32c5c1a5eef6779098e486 SHA512 aaa8d1e5c44623894bfef42b701512c79f61ba87990fa30c43195fdb1b17455206baab416a5ffa798d14f8c73fdcf10b68a8fef03cd5cf70aec355374c4f583b +EBUILD db-4.3.29_p1-r1.ebuild 4949 BLAKE2B fa025504269ff2139d313172edc04f97ce09a1fcf8505ea2de9db3301a123a824d27c52fe1b64be87062f0827be5e686b71e8002979d1ea4704ba8f0193fa25d SHA512 33a4360593e8148d1f559d10d2e0b5edd1a42d838129c5c069092d7a7af9946104b0844428f42a4ef287ff9e5ddae2343bdda93e37e70ff7e7b5ae3540a7da66 +EBUILD db-4.4.20_p4-r1.ebuild 4841 BLAKE2B 526de88f7cbc07f23ef457475e4dd061193eea011b0e5497c8a0edb00e74c3e3294c5d0bf77ab21baf437b910d73daab02183a0094221b9fa1aecbda146afa0a SHA512 62f61604fe8c2f06ff6a626638f96946b68cdec3b2d9820b0ecbf042c5ef13273fbea46e7a94e76ef318622e837f9232ed71904860724d488bce5d62281ca09c +EBUILD db-4.5.20_p2-r1.ebuild 5108 BLAKE2B e818918c2dfbfab9b6ac88cfa29a9c85a0d47d00ba011b4fee3c3172ab8855a6bf3b7d16a9f157d14351b89625fe1ad41fd9ba7726a99bf9540ee6b64726fa50 SHA512 4ceb324645c0186e2e9e4f76f3bf0bfc61f0d140a2c77b9acd27b76c7fc2cecf902f0d45e8b5a5d241ccbb7fbe92c74253317a7d94b0abe5cc86a0cfd5184ed7 +EBUILD db-4.6.21_p4.ebuild 4837 BLAKE2B 9b1fac943f81b04b3a40475d8f81205511d9759c526730c98af361cde5248887c3ae23110b39848afe7633bcd4589a31b0fe745bbd1d86a9fd8b76ddf12214e3 SHA512 ef9f9fadf050100e345362c638945dc5c117d57eae56cf408e9945a391c290d4bf74803a96e3ede8d032c6638f89cf9a37a5af2401f11f4b549706e6567291ea +EBUILD db-4.7.25_p4.ebuild 4287 BLAKE2B 5a2b8ff8cd7d71595496039d45ef56acd9bb00e657579db88cdfbb1d60de5c2923312b8f4e0ddbef3e107081cd72b2c078023a2d74db625dba2359d289659b54 SHA512 d31910de0ead360d9fc5e35d5c5ae36e1a9a18edd54f8d0a3e0fcce69df0cf61df9d6f879d8f5fb49ab551fe4ddb80fa29a948697f34eff3033bbc93c6da1e4d EBUILD db-4.8.30-r2.ebuild 4915 BLAKE2B 35b386bfcbd6a93ae9b1b44b7da0a9514e49686227ba64a2c8720b6ec97d05a08c03781032d7340d3660f685b6f5e0eddf59c6fc36ca10d4704a69167f00155f SHA512 f973dfafedf1ecd0c4d33d34ce8613bee65995df552f3c0bcd160afd208bd82f02decbdfe3e6d331f35068f73ad4eda30760b4ea1dfd55079aec408517498ac8 EBUILD db-5.1.29-r1.ebuild 5651 BLAKE2B 77c87e5eb5ceff56dd7cb5ba779d9f51ea91bbbacd02d8200de03fa6d8c35a5dd8286a7146833d16fa2d7e4b0b335037ac0654371e97692d4add9a1c596f0aec SHA512 c8aaa4bf390f607e5d10dab041d4d99593a59b602312a3cdad118de8c1f505e592faa136bd9ce6e7d1e78eef6a15d6073767c703d465b251509e3eb73593267c EBUILD db-5.3.28-r2.ebuild 6808 BLAKE2B 77c145773b1497bc59edc6aad63047f70ea987268db4de338ab2394761a19ccd2aae376052ca80d407d217ae68eb7de0ed9bd21b3f2c5071da526fe653a506e3 SHA512 08d8227afb4635545f570a99d61d8ab880c5401b05e44a3749ffce1328558cb95ff12bc85b9b1e0bf6ba71007a67794f5fedb60685461999cd67480f4f0fee50 diff --git a/sys-libs/db/db-1.85-r3.ebuild b/sys-libs/db/db-1.85-r3.ebuild index 1b325ae84774..065baf18bbdd 100644 --- a/sys-libs/db/db-1.85-r3.ebuild +++ b/sys-libs/db/db-1.85-r3.ebuild @@ -1,6 +1,8 @@ -# Copyright 1999-2016 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils toolchain-funcs multilib multilib DESCRIPTION="old berk db kept around for really old packages" diff --git a/sys-libs/db/db-3.2.9_p2.ebuild b/sys-libs/db/db-3.2.9_p2.ebuild index 07e9f6567c3c..eac5cd83442e 100644 --- a/sys-libs/db/db-3.2.9_p2.ebuild +++ b/sys-libs/db/db-3.2.9_p2.ebuild @@ -1,6 +1,8 @@ -# Copyright 1999-2016 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils db multilib #Number of official patches diff --git a/sys-libs/db/db-4.2.52_p5-r1.ebuild b/sys-libs/db/db-4.2.52_p5-r1.ebuild index a68275844a24..7988c7bfe38a 100644 --- a/sys-libs/db/db-4.2.52_p5-r1.ebuild +++ b/sys-libs/db/db-4.2.52_p5-r1.ebuild @@ -1,6 +1,8 @@ -# Copyright 1999-2016 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils db flag-o-matic java-pkg-opt-2 autotools multilib #Number of official patches diff --git a/sys-libs/db/db-4.3.29_p1-r1.ebuild b/sys-libs/db/db-4.3.29_p1-r1.ebuild index 1aa988529c93..5a0bcf5fd0a4 100644 --- a/sys-libs/db/db-4.3.29_p1-r1.ebuild +++ b/sys-libs/db/db-4.3.29_p1-r1.ebuild @@ -1,6 +1,8 @@ # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils db flag-o-matic java-pkg-opt-2 autotools multilib #Number of official patches diff --git a/sys-libs/db/db-4.4.20_p4-r1.ebuild b/sys-libs/db/db-4.4.20_p4-r1.ebuild index 296dcc89ef9e..52990c1d8c2e 100644 --- a/sys-libs/db/db-4.4.20_p4-r1.ebuild +++ b/sys-libs/db/db-4.4.20_p4-r1.ebuild @@ -1,6 +1,8 @@ -# Copyright 1999-2016 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils db flag-o-matic java-pkg-opt-2 autotools multilib #Number of official patches diff --git a/sys-libs/db/db-4.5.20_p2-r1.ebuild b/sys-libs/db/db-4.5.20_p2-r1.ebuild index 4e598127e113..751f308f857a 100644 --- a/sys-libs/db/db-4.5.20_p2-r1.ebuild +++ b/sys-libs/db/db-4.5.20_p2-r1.ebuild @@ -1,6 +1,8 @@ # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils db flag-o-matic java-pkg-opt-2 autotools multilib #Number of official patches diff --git a/sys-libs/db/db-4.6.21_p4.ebuild b/sys-libs/db/db-4.6.21_p4.ebuild index a748bd7f2f14..d88b6d9dc858 100644 --- a/sys-libs/db/db-4.6.21_p4.ebuild +++ b/sys-libs/db/db-4.6.21_p4.ebuild @@ -1,6 +1,8 @@ # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils db flag-o-matic java-pkg-opt-2 autotools multilib #Number of official patches diff --git a/sys-libs/db/db-4.7.25_p4.ebuild b/sys-libs/db/db-4.7.25_p4.ebuild index 13e0ec8dfe8b..2f341da53d5f 100644 --- a/sys-libs/db/db-4.7.25_p4.ebuild +++ b/sys-libs/db/db-4.7.25_p4.ebuild @@ -1,6 +1,8 @@ # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils db flag-o-matic java-pkg-opt-2 autotools multilib #Number of official patches diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index 97f485e7cc2e..3fcf9266acd0 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -14,6 +14,7 @@ AUX 2.25/glibc-2.25-gentoo-chk_fail.c 9068 BLAKE2B 6fabcbb981d92101ff3b97e8eed4d AUX nscd.service 337 BLAKE2B 6b163465dd8db024652921892dc913da8dfc0984eec7ffce621229e48fa99dcedc3b5944844529190122c81f4884b6a6fe7836d37d2d812f34059c530856dec1 SHA512 2001100f3b054843c69b6fd2d38852c7c824282aa8998c25a3c0352db993705429d25c70d8ce6cb3579f836b7089644c520acac423ebd69cb1b36e94a77c5bea AUX nscd.tmpfilesd 111 BLAKE2B 4abb7220564e248fc7eeeced41077f186f42594facbfac9a4c0ff36209baac529c219ad6ead8d8aa53ab2b092002f1006a4479459b9e9a7c5a0294cb7d822100 SHA512 53b80b331e1a85d8ee16eb2ce547a7249e944926c3d1cdd4a47a5301a5c842ffc7ec1e3dc0a731542a8facf8261c1c57121802d01741aa89898a3476c09da340 DIST gcc-4.7.3-r1-multilib-bootstrap.tar.bz2 8064097 BLAKE2B 3cc5c82cd57d0fbd26d9a376ee8ca02f119fe9d653311cbe4d2b7b93aec2290adac3be271be19a7fdedae2e11e4b6e32360184e557204e100ad64357f5575d4b SHA512 40b93e194ad41a75d649d84d1c49070680f253a13f0617803243bc61c44fed1ca2d0a7572a97ebb79353f312b58b5f6360be916dd7435928cc53935082e15269 +DIST gcc-multilib-bootstrap-20180501.tar.xz 2128700 BLAKE2B edeb5447bf397dfeee1295beb10b0e34253da8b3e1816720b6cfc3300a1c685fa022c3b809402a86340bbd7b9488d22cfba4c042d530dcb05ec971a2b1580d34 SHA512 eb289c44c5dcabaa727612dd685801b61e1fbe94b39024ecb3e14c73f9eaff68e05949a8f277a86c7471955cc8ec6e0127623b9861be7ac85f63226618b6c9c2 DIST glibc-2.18-patches-4.tar.bz2 95165 BLAKE2B 70280e0f5fd0b1ee13cd0464aafaa9c9324528d0bee8024e6529d67d908991012066db6d8257b66983a1f52e32b3aad7718612fdab9ea199fef845db93347168 SHA512 d881c9c5fe32b967694d4ca5185ff5ffc964449f2ed49fd062e5d57a3c6d9f16eef2f591d2d8e98a1a95a6487f3436ef031839ed8766fd085404b288340b7933 DIST glibc-2.18.tar.xz 11150148 BLAKE2B 7848a5a50abedbd17085e05b6f6835959adb5e55a424d95fa8a49eeec999a6dd81a9382db85ef7e852ef1d7743c5d312dccbf42024e95edf0e802eb32928dfe5 SHA512 27218d2e7dd3bf3908d7af171c490933680e958c579ebd27b43b661e223fd5de2219cc1cf699170405280808c84de476d0ad86dbba35a488ef404e9438552327 DIST glibc-2.19-patches-3.tar.bz2 80664 BLAKE2B fb348c711941c1bd4dadd905e172dc4f239d8b63af1a1d14dcf4ec45c504bd47e10e9b24b38f9e01796016f2e97caeeb693213ae08147274ed0a4d9501293be0 SHA512 d281d6a2757920124cf8a3f02b97e75192598b08d96ae48840df34c7ffdcb212952d171f233e6f12a429b19437d0a296212fe1f2eae164d6a1c6793cb3cb69f0 @@ -36,8 +37,8 @@ DIST glibc-2.26.tar.xz 14682748 BLAKE2B c1c9dbec110dd4e25b2f463a96d8afc43b8e3ebf DIST glibc-2.27-patches-1.tar.bz2 15950 BLAKE2B ef2d2ede447b98c5e20f1bf1328f1379fd781b603a888f0fd7f1dbb6172e42222c9198d61dd75d9aafbed5c395a277a3c0d00ef4b70932fafb500b111e013963 SHA512 9e3ed7e271313c104eefcd383e6259c235b4e2f7a41be2ba8a1bfb469f8f54835ffde63ae89fa40af47b444911addb0db002a05d033bcc2832710b51650c91e3 DIST glibc-2.27.tar.xz 15395316 BLAKE2B ea206d304c8c9aa86d69db981a14bea008602cea06a6c151c4971a8df059949ffe5632b42a67ab0ffcd7c4d7ce1ec02ac48815dac4dade1c4dd41eaee8a6ed33 SHA512 7c5581154487d38d173ce1feb944e60207139cca148bccf066eaae322c0c2d219423bdcfa15c7f9be1b5e45dfc43c641cc5d80d3c3c65837d08a83cdb4e2a147 DIST glibc-9999-patches-5.tar.bz2 15979 BLAKE2B f59b4d7096fd876c9176f6ebdd9a4a510f3c6c90dd69a1fbb092a18f296767759d8d73dc7a81e29e3f6152043a4179056d5e224896c7bb96cc09ede2e2dd16e1 SHA512 c29ad59977b2c4dfd58ee16d0898a1c16e6cde974d5c29c3a7a55e0dee4ade7f1a3d45c9481c1d35df7fcedbdb67267f5d61759cacab677b6288b5ece3871a4b -EBUILD glibc-2.18-r1.ebuild 5514 BLAKE2B 2b007c0f935df77d35d74adceab874eeab55306c1fc69eee3c0f45a5d9cd02e6b4dcf7ab25d2bb450fd07fe7f20a827a774a6e15322f7b8a447726acdf31a3f7 SHA512 b306c31227f15cbf0dbf518195736856f30949544dac12fb4b5b0aabd3e421f040663aacea159181b61f92777a19519241f5c05f6e65576b26f6406df85ef83b -EBUILD glibc-2.19-r1.ebuild 5471 BLAKE2B 8531139c723de6358daa971e96f98db628eec14c696b004a4e8a4a7efc8a0c610d713625655c55293c94898d13ac9aea5ae1a58134aedb30b1b695859748a964 SHA512 aae5bcdaa10cf6a3026e28b406046bd7297fdacfa8d0ace60f76177aa2efed6b0f82b639f5e6db6bd42d99440d12644d62e9b14cf49ced7284f011cb3c406775 +EBUILD glibc-2.18-r1.ebuild 5522 BLAKE2B c087f7ac58924d29211b8227796eede63074c7a3e87821ee21c676b4831ae5fa213693d9476af30d1a50e132b5e53e31b722ea1ebcd1801fed319930839d36e8 SHA512 adf20c016104ecaa137c8123a7731daeeec8bbdad4220d379ab5ce2e89f4b548820097936b1f51bb03d617956fe7b36d3630665754999273363f12ec39e085d5 +EBUILD glibc-2.19-r1.ebuild 5479 BLAKE2B 68bb9535b64e564879ecb66f4e8a2df99d5edef8d7591cb239c75766dc038cf3fa18f4b5d9b49662fabcec4157ba00590f9678076db4c2966fd75614ec833fec SHA512 336bfdcb0c6d6ac4ebad7389e84fefee9e3930cbd6af1d094ac4e37efec335d5cb14f781bf8ac8c1f6a7fcccf00c2c836b3f08fd09e03af767fea62c462e3095 EBUILD glibc-2.19-r2.ebuild 40699 BLAKE2B ee2d9ac1596b53d5169d2943892363fe33a2ead64aa8ee4a730a031b89d30075a5b4146c98c9b946c132d288eb4b1f683b449150297de3573da5833e6637e8ca SHA512 145ac3ce6eab581c7af006ee4828f94d884527ae5f6d7bf6620eb1593bd68e24391c5496e98d5acf1e0aa4976261b61c2fac95bbd2438c3b8f7a11f06d42f0a7 EBUILD glibc-2.20-r2.ebuild 4947 BLAKE2B 24062f002678df912ced724a3d919bc2f07476c98000092cb3fa3f2be1836db57348c88b6fc1da7a9364103136eecbe687fe365d131f10c82de3cb0edd3eb8c5 SHA512 ff76e9173ab6bfccb1c659f79cefb93f6fa6266adab40a3816f56acddb7866cee67ba6bfa8d1b9988eff755e9d1a879e62973fc332566c185f019af5e17a9f1d EBUILD glibc-2.21-r2.ebuild 4922 BLAKE2B 99bd1be39a3643f845c0daff4f7b19a0abb37de95a8494b4dc9d29aaee74281d4a252792010ff4935e5d661a7240cf4d5944907267e9059ce208b59891528085 SHA512 ff896f5bb20502db03f00d1438a06a026e0940106e368b4bb27abb72bb927fb235371a5a6b01130e35906f17c478e79e44bec6dda02bd5fedb30552bf4a6cc86 @@ -46,6 +47,8 @@ EBUILD glibc-2.23-r4.ebuild 4975 BLAKE2B 9a0d3a3689896fab9f71fa20a83be5f2563f023 EBUILD glibc-2.24-r4.ebuild 5011 BLAKE2B 71050f0449074652d4fabc709326025b4de2e6642fdde87898acfde6f99cce95f4d7b9e1e7f9eedcdf6d2fd70ebf3c2860599ec36ccf68e0e633ec794f8ce0e8 SHA512 1cb3bcbd7d9d7f7c095bdff7c81d0acc3b4700c0b8a9d4fd0499cbf53abb55c67ca3bc3cce125916d238eb8cf6f6d69989af27defd6f194aaa5ac27cdda94eb9 EBUILD glibc-2.25-r11.ebuild 5001 BLAKE2B 30988b55a9f655033db8cb2ac3c6ae0183c8a240134bcf26b9b98503a2351bf30fb3742cf84c23b4c81d56797b0c83d138341d6335659046784208a6404776f8 SHA512 43118e02defd07a02b3a9bd8220ed0dcfb7fb0b2c4bcf3b6d510a78a978295814e44ae329fa4a41ef99a73c10d8fbf9a31f84a53a9196bc848af28f3a33720d3 EBUILD glibc-2.26-r6.ebuild 25614 BLAKE2B 32bd3f11186c7f5619a7c83358cd5e416bc9c4ff6f6355ab9f65d68e94fefad99557bc993033a711fbea3f402c898ddcd494ecbc3c10f5e0c8dacdfce632b8e0 SHA512 256bbd3e1a5c4aaee844e4da88a0851608ec75fe7d1d10486849be57d14a202e4d10904873cdae565ae9ac216607072f765d18967007a0d16ea5f2103a76b20c +EBUILD glibc-2.26-r7.ebuild 25643 BLAKE2B fdea0aab9a1601b898409fcda1e4c8933b6fef941683d3abb579488d720cac11f1b4d5eea2644e76cfe3f5f9ca1abafc8d354924964d987d70df108ca949b125 SHA512 d3daaaa561643b6e02b28a97a756257c3f61222d271e6d043ae09ef3e644f85bb64b5105327df60acc88d8db6fbae4550be387f666ed38c8aeb834b954ba5d87 EBUILD glibc-2.27-r1.ebuild 41940 BLAKE2B 362f65f0916a3db9f3ba2ded07d5b8fda7d47ccc2ac3e501fb9623ea59f016d677cc62ab3e172d2254656889b253f9c89538d5f55e0e821af0c761c32c49e808 SHA512 84b0c542833fb34a77b77d01dc99e849fa163de4f241cce41fd6eefb3e6122babd6af190972f5d9a60aadd45d43d8687e64492961c1c1bd384f4a3d7f2b519ff -EBUILD glibc-9999.ebuild 41619 BLAKE2B c8075f3a2b5d2fbd5da3be88a17aa731f6d2e8b6f335a71e836a8fa139152843187a0848c25fc88ade48f1db5ac044b8c54e0b46e1c941d3b0f3ed2e2fee21ba SHA512 234b054c0c818521aa8d13aab68049de72532652bdeb3db7aa3a6b097dcbbf3115a1abfe70a7f6685c65e00e1066e0c06e8e35240fab1d6522bab274b4741ce6 +EBUILD glibc-2.27-r2.ebuild 41955 BLAKE2B 1b5cb8b8e07e5baa2a402942e1ca9747eb084badb7b2955bcb9880b35f7fb372107dece0c3b78f0b9d06d6c1300537a366e648650df2c2bb2d1399652ce4e64e SHA512 a6a643e2055c41ebd4d706271d0edafba1b9abdea2d03073646895ede105cbb5f2fca01dfd4d501212a3abe9c794e07e27cf1ef90f6863f545584d4385152e01 +EBUILD glibc-9999.ebuild 41634 BLAKE2B 77194b3350ca9455a49d0aa98b8178b2dab995bdfe1a12e40f34ed2d7dc2589c739d7074f0730cc599b6d816a0a9c250f9bcd9858671c6e30a5ba9164662a236 SHA512 1e78f43986ab4379ee2eeac3a738f9b58f2013ae5cde91640da223f01749fc3e8cd9e615da44fed8fd88f22657b31f7379aa2a214b87a01da77526cc2881d23d MISC metadata.xml 1054 BLAKE2B dbc091e54130729385bc02aaa1025885f101caa88d601b1f7670974d89e7e24aae5d37fd6699278a37c0064e1f3232c04954dc127869427317b5d80b499f3813 SHA512 65474b7d32ceb6bafe8ae0e18aa0b46b68cefecce5570a0e8d4a0117019e6540f2feae35cecbebad382b4f06d6e5ae1dfa9b8a61889881e8534956dd42df8e4b diff --git a/sys-libs/glibc/glibc-2.18-r1.ebuild b/sys-libs/glibc/glibc-2.18-r1.ebuild index a056ef575af5..d699096c66fa 100644 --- a/sys-libs/glibc/glibc-2.18-r1.ebuild +++ b/sys-libs/glibc/glibc-2.18-r1.ebuild @@ -1,6 +1,8 @@ # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit toolchain-glibc DESCRIPTION="GNU libc6 (also called glibc2) C library" diff --git a/sys-libs/glibc/glibc-2.19-r1.ebuild b/sys-libs/glibc/glibc-2.19-r1.ebuild index a2b10e2a5c15..17506c5708a4 100644 --- a/sys-libs/glibc/glibc-2.19-r1.ebuild +++ b/sys-libs/glibc/glibc-2.19-r1.ebuild @@ -1,6 +1,8 @@ # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit toolchain-glibc DESCRIPTION="GNU libc6 (also called glibc2) C library" diff --git a/sys-libs/glibc/glibc-2.26-r7.ebuild b/sys-libs/glibc/glibc-2.26-r7.ebuild new file mode 100644 index 000000000000..dad9a620a2ce --- /dev/null +++ b/sys-libs/glibc/glibc-2.26-r7.ebuild @@ -0,0 +1,849 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit prefix toolchain-glibc + +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 +EMULTILIB_PKG="true" + +# Configuration variables + +if [[ ${PV} == 9999* ]]; then + EGIT_REPO_URI="git://sourceware.org/git/glibc.git" + inherit git-r3 +else + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" + KEYWORDS="" + SRC_URI="mirror://gnu/glibc/${P}.tar.xz" +fi + +RELEASE_VER=${PV} + +GCC_BOOTSTRAP_VER=20180501 + +# Gentoo patchset +PATCH_VER=7 + +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 debug doc gd hardened multilib nscd selinux systemtap profile suid vanilla headers-only" + +# Min kernel version glibc requires +: ${NPTL_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 + +is_crosscompile() { + [[ ${CHOST} != ${CTARGET} ]] +} + +SLOT="2.2" + +# General: We need a new-enough binutils/gcc to match upstream baseline. +# arch: 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 + !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 ! glibc_run_test '#include \nint main(){return getpwuid(0)==0;}\n' + then + eerror "Your patched vendor kernel is broken. You need to get an" + eerror "update from whoever is providing the kernel to you." + eerror "https://sourceware.org/bugzilla/show_bug.cgi?id=5227" + eerror "https://bugs.gentoo.org/262698" + die "Keeping your system alive, say thank you" + fi + + if ! glibc_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" + eerror "a newer version as syscall() will break." + eerror "https://bugs.gentoo.org/279260" + die "Keeping your system alive, say thank you" + 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" + + # Make sure host system is up to date #394453 + if has_version ' /dev/null + local addons=$(echo */configure | sed \ + -e 's:/configure::g' \ + -e 's:\(linuxthreads\|nptl\|rtkaio\|glibc-compat\)\( \|$\)::g' \ + -e 's: \+$::' \ + -e 's! !,!g' \ + -e 's!^!,!' \ + -e '/^,\*$/d') + [[ -d ports ]] && addons+=",ports" + popd > /dev/null + + 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 ) + + if [[ $1 == "nptl" ]] ; then + myconf+=( --enable-kernel=${NPTL_KERN_VER} ) + else + die "invalid pthread option" + fi + myconf+=( --enable-add-ons="${addons#,}" ) + + # 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) + $(in_iuse systemtap && use_enable systemtap) + $(in_iuse nscd && 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=$(in_iuse audit && usex audit || echo no) + ac_cv_lib_cap_cap_init=$(in_iuse caps && 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 "$1") + 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_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_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 + + # Blow away some random CC settings that screw things up. #550192 + if [[ -d ${S}/sysdeps/mips ]]; then + pushd "${S}"/sysdeps/mips >/dev/null + sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die + sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die + + # Force the mips ABI to the default. This is OK because the set of + # installed headers in this phase is the same between the 3 ABIs. + # If this ever changes, this hack will break, but that's unlikely + # as glibc discourages that behavior. + # https://crbug.com/647033 + sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die + + popd >/dev/null + fi + + local myconf=() + 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} + ) + + local addons + [[ -d ${S}/ports ]] && addons+=",ports" + myconf+=( --enable-add-ons="${addons#,}" ) + + # 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" + 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 $1)" + emake check +} + +do_src_test() { + local ret=0 + + glibc_src_test nptl + : $(( 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" +} + +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-.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 + # 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 in_iuse suid && ! 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 + + # Prevent overwriting of the /etc/localtime symlink. We'll handle the + # creation of the "factory" symlink in pkg_postinst(). + rm -f "${ED}"/etc/localtime +} + +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_install() { + if just_headers ; then + export ABI=default + glibc_headers_install + return + fi + + foreach_abi glibc_do_src_install + src_strip +} + +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 + + # if the host locales.gen contains no entries, we'll install everything + local locale_list="${EROOT}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="${EROOT}usr/share/i18n/SUPPORTED" + fi + locale-gen -j $(makeopts_jobs) --config "${locale_list}" + 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-r2.ebuild b/sys-libs/glibc/glibc-2.27-r2.ebuild new file mode 100644 index 000000000000..b45dd3a49214 --- /dev/null +++ b/sys-libs/glibc/glibc-2.27-r2.ebuild @@ -0,0 +1,1428 @@ +# 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" + KEYWORDS="" + SRC_URI="mirror://gnu/glibc/${P}.tar.xz" +fi + +RELEASE_VER=${PV} + +GCC_BOOTSTRAP_VER=20180501 + +# Gentoo patchset +PATCH_VER=1 + +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 debug 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 + !' | $(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_ 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 \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 \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 + + 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}" + + if use hardened ; then + # We don't enable these for non-hardened as the output is very terse -- + # it only states that a crash happened. The default upstream behavior + # includes backtraces and symbols. + einfo "Installing Hardened Gentoo SSP and FORTIFY_SOURCE handler" + cp "${FILESDIR}"/2.20/glibc-2.20-gentoo-stack_chk_fail.c debug/stack_chk_fail.c || die + cp "${FILESDIR}"/2.25/glibc-2.25-gentoo-chk_fail.c debug/chk_fail.c || die + + if use debug ; then + # Allow SIGABRT to dump core on non-hardened systems, or when debug is requested. + sed -i \ + -e '/^CFLAGS-backtrace.c/ iCPPFLAGS-stack_chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \ + -e '/^CFLAGS-backtrace.c/ iCPPFLAGS-chk_fail.c = -DSSP_SMASH_DUMPS_CORE' \ + debug/Makefile || die + fi + fi +} + +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) + $(in_iuse systemtap && use_enable systemtap) + $(in_iuse nscd && 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=$(in_iuse audit && usex audit || echo no) + ac_cv_lib_cap_cap_init=$(in_iuse caps && 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-.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 + # 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 in_iuse suid && ! 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-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild index ca23762e8d4a..7c5d09ab85ac 100644 --- a/sys-libs/glibc/glibc-9999.ebuild +++ b/sys-libs/glibc/glibc-9999.ebuild @@ -25,13 +25,13 @@ fi RELEASE_VER=${PV} -GCC_BOOTSTRAP_VER="4.7.3-r1" +GCC_BOOTSTRAP_VER=20180501 # Gentoo patchset PATCH_VER=5 SRC_URI+=" https://dev.gentoo.org/~dilfridge/distfiles/${P}-patches-${PATCH_VER}.tar.bz2" -SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-${GCC_BOOTSTRAP_VER}-multilib-bootstrap.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" @@ -730,7 +730,7 @@ src_unpack() { # Consistency is not guaranteed between pkg_ and src_ ... sanity_prechecks - use multilib && unpack gcc-${GCC_BOOTSTRAP_VER}-multilib-bootstrap.tar.bz2 + use multilib && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz setup_env @@ -933,7 +933,7 @@ glibc_do_configure() { 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-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die + sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die fi fi } diff --git a/sys-libs/libavc1394/Manifest b/sys-libs/libavc1394/Manifest index 734d0a24f0e3..e9e32760feb6 100644 --- a/sys-libs/libavc1394/Manifest +++ b/sys-libs/libavc1394/Manifest @@ -1,6 +1,6 @@ DIST libavc1394-0.5.3.tar.gz 355976 BLAKE2B 03f9055de6f4dd08f1ffd28fbfae61ed6cb73067d66cc02ab822788cc020ebad4959066107ee5eb9109fedd7ab4e8403081d703dc02f454097409f15c36b23cc SHA512 36761830082c0040708074eea8124c2eb027e3bb80fdbb8978af5eabe655afd2e6c9d7fc2aa9d4aba4d4d218cba9fa41fa6079119a9e460900b1e17effb4c145 DIST libavc1394-0.5.4.tar.gz 341679 BLAKE2B c27cf10b8769c1602488fa1a9a2536dee169e0e07185090e719946ca1da4b210aa61b37d816fb5b019d8b199b1c9285e2b212545f4332c8aad48af39c2dadf20 SHA512 ef07631cd2de9b79dec9d81247d705be318101e8f8a1fe007b946ffab3dfe7b97f392144614d867ef6b2315b6c0e82d53e915f07855d4e21401645293e18842a -EBUILD libavc1394-0.5.3.ebuild 569 BLAKE2B 02bc0dd648384b7b50bf6869030f28ea32bb3af7c75fda77348d567be88eb91306ead9578bd0c4b6b47c2547e2d675236fce33db40f1832987a891a4d20b2125 SHA512 0d142d7bfe03ad1b36739134022c3e71074460930eef2c63d3a15fd0a9142f8da44093c708160ef1b6d34f0fb96af1429805b94384ce3c960db1a4d3f7acfc57 +EBUILD libavc1394-0.5.3.ebuild 577 BLAKE2B 1529af35db94da40e0fb37aaad2c78a0b6bce9ec5b9309f10737a14ac20b2fb5617e82adfc716360c782da86557cb36122b34766bf1b750f4294af44efcb0a11 SHA512 cc410851f1025f4ac2d9555428a96c3c137c24510b71122debc16307d40d540f7fbc1f7f87a2e9457b25f8e6229366d66725299b5e0e759f0f2eebc06ffe534f EBUILD libavc1394-0.5.4-r1.ebuild 556 BLAKE2B 4a49c61e3900825acf13b2ce3e3397400e9350e8dd200e78601fe65ed33837a4b58f5ba29b8505238ad9435014be66621f319dd8ae3f8bee68decfb717f436b5 SHA512 7c74d92eff9e62ac74ca3a089050145f8c3f98d79828f699787f6251e5e8939f2ab2de5b22af6fbd8a6b0c9196faaea0ef34bd7e47dbb38396ca2bf47980676d EBUILD libavc1394-0.5.4.ebuild 521 BLAKE2B 0c5744eca4495eb36276fb3d6fe11dfaa23e8d71c858ba56af90cb1c266c9bfce85357d3bae3fcaac94e2283ae8dcbaa7ed4a18ecf62cb85492a76e1b65f2158 SHA512 e26d7552acab1a7c8c3552071dcd3e7f7426f1d2de6c40054c3e984e857c629108a3f67e78aa13c73f2ea9998dabc885902910fcf344581b447b9895d4da2533 MISC metadata.xml 330 BLAKE2B a1bbe65ce97eb3a0c038333183e4fde5b7f0f0384d2fcacb78c569f6df4afd74cfe8ab34c9404daf7bd0870b983372bc35d3e3dd3ac50793fb47fe25b509a9b7 SHA512 3b2a188bb90d59ac6acb66b90e0231db783a6364f4e91a955df28346422061b99837ecf4038f6d42eb570630029623797c0e874737151065343b63352bd082f2 diff --git a/sys-libs/libavc1394/libavc1394-0.5.3.ebuild b/sys-libs/libavc1394/libavc1394-0.5.3.ebuild index 8b8e455c2a6b..4362f593bcef 100644 --- a/sys-libs/libavc1394/libavc1394-0.5.3.ebuild +++ b/sys-libs/libavc1394/libavc1394-0.5.3.ebuild @@ -1,6 +1,8 @@ -# Copyright 1999-2015 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + DESCRIPTION="library for the 1394 AV/C (Audio/Video Control) Digital Interface Command Set" HOMEPAGE="https://sourceforge.net/projects/libavc1394/" SRC_URI="mirror://sourceforge/libavc1394/${P}.tar.gz" diff --git a/sys-libs/libservicelog/Manifest b/sys-libs/libservicelog/Manifest index e772541a514c..12dd336cd28f 100644 --- a/sys-libs/libservicelog/Manifest +++ b/sys-libs/libservicelog/Manifest @@ -4,8 +4,8 @@ DIST libservicelog-1.0.1.tar.gz 673264 BLAKE2B 4ea60f194513dd2aeeb0f8f6c991d85d0 DIST libservicelog-1.1.11.tar.gz 905377 BLAKE2B fa4d8e5420caf0c569d703a330a4430a6d0f69ec00f3b907db7e013684c18732abe8d615470d5cc9f3ff7d53a9c15a4b47ca73ef2b1030b65fc29a4b9e69d17f SHA512 7706e108573d79e7973bb6004fb987833b04a2896c088fc259a84f17192a6e5fc0e760f59031f1b0b28306a9043534a9fa5690dde099060f9546e046fa8d0f5b DIST libservicelog-1.1.15.tar.gz 392259 BLAKE2B 886bbf4aa6d41b35fb978f2155a1025069dbffa98dc31add58687260ec503ebdd8b2d6802b473634a65dd9c429a4a307159a918361be057226b7ae9dc14422da SHA512 70cdf8340a8b0df39bc5669976feab022917b5884256370281ed3356633100cc9c7e69c6cc1bd0784bfedc65d388d9ecc50f6dd37e6ed19f796bb7f55bb436f7 DIST libservicelog-1.1.16.tar.gz 396055 BLAKE2B 2874acc4c6b405d5a16150de0d66f95e55d8ae375d2f8d3bda4daf4a9d7d34e7b2d52bc9c270880daf747664c740ee72d81d47978e73f2d7640efcb6b92a1e78 SHA512 7008a26c8b143b2e498b05cfb5da0c7b76b0ee56106e1d261e202b8ebc0c93abce719230b037fd6bcade078daa5c464428ea2adb466269f30951e909211ae307 -EBUILD libservicelog-1.0.1.ebuild 613 BLAKE2B 84feb8d61725ff2294916aee1bd24cc545e16bbd86e43876b17f318e7e96c7ac72d7c2a922fc3bc6d6999b1d6155197d2a880bd4a2612c5f5eb51a5bf6f47de3 SHA512 5ff8ff8450f0031611e884880f09115f701a5ec8c202f5a0b056b50640a8aa7b3f3583e809bd1eb6879e4395c4cba8cd94726efcc492f96a82c16b67249082b5 -EBUILD libservicelog-1.1.11.ebuild 600 BLAKE2B 23b7e8315907148d46786e08686d29161b180e2a5a9ece82d0e41c51239721dd38a15f33974c925421ad73eea0fc677114d3f2b7be27836fa6e556af589aaed1 SHA512 b64db3bb2a2c813237deec07b7db68c71dd6da6ee081cd2da217642c06389fa6ab69bf89f8a5d11d377fd80425c761108f6c20d141bd69d56b777ab6ac6c5d0a +EBUILD libservicelog-1.0.1.ebuild 621 BLAKE2B 7089305141ea969aaced701af3e184ff4c42ee86aa889a1248592ca0b143361274cecbf49785f70508cfcd74ed26fdff0df1477c26b90a87d04a3d3c0a5439b5 SHA512 d2f801036ec9643dab72f32eb2f430280a58960c3e17d2a624ea6c36b30634ebfaf00127c8b11e276fc245b2af91cb6fc4e43f3670b4b51dac600c0f83788b84 +EBUILD libservicelog-1.1.11.ebuild 608 BLAKE2B 5342a85e19d23f338af4279d3ee1becf15504259e96d17be72b0d0ec1bce035cc84ca4946602da25704bb71cd784612f2eb81d9c3f7d93db74a9d81cc7942d84 SHA512 45cc9751382b920c11b936c305c6c510770ef1dc610bf7f399899840fa7fc4b5c99d84279172488cbaa262d01ec29fdad7ac535151dc21dd71c353b1c9a30589 EBUILD libservicelog-1.1.15.ebuild 592 BLAKE2B ce044cdb0486083667e1573cfc8cc05a9f108e39c82919516509145b679aa03900497425a1a69a393944f568e8d6411691ac0350662abb1bdb6aa7e47fb669b8 SHA512 f55d9b77c760b770522a123b12ff0288eb0d4a9fa41366ebc56dd30325d4199f2cc033fa953217d2a7662e9857abd1c24dbdfa7ab5859c013365f0c7b6bbe8f1 EBUILD libservicelog-1.1.16.ebuild 592 BLAKE2B ce044cdb0486083667e1573cfc8cc05a9f108e39c82919516509145b679aa03900497425a1a69a393944f568e8d6411691ac0350662abb1bdb6aa7e47fb669b8 SHA512 f55d9b77c760b770522a123b12ff0288eb0d4a9fa41366ebc56dd30325d4199f2cc033fa953217d2a7662e9857abd1c24dbdfa7ab5859c013365f0c7b6bbe8f1 MISC metadata.xml 343 BLAKE2B 88ff852b7b901d0f81c494ab49f283835edb7e312965526050fde66fcf0b259c197e0b1b312e09910a77257e4e1b8d8f3fd6c465b95a9fbe7288b8d64a4a6659 SHA512 42f1b8b76a107cfa61ae9db8b900aed22a3bc8e8d3573dbb3c507ebde688ef2c50f7f79847eb345e738365fbb99ba22d99aee56e302c6eed064379ddc1e3a710 diff --git a/sys-libs/libservicelog/libservicelog-1.0.1.ebuild b/sys-libs/libservicelog/libservicelog-1.0.1.ebuild index 7bbb044fecd3..e8b758cffb27 100644 --- a/sys-libs/libservicelog/libservicelog-1.0.1.ebuild +++ b/sys-libs/libservicelog/libservicelog-1.0.1.ebuild @@ -1,6 +1,8 @@ -# Copyright 1999-2013 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils autotools DESCRIPTION="Provides a library for logging service-related events" diff --git a/sys-libs/libservicelog/libservicelog-1.1.11.ebuild b/sys-libs/libservicelog/libservicelog-1.1.11.ebuild index ed6ce4fef201..f616f6fba458 100644 --- a/sys-libs/libservicelog/libservicelog-1.1.11.ebuild +++ b/sys-libs/libservicelog/libservicelog-1.1.11.ebuild @@ -1,6 +1,8 @@ -# Copyright 1999-2013 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils autotools DESCRIPTION="Provides a library for logging service-related events" diff --git a/sys-libs/libspe2/Manifest b/sys-libs/libspe2/Manifest index 51e4a63e6080..a2acf13e525d 100644 --- a/sys-libs/libspe2/Manifest +++ b/sys-libs/libspe2/Manifest @@ -1,6 +1,6 @@ AUX spe.rc6 904 BLAKE2B 9a63a264fe43d5d004180f68a0ae3841e41b85c97a21f5d64809397f872a04dcf8722e9f9b0da9446f4009248e528a848147969839deedfbca92df787e70959c SHA512 3661fd96629b7c0326308de48b6a48fbead8d24ffe66e31e7a0313936edb39c44c8d5480b2b3d80ea9219690fb454ec5f385cf06ed4d434e67d46ec8e5038d80 DIST libspe2-2.2.80-95.tar.gz 153122 BLAKE2B 80eb99c55c3d94bf1d9f77ca6925f5a606ce9b9845710084f5d50f6857706f780e6f3d77433105f3bdc1fa6873575b39e5edfdb0d6e817645013100c073b9afe SHA512 8ae0665e37f1ba98972f2906831007dfde2a35bb46b317604aee1327dd19ea8556a01d84c990ec6735004a7ee1e67439c0e0cba34f0df749f4e98766ca26021b DIST libspe2-2.3.0.135.tar.gz 197848 BLAKE2B 5d041e62b4301d84294a9be6f6c1881f39c7fadefc4f26ddf97bd2ff09a55ce8bcbd5deb752e4ef2453cac1b04edebabd58dbca80490435fafd5faf54286110c SHA512 31f4e9593d76de50ec5ab903aa82450fb5d9dea9300298831aeb408b083297ba88398fddc2110818bfdd5c13850cae95b9eced3b88f6627b732ea5a76e5d7435 -EBUILD libspe2-2.2.80_p95-r1.ebuild 1593 BLAKE2B f64f6f4288da9da9cbf94a28a627b377d8f40e0af4da4234b15076f6d9321cf4a61163e32ace92ab3c1891caee50f448b1f118736dedc11edae13006da908c35 SHA512 3dce9a8deb7a1061cf918e20875413b9eeea930f90fd5fb39952d60a3695333f79a7bac6d2ce3e73214904f627a66b73b2c2a614666482485c1310811583f426 -EBUILD libspe2-2.3.0_p135.ebuild 1609 BLAKE2B 7df66e68248beba45231de0e63304ec6a66426dfe561109b084f26674b65261983c4a5920810e3386184d9d808acad3f865f3aa83f42333bcd5b9a05adc6cefb SHA512 0510e07532d418be8796c582fde71fd4c8f3d4b2b5abd2151911b95169169f23816c288ff9446c670d9df6a58876098ff451d0e7bd66a83fd4315fffc64fb1f1 +EBUILD libspe2-2.2.80_p95-r1.ebuild 1601 BLAKE2B 7c5603561198a009f3e88d660e0c949388e2b6fa660da390621dc5891e4296646d3a9e790997d4c091eeff55a0a1b64028fec734f6d52e1ae2922a5537875cc3 SHA512 4bb9320af60a14adbc0cc3f860eab786dcd17258de33f217afe711c7077af635e7c05d90ee34f509fef3d7a35e22d9b77a6a93b66fdbbb13b2996318fb515be8 +EBUILD libspe2-2.3.0_p135.ebuild 1617 BLAKE2B e768cd16125cae6c9ea57407fe153b116f573af9f1624f8315fa9d513406ef5607094ee967fe0b2e3df61ae1825c26ffc45b4fd57952fc38ffa0904487b8de06 SHA512 b26fcd8d5d3158ccf50b3ff692d14f9f2fa8a7e9e7d1c82f3163d8ac083c418fbde3ff52affb53f85db65f355aea8cf7cc693371cf8e3172e0526115add8389c MISC metadata.xml 294 BLAKE2B 62efa659609c1bf952b3da3036c59d504cd165fe3f844507c688b5477a20da23231e01f1d92a78732e1be10f716f4d9ef354347710869d6ced2cbe2335f8f60b SHA512 f27b273f7396a60b20a0a8ddbec4a93b8b87730b00a190913a561f3f767248bb0dd0956c24f93ecb6f6423cc9fd3413f20ebe47f6b3cf2b94a900605482ca62e diff --git a/sys-libs/libspe2/libspe2-2.2.80_p95-r1.ebuild b/sys-libs/libspe2/libspe2-2.2.80_p95-r1.ebuild index 307404993fcc..c98ead677fab 100644 --- a/sys-libs/libspe2/libspe2-2.2.80_p95-r1.ebuild +++ b/sys-libs/libspe2/libspe2-2.2.80_p95-r1.ebuild @@ -1,6 +1,8 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils MY_P=${P/_p/-} diff --git a/sys-libs/libspe2/libspe2-2.3.0_p135.ebuild b/sys-libs/libspe2/libspe2-2.3.0_p135.ebuild index 2674271cb2f5..dbe65d54de60 100644 --- a/sys-libs/libspe2/libspe2-2.3.0_p135.ebuild +++ b/sys-libs/libspe2/libspe2-2.3.0_p135.ebuild @@ -1,6 +1,8 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + inherit eutils MY_P=${P/_p/.} diff --git a/sys-libs/libstatgrab/Manifest b/sys-libs/libstatgrab/Manifest index 08787db419fb..256c854117a9 100644 --- a/sys-libs/libstatgrab/Manifest +++ b/sys-libs/libstatgrab/Manifest @@ -2,5 +2,5 @@ AUX libstatgrab-0.91-tinfo.patch 1833 BLAKE2B 77d33279b50f9210260f3897912735573a DIST libstatgrab-0.17.tar.gz 463224 BLAKE2B fff9f0833a0320de469c81d1dd10a62f0a81413a243c38d449ea8129a4635f55056d431f2b585b5f77082829438c8945d961c4a6ca1db13e0b4c9689bfd47905 SHA512 feb8d8aa345d57a9036700d580a7d1e21aed9bb2063b46b2c57a59fce00eb20a22590e5e391c8a9a1f43055c14a6ce3fcf648b98f1fec3b4efd270455a2933e3 DIST libstatgrab-0.91.tar.gz 776046 BLAKE2B 29906d4df8b8e8f1ae8fedf5ccac12b282b5cba66715a2d1b51059426e7cb073862e49cbee535c0f9ea7a34171cbc3d143a38a92149ffe5f22ed9ec426fec0be SHA512 f360f2e1b185bf9603b1d9c50649b0050e9502128ff81a9f4de88457e2f5203deafe7fd7ac13ebc4cc56e6ecd1bdf8aacae64987bdf36af0c9929e30626915f6 EBUILD libstatgrab-0.17.ebuild 776 BLAKE2B aecb835256c01a586d410dbbe8f117d390e698df823d7476c0415c9c2fc7373e675ec0e96be7191a91c08b112230cf29988d81c28bc79d1729c899d2a4bae6f4 SHA512 e13d4dc6f30aa1c354b9239b99d1d813b400930dfb7ec61ef51c3ef4697b46a3c1470460d1acceeb1dd97db62969396bf977facd1c1e3bbbab97f3b6f842834c -EBUILD libstatgrab-0.91.ebuild 1027 BLAKE2B 92c7dbf6c5c827ccf77cf2d724c38d081d90b3c321dcb6cd843a46ee323d2f40aaecbef20b70efbb7ce2a6ef2d49c1a05d9fa40595c0fa4895fa239c24dcb009 SHA512 54f7eb0951baa84255b34603f7f86a998b7c583c01e8395c9377ae1d1ac20dbdc38a0c6ae475d971c8bdf7f90483c88a10071724a788876fe3ef9af8d87e51ff +EBUILD libstatgrab-0.91.ebuild 1026 BLAKE2B 21315056a11eb4448f1c23da0858bb6e92c2bdbf1ca482e6d16012a4a9e9e215b072ec92b2ba2dcce65514f7786dad1d69ee4cc219b64074724fd703404b8747 SHA512 f75e4995107afe3c6cbed2d6d61fa9fa14361b44f82a678f29829ee6bb7776adcce8ba90febf58588edcfd2a0d879cd19dbdcb9794f90b87281370a2b8d41c69 MISC metadata.xml 166 BLAKE2B c254f1fb642881aba57637be14fb0a89b10384f91a128feaec3a8c870d76efc2cbacb92caccc0dee2dd19a5ac5eaf8643080dafa05c4e2ac96a68568927e5afd SHA512 a56648c974a1d14dd4c18237532773c72057a13ab90c58b5da04f185e3c12a8bd8d5c21fb06053507f31766291a82dc7d87b34cd65fd94cfe2af7295c813ef84 diff --git a/sys-libs/libstatgrab/libstatgrab-0.91.ebuild b/sys-libs/libstatgrab/libstatgrab-0.91.ebuild index 9bd210b59a20..b97102df35d8 100644 --- a/sys-libs/libstatgrab/libstatgrab-0.91.ebuild +++ b/sys-libs/libstatgrab/libstatgrab-0.91.ebuild @@ -12,7 +12,7 @@ SRC_URI="http://www.mirrorservice.org/sites/ftp.i-scream.org/pub/i-scream/libsta LICENSE="|| ( GPL-2 LGPL-2.1 )" SLOT=0 -KEYWORDS="amd64 ~arm ~arm64 ~ia64 ~ppc x86" +KEYWORDS="amd64 ~arm ~arm64 ~ia64 ppc x86" IUSE="doc examples static-libs" RDEPEND="sys-libs/ncurses" diff --git a/sys-libs/libstdc++-v3-bin/Manifest b/sys-libs/libstdc++-v3-bin/Manifest index 6fbdeafde289..23ae5483fe71 100644 --- a/sys-libs/libstdc++-v3-bin/Manifest +++ b/sys-libs/libstdc++-v3-bin/Manifest @@ -1,4 +1,4 @@ DIST libstdc++-v3-bin-ia64-3.3.6.tbz2 325449 BLAKE2B e82faae559cb136f6c795363f6cdd5c2aa96dbd46f9a3dccccdb724d2a62f411c91041869bb891033d22df24cca11d9d88965f7ff4808cef320ba53093478ba1 SHA512 c20dba994af3d5e0a2c85c9599c7ccc0260a105330ff6337030928c81e8300fe3e84925fe815d3bf42d050402b69490f6762fbd8ff9225a4621fa8e693c7b63a DIST libstdc++-v3-bin-ppc64-3.3.6.tbz2 301670 BLAKE2B d5d72be6b8e92714c566a9a2b376c7a42f2efc32243fe58ee41e6e46af24cbad260cc45f3f0b94fc77abcc120818c9cc4c11087ad5004caf8d98a90d946c2e01 SHA512 167d9863e6c54a6e85b2fd36f46f8c5269679c47f1ed50816718c502836bdefdc52949295a223b2870935bc1aca23a2c9fb967d51a02ba278d269b70cc82a8f6 -EBUILD libstdc++-v3-bin-3.3.6.ebuild 553 BLAKE2B dcfe2ab5506b1d45e255b14ae60443e3a5fa0aede4f3cf473f365f1a6e72977b2895b9fe3e87d981a09880983107f454c3a6c31910d4c6f7256d2385f9fcccbf SHA512 5206bd86e5f3f8a085354ee4951a5a76de0e5df7d0d33db59daf665fe1875378b6eb8c3760fedd4a1dc000f955391b1475d33fa9739014cd1d7c1297e23cdf4f +EBUILD libstdc++-v3-bin-3.3.6.ebuild 561 BLAKE2B 60c1f2b42159991bfa709313313a58e90379c844f7c354e40770fe53f66a722ba6c0ade8e0259863977e57a94e6487590b47f79998d7f1e5a3aa9419d0b79e17 SHA512 c23abbffec10bccae93b9779b412da5d781fda6207422963c5ba8aa56eac97547c26099ed17e943c08afceefb5d285be802f3626e52326ff306728a315caad59 MISC metadata.xml 259 BLAKE2B 04ac80e5edbb7a409e8b0c9d856a3af1bcc59c70211fe4b10938eabce6f9f7fbf37ef80fdc3c53a86071d1d416a2159e8292d89b1ffe83213383137032df6f6e SHA512 ca71b1781806d20022c238e5b5d10f9154c78e0fa51f2603de34c48ecbe4cbc2c3190cf046526840546743644c691ee7fe51e31a4617b01bb7602dde803c1538 diff --git a/sys-libs/libstdc++-v3-bin/libstdc++-v3-bin-3.3.6.ebuild b/sys-libs/libstdc++-v3-bin/libstdc++-v3-bin-3.3.6.ebuild index dba2ca1c4a26..61c45ae44647 100644 --- a/sys-libs/libstdc++-v3-bin/libstdc++-v3-bin-3.3.6.ebuild +++ b/sys-libs/libstdc++-v3-bin/libstdc++-v3-bin-3.3.6.ebuild @@ -1,6 +1,8 @@ -# Copyright 1999-2007 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +EAPI=0 + DESCRIPTION="Compatibility package for running binaries linked against a