diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2021-03-03 10:28:17 +0000 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2021-03-03 10:28:17 +0000 |
commit | d99093fb4bb5652015c06274d64083daa2439e4f (patch) | |
tree | cf61513204d97974179580065e85df5c8009087c /sys-libs | |
parent | 463397cf1e064185110fe57c568d73f99a06f5d1 (diff) |
gentoo resync : 03.03.2021
Diffstat (limited to 'sys-libs')
67 files changed, 366 insertions, 4688 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz Binary files differindex fb5edb1550eb..cc0ce03e0af0 100644 --- a/sys-libs/Manifest.gz +++ b/sys-libs/Manifest.gz diff --git a/sys-libs/binutils-libs/Manifest b/sys-libs/binutils-libs/Manifest index ec2983178ebc..c2507e1a6d41 100644 --- a/sys-libs/binutils-libs/Manifest +++ b/sys-libs/binutils-libs/Manifest @@ -1,3 +1,4 @@ +AUX binutils-libs-2.35.1-cet.patch 2675 BLAKE2B b720e43514b25897a332648bfb15e16278f76606413991ce75c0233af27bbc434c36e85d36d4207339211382c0c5de5e9892f9e533e9d24b5257864939ac4874 SHA512 4fd4787c7ff2f7c2fed338ccc0f478b120d566959c0de5dde03cdcfdb37911bc22c5c11a124a000d84138a23c30ee3fa65c024eb72d1c924f926b04e079412a5 DIST binutils-2.34-patches-6.tar.xz 103028 BLAKE2B d0e866d0941d2b550c7d7f23530c6ee393fa13b4f2f27832f07790989476f11d1beddb5ad5a9be5c65c1d4dff9d4598d21adcb00c1d0490f69a99127f4527447 SHA512 e05ed8886acb5cb95a3e97c5bc0564215f7d44b604610f5c4545997fd9625d6de909c37063127e819926cd1548a48d3529dd3e82e98ee6a5dbaced028c57355d DIST binutils-2.34.tar.xz 21637796 BLAKE2B 07dd23916a7d27f71c3f160c8c16abe2bd4fce294c738c665a012a3be6a87dbe8160d0c38740524f9025e01d438e99b2a94bcf9f9f79ee214f5dd033de8aad3d SHA512 2c7976939dcf5e8c5b7374cccd39bfe803b1bec73c6abfa0eb17c24e1942574c6bdb874c66a092a82adc443182eacd8a5a8001c19a76101f0c7ba40c27de0bbd DIST binutils-2.35.1-patches-2.tar.xz 72236 BLAKE2B 584cb3edbda28c69171ed64e941535f992150d86f25201cadd07b63daaa36bf76b07dc0aa8a4837da17d1672feb47a7b15f83efdeec5409e695965a10142147a SHA512 b704ebe82c4402f058f9c96991a89256a6b369d28f844bf020ed2c77766894d9a2ca0596cd609de7b389fa8cd52bfab674b6deb10ea2096e50aa57921be2083e @@ -7,7 +8,7 @@ DIST binutils-2.35.2.tar.xz 22056908 BLAKE2B 9c392e0db2b482442f9476f30bd80cf2796 DIST binutils-2.36.1-patches-1.tar.xz 11392 BLAKE2B 8112dda3f000d29952cbf58101f842ca519054bf9de6e22908881fe4d46cc1ea9a26db74ab00c64aedd3746eb058c19a978b8dc025ad8de07b6365c70a1803b2 SHA512 c6f5645b09d0c149f2eef8e992ff7181716dfb961f1155207a1349168f2d2fb76857cc224c27b4d764cfbc4ddec0630ef8c0a91d7bac489896f28de64651b367 DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a54a163d3061fd93edd2b9591cae24ba049b26658c524b5ccecc2f22d431dfa168218d2531aa356945c994fbbe896fa SHA512 cc24590bcead10b90763386b6f96bb027d7594c659c2d95174a6352e8b98465a50ec3e4088d0da038428abe059bbc4ae5f37b269f31a40fc048072c8a234f4e9 EBUILD binutils-libs-2.34-r2.ebuild 3686 BLAKE2B f6a8b9c39aa5946ca55e6e5dc0ea3cc0f4a7eeea780482364243e209193fc824e95cb9d2000473107c9f80b73dcbad9f01d33403d7cde6ec85400c6db08e0e9a SHA512 3f6e136ca78fc6ed1730480facf415eb916e1310a973cf5bc7bb234e3740247bf06b81f6939603a13b0f93c606d3819e8f93606f01113e5bb0880dd39253e67a -EBUILD binutils-libs-2.35.1-r1.ebuild 4065 BLAKE2B 687f6e7221c767fd76f4c2ab4f4c2ca03dc6fb6d467074f7663a7062ac1750e7d14d59bacda85cdffb97890ae56a2dba97fe7ffe039e48a36e151653371bd975 SHA512 a0c2e5f6c01b1dc3a856b9447b0eb5106b78bf5e52b96b235512ad4136e12bc5f32ad96e292e1f6d4c1c638ba1c86bdcae5ab89d24dd5084c6745ccda632c823 -EBUILD binutils-libs-2.35.2.ebuild 4069 BLAKE2B 91a902a341b188328dba613c9bb5e466d917355ee2528871869e036668f321454f9f6d9c83688e769999c4c63c370f9c58d70e187b7a4e8631fc6f426f3d5eae SHA512 5497c74bdd031170f37a8618e8df8e6cf753eb50ffee4d01fe40224f305f3f01de022d439839cb68980344bc452fd1fe24e518055dc38d916f38a6735c503357 -EBUILD binutils-libs-2.36.1.ebuild 4070 BLAKE2B abfa6b76dee2e37a33ccd3e0748c6e2dd801dc781ea9c663f7ab980db7a9fd69f2c50f5209f30de7190eb55d3946b07f044a8ee6c89565d3df1da8cab4d669af SHA512 ce39f0fa2e0706e29e506eaaf7a86243231368bba4d4dc5ff2b443ef872c8675048dd4fc05bf0fa4b9233431a974546a323c205aeeb09c6367cd1f4a4069daac +EBUILD binutils-libs-2.35.1-r1.ebuild 4110 BLAKE2B 9eb6a7e3183329a676a0b11c0d81c876c700605fe69c9468332ecb6d7649652ac26c5d41b2e4c13f055240c89351d51650261dde29a207cfdb915a4a1c1c8e10 SHA512 92efc064aeb0d4fcbcec83717de53ce8ce73e8dc48923c036a0b00f6226213bcb6e0c7142c4548a934106e4f83b21e53ec5c886814bf70f5c1d69bd1ff1b791b +EBUILD binutils-libs-2.35.2.ebuild 4117 BLAKE2B 6584f14caca79b6e60cf8f665f99a7cc84c1c47e20348b52ae8cb9fea71a903cb1f8098adb1d0bfca818e6b22f2dacab033da6a04087c755893c9dca22b1218f SHA512 5e3fc0fb67010c52dd3550fb18982d478f420cd2aad34df520444d89e58104252ea7f5620afbaaf3bf9b791eb887f6b2495a6c95195f9ad1a34be59942492b7d +EBUILD binutils-libs-2.36.1.ebuild 4118 BLAKE2B dd483ae6775c2748cb8521f7a0b625773cd51fa1290cb73bb85a98f480ca5dd31b68936aabe7dc1bbcd15247ac36240a36cfb33449f362a8daa32fbf37cc10c0 SHA512 fbdfd9aae1fe384b9d76d0d0feafb1bf212e20ac0d9f3b1cf75f1e62d06876d4a092fdd0ea096a8c5af24edbe534ea661f26b6856569e02cd694ebaea7daf31e MISC metadata.xml 611 BLAKE2B 6093d3768ff4bc40fa0f8d1ebb3d9a5454f5e492030892d4791e7aafeef0ab4bd2902b818602725bf54e9045be762c1f495eeaf3742ec3ec4c4beda127e2c8d6 SHA512 21b771eb04b2e6f642e3ac48f13c2db19b728c8ed13821c39bfae696b8726f6f68ee65bb89ec0e90adfcee0e7f07a3109ab35e0699fd555ce0b84ad23ef81d1b diff --git a/sys-libs/binutils-libs/binutils-libs-2.35.1-r1.ebuild b/sys-libs/binutils-libs/binutils-libs-2.35.1-r1.ebuild index 340f2a556d5d..c047eed3ff51 100644 --- a/sys-libs/binutils-libs/binutils-libs-2.35.1-r1.ebuild +++ b/sys-libs/binutils-libs/binutils-libs-2.35.1-r1.ebuild @@ -21,7 +21,7 @@ SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz LICENSE="|| ( GPL-3 LGPL-3 )" SLOT="0/${PV}" IUSE="64-bit-bfd cet multitarget nls static-libs" -KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 sparc x86 ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" BDEPEND="nls? ( sys-devel/gettext )" DEPEND="sys-libs/zlib[${MULTILIB_USEDEP}]" @@ -30,6 +30,8 @@ RDEPEND="${DEPEND} >=sys-devel/binutils-config-5 " +PATCHES=("${FILESDIR}"/${PN}-2.35.1-cet.patch) + S="${WORKDIR}/${MY_P}" MULTILIB_WRAPPED_HEADERS=( diff --git a/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild b/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild index 9eabcacc31ef..ec44417459b8 100644 --- a/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild +++ b/sys-libs/binutils-libs/binutils-libs-2.35.2.ebuild @@ -30,6 +30,8 @@ RDEPEND="${DEPEND} >=sys-devel/binutils-config-5 " +PATCHES=("${FILESDIR}"/${PN}-2.35.1-cet.patch) + S="${WORKDIR}/${MY_P}" MULTILIB_WRAPPED_HEADERS=( diff --git a/sys-libs/binutils-libs/binutils-libs-2.36.1.ebuild b/sys-libs/binutils-libs/binutils-libs-2.36.1.ebuild index c4c2a9d4ffa5..679f4177453c 100644 --- a/sys-libs/binutils-libs/binutils-libs-2.36.1.ebuild +++ b/sys-libs/binutils-libs/binutils-libs-2.36.1.ebuild @@ -30,6 +30,8 @@ RDEPEND="${DEPEND} >=sys-devel/binutils-config-5 " +PATCHES=("${FILESDIR}"/${PN}-2.35.1-cet.patch) + S="${WORKDIR}/${MY_P}" MULTILIB_WRAPPED_HEADERS=( diff --git a/sys-libs/binutils-libs/files/binutils-libs-2.35.1-cet.patch b/sys-libs/binutils-libs/files/binutils-libs-2.35.1-cet.patch new file mode 100644 index 000000000000..7477ff90ac95 --- /dev/null +++ b/sys-libs/binutils-libs/files/binutils-libs-2.35.1-cet.patch @@ -0,0 +1,103 @@ +https://bugs.gentoo.org/771765 +https://sourceware.org/PR27397 + +On i586-like CPUs endbr32 added by -Wl,-z,ibt,-z,shstk +generates crashing binaries and causes ./configure failure. + +From 847e4b3207f97762dc641db8d3b188081c3370c3 Mon Sep 17 00:00:00 2001 +From: "H.J. Lu" <hjl.tools@gmail.com> +Date: Fri, 12 Feb 2021 16:30:23 -0800 +Subject: [PATCH] GCC_CET_HOST_FLAGS: Check if host supports multi-byte NOPs + +--- + config/cet.m4 | 19 ++++++++++++++++--- + libiberty/configure | 29 +++++++++++++++++++++++++++++ + 2 files changed, 45 insertions(+), 3 deletions(-) + +diff --git a/config/cet.m4 b/config/cet.m4 +index c67fb4f35b6..7718be1afe8 100644 +--- a/config/cet.m4 ++++ b/config/cet.m4 +@@ -130,6 +130,18 @@ fi + if test x$may_have_cet = xyes; then + if test x$cross_compiling = xno; then + AC_TRY_RUN([ ++int ++main () ++{ ++ asm ("endbr32"); ++ return 0; ++} ++ ], ++ [have_multi_byte_nop=yes], ++ [have_multi_byte_nop=no]) ++ have_cet=no ++ if test x$have_multi_byte_nop = xyes; then ++ AC_TRY_RUN([ + static void + foo (void) + { +@@ -155,9 +167,10 @@ main () + bar (); + return 0; + } +- ], +- [have_cet=no], +- [have_cet=yes]) ++ ], ++ [have_cet=no], ++ [have_cet=yes]) ++ fi + if test x$enable_cet = xno -a x$have_cet = xyes; then + AC_MSG_ERROR([Intel CET must be enabled on Intel CET enabled host]) + fi +diff --git a/libiberty/configure b/libiberty/configure +index 160b8c9e8b1..29a690d44fc 100755 +--- a/libiberty/configure ++++ b/libiberty/configure +@@ -5539,6 +5539,34 @@ else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ + ++int ++main () ++{ ++ asm ("endbr32"); ++ return 0; ++} ++ ++_ACEOF ++if ac_fn_c_try_run "$LINENO"; then : ++ have_multi_byte_nop=yes ++else ++ have_multi_byte_nop=no ++fi ++rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ ++ conftest.$ac_objext conftest.beam conftest.$ac_ext ++fi ++ ++ have_cet=no ++ if test x$have_multi_byte_nop = xyes; then ++ if test "$cross_compiling" = yes; then : ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 ++$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} ++as_fn_error $? "cannot run test program while cross compiling ++See \`config.log' for more details" "$LINENO" 5; } ++else ++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++/* end confdefs.h. */ ++ + static void + foo (void) + { +@@ -5575,6 +5603,7 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext + fi + ++ fi + if test x$enable_cet = xno -a x$have_cet = xyes; then + as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" "$LINENO" 5 + fi +-- +2.29.2 + diff --git a/sys-libs/compiler-rt-sanitizers/Manifest b/sys-libs/compiler-rt-sanitizers/Manifest index 4c4c2afbd818..69ac3b0d189e 100644 --- a/sys-libs/compiler-rt-sanitizers/Manifest +++ b/sys-libs/compiler-rt-sanitizers/Manifest @@ -4,20 +4,18 @@ AUX 9999/compiler-rt-prefix-paths.patch 0 BLAKE2B 786a02f742015903c6c6fd852552d2 DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151 DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2 DIST llvmorg-11.0.1.tar.gz 122790338 BLAKE2B 0130996b4a8c4d9f757136fd7fb318068c9bfdc565060dec0d4336480c4ab66c4ae3185a7fdb05f13cf9ee8fd4123b09df938881b75d6e5d3689595114b7e32a SHA512 f5e6ef0b3111aae08a89cd01adb2ff4abfa9ef779c68b9190421d0447efd25c2cc00e5aae9f4764805f5fa31434866043d1510ae7389817e28ae53a5442e2fdf -DIST llvmorg-11.1.0-rc1.tar.gz 122793491 BLAKE2B f4777455f5903cffea284eaffd872be6c287c6c1ebbd0c4b5b5473f146d7f5476f3551998a58d3e976ab90cde7b0d05db2b3be97f4e8e2c3474755ff38739268 SHA512 44e281486c44fa1611042ab658b9833a75f9613b7f896863613cfb99de66d13607fb1e9064f42ea3d89ca7951113465a90fd96ca4544262f165f78bd5261f5a8 -DIST llvmorg-11.1.0-rc2.tar.gz 122794772 BLAKE2B ab533f078d9d6c37e27c578866a07896344a0b4cf4ebf6402f4fa490213e017310d1c882bf63e552e99a5b4f6d1d8c01413420713b200bfa6732eff64f3c47a9 SHA512 88d8f1d938f0ba7ec39478d03a35c09a30bea51735276205494265b1061621b3ebcda8ee4211e896783b1b99a377c9fa68046118b0d6cb7fcb7bea1e960f95b7 -DIST llvmorg-11.1.0-rc3.tar.gz 122785838 BLAKE2B d0998219471476be1a1249b3a2444750585a352047d4dc14de6fec87eb3407d0f4b848757340200d3423cb4090554ae033fb4ec3797446e46556fbb566bb77a3 SHA512 b67874cb127f3f929a3796558cdfbf509b384c4247f4936ba08cecf88ca880a167cf67c23d78104b5bab4a98efd9435d1b923deb7ae7367875414e6c896957d1 +DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0-rc1.tar.gz 134164708 BLAKE2B d4261ff7d9586b47f4cfda3d2cda4b76534f9e17fbd5cdb8861895b8eb466021962f4608bfcdeb52f8fce78850a994fd5eda0560f7211e5c8d1ac9330a738a36 SHA512 3d07d013d0705bb99f56898cc55d054d0d95aeb53b3c756cfab80b4c9097cc4935bcea89b9efde2e503a899b9fccf0dacc0073c9991c8ea352755c5ec68a757a +DIST llvmorg-12.0.0-rc2.tar.gz 134242619 BLAKE2B bb741a311db608fc2ba7eeaab71c5c9f2a430f7fee3f0c5c4334e5c14caa19738d18c87b568de963d57d9b53e808ac412cf8554eca7fcae9ecca65aa4442e197 SHA512 d8f9b3dfeb0fe9b91eb7f49da393784333044db2653373fbb168afd3c8d50f3e3ec7a7b8f44df522d0facafbfe4cfc4d9e2906d19f1e6feb0bdc569b6c10a17d DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD compiler-rt-sanitizers-10.0.1.ebuild 4490 BLAKE2B 5bbce4ab70e2b1434698eae6a37c529c7ffa58ae90236c0ddef3023a00cf1bb6d3ed8b3ae767b81f0abb9759e33fb5e1d9e8f755505db72ceb9cc46f6cb1a179 SHA512 fda208adbbb4fa7e14d3a27956bce3a809c202ecf5eceb0fac956a0ec0879579f8f94f69172cd934481a98d84cdc36ea2fdc46b8ad906dbb48795673d2d7c4eb EBUILD compiler-rt-sanitizers-11.0.0.ebuild 5092 BLAKE2B 243f8ddf60558abf5d1ad9e6a1e31333769d1e0e33ff401c915b243297583de8f21be8ab15605a2744a981ff8cd0d1ba760aafc7bc13c43586a901b6050fd0a6 SHA512 04af5692fd79ba8fe51d69664d09f4c2ef2546559a5e5538363d22dbfb791e0f313ce289fdb56dcbfd116e399a3d34dab293a1f355acaf6700bb3003bd50e729 -EBUILD compiler-rt-sanitizers-11.0.1.ebuild 5999 BLAKE2B 197cc312533b0bfa139951b18537b0389bcaf22ceeeb612f7322991f9c943b8048bdad26f0af8a431d930f22182cc3443d96998616d0f7e7c1d230fba692cbce SHA512 d9c3e47605083dba763dcf39d0695595be5ad040dfa906e176b55eff5e46e65977a6410639bad0accf3ae68a5c181b92dd95afb471546f512f364860e0428438 -EBUILD compiler-rt-sanitizers-11.1.0_rc1.ebuild 5927 BLAKE2B de51230775d0ad64fffe4f0c7d6c3ae42cef8816fb1175ff139b22488d2bcf47dc8a1f5b68020a6d8df15064f6da3d4931b9b3af9dc4d1ef55071c3254088bbf SHA512 6fbd9393988c86f9f9f2ce6a6bf9a6661591e92aac943b04622b3889b405d6a25de5f734753aa0f8078fede534d9cd6e2daa8ebbbe5d4b6e96ef2121d44493bc -EBUILD compiler-rt-sanitizers-11.1.0_rc2.ebuild 5927 BLAKE2B de51230775d0ad64fffe4f0c7d6c3ae42cef8816fb1175ff139b22488d2bcf47dc8a1f5b68020a6d8df15064f6da3d4931b9b3af9dc4d1ef55071c3254088bbf SHA512 6fbd9393988c86f9f9f2ce6a6bf9a6661591e92aac943b04622b3889b405d6a25de5f734753aa0f8078fede534d9cd6e2daa8ebbbe5d4b6e96ef2121d44493bc -EBUILD compiler-rt-sanitizers-11.1.0_rc3.ebuild 5927 BLAKE2B de51230775d0ad64fffe4f0c7d6c3ae42cef8816fb1175ff139b22488d2bcf47dc8a1f5b68020a6d8df15064f6da3d4931b9b3af9dc4d1ef55071c3254088bbf SHA512 6fbd9393988c86f9f9f2ce6a6bf9a6661591e92aac943b04622b3889b405d6a25de5f734753aa0f8078fede534d9cd6e2daa8ebbbe5d4b6e96ef2121d44493bc -EBUILD compiler-rt-sanitizers-12.0.0.9999.ebuild 5843 BLAKE2B 8d0cefba3aab132af0df86fbfc47369e5029929fd5ec0cd3b4bde3387f5fd8380b5273ee28b8217ff05691c868038decd172c94f5685b7c6c1b2e4962e1cab19 SHA512 0ea473d719537bf29f899674a6cb41b988799a5e4c96adeb87ed5a7efe4ce63dbb488f5157fe91194963fb761597b0109640e9577c10d92bed92e81babbe2045 +EBUILD compiler-rt-sanitizers-11.0.1.ebuild 6080 BLAKE2B b276c7e47eea0a950ceb0aaac11beea427cc91e7c91adde1181fdf47e0aaa454ff9ede64ca3f9cf348a8e80336e916c26faf3c4318a42fc30d0a2f3856104c3a SHA512 75dc8e9bc49d82e5a1aeb2ff1b385095e9372200feeb8f3e0ffa2425f638ba89017b4a0262b57e6f24484ec39e35c3225def76f3330bada56cbcdffcbaf0e768 +EBUILD compiler-rt-sanitizers-11.1.0.ebuild 6084 BLAKE2B 3c3ae974c0f1e9fea3ea102c8108c11b906db7a318af1210ef0b13e3b34cd7352d8645edbb5346b6b8b4f814f28449b3d0d0bbd397717ef00701d73b2dac8130 SHA512 7a24a080c33fcf574906d10e332a3faedb94853bce6c667b9afa6a1b4b59164e014aa9cca533dac8fedb1c6a666eb3cff8ed8211b84f03666aa49ac1f4bcf542 +EBUILD compiler-rt-sanitizers-12.0.0.9999.ebuild 5928 BLAKE2B bb7e0bfb84cd7aa447eab7f0ac79d611b65ddfcafa4539a48a73fc4430178369e5be362bd7f3a2c5a9db9cc7a6b0ed815fd3b45553a06cc1c47493adf4902f8c SHA512 8c7d54a81388e13cea8d72c1cdd9f9828b184e05d06da547ddf90c3a2a23da7dad22805559fd9573f88fa91e21d6dfddd59b1c83f00002a31c590c023fe6869f EBUILD compiler-rt-sanitizers-12.0.0_rc1.ebuild 5843 BLAKE2B 8d0cefba3aab132af0df86fbfc47369e5029929fd5ec0cd3b4bde3387f5fd8380b5273ee28b8217ff05691c868038decd172c94f5685b7c6c1b2e4962e1cab19 SHA512 0ea473d719537bf29f899674a6cb41b988799a5e4c96adeb87ed5a7efe4ce63dbb488f5157fe91194963fb761597b0109640e9577c10d92bed92e81babbe2045 -EBUILD compiler-rt-sanitizers-13.0.0.9999.ebuild 5843 BLAKE2B 8d0cefba3aab132af0df86fbfc47369e5029929fd5ec0cd3b4bde3387f5fd8380b5273ee28b8217ff05691c868038decd172c94f5685b7c6c1b2e4962e1cab19 SHA512 0ea473d719537bf29f899674a6cb41b988799a5e4c96adeb87ed5a7efe4ce63dbb488f5157fe91194963fb761597b0109640e9577c10d92bed92e81babbe2045 +EBUILD compiler-rt-sanitizers-12.0.0_rc2.ebuild 5928 BLAKE2B bb7e0bfb84cd7aa447eab7f0ac79d611b65ddfcafa4539a48a73fc4430178369e5be362bd7f3a2c5a9db9cc7a6b0ed815fd3b45553a06cc1c47493adf4902f8c SHA512 8c7d54a81388e13cea8d72c1cdd9f9828b184e05d06da547ddf90c3a2a23da7dad22805559fd9573f88fa91e21d6dfddd59b1c83f00002a31c590c023fe6869f +EBUILD compiler-rt-sanitizers-13.0.0.9999.ebuild 5928 BLAKE2B bb7e0bfb84cd7aa447eab7f0ac79d611b65ddfcafa4539a48a73fc4430178369e5be362bd7f3a2c5a9db9cc7a6b0ed815fd3b45553a06cc1c47493adf4902f8c SHA512 8c7d54a81388e13cea8d72c1cdd9f9828b184e05d06da547ddf90c3a2a23da7dad22805559fd9573f88fa91e21d6dfddd59b1c83f00002a31c590c023fe6869f EBUILD compiler-rt-sanitizers-9.0.1-r1.ebuild 4882 BLAKE2B 049a170fef22592067cf1d0e01a2100ae795b121c6d3f2479a42d3f5d3dcdf1042a4ce7bbb10670ac9b969735e3bd858ea09e707d83e1e35eb0bf91d07d37e01 SHA512 0549bab838b9aa14fc250d93ab72f3529f6f9b41fae0445c898a06e05d09172e8481738be578cc17ee1a391764cad21666e78398a2ee4e7cb70049bdb2b5604e EBUILD compiler-rt-sanitizers-9.0.1.ebuild 4832 BLAKE2B 0f7203aa7d3925dd46ca9960fb18db39fe94915a194747a42f93b8a5d0061d975b6ffffc915f137688cd6d8e8463afd74728669712521e68561953d48ea361ac SHA512 90b3fa36860b4310a28b4f968beb0a60dd7a91daad217c22df3f716907487cf1bf07f3a1fcf99767a45ab3722d9da8eb1daa4e35d6ebc0899a6769ff3e03a400 MISC metadata.xml 1341 BLAKE2B d850193d6899816f33ec45aa714a9edcc04c668832a4148881ada810565cab45066e61d5b365b15ced7864220ce51cde31a559e4dadb83dc935955c9a68389ec SHA512 9fd1c971444f1d6dbd0b0559308a269385b0842767d97d3619b20b300569165cd807e52412d36d6ca9427a5fd5788ae5a19ef7d5c1b47cc73cc4eccf20b3fee7 diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1.ebuild index 5ae20f93336f..d139a2006ac3 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.0.1.ebuild @@ -11,7 +11,7 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="$(ver_cut 1-3)" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos" +KEYWORDS="amd64 arm arm64 ~ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos" IUSE="+clang test elibc_glibc" # base targets IUSE+=" +libfuzzer +profile +xray" @@ -24,8 +24,10 @@ SANITIZER_FLAGS=( IUSE+=" ${SANITIZER_FLAGS[@]/#/+}" REQUIRED_USE=" || ( ${SANITIZER_FLAGS[*]} libfuzzer profile xray ) - gwp-asan? ( scudo ) - ubsan? ( cfi )" + test? ( + cfi? ( ubsan ) + gwp-asan? ( scudo ) + )" RESTRICT="!test? ( test ) !clang? ( test )" CLANG_SLOT=${SLOT%%.*} @@ -86,10 +88,13 @@ src_prepare() { fi done + # TODO: fix these tests to be skipped upstream if use asan && ! use profile; then - # TODO: fix these tests to be skipped upstream rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die fi + if use ubsan && ! use cfi; then + > test/cfi/CMakeLists.txt || die + fi # broken with new glibc sed -i -e '/EXPECT_EQ.*ThreadDescriptorSize/d' \ diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0_rc1.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0.ebuild index 8521018ff283..c877ae4241f1 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0_rc1.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0.ebuild @@ -11,7 +11,7 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="$(ver_cut 1-3)" -KEYWORDS="" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos" IUSE="+clang test elibc_glibc" # base targets IUSE+=" +libfuzzer +profile +xray" @@ -24,8 +24,10 @@ SANITIZER_FLAGS=( IUSE+=" ${SANITIZER_FLAGS[@]/#/+}" REQUIRED_USE=" || ( ${SANITIZER_FLAGS[*]} libfuzzer profile xray ) - gwp-asan? ( scudo ) - ubsan? ( cfi )" + test? ( + cfi? ( ubsan ) + gwp-asan? ( scudo ) + )" RESTRICT="!test? ( test ) !clang? ( test )" CLANG_SLOT=${SLOT%%.*} @@ -86,10 +88,13 @@ src_prepare() { fi done + # TODO: fix these tests to be skipped upstream if use asan && ! use profile; then - # TODO: fix these tests to be skipped upstream rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die fi + if use ubsan && ! use cfi; then + > test/cfi/CMakeLists.txt || die + fi # broken with new glibc sed -i -e '/EXPECT_EQ.*ThreadDescriptorSize/d' \ diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0_rc3.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0_rc3.ebuild deleted file mode 100644 index 8521018ff283..000000000000 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0_rc3.ebuild +++ /dev/null @@ -1,201 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) -inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1 - -DESCRIPTION="Compiler runtime libraries for clang (sanitizers & xray)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="$(ver_cut 1-3)" -KEYWORDS="" -IUSE="+clang test elibc_glibc" -# base targets -IUSE+=" +libfuzzer +profile +xray" -# sanitizer targets, keep in sync with config-ix.cmake -# NB: ubsan, scudo deliberately match two entries -SANITIZER_FLAGS=( - asan dfsan lsan msan hwasan tsan ubsan safestack cfi scudo - shadowcallstack gwp-asan -) -IUSE+=" ${SANITIZER_FLAGS[@]/#/+}" -REQUIRED_USE=" - || ( ${SANITIZER_FLAGS[*]} libfuzzer profile xray ) - gwp-asan? ( scudo ) - ubsan? ( cfi )" -RESTRICT="!test? ( test ) !clang? ( test )" - -CLANG_SLOT=${SLOT%%.*} -# llvm-6 for new lit options -DEPEND=" - >=sys-devel/llvm-6" -BDEPEND=" - >=dev-util/cmake-3.16 - clang? ( sys-devel/clang ) - elibc_glibc? ( net-libs/libtirpc ) - test? ( - !<sys-apps/sandbox-2.13 - $(python_gen_any_dep ">=dev-python/lit-5[\${PYTHON_USEDEP}]") - =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} - sys-libs/compiler-rt:${SLOT} - ) - ${PYTHON_DEPS}" - -LLVM_COMPONENTS=( compiler-rt ) -LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest ) -llvm.org_set_globals - -PATCHES=( - "${FILESDIR}/11.1.0/compiler-rt-prefix-paths.patch" -) - -python_check_deps() { - use test || return 0 - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -check_space() { - if use test; then - local CHECKREQS_DISK_BUILD=11G - check-reqs_pkg_pretend - fi -} - -pkg_pretend() { - check_space -} - -pkg_setup() { - check_space - llvm_pkg_setup - python-any-r1_pkg_setup -} - -src_prepare() { - sed -i -e 's:-Werror::' lib/tsan/go/buildgo.sh || die - - local flag - for flag in "${SANITIZER_FLAGS[@]}"; do - if ! use "${flag}"; then - local cmake_flag=${flag/-/_} - sed -i -e "/COMPILER_RT_HAS_${cmake_flag^^}/s:TRUE:FALSE:" \ - cmake/config-ix.cmake || die - fi - done - - if use asan && ! use profile; then - # TODO: fix these tests to be skipped upstream - rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die - fi - - # broken with new glibc - sed -i -e '/EXPECT_EQ.*ThreadDescriptorSize/d' \ - lib/sanitizer_common/tests/sanitizer_linux_test.cpp || die - - llvm.org_src_prepare -} - -src_configure() { - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/compiler-rt_build - - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - fi - - local flag want_sanitizer=OFF - for flag in "${SANITIZER_FLAGS[@]}"; do - if use "${flag}"; then - want_sanitizer=ON - break - fi - done - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${SLOT}" - # use a build dir structure consistent with install - # this makes it possible to easily deploy test-friendly clang - -DCOMPILER_RT_OUTPUT_DIR="${BUILD_DIR}/lib/clang/${SLOT}" - - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - # builtins & crt installed by sys-libs/compiler-rt - -DCOMPILER_RT_BUILD_BUILTINS=OFF - -DCOMPILER_RT_BUILD_CRT=OFF - -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer) - -DCOMPILER_RT_BUILD_PROFILE=$(usex profile) - -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}" - -DCOMPILER_RT_BUILD_XRAY=$(usex xray) - - -DPython3_EXECUTABLE="${PYTHON}" - ) - if use test; then - mycmakeargs+=( - -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm" - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - - # they are created during src_test() - -DCOMPILER_RT_TEST_COMPILER="${BUILD_DIR}/lib/llvm/${CLANG_SLOT}/bin/clang" - -DCOMPILER_RT_TEST_CXX_COMPILER="${BUILD_DIR}/lib/llvm/${CLANG_SLOT}/bin/clang++" - ) - - # same flags are passed for build & tests, so we need to strip - # them down to a subset supported by clang - CC=${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang \ - CXX=${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang++ \ - strip-unsupported-flags - fi - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX - # This disables i386 for SDK >= 10.15 - # Will error if has_use tsan and SDK < 10.12 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - fi - - cmake_src_configure - - if use test; then - local sys_dir=( "${EPREFIX}"/usr/lib/clang/${SLOT}/lib/* ) - [[ -e ${sys_dir} ]] || die "Unable to find ${sys_dir}" - [[ ${#sys_dir[@]} -eq 1 ]] || die "Non-deterministic compiler-rt install: ${sys_dir[*]}" - - # copy clang over since resource_dir is located relatively to binary - # therefore, we can put our new libraries in it - mkdir -p "${BUILD_DIR}"/lib/{llvm/${CLANG_SLOT}/{bin,$(get_libdir)},clang/${SLOT}/include} || die - cp "${EPREFIX}"/usr/lib/llvm/${CLANG_SLOT}/bin/clang{,++} \ - "${BUILD_DIR}"/lib/llvm/${CLANG_SLOT}/bin/ || die - cp "${EPREFIX}"/usr/lib/clang/${SLOT}/include/*.h \ - "${BUILD_DIR}"/lib/clang/${SLOT}/include/ || die - cp "${sys_dir}"/*builtins*.a \ - "${BUILD_DIR}/lib/clang/${SLOT}/lib/${sys_dir##*/}/" || die - # we also need LLVMgold.so for gold-based tests - if [[ -f ${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/$(get_libdir)/LLVMgold.so ]]; then - ln -s "${EPREFIX}"/usr/lib/llvm/${CLANG_SLOT}/$(get_libdir)/LLVMgold.so \ - "${BUILD_DIR}"/lib/llvm/${CLANG_SLOT}/$(get_libdir)/ || die - fi - fi -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - # disable sandbox to have it stop clobbering LD_PRELOAD - local -x SANDBOX_ON=0 - # wipe LD_PRELOAD to make ASAN happy - local -x LD_PRELOAD= - - cmake_build check-all -} diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.0.9999.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.0.9999.ebuild index 5fc5bbc62475..b9f483144cde 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.0.9999.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.0.9999.ebuild @@ -24,8 +24,10 @@ SANITIZER_FLAGS=( IUSE+=" ${SANITIZER_FLAGS[@]/#/+}" REQUIRED_USE=" || ( ${SANITIZER_FLAGS[*]} libfuzzer profile xray ) - gwp-asan? ( scudo ) - ubsan? ( cfi )" + test? ( + cfi? ( ubsan ) + gwp-asan? ( scudo ) + )" RESTRICT="!test? ( test ) !clang? ( test )" CLANG_SLOT=${SLOT%%.*} @@ -86,10 +88,13 @@ src_prepare() { fi done + # TODO: fix these tests to be skipped upstream if use asan && ! use profile; then - # TODO: fix these tests to be skipped upstream rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die fi + if use ubsan && ! use cfi; then + > test/cfi/CMakeLists.txt || die + fi llvm.org_src_prepare } diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0_rc2.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.0_rc2.ebuild index 8521018ff283..b9f483144cde 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0_rc2.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-12.0.0_rc2.ebuild @@ -14,7 +14,7 @@ SLOT="$(ver_cut 1-3)" KEYWORDS="" IUSE="+clang test elibc_glibc" # base targets -IUSE+=" +libfuzzer +profile +xray" +IUSE+=" +libfuzzer +memprof +profile +xray" # sanitizer targets, keep in sync with config-ix.cmake # NB: ubsan, scudo deliberately match two entries SANITIZER_FLAGS=( @@ -24,8 +24,10 @@ SANITIZER_FLAGS=( IUSE+=" ${SANITIZER_FLAGS[@]/#/+}" REQUIRED_USE=" || ( ${SANITIZER_FLAGS[*]} libfuzzer profile xray ) - gwp-asan? ( scudo ) - ubsan? ( cfi )" + test? ( + cfi? ( ubsan ) + gwp-asan? ( scudo ) + )" RESTRICT="!test? ( test ) !clang? ( test )" CLANG_SLOT=${SLOT%%.*} @@ -49,7 +51,7 @@ LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest ) llvm.org_set_globals PATCHES=( - "${FILESDIR}/11.1.0/compiler-rt-prefix-paths.patch" + "${FILESDIR}/9999/compiler-rt-prefix-paths.patch" ) python_check_deps() { @@ -86,14 +88,13 @@ src_prepare() { fi done + # TODO: fix these tests to be skipped upstream if use asan && ! use profile; then - # TODO: fix these tests to be skipped upstream rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die fi - - # broken with new glibc - sed -i -e '/EXPECT_EQ.*ThreadDescriptorSize/d' \ - lib/sanitizer_common/tests/sanitizer_linux_test.cpp || die + if use ubsan && ! use cfi; then + > test/cfi/CMakeLists.txt || die + fi llvm.org_src_prepare } @@ -127,6 +128,7 @@ src_configure() { -DCOMPILER_RT_BUILD_BUILTINS=OFF -DCOMPILER_RT_BUILD_CRT=OFF -DCOMPILER_RT_BUILD_LIBFUZZER=$(usex libfuzzer) + -DCOMPILER_RT_BUILD_MEMPROF=$(usex memprof) -DCOMPILER_RT_BUILD_PROFILE=$(usex profile) -DCOMPILER_RT_BUILD_SANITIZERS="${want_sanitizer}" -DCOMPILER_RT_BUILD_XRAY=$(usex xray) diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0.9999.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0.9999.ebuild index 5fc5bbc62475..b9f483144cde 100644 --- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0.9999.ebuild +++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0.9999.ebuild @@ -24,8 +24,10 @@ SANITIZER_FLAGS=( IUSE+=" ${SANITIZER_FLAGS[@]/#/+}" REQUIRED_USE=" || ( ${SANITIZER_FLAGS[*]} libfuzzer profile xray ) - gwp-asan? ( scudo ) - ubsan? ( cfi )" + test? ( + cfi? ( ubsan ) + gwp-asan? ( scudo ) + )" RESTRICT="!test? ( test ) !clang? ( test )" CLANG_SLOT=${SLOT%%.*} @@ -86,10 +88,13 @@ src_prepare() { fi done + # TODO: fix these tests to be skipped upstream if use asan && ! use profile; then - # TODO: fix these tests to be skipped upstream rm test/asan/TestCases/asan_and_llvm_coverage_test.cpp || die fi + if use ubsan && ! use cfi; then + > test/cfi/CMakeLists.txt || die + fi llvm.org_src_prepare } diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest index 9524a4b8ea8e..700406f00083 100644 --- a/sys-libs/compiler-rt/Manifest +++ b/sys-libs/compiler-rt/Manifest @@ -3,19 +3,17 @@ AUX 9999/compiler-rt-prefix-paths.patch 0 BLAKE2B 786a02f742015903c6c6fd852552d2 DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151 DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2 DIST llvmorg-11.0.1.tar.gz 122790338 BLAKE2B 0130996b4a8c4d9f757136fd7fb318068c9bfdc565060dec0d4336480c4ab66c4ae3185a7fdb05f13cf9ee8fd4123b09df938881b75d6e5d3689595114b7e32a SHA512 f5e6ef0b3111aae08a89cd01adb2ff4abfa9ef779c68b9190421d0447efd25c2cc00e5aae9f4764805f5fa31434866043d1510ae7389817e28ae53a5442e2fdf -DIST llvmorg-11.1.0-rc1.tar.gz 122793491 BLAKE2B f4777455f5903cffea284eaffd872be6c287c6c1ebbd0c4b5b5473f146d7f5476f3551998a58d3e976ab90cde7b0d05db2b3be97f4e8e2c3474755ff38739268 SHA512 44e281486c44fa1611042ab658b9833a75f9613b7f896863613cfb99de66d13607fb1e9064f42ea3d89ca7951113465a90fd96ca4544262f165f78bd5261f5a8 -DIST llvmorg-11.1.0-rc2.tar.gz 122794772 BLAKE2B ab533f078d9d6c37e27c578866a07896344a0b4cf4ebf6402f4fa490213e017310d1c882bf63e552e99a5b4f6d1d8c01413420713b200bfa6732eff64f3c47a9 SHA512 88d8f1d938f0ba7ec39478d03a35c09a30bea51735276205494265b1061621b3ebcda8ee4211e896783b1b99a377c9fa68046118b0d6cb7fcb7bea1e960f95b7 -DIST llvmorg-11.1.0-rc3.tar.gz 122785838 BLAKE2B d0998219471476be1a1249b3a2444750585a352047d4dc14de6fec87eb3407d0f4b848757340200d3423cb4090554ae033fb4ec3797446e46556fbb566bb77a3 SHA512 b67874cb127f3f929a3796558cdfbf509b384c4247f4936ba08cecf88ca880a167cf67c23d78104b5bab4a98efd9435d1b923deb7ae7367875414e6c896957d1 +DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0-rc1.tar.gz 134164708 BLAKE2B d4261ff7d9586b47f4cfda3d2cda4b76534f9e17fbd5cdb8861895b8eb466021962f4608bfcdeb52f8fce78850a994fd5eda0560f7211e5c8d1ac9330a738a36 SHA512 3d07d013d0705bb99f56898cc55d054d0d95aeb53b3c756cfab80b4c9097cc4935bcea89b9efde2e503a899b9fccf0dacc0073c9991c8ea352755c5ec68a757a +DIST llvmorg-12.0.0-rc2.tar.gz 134242619 BLAKE2B bb741a311db608fc2ba7eeaab71c5c9f2a430f7fee3f0c5c4334e5c14caa19738d18c87b568de963d57d9b53e808ac412cf8554eca7fcae9ecca65aa4442e197 SHA512 d8f9b3dfeb0fe9b91eb7f49da393784333044db2653373fbb168afd3c8d50f3e3ec7a7b8f44df522d0facafbfe4cfc4d9e2906d19f1e6feb0bdc569b6c10a17d DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD compiler-rt-10.0.1.ebuild 2759 BLAKE2B ef75dd0b6d96bf2dfb562ac59bc6bbb8aebc69684dd3acf302b4700fad90fd80e62088b0c141aa23958ec7f06dafd01f6d5f451b4c995fb01541eb1a39dcb127 SHA512 51a5c6fcb385651f5d91d5985396f176fc7405fc4a95321a8ff896f8c22b922bfc987aaa5462a6be3df3ee2ac179633226e97955b4ffd486ec414a4e82e9470c EBUILD compiler-rt-11.0.0.ebuild 3541 BLAKE2B d9847d05f37311727267169e5798e2cf3af779a565776b273e0041434774cbcf9544a85fd5ceef555326f59a94ad2a1978581529689a6c46d160937dbd2d7b8f SHA512 940e19da15e1f9af55e978155152e3ee65216c16cbfd96b32a0ffee2df5f7bf1ab1e14b3f214df858b116aec810f9ddef9a5c21d11d3f33eb56ea16116d69e7f -EBUILD compiler-rt-11.0.1.ebuild 3548 BLAKE2B c1f96cde71af8b605056e827c750c5dfe07382ecf494dca1f5d689fc3a8caff18d8ac595f6d47b7b9f9fec8e7cbba3ddcbb07176958ffacd541b314a3baad587 SHA512 bafd2287d7d07ef083e0aed54f76d8c82d7fa317a5432cb9e1ad8c05bbf78c6577178d42e278dafd92bb0f0803031c25038c0870a51008ca7b22a396ebbfde8a -EBUILD compiler-rt-11.1.0_rc1.ebuild 3476 BLAKE2B 8b77c7494d3b360ca64b15b2909ab23a6884a2769d8985f446541fc513f16c0ede5671f01c0ae7c39b1f2ee964d0139df0c83d9de0c28080fa170b0695856295 SHA512 05871f00567f79ff5f17f19c7ddd21042b4c230819a1c7dec09e0c6072b45c7c773afa20d06da1880fa20ecd43b1b97b9d1c8a69842d31ca62558c480198d20f -EBUILD compiler-rt-11.1.0_rc2.ebuild 3476 BLAKE2B 8b77c7494d3b360ca64b15b2909ab23a6884a2769d8985f446541fc513f16c0ede5671f01c0ae7c39b1f2ee964d0139df0c83d9de0c28080fa170b0695856295 SHA512 05871f00567f79ff5f17f19c7ddd21042b4c230819a1c7dec09e0c6072b45c7c773afa20d06da1880fa20ecd43b1b97b9d1c8a69842d31ca62558c480198d20f -EBUILD compiler-rt-11.1.0_rc3.ebuild 3476 BLAKE2B 8b77c7494d3b360ca64b15b2909ab23a6884a2769d8985f446541fc513f16c0ede5671f01c0ae7c39b1f2ee964d0139df0c83d9de0c28080fa170b0695856295 SHA512 05871f00567f79ff5f17f19c7ddd21042b4c230819a1c7dec09e0c6072b45c7c773afa20d06da1880fa20ecd43b1b97b9d1c8a69842d31ca62558c480198d20f +EBUILD compiler-rt-11.0.1.ebuild 3544 BLAKE2B c12af62e30475143bd86e5b87042003bb9d1dbf3918d566210c7593ab12168095bf9a0f16f185e613c33c48a101e209b55288015b0b8c45168cc3ac098d805ca SHA512 5464a523dd54dc9dddc1de15a657c1f07dad4ab64cc6bbdab13cbf315451614400730281bd3c7c6e64580d003ca57bf074c061cd224a5a6a32f19c2157b31c3f +EBUILD compiler-rt-11.1.0.ebuild 3548 BLAKE2B c1f96cde71af8b605056e827c750c5dfe07382ecf494dca1f5d689fc3a8caff18d8ac595f6d47b7b9f9fec8e7cbba3ddcbb07176958ffacd541b314a3baad587 SHA512 bafd2287d7d07ef083e0aed54f76d8c82d7fa317a5432cb9e1ad8c05bbf78c6577178d42e278dafd92bb0f0803031c25038c0870a51008ca7b22a396ebbfde8a EBUILD compiler-rt-12.0.0.9999.ebuild 3508 BLAKE2B 6ab25dee0e7088ac9c5cb422e40d82b2ae03df25c32201c309c509a58f6381de4319ec715539f5752828310045a1e3ac2d237e7a8616584565eb17b6b9741e00 SHA512 c67bf80040a90a161e364c01057c37fc4e9858f1bfbb9b00ea9601e1844d74e0c1e5c0b629a061efe7b8c620cfe37eeeb32284da00b252283491f6538bdc5d7c EBUILD compiler-rt-12.0.0_rc1.ebuild 3508 BLAKE2B 6ab25dee0e7088ac9c5cb422e40d82b2ae03df25c32201c309c509a58f6381de4319ec715539f5752828310045a1e3ac2d237e7a8616584565eb17b6b9741e00 SHA512 c67bf80040a90a161e364c01057c37fc4e9858f1bfbb9b00ea9601e1844d74e0c1e5c0b629a061efe7b8c620cfe37eeeb32284da00b252283491f6538bdc5d7c +EBUILD compiler-rt-12.0.0_rc2.ebuild 3508 BLAKE2B 6ab25dee0e7088ac9c5cb422e40d82b2ae03df25c32201c309c509a58f6381de4319ec715539f5752828310045a1e3ac2d237e7a8616584565eb17b6b9741e00 SHA512 c67bf80040a90a161e364c01057c37fc4e9858f1bfbb9b00ea9601e1844d74e0c1e5c0b629a061efe7b8c620cfe37eeeb32284da00b252283491f6538bdc5d7c EBUILD compiler-rt-13.0.0.9999.ebuild 3508 BLAKE2B 6ab25dee0e7088ac9c5cb422e40d82b2ae03df25c32201c309c509a58f6381de4319ec715539f5752828310045a1e3ac2d237e7a8616584565eb17b6b9741e00 SHA512 c67bf80040a90a161e364c01057c37fc4e9858f1bfbb9b00ea9601e1844d74e0c1e5c0b629a061efe7b8c620cfe37eeeb32284da00b252283491f6538bdc5d7c EBUILD compiler-rt-9.0.1.ebuild 2901 BLAKE2B e28483e1e776a558e3edbb068f821cd4fea0e6ff5adc2a15efd3cdcc43d0fc38470556c9ea48fc6e44639971739568000a7633d4b2cccd43819fc9a40e00c25f SHA512 276b397d3755b92554c72cade1e9130f72dfa5d0e63332f728a6aa1e03b950f379e24ffe6a5dca04a3d23d5774d52c483d4872506294f68ec02256ede7f87af0 MISC metadata.xml 333 BLAKE2B 24e417cb7b8ab7730b18a3e1e5e29d008042e4fd53cf1ba3cc9d18719160b0410854ddfae52315c690138e61fb0196015968fa09b98af6470cd8bdecc09205ef SHA512 97daa7452a696b7297c47f5f637a33425f82b51426060a75b3de6bc812f9ddcd3c70ae068bc3e88ce937ab1eb10d59b0ab48a2d2c0397a112b8b6a754e333bdc diff --git a/sys-libs/compiler-rt/compiler-rt-11.0.1.ebuild b/sys-libs/compiler-rt/compiler-rt-11.0.1.ebuild index ed8d7713b352..31085e5f5a71 100644 --- a/sys-libs/compiler-rt/compiler-rt-11.0.1.ebuild +++ b/sys-libs/compiler-rt/compiler-rt-11.0.1.ebuild @@ -11,7 +11,7 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="$(ver_cut 1-3)" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos" +KEYWORDS="amd64 arm arm64 ~ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos" IUSE="+clang test" RESTRICT="!test? ( test ) !clang? ( test )" diff --git a/sys-libs/compiler-rt/compiler-rt-11.1.0_rc3.ebuild b/sys-libs/compiler-rt/compiler-rt-11.1.0.ebuild index 041d0c955709..ed8d7713b352 100644 --- a/sys-libs/compiler-rt/compiler-rt-11.1.0_rc3.ebuild +++ b/sys-libs/compiler-rt/compiler-rt-11.1.0.ebuild @@ -11,7 +11,7 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="$(ver_cut 1-3)" -KEYWORDS="" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos" IUSE="+clang test" RESTRICT="!test? ( test ) !clang? ( test )" diff --git a/sys-libs/compiler-rt/compiler-rt-11.1.0_rc1.ebuild b/sys-libs/compiler-rt/compiler-rt-11.1.0_rc1.ebuild deleted file mode 100644 index 041d0c955709..000000000000 --- a/sys-libs/compiler-rt/compiler-rt-11.1.0_rc1.ebuild +++ /dev/null @@ -1,126 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake flag-o-matic llvm llvm.org python-any-r1 toolchain-funcs - -DESCRIPTION="Compiler runtime library for clang (built-in part)" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="$(ver_cut 1-3)" -KEYWORDS="" -IUSE="+clang test" -RESTRICT="!test? ( test ) !clang? ( test )" - -CLANG_SLOT=${SLOT%%.*} -# llvm-6 for new lit options -DEPEND=" - >=sys-devel/llvm-6" -BDEPEND=" - >=dev-util/cmake-3.16 - clang? ( sys-devel/clang ) - test? ( - $(python_gen_any_dep ">=dev-python/lit-9.0.1[\${PYTHON_USEDEP}]") - =sys-devel/clang-${PV%_*}*:${CLANG_SLOT} - ) - ${PYTHON_DEPS}" - -LLVM_COMPONENTS=( compiler-rt ) -llvm.org_set_globals - -PATCHES=( - "${FILESDIR}/11.1.0/${PN}-prefix-paths.patch" -) - -python_check_deps() { - use test || return 0 - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_pretend() { - if ! use clang && ! tc-is-clang; then - ewarn "Building using a compiler other than clang may result in broken atomics" - ewarn "library. Enable USE=clang unless you have a very good reason not to." - fi -} - -pkg_setup() { - # Darwin Prefix builds do not have llvm installed yet, so rely on - # bootstrap-prefix to set the appropriate path vars to LLVM instead - # of using llvm_pkg_setup. - if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then - llvm_pkg_setup - fi - python-any-r1_pkg_setup -} - -test_compiler() { - $(tc-getCC) ${CFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - # pre-set since we need to pass it to cmake - BUILD_DIR=${WORKDIR}/${P}_build - - local nolib_flags=( -nodefaultlibs -lc ) - if use clang; then - local -x CC=${CHOST}-clang - local -x CXX=${CHOST}-clang++ - strip-unsupported-flags - # ensure we can use clang before installing compiler-rt - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - elif ! test_compiler; then - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CC} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local mycmakeargs=( - -DCOMPILER_RT_INSTALL_PATH="${EPREFIX}/usr/lib/clang/${SLOT}" - - -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) - -DCOMPILER_RT_BUILD_LIBFUZZER=OFF - -DCOMPILER_RT_BUILD_PROFILE=OFF - -DCOMPILER_RT_BUILD_SANITIZERS=OFF - -DCOMPILER_RT_BUILD_XRAY=OFF - - -DPython3_EXECUTABLE="${PYTHON}" - ) - - if use prefix && [[ "${CHOST}" == *-darwin* ]] ; then - mycmakeargs+=( - # setting -isysroot is disabled with compiler-rt-prefix-paths.patch - # this allows adding arm64 support using SDK in EPREFIX - -DDARWIN_macosx_CACHED_SYSROOT="${EPREFIX}/MacOSX.sdk" - # Set version based on the SDK in EPREFIX. - # This disables i386 for SDK >= 10.15 - -DDARWIN_macosx_OVERRIDE_SDK_VERSION="$(realpath ${EPREFIX}/MacOSX.sdk | sed -e 's/.*MacOSX\(.*\)\.sdk/\1/')" - # Use our libtool instead of looking it up with xcrun - -DCMAKE_LIBTOOL="${EPREFIX}/usr/bin/${CHOST}-libtool" - ) - fi - - if use test; then - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags)" - - -DCOMPILER_RT_TEST_COMPILER="${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang" - -DCOMPILER_RT_TEST_CXX_COMPILER="${EPREFIX}/usr/lib/llvm/${CLANG_SLOT}/bin/clang++" - ) - fi - - cmake_src_configure -} - -src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - - cmake_build check-builtins -} diff --git a/sys-libs/compiler-rt/compiler-rt-11.1.0_rc2.ebuild b/sys-libs/compiler-rt/compiler-rt-12.0.0_rc2.ebuild index 041d0c955709..e66cf796efb1 100644 --- a/sys-libs/compiler-rt/compiler-rt-11.1.0_rc2.ebuild +++ b/sys-libs/compiler-rt/compiler-rt-12.0.0_rc2.ebuild @@ -32,7 +32,7 @@ LLVM_COMPONENTS=( compiler-rt ) llvm.org_set_globals PATCHES=( - "${FILESDIR}/11.1.0/${PN}-prefix-paths.patch" + "${FILESDIR}/9999/${PN}-prefix-paths.patch" ) python_check_deps() { @@ -85,6 +85,7 @@ src_configure() { -DCOMPILER_RT_INCLUDE_TESTS=$(usex test) -DCOMPILER_RT_BUILD_LIBFUZZER=OFF + -DCOMPILER_RT_BUILD_MEMPROF=OFF -DCOMPILER_RT_BUILD_PROFILE=OFF -DCOMPILER_RT_BUILD_SANITIZERS=OFF -DCOMPILER_RT_BUILD_XRAY=OFF diff --git a/sys-libs/e2fsprogs-libs/Manifest b/sys-libs/e2fsprogs-libs/Manifest index 6456deb45124..411f48354dc0 100644 --- a/sys-libs/e2fsprogs-libs/Manifest +++ b/sys-libs/e2fsprogs-libs/Manifest @@ -1,10 +1,10 @@ AUX e2fsprogs-libs-1.42.13-fix-build-cflags.patch 300 BLAKE2B a6cfc44d27991cb98b1cf94854dabb4bfefd0d44d7605cbca6353b27730dcc37ed65c1d4b35f2b7e5386a607056f7397afbf4e3dadc57efb0e3172a94287f5b7 SHA512 0c0a39a7cdf1930c2c8da0072f935eb02e15ce7a5202990b4ee5458a4ba7a5c1848a7b759e91e32c76f38ea419059179b04ff94fa336cbf77e4ecde55f9dc1d3 DIST e2fsprogs-1.45.6.tar.xz 5572144 BLAKE2B 24a44d27a02a1fa178083d5ee6034b20fedcac9faf7cf7f5cfcd4e4cee6d38775bc78949b9b00823cbbdacfab783e8e1e739579b9a7236c5425f51b27600743b SHA512 f3abfb6fe7ef632bb81152e2127d601cadd3fa93162178576a1d5ed82c2286627184b207b85a5b2a1793db0addf0885dfc3b9523bb340443224caf9c6d613b84 DIST e2fsprogs-1.45.7.tar.xz 5570052 BLAKE2B 237ef068c3899641b5eb908cc302c8c6b454e337bce2de95fc96b9a078a003db0c44bd34391063cc2f30a95dcce57950fe900f59ae7d273786c657b7c190b341 SHA512 fcbd66af7b87f2bdec562ddd59c8c5fbd60f32fdd582a5c9d21cb6cfea642d2cdca57b6c29124309798528b2d9ceadf770928a6698f75dc88a47701286128763 -DIST e2fsprogs-1.46.0.tar.xz 7007144 BLAKE2B d902028a0e538a62428e18e3c2a0a917a73351afc7d8eec804ddac459a1b8c2e11d104201235fb64170acc78942d2c9d5a45039f770cf5ce537cdba18cd559e6 SHA512 c865360e532da42264200934229aa9cfc88c3342fc4e206e82d1fe2a908b0fd3b58f2e9a4796f2ecdeafe1ace9f9ee444ea5b2e3efd488cb934f9a22af6a8f7e DIST e2fsprogs-1.46.1.tar.xz 7019700 BLAKE2B 2356fcd206de14377a4625a8be2ff94cfd3fb2b911836a3da46499964fc5d7f2a6d03bf5818543d2ead34ac7cab36ef0e18885343d6814a0124b50ab7ea4bb69 SHA512 fe6aa55b62f183633872209cd69cf6be0753d5a430542a7c73dbbd428e5fa93b5df7efa7507bb60f9f90a1c61cb8f5cf10665675eea8bd72aad3d04dd2dae15c +DIST e2fsprogs-1.46.2.tar.xz 7020552 BLAKE2B 0eda7428862c13dfd02308f0321d22c134679197bad5b247baa6f0ca386433db6749b97529709d43934afa73d8d0801379bb342456a0fd3dab7df01f5a90fd31 SHA512 5297a4d7bf944806d8ee77227eac596b5e5efed2c665561d40094c40b9f321616c60975a2716f1499a9f72243df6e3b6e2267b98ec1fdc1dfd646d7be887fc4d EBUILD e2fsprogs-libs-1.45.6.ebuild 2161 BLAKE2B 6f7bcb58e36d06f3c0fcbe9ad5d0ed63be6b815fb7ad20ed1084f17b9c328ec7ec2672ece06812a97291d0018405f7070aa032d67892133a894e790d3eedb77d SHA512 c1cdcd01d6857317ede20b982d8db869b1c0348f7e0825ad32e498d92fcdaf2187d6482c0278c2d025b91eb1c5234d00e157fa589f2d3f9877970a7b091e87ec -EBUILD e2fsprogs-libs-1.45.7.ebuild 2169 BLAKE2B 314050d578df28da88a24adc53d8c4809316f3d63a31a35198c0f79a0d6d78895a0a498acce05538a4d227a7c650234acca683372132dfbcfc7fc4fcff423b9c SHA512 e2497549c127a030cfcba925022f90fd67ca5fe3e1ae92b705d9a43ac67f3c4a07c6d8f0a6f1248552db570ca53c1a48dd4c19a1cc4e822c6fca24088f6bc120 -EBUILD e2fsprogs-libs-1.46.0.ebuild 2169 BLAKE2B 314050d578df28da88a24adc53d8c4809316f3d63a31a35198c0f79a0d6d78895a0a498acce05538a4d227a7c650234acca683372132dfbcfc7fc4fcff423b9c SHA512 e2497549c127a030cfcba925022f90fd67ca5fe3e1ae92b705d9a43ac67f3c4a07c6d8f0a6f1248552db570ca53c1a48dd4c19a1cc4e822c6fca24088f6bc120 +EBUILD e2fsprogs-libs-1.45.7.ebuild 2161 BLAKE2B 6f7bcb58e36d06f3c0fcbe9ad5d0ed63be6b815fb7ad20ed1084f17b9c328ec7ec2672ece06812a97291d0018405f7070aa032d67892133a894e790d3eedb77d SHA512 c1cdcd01d6857317ede20b982d8db869b1c0348f7e0825ad32e498d92fcdaf2187d6482c0278c2d025b91eb1c5234d00e157fa589f2d3f9877970a7b091e87ec EBUILD e2fsprogs-libs-1.46.1.ebuild 2169 BLAKE2B 314050d578df28da88a24adc53d8c4809316f3d63a31a35198c0f79a0d6d78895a0a498acce05538a4d227a7c650234acca683372132dfbcfc7fc4fcff423b9c SHA512 e2497549c127a030cfcba925022f90fd67ca5fe3e1ae92b705d9a43ac67f3c4a07c6d8f0a6f1248552db570ca53c1a48dd4c19a1cc4e822c6fca24088f6bc120 +EBUILD e2fsprogs-libs-1.46.2.ebuild 2169 BLAKE2B 314050d578df28da88a24adc53d8c4809316f3d63a31a35198c0f79a0d6d78895a0a498acce05538a4d227a7c650234acca683372132dfbcfc7fc4fcff423b9c SHA512 e2497549c127a030cfcba925022f90fd67ca5fe3e1ae92b705d9a43ac67f3c4a07c6d8f0a6f1248552db570ca53c1a48dd4c19a1cc4e822c6fca24088f6bc120 MISC metadata.xml 399 BLAKE2B 7f75ab727887efba1f1991c5944cd262c95b53dbc48a391afdd67cb5c1f99d9c06753b06c7d28c5472075835ff5da4718eb0c3ca5b9e68a4d83173f223162c31 SHA512 45e90f3d9b83bffd42173290d47dce2247a2eff4d6293b7bcbcf422115e11b8c958a7a13f60b7742a96350bd5a2b37d8e76a807776f943c88833b77782d4f180 diff --git a/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.45.7.ebuild b/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.45.7.ebuild index 41da9ca3221d..722e3a0df067 100644 --- a/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.45.7.ebuild +++ b/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.45.7.ebuild @@ -14,7 +14,7 @@ SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/$ LICENSE="GPL-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x86-solaris" IUSE="static-libs" RDEPEND="!sys-libs/com_err diff --git a/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.46.0.ebuild b/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.46.2.ebuild index 41da9ca3221d..41da9ca3221d 100644 --- a/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.46.0.ebuild +++ b/sys-libs/e2fsprogs-libs/e2fsprogs-libs-1.46.2.ebuild diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index aa7baa67c741..1809c7c1dedf 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -20,12 +20,11 @@ DIST glibc-2.30-sparc-reg-fix-clobber.patch 6106 BLAKE2B cad6a4cbef5d529519ef486 DIST glibc-2.30.tar.xz 16576920 BLAKE2B bd5aae4c9854f40785b91f83c3b632de6d48d811027ddfe61651cb1bc617db8017d7914c23a770cdd3feed06fcc316da841eea916cdba54179e7eace4ea45484 SHA512 37483990cd653685873e96c45dd1651b32b441b6d7919a68ebe3bae31a0c3f7ce183fc9b110f0b268b353f80312f18370559a1e7aecea0e5aa755c8f2aef1d6b DIST glibc-2.31-patches-9.tar.xz 74712 BLAKE2B 62991b67de4def4cca944e8420d2f0139f88b6754c6bc81072bb321c574c1db22641857345325848e1dfb551c10758f582e4425e687a7921cdbd4e7e7923a047 SHA512 699d898e3a8ed02b04573c675f572076e8f747767bfc577a033a49cd7d9078a7a60ac325acd4bd419a93b56edf90ce067baa7578ab315e27885f1f0e13916354 DIST glibc-2.31.tar.xz 16676764 BLAKE2B 91df1792345f157265eae405185a81fd4b8ce36d4c2388f44b0d5b1ae38174ea374cbc909cd260770b9f38ea58051da13766d4fa22abf41c2d4a2493257b179b SHA512 735e4c0ef10418b6ea945ad3906585e5bbd8b282d76f2131309dce4cec6b15066a5e4a3731773ce428a819b542579c9957867bb0abf05ed2030983fca4412306 -DIST glibc-2.32-patches-2.tar.xz 8588 BLAKE2B 57a85241e3270d14df0332b039a933c5a7ee4d089684d85cca564eeec2d6796735de60b628c5746858757342922d58993d6cf7187ce1d7102b2299ca2cf8513f SHA512 45bbab9e2f813f55cb4a1438dcd9365170b8facff50b11648ba6022da06c20029bb65a4b06fd906af82aa7461b7374f85105fd7eedb7915cec3f1df3779b68a3 -DIST glibc-2.32-patches-4.tar.xz 49884 BLAKE2B e7f364123d9c7b6be5f769a5be0c71afe345972d123d44797cb427667faf6c2bb27bb979a6dc949ec7cc522ccccfdaed730c44dd48251375be24f9c96dbd2aca SHA512 41548299b083e60dc3df4bad7135eba09e1f4d83ab94cf1ff0240198261338c87a228f53179bf639d04190710e2913679fa2c682fd5d3e31a1250f91e31b1683 DIST glibc-2.32-patches-5.tar.xz 53116 BLAKE2B b2bd9d2cc7fb8f7d3cd96d8439842c30aeed4703e69f959a470967d82dc37ce141f747387c793a3ee6663ed8889af1bcca87fd9ca66c51f1099bba36fe6759d5 SHA512 b3b2baf7b25e28cd4884c4d61f1337b3e49c39dc3f6d789e7cb0a1e180402028da9e8a69828940d2e9676a857d6248da1173d45e8465adca4e148bc2bd76cb62 DIST glibc-2.32-patches-6.tar.xz 54552 BLAKE2B 3c14b7849f53a3c9132c50c4ddcf6cfe42eabfabdfab21231bc1834e030ace88cc2121e4e1e8e74d9137e5b0692b5aca8b62762437317dc57665a1ea63d05014 SHA512 0e03891d992b211ffc5ef21d604f9f8a0adc783af46eea5a81c28024ff13f793dd236f83652eec19308645c9dd68c6017c64626f14edf30fdaeccd65af2167b7 +DIST glibc-2.32-patches-8.tar.xz 65532 BLAKE2B 00c572cff396e52313d0324f7bc28192a65f06b22fc5a04aa631b76b3016842365006399715531ee693f3519720edcebef7884247f2f8c19e3518c1ddafab7cc SHA512 5240bc3a6df46d12c03ea4ce7b1a0df85301256ae3bd003fd04c61dadaaec34998873bf20544d891f6eedf896302bb916010aebc1d8d646a3cce09a93b533d0b DIST glibc-2.32.tar.xz 16744512 BLAKE2B a56b4afbb35315c5cd6dca0f62e44455dceae3e6e88a8453621f9a5394a60ddf10ca9309b2db0911830c7fd77e3faa5d94694eb94d5b2c05fc5285cef52255da SHA512 8460c155b7003e04f18dabece4ed9ad77445fa2288a7dc08e80a8fc4c418828af29e0649951bd71a54ea2ad2d4da7570aafd9bdfe4a37e9951b772b442afe50b -DIST glibc-2.33-patches-1.tar.xz 7636 BLAKE2B 8a72d091e506efd0b122ac0822544c7d3b323761f69cd874392abe0d059c58f784b13d9d1b4ab32f8b70118ac8b47dc074cc80349b316f8f4304b894093c3918 SHA512 b9a49adf781fef800618fe8e08a026f5c2a7470c1ac121aabc516d8a4a4c5dd48e90bf7558ebef22656904892e9f9515e57430c68427326da9b5938ea64df871 +DIST glibc-2.33-patches-2.tar.xz 14664 BLAKE2B dc29e11f5caa5a53311107755c0bcc8a9c4c602bc7e295ff727f0e050997b8b2969463586ba2d4229ffdd8ddee4f2857e108b37888e43351cd3bc9f6245ba2dc SHA512 681d62ffc5e6f288cbccf1aadd6c103058cb9c568d1e9ffef6ab6600f2f3cc1dc4a985bfe7c9de960f65331ce7bbad07fd20f743f744c14bf26c4119cc8fee99 DIST glibc-2.33.tar.xz 17031280 BLAKE2B 703d12121c1e2c5d9e0c6ba5341f5fb5c4d9111611a83f2360029b5de9c6e5a5611249d1833684a58ed4afdf49cae614365d87ec8721ba0e5d218f593b1f229d SHA512 4cb5777b68b22b746cc51669e0e9282b43c83f6944e42656e6db7195ebb68f2f9260f130fdeb4e3cfc64efae4f58d96c43d388f52be1eb024ca448084684abdb DIST locale-gen-2.00.tar.gz 7738 BLAKE2B cde6de5ba3400aea24d0d5f1b79471f89f09fb747c8e371e38316c7ada92f967e0865f573f23cb353d82419c234724143c0aeca9eb70eb945dfc581cc7491eb1 SHA512 b609fddb9ec5e567c008841fef3390eddb5d6e7699a8271b3b8c0ade1b44b0ac2e5d1daa8b9acabf3432e3b88110b538a96f209b1ad0f9e988b7efce66606dff DIST locale-gen-2.10.tar.gz 7747 BLAKE2B 49f569c5ae5260fca128503bc6f22d6f6f1cda817920c41fdadadf1527bbb4f3eb161f79fa729830666a4673e9092f99f4685ec8fcac8ddea0b8242bca9c1f4f SHA512 e350e60d458d67638e3090711fca05af6fafac06c51b97648244549f8a0621dab7543f09dc7ad4c62392f13bdae8e5875dc6d0b6c3d83efc29d116bc2eef92db @@ -33,11 +32,9 @@ EBUILD glibc-2.19-r2.ebuild 38315 BLAKE2B 6002933b094b0606e06a3f749cecdd9bae79ad EBUILD glibc-2.25-r11.ebuild 6063 BLAKE2B a995a2553fad56abe09f0f890e2c70f94568675057367795acc7e62fdeb8b103a8ed9b5228bbe3aa74a70c7d657808ee0420c6c8931386c7a9c2adb0c330d15c SHA512 1b8e906841492e4f9361f909e91069c3a642d84a0216fab18b434f61db991c13765a31e29175854d43bf1b8159b462cd02e138bd593990c2306afd70f163a0cd EBUILD glibc-2.30-r9.ebuild 43265 BLAKE2B 199b63cc2e087477a1424307224e87a88a330c8502f3b2bf2fad59f5dcd841ec49629cabe2606ad60179b1d551bf246e4e5e3cae2b80607ea5321d42daf010d9 SHA512 92e856347ee08d3dd7cfa4005b0a2fd9ff7366d32043d5fb93b1b7a52773227763f4ab35c390cd0a305ea1baf5264b5d88a9833a0cc7c8e702297ea1df7840c2 EBUILD glibc-2.31-r7.ebuild 44383 BLAKE2B 3a16c8001b95e590e343c8613d8c51b4084fa9a0e1fd0da81be0909ace914913116341af459a3438c78510ee340d4e5d4c9df5ee4713f3f7e78b145f4348d35b SHA512 ad6b6a4a06af40ad2bd2aead858fa2b6c934914f085471ef63b41496d6bbf19b67230e2a0bf25ce1637498e8042b89c4877a42f695d5f4e92d3d59e5f6933027 -EBUILD glibc-2.32-r2.ebuild 44986 BLAKE2B d71265f4368ffb1f0219da121450e404ded42886d7bb9ffd8594876688175ec1f15c17dda03eb71102dc14f3d33f84278bffb31ff3d4373486509829b60a45ca SHA512 d3ccd7fcbd8401bfa69d77a7fa407150bbba1054af417c81bf2223c6de44954337825addcc096f7554b6341bf39036ad6f14ddee199f3ccc1c46205c3ec3c7d8 -EBUILD glibc-2.32-r3.ebuild 44714 BLAKE2B 795b2d5d5c57d5c98791ce9bc4e45cb69b74fa9f2d8e0a5d9f1b8aaa2555459dfa73655763a62421ea6868381e01e92f7187886639e9178873d61c98235b3b0c SHA512 9309ae84040c2deb601f64e0de38b5f2edba75e5f6867a23505b4b31afb76e452ccb125018ab5f8b6c3335cb06b7d8a04e88d459b11b2528da96b134a23376bf -EBUILD glibc-2.32-r5.ebuild 44714 BLAKE2B 63f8695808d81b723d3a8c0fbdfbd72c95ac0c4c56aea2f3df3c4497983cbf2e6dee493d652b4d24e90447b39dea1b9e949cd4e2c981270ee08344576a16f287 SHA512 e11e83b9f1f7b293c99457794ae43d37c20aefd6129ce4b4588b744340745e31df00e4f9d2df6e87279d40507aabea19a591e767319f2a81814f37869c4e9bb0 -EBUILD glibc-2.32-r6.ebuild 44712 BLAKE2B 0e7e9e4a34290b5ff45d29da6a07012d7ed9d2583d2e500fd46874d7804e51026a667b959d92b0d79a5ac081dc53d07297b42c11a6772acdbacc442f9203c5b4 SHA512 ac456fff3016e7c3e49151fe8e8e94ca6cf05dc2adab49c2417484f7b6fe8f4d3ed172b2acbe17019cf903f1b159b0b30f20c911ba4e48b944088753fdf2afde -EBUILD glibc-2.32-r7.ebuild 44723 BLAKE2B 64978fd8452bac9bb3d649a819ad6142115f6976e03ff83c60e6d20ad69c2a8ab5f26f2d3df85f492d702e475a2498a6ec54cef42ae77ce6c07cd0f9879530ad SHA512 d66f2507e029bfa467618e2ce6c7050ef66a2e15be09eb79ce5ac746a6b3fdfea5b042ea30ddd6abdb3efc67dd2ce443c08053823214538770bcc9cfbf226486 -EBUILD glibc-2.33.ebuild 44353 BLAKE2B ef75e5afa0eec2a56500cdbeb8f7ca4a840160f6aaad4529feea8abda3283a46f0753235b3b8509c3182b5f6e633849cce810e6a7e08574196910a11167cabb2 SHA512 cfb3346e18e2a66311d1a69eeecdf831bd960ee234692b96a65b5d337da0514736b74ec421d27df54f772f7354b043e15fd15539ff69439095a10ac45d00f52f +EBUILD glibc-2.32-r6.ebuild 44711 BLAKE2B d20b95e573b4c5ec0d6287d4c473d0442bef7fcca6b82807d653a9b4d4af0851ae7d0768aa048ee35bae83bafb0bca0b6c3e96de4cfaae40941bb685e7596e00 SHA512 4fbd31ea339a1e4186793aa3eded722a5e1ad7fb25bd2088665edd66abfc914cf51164e1605a34fa18150c2c58bc7248b652513e06c9b024ae08139fb9c2db63 +EBUILD glibc-2.32-r7.ebuild 44718 BLAKE2B 5b86860279aa6dff3608692918ec01437f09b2b94bbddec348ae8468c6f8fd2675005213374cbe5aaeed7c2d22cc4156ac7cbebfa4f0a9d127e1587483fd9752 SHA512 601e1416278c82a3ecfbaddf8d0921ad41ee8e4aa1439517fa1636dca0ac79d4bd0c73bb72e93b0ea314945cc6726e5f03dacf0c9631bbf0f60f883d4f9f76e2 +EBUILD glibc-2.32-r8.ebuild 44723 BLAKE2B dccad317a751f27082856fe6ab9389e08eabb88a1e3f246fc7c57611eb851de79a9917c0cc76f52fe09fbd5b9a2ed15295c4b23d4df055ba528aae61f3ba5f8b SHA512 1a14577785508ce8453bce1c1453f2c7a1e1df00edaee0df985369cec491c748bee1bc82733db513d6719e3236d3ee9182db19b927899e438b2dc9802ce84ae4 +EBUILD glibc-2.33.ebuild 44353 BLAKE2B 18d4ca10e97d0cec838268386db069bf3ed83e9430e894e7a2095008916c516ec12ef95f4f4bfe6ccce40e33135591e789ba4efac89194a2b458ed54b56a647d SHA512 6c91a79d2ef1163936f44a9deee98c7cc3af426d35401b4aa268d0b87313282905982e7bbdab1290d30ec786e38e6f1c8aa4ba8b5b6597f17e6d096934062c43 EBUILD glibc-9999.ebuild 44351 BLAKE2B 9d59c105412613b1a9f233663f13fbebe970a96f6aef8ce4404268669360347ba101fb6fb48f4c731257cfaf214a4cf10914a8b8f6339c56d18b6ec64a1fef4f SHA512 be85ba586520af2d429ab97aa994ffadd242528e45ff4bec3732989fd85509182db9a11f337d94ba4f91e45e5fd98024500f5380e7ef3a609f1fbd0ed1a1a278 MISC metadata.xml 1611 BLAKE2B 3bd777c160ea20cdbd86cca791d9fd4ff02f8d100344235ec74fff37d5cae1e7119e0ec26969707e75a983dcdb23e994559c8be128ef40fa0ec9ed655017466d SHA512 08be6d085ac47b140fff17a3be8cee77e066a4536cdce76fa44c77875dec2a9dc236ff67ff44301abf75cb196d1902feb2a139dda420220248b46dd9cdb16b9f diff --git a/sys-libs/glibc/glibc-2.32-r2.ebuild b/sys-libs/glibc/glibc-2.32-r2.ebuild deleted file mode 100644 index 518229252288..000000000000 --- a/sys-libs/glibc/glibc-2.32-r2.ebuild +++ /dev/null @@ -1,1521 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7,8,9} ) - -inherit python-any-r1 prefix eutils toolchain-funcs flag-o-matic gnuconfig \ - multilib systemd multiprocessing - -DESCRIPTION="GNU libc C library" -HOMEPAGE="https://www.gnu.org/software/libc/" -LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE" -SLOT="2.2" - -EMULTILIB_PKG="true" - -# Gentoo patchset (ignored for live ebuilds) -PATCH_VER=2 -PATCH_DEV=dilfridge - -if [[ ${PV} == 9999* ]]; then - inherit git-r3 -else - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sparc x86" - SRC_URI="mirror://gnu/glibc/${P}.tar.xz" - SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" - SRC_URI+=" riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz )" -fi - -RELEASE_VER=${PV} - -GCC_BOOTSTRAP_VER=20180511 - -LOCALE_GEN_VER=2.10 - -SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz" -SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" - -IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib nscd profile selinux +ssp +static-libs static-pie suid systemtap test vanilla" - -# Minimum kernel version that glibc requires -MIN_KERN_VER="3.2.0" - -# Here's how the cross-compile logic breaks down ... -# CTARGET - machine that will target the binaries -# CHOST - machine that will host the binaries -# CBUILD - machine that will build the binaries -# If CTARGET != CHOST, it means you want a libc for cross-compiling. -# If CHOST != CBUILD, it means you want to cross-compile the libc. -# CBUILD = CHOST = CTARGET - native build/install -# CBUILD != (CHOST = CTARGET) - cross-compile a native build -# (CBUILD = CHOST) != CTARGET - libc for cross-compiler -# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler -# For install paths: -# CHOST = CTARGET - install into / -# CHOST != CTARGET - install into /usr/CTARGET/ -# -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} -if [[ ${CTARGET} == ${CHOST} ]] ; then - if [[ ${CATEGORY} == cross-* ]] ; then - export CTARGET=${CATEGORY#cross-} - fi -fi - -# Note [Disable automatic stripping] -# Disabling automatic stripping for a few reasons: -# - portage's attempt to strip breaks non-native binaries at least on -# arm: bug #697428 -# - portage's attempt to strip libpthread.so.0 breaks gdb thread -# enumeration: bug #697910. This is quite subtle: -# * gdb uses glibc's libthread_db-1.0.so to enumerate threads. -# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols -# via 'ps_pglobal_lookup' symbol defined in gdb. -# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all -# known symbols in 'libpthread.so.0'. Specifically 'nptl_version' -# (unexported) is used to sanity check compatibility before enabling -# debugging. -# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint -# * normal 'strip' command trims '.symtab' -# Thus our main goal here is to prevent 'libpthread.so.0' from -# losing it's '.symtab' entries. -# As Gentoo's strip does not allow us to pass less aggressive stripping -# options and does not check the machine target we strip selectively. - -# We need a new-enough binutils/gcc to match upstream baseline. -# Also we need to make sure our binutils/gcc supports TLS, -# and that gcc already contains the hardened patches. -# Lastly, let's avoid some openssh nastiness, bug 708224, as -# convenience to our users. - -# gzip, grep, awk are needed by locale-gen, bug 740750 - -BDEPEND=" - ${PYTHON_DEPS} - >=app-misc/pax-utils-0.1.10 - sys-devel/bison - doc? ( sys-apps/texinfo ) - !compile-locales? ( - app-arch/gzip - sys-apps/grep - virtual/awk - ) -" -COMMON_DEPEND=" - gd? ( media-libs/gd:2= ) - nscd? ( selinux? ( - audit? ( sys-process/audit ) - caps? ( sys-libs/libcap ) - ) ) - suid? ( caps? ( sys-libs/libcap ) ) - selinux? ( sys-libs/libselinux ) - systemtap? ( dev-util/systemtap ) - !<net-misc/openssh-8.1_p1-r2 -" -DEPEND="${COMMON_DEPEND} - compile-locales? ( - app-arch/gzip - sys-apps/grep - virtual/awk - ) - test? ( >=net-dns/libidn2-2.3.0 ) -" -RDEPEND="${COMMON_DEPEND} - app-arch/gzip - sys-apps/grep - virtual/awk - sys-apps/gentoo-functions -" - -RESTRICT="!test? ( test )" - -if [[ ${CATEGORY} == cross-* ]] ; then - BDEPEND+=" !headers-only? ( - >=${CATEGORY}/binutils-2.24 - >=${CATEGORY}/gcc-6 - )" - [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers" -else - BDEPEND+=" - >=sys-devel/binutils-2.24 - >=sys-devel/gcc-6 - " - DEPEND+=" virtual/os-headers " - RDEPEND+=" - >=net-dns/libidn2-2.3.0 - vanilla? ( !sys-libs/timezone-data ) - " - PDEPEND+=" !vanilla? ( sys-libs/timezone-data )" -fi - -# Ignore tests whitelisted below -GENTOO_GLIBC_XFAIL_TESTS="${GENTOO_GLIBC_XFAIL_TESTS:-yes}" - -# The following tests fail due to the Gentoo build system and are thus -# executed but ignored: -XFAIL_TEST_LIST=( - # 9) Failures of unknown origin - tst-latepthread - - # buggy test, assumes /dev/ and /dev/null on a single filesystem - # 'mount --bind /dev/null /chroot/dev/null' breaks it. - # https://sourceware.org/PR25909 - tst-support_descriptors - - # Flaky test, known to fail occasionally: - # https://sourceware.org/PR19329 - # https://bugs.gentoo.org/719674#c12 - tst-stack4 -) - -# -# Small helper functions -# - -is_crosscompile() { - [[ ${CHOST} != ${CTARGET} ]] -} - -just_headers() { - is_crosscompile && use headers-only -} - -alt_prefix() { - is_crosscompile && echo /usr/${CTARGET} -} - -# This prefix is applicable to CHOST when building against this -# glibc. It is baked into the library at configure time. -host_eprefix() { - is_crosscompile || echo "${EPREFIX}" -} - -# This prefix is applicable to CBUILD when building against this -# glibc. It determines the destination path at install time. -build_eprefix() { - is_crosscompile && echo "${EPREFIX}" -} - -# We need to be able to set alternative headers for compiling for non-native -# platform. Will also become useful for testing kernel-headers without screwing -# up the whole system. -alt_headers() { - echo ${ALT_HEADERS:=$(alt_prefix)/usr/include} -} - -alt_build_headers() { - if [[ -z ${ALT_BUILD_HEADERS} ]] ; then - ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)" - if tc-is-cross-compiler ; then - ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers) - if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then - local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h') - ALT_BUILD_HEADERS=${header_path%/linux/version.h} - fi - fi - fi - echo "${ALT_BUILD_HEADERS}" -} - -alt_libdir() { - echo $(alt_prefix)/$(get_libdir) -} -alt_usrlibdir() { - echo $(alt_prefix)/usr/$(get_libdir) -} - -builddir() { - echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1" -} - -do_compile_test() { - local ret save_cflags=${CFLAGS} - CFLAGS+=" $1" - shift - - pushd "${T}" >/dev/null - - rm -f glibc-test* - printf '%b' "$*" > glibc-test.c - - # Most of the time CC is already set, but not in early sanity checks. - nonfatal emake glibc-test CC="${CC-$(tc-getCC ${CTARGET})}" - ret=$? - - popd >/dev/null - - CFLAGS=${save_cflags} - return ${ret} -} - -do_run_test() { - local ret - - if [[ ${MERGE_TYPE} == "binary" ]] ; then - # ignore build failures when installing a binary package #324685 - do_compile_test "" "$@" 2>/dev/null || return 0 - else - if ! do_compile_test "" "$@" ; then - ewarn "Simple build failed ... assuming this is desired #324685" - return 0 - fi - fi - - pushd "${T}" >/dev/null - - ./glibc-test - ret=$? - rm -f glibc-test* - - popd >/dev/null - - return ${ret} -} - -setup_target_flags() { - # This largely mucks with compiler flags. None of which should matter - # when building up just the headers. - just_headers && return 0 - - case $(tc-arch) in - x86) - # -march needed for #185404 #199334 - # TODO: When creating the first glibc cross-compile, this test will - # always fail as it does a full link which in turn requires glibc. - # Probably also applies when changing multilib profile settings (e.g. - # enabling x86 when the profile was amd64-only previously). - # We could change main to _start and pass -nostdlib here so that we - # only test the gcc code compilation. Or we could do a compile and - # then look for the symbol via scanelf. - if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then - local t=${CTARGET_OPT:-${CTARGET}} - t=${t%%-*} - filter-flags '-march=*' - export CFLAGS="-march=${t} ${CFLAGS}" - einfo "Auto adding -march=${t} to CFLAGS #185404" - fi - ;; - amd64) - # -march needed for #185404 #199334 - # TODO: See cross-compile issues listed above for x86. - [[ ${ABI} == x86 ]] && - if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then - local t=${CTARGET_OPT:-${CTARGET}} - t=${t%%-*} - # Normally the target is x86_64-xxx, so turn that into the -march that - # gcc actually accepts. #528708 - [[ ${t} == "x86_64" ]] && t="x86-64" - filter-flags '-march=*' - # ugly, ugly, ugly. ugly. - CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}") - export CFLAGS_x86="${CFLAGS_x86} -march=${t}" - einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})" - fi - ;; - mips) - # The mips abi cannot support the GNU style hashes. #233233 - filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both - ;; - ppc|ppc64) - # Many arch-specific implementations do not work on ppc with - # cache-block not equal to 128 bytes. This breaks memset: - # https://sourceware.org/PR26522 - # https://bugs.gentoo.org/737996 - # Use default -mcpu=. For ppc it means non-multiarch setup. - filter-flags '-mcpu=*' - ;; - sparc) - # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though. - filter-flags "-fcall-used-g7" - append-flags "-fcall-used-g6" - - local cpu - case ${CTARGET} in - sparc64-*) - cpu="sparc64" - case $(get-flag mcpu) in - v9) - # We need to force at least v9a because the base build doesn't - # work with just v9. - # https://sourceware.org/bugzilla/show_bug.cgi?id=19477 - append-flags "-Wa,-xarch=v9a" - ;; - esac - ;; - sparc-*) - case $(get-flag mcpu) in - v8|supersparc|hypersparc|leon|leon3) - cpu="sparcv8" - ;; - *) - cpu="sparcv9" - ;; - esac - ;; - esac - [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}" - ;; - esac -} - -setup_flags() { - # Make sure host make.conf doesn't pollute us - if is_crosscompile || tc-is-cross-compiler ; then - CHOST=${CTARGET} strip-unsupported-flags - fi - - # Store our CFLAGS because it's changed depending on which CTARGET - # we are building when pulling glibc on a multilib profile - CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}} - CFLAGS=${CFLAGS_BASE} - CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}} - CXXFLAGS=${CXXFLAGS_BASE} - ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}} - ASFLAGS=${ASFLAGS_BASE} - - # Allow users to explicitly avoid flag sanitization via - # USE=custom-cflags. - if ! use custom-cflags; then - # Over-zealous CFLAGS can often cause problems. What may work for one - # person may not work for another. To avoid a large influx of bugs - # relating to failed builds, we strip most CFLAGS out to ensure as few - # problems as possible. - strip-flags - # Lock glibc at -O2; we want to be conservative here. - filter-flags '-O?' - append-flags -O2 - fi - strip-unsupported-flags - filter-flags -m32 -m64 '-mabi=*' - - # glibc aborts if rpath is set by LDFLAGS - filter-ldflags '-Wl,-rpath=*' - - # #492892 - filter-flags -frecord-gcc-switches - - unset CBUILD_OPT CTARGET_OPT - if use multilib ; then - CTARGET_OPT=$(get_abi_CTARGET) - [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST) - fi - - setup_target_flags - - if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then - CBUILD_OPT=${CTARGET_OPT} - fi - - # glibc's headers disallow -O0 and fail at build time: - # include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization" - replace-flags -O0 -O1 - - filter-flags '-fstack-protector*' -} - -want_tls() { - # Archs that can use TLS (Thread Local Storage) - case $(tc-arch) in - x86) - # requires i486 or better #106556 - [[ ${CTARGET} == i[4567]86* ]] && return 0 - return 1 - ;; - esac - return 0 -} - -want__thread() { - want_tls || return 1 - - # For some reason --with-tls --with__thread is causing segfaults on sparc32. - [[ ${PROFILE_ARCH} == "sparc" ]] && return 1 - - [[ -n ${WANT__THREAD} ]] && return ${WANT__THREAD} - - # only test gcc -- can't test linking yet - tc-has-tls -c ${CTARGET} - WANT__THREAD=$? - - return ${WANT__THREAD} -} - -use_multiarch() { - # Allow user to disable runtime arch detection in multilib. - use multiarch || return 1 - # Make sure binutils is new enough to support indirect functions, - # #336792. This funky sed supports gold and bfd linkers. - local bver nver - bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}') - case $(tc-arch ${CTARGET}) in - amd64|x86) nver="2.20" ;; - arm) nver="2.22" ;; - hppa) nver="2.23" ;; - ppc|ppc64) nver="2.20" ;; - # ifunc support was added in 2.23, but glibc also needs - # machinemode which is in 2.24. - s390) nver="2.24" ;; - sparc) nver="2.21" ;; - *) return 1 ;; - esac - ver_test ${bver} -ge ${nver} -} - -# Setup toolchain variables that had historically been defined in the -# profiles for these archs. -setup_env() { - # silly users - unset LD_RUN_PATH - unset LD_ASSUME_KERNEL - - if is_crosscompile || tc-is-cross-compiler ; then - multilib_env ${CTARGET_OPT:-${CTARGET}} - - if ! use multilib ; then - MULTILIB_ABIS=${DEFAULT_ABI} - else - MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}} - fi - - # If the user has CFLAGS_<CTARGET> in their make.conf, use that, - # and fall back on CFLAGS. - local VAR=CFLAGS_${CTARGET//[-.]/_} - CFLAGS=${!VAR-${CFLAGS}} - einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}" - fi - - setup_flags - - export ABI=${ABI:-${DEFAULT_ABI:-default}} - - if just_headers ; then - # Avoid mixing host's CC and target's CFLAGS_${ABI}: - # At this bootstrap stage we have only binutils for - # target but not compiler yet. - einfo "Skip CC ABI injection. We can't use (cross-)compiler yet." - return 0 - fi - local VAR=CFLAGS_${ABI} - # We need to export CFLAGS with abi information in them because glibc's - # configure script checks CFLAGS for some targets (like mips). Keep - # around the original clean value to avoid appending multiple ABIs on - # top of each other. - : ${__GLIBC_CC:=$(tc-getCC ${CTARGET})} - export __GLIBC_CC CC="${__GLIBC_CC} ${!VAR}" - einfo " $(printf '%15s' 'Manual CC:') ${CC}" -} - -foreach_abi() { - setup_env - - local ret=0 - local abilist="" - if use multilib ; then - abilist=$(get_install_abis) - else - abilist=${DEFAULT_ABI} - fi - local -x ABI - for ABI in ${abilist:-default} ; do - setup_env - einfo "Running $1 for ABI ${ABI}" - $1 - : $(( ret |= $? )) - done - return ${ret} -} - -glibc_banner() { - local b="Gentoo ${PVR}" - [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}" - echo "${b}" -} - -# The following Kernel version handling functions are mostly copied from portage -# source. It's better not to use linux-info.eclass here since a) it adds too -# much magic, see bug 326693 for some of the arguments, and b) some of the -# functions are just not provided. - -g_get_running_KV() { - uname -r - return $? -} - -g_KV_major() { - [[ -z $1 ]] && return 1 - local KV=$@ - echo "${KV%%.*}" -} - -g_KV_minor() { - [[ -z $1 ]] && return 1 - local KV=$@ - KV=${KV#*.} - echo "${KV%%.*}" -} - -g_KV_micro() { - [[ -z $1 ]] && return 1 - local KV=$@ - KV=${KV#*.*.} - echo "${KV%%[^[:digit:]]*}" -} - -g_KV_to_int() { - [[ -z $1 ]] && return 1 - local KV_MAJOR=$(g_KV_major "$1") - local KV_MINOR=$(g_KV_minor "$1") - local KV_MICRO=$(g_KV_micro "$1") - local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO )) - - # We make version 2.2.0 the minimum version we will handle as - # a sanity check ... if its less, we fail ... - if [[ ${KV_int} -ge 131584 ]] ; then - echo "${KV_int}" - return 0 - fi - return 1 -} - -g_int_to_KV() { - local version=$1 major minor micro - major=$((version / 65536)) - minor=$(((version % 65536) / 256)) - micro=$((version % 256)) - echo ${major}.${minor}.${micro} -} - -eend_KV() { - [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]] - eend $? -} - -get_kheader_version() { - printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \ - $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \ - tail -n 1 -} - -# We collect all sanity checks here. Consistency is not guranteed between -# pkg_ and src_ phases, so we call this function both in pkg_pretend and in -# src_unpack. -sanity_prechecks() { - # Prevent native builds from downgrading - if [[ ${MERGE_TYPE} != "buildonly" ]] && \ - [[ -z ${ROOT} ]] && \ - [[ ${CBUILD} == ${CHOST} ]] && \ - [[ ${CHOST} == ${CTARGET} ]] ; then - - # The high rev # is to allow people to downgrade between -r# - # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2 - # should be fine. Hopefully we never actually use a r# this - # high. - if has_version ">${CATEGORY}/${P}-r10000" ; then - eerror "Sanity check to keep you from breaking your system:" - eerror " Downgrading glibc is not supported and a sure way to destruction." - [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system." - fi - - if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then - eerror "Your old kernel is broken. You need to update it to a newer" - eerror "version as syscall(<bignum>) will break. See bug 279260." - die "Old and broken kernel." - fi - fi - - # Users have had a chance to phase themselves, time to give em the boot - if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then - eerror "You still haven't deleted ${EROOT}/etc/locales.build." - eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher." - die "Lazy upgrader detected" - fi - - if [[ ${CTARGET} == i386-* ]] ; then - eerror "i386 CHOSTs are no longer supported." - eerror "Chances are you don't actually want/need i386." - eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml" - die "Please fix your CHOST" - fi - - if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then - ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS." - ewarn "This will result in a 50% performance penalty when running with a 32bit" - ewarn "hypervisor, which is probably not what you want." - fi - - # Check for sanity of /etc/nsswitch.conf - if [[ -e ${EROOT}/etc/nsswitch.conf ]] ; then - local entry - for entry in passwd group shadow; do - if ! egrep -q "^[ \t]*${entry}:.*files" "${EROOT}"/etc/nsswitch.conf; then - eerror "Your ${EROOT}/etc/nsswitch.conf is out of date." - eerror "Please make sure you have 'files' entries for" - eerror "'passwd:', 'group:' and 'shadow:' databases." - eerror "For more details see:" - eerror " https://wiki.gentoo.org/wiki/Project:Toolchain/nsswitch.conf_in_glibc-2.26" - die "nsswitch.conf has no 'files' provider in '${entry}'." - fi - done - fi - - # ABI-specific checks follow here. Hey, we have a lot more specific conditions that - # we test for... - if ! is_crosscompile ; then - if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then - ebegin "Checking that IA32 emulation is enabled in the running kernel" - echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c" - local STAT - if "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then - "${T}/check-ia32-emulation.elf32" - STAT=$? - else - # Don't fail here to allow single->multi ABI switch - # or recover from breakage like bug #646424 - ewarn "Failed to compile the ABI test. Broken host glibc?" - STAT=0 - fi - rm -f "${T}/check-ia32-emulation.elf32" - eend $STAT - [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc." - fi - - fi - - # When we actually have to compile something... - if ! just_headers ; then - ebegin "Checking gcc for __thread support" - if ! eend $(want__thread ; echo $?) ; then - echo - eerror "Could not find a gcc that supports the __thread directive!" - eerror "Please update your binutils/gcc and try again." - die "No __thread support in gcc!" - fi - - if [[ ${CTARGET} == *-linux* ]] ; then - local run_kv build_kv want_kv - - run_kv=$(g_get_running_KV) - build_kv=$(g_int_to_KV $(get_kheader_version)) - want_kv=${MIN_KERN_VER} - - if ! is_crosscompile && ! tc-is-cross-compiler ; then - # Building fails on an non-supporting kernel - ebegin "Checking running kernel version (${run_kv} >= ${want_kv})" - if ! eend_KV ${run_kv} ${want_kv} ; then - echo - eerror "You need a kernel of at least ${want_kv}!" - die "Kernel version too low!" - fi - fi - - ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})" - if ! eend_KV ${build_kv} ${want_kv} ; then - echo - eerror "You need linux-headers of at least ${want_kv}!" - die "linux-headers version too low!" - fi - fi - fi -} - -# -# the phases -# - -# pkg_pretend - -pkg_pretend() { - # All the checks... - einfo "Checking general environment sanity." - sanity_prechecks -} - -pkg_setup() { - # see bug 682570 - [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup -} - -# src_unpack - -src_unpack() { - # Consistency is not guaranteed between pkg_ and src_ ... - sanity_prechecks - - use multilib && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz - - setup_env - - if [[ ${PV} == 9999* ]] ; then - EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git" - EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git - git-r3_src_unpack - mv patches-git/9999 patches || die - - EGIT_REPO_URI="https://sourceware.org/git/glibc.git" - EGIT_CHECKOUT_DIR=${S} - git-r3_src_unpack - else - unpack ${P}.tar.xz - - cd "${WORKDIR}" || die - unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz - fi - - cd "${WORKDIR}" || die - unpack locale-gen-${LOCALE_GEN_VER}.tar.gz - use riscv && unpack backport-rv32.txz -} - -src_prepare() { - local patchsetname - if ! use vanilla ; then - if [[ ${PV} == 9999* ]] ; then - patchsetname="from git master" - else - patchsetname="${RELEASE_VER}-${PATCH_VER}" - fi - elog "Applying Gentoo Glibc Patchset ${patchsetname}" - eapply "${WORKDIR}"/patches - einfo "Done." - - if use riscv ; then - elog "Adding rv32 backport patchset for glibc-2.32 (experimental)" - eapply "${WORKDIR}"/backport-rv32 - einfo "Done." - fi - fi - - default - - gnuconfig_update - - cd "${WORKDIR}" - find . -name configure -exec touch {} + - - # move the external locale-gen to its old place - mkdir extra || die - mv locale-gen-${LOCALE_GEN_VER} extra/locale || die - - eprefixify extra/locale/locale-gen - - # Fix permissions on some of the scripts. - chmod u+x "${S}"/scripts/*.sh - - cd "${S}" -} - -glibc_do_configure() { - # Glibc does not work with gold (for various reasons) #269274. - tc-ld-disable-gold - - # CXX isnt handled by the multilib system, so if we dont unset here - # we accumulate crap across abis - unset CXX - - einfo "Configuring glibc for nptl" - - if use doc ; then - export MAKEINFO=makeinfo - else - export MAKEINFO=/dev/null - fi - - local v - for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM READELF; do - einfo " $(printf '%15s' ${v}:) ${!v}" - done - - # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760 - # To build .S (assembly) files with the same ABI-specific flags - # upstream currently recommends adding CFLAGS to CC/CXX: - # https://sourceware.org/PR23273 - # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS - # and breaks multiarch support. See 659030#c3 for an example. - # The glibc configure script doesn't properly use LDFLAGS all the time. - export CC="$(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS}" - einfo " $(printf '%15s' 'Manual CC:') ${CC}" - - # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548 - export CXX="$(tc-getCXX ${CTARGET}) $(get_abi_CFLAGS) ${CFLAGS}" - - if is_crosscompile; then - # Assume worst-case bootstrap: glibc is buil first time - # when ${CTARGET}-g++ is not available yet. We avoid - # building auxiliary programs that require C++: bug #683074 - # It should not affect final result. - export libc_cv_cxx_link_ok=no - # The line above has the same effect. We set CXX explicitly - # to make build logs less confusing. - export CXX= - fi - einfo " $(printf '%15s' 'Manual CXX:') ${CXX}" - - # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure - # can't detect them automatically due to ${CHOST} mismatch and fallbacks - # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup(). - export NM="$(tc-getNM ${CTARGET})" - export READELF="$(tc-getREADELF ${CTARGET})" - einfo " $(printf '%15s' 'Manual NM:') ${NM}" - einfo " $(printf '%15s' 'Manual READELF:') ${READELF}" - - echo - - local myconf=() - - case ${CTARGET} in - m68k*) - # setjmp() is not compatible with stack protection: - # https://sourceware.org/PR24202 - myconf+=( --enable-stack-protector=no ) - ;; - powerpc-*) - # Currently gcc on powerpc32 generates invalid code for - # __builtin_return_address(0) calls. Normally programs - # don't do that but malloc hooks in glibc do: - # https://gcc.gnu.org/PR81996 - # https://bugs.gentoo.org/629054 - myconf+=( --enable-stack-protector=no ) - ;; - *) - # Use '=strong' instead of '=all' to protect only functions - # worth protecting from stack smashes. - # '=all' is also known to have a problem in IFUNC resolution - # tests: https://sourceware.org/PR25680, bug #712356. - myconf+=( --enable-stack-protector=$(usex ssp strong no) ) - ;; - esac - myconf+=( --enable-stackguard-randomization ) - - # Keep a whitelist of targets supporing IFUNC. glibc's ./configure - # is not robust enough to detect proper support: - # https://bugs.gentoo.org/641216 - # https://sourceware.org/PR22634#c0 - case $(tc-arch ${CTARGET}) in - # Keep whitelist of targets where autodetection mostly works. - amd64|x86|sparc|ppc|ppc64|arm|arm64|s390) ;; - # Blacklist everywhere else - *) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;; - esac - - # Enable Intel Control-flow Enforcement Technology on amd64 if requested - case ${CTARGET} in - x86_64-*) myconf+=( $(use_enable cet) ) ;; - *) ;; - esac - - [[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp ) - - myconf+=( --enable-kernel=${MIN_KERN_VER} ) - - # Since SELinux support is only required for nscd, only enable it if: - # 1. USE selinux - # 2. only for the primary ABI on multilib systems - # 3. Not a crosscompile - if ! is_crosscompile && use selinux ; then - if use multilib ; then - if is_final_abi ; then - myconf+=( --with-selinux ) - else - myconf+=( --without-selinux ) - fi - else - myconf+=( --with-selinux ) - fi - else - myconf+=( --without-selinux ) - fi - - # Force a few tests where we always know the answer but - # configure is incapable of finding it. - if is_crosscompile ; then - export \ - libc_cv_c_cleanup=yes \ - libc_cv_forced_unwind=yes - fi - - myconf+=( - --without-cvs - --disable-werror - --enable-bind-now - --build=${CBUILD_OPT:-${CBUILD}} - --host=${CTARGET_OPT:-${CTARGET}} - $(use_enable profile) - $(use_with gd) - --with-headers=$(build_eprefix)$(alt_build_headers) - --prefix="$(host_eprefix)/usr" - --sysconfdir="$(host_eprefix)/etc" - --localstatedir="$(host_eprefix)/var" - --libdir='$(prefix)'/$(get_libdir) - --mandir='$(prefix)'/share/man - --infodir='$(prefix)'/share/info - --libexecdir='$(libdir)'/misc/glibc - --with-bugurl=https://bugs.gentoo.org/ - --with-pkgversion="$(glibc_banner)" - $(use_enable crypt) - $(use_multiarch || echo --disable-multi-arch) - $(use_enable static-pie) - $(use_enable systemtap) - $(use_enable nscd) - ${EXTRA_ECONF} - ) - - # We rely on sys-libs/timezone-data for timezone tools normally. - myconf+=( $(use_enable vanilla timezone-tools) ) - - # These libs don't have configure flags. - ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no) - ac_cv_lib_cap_cap_init=$(usex caps || echo no) - - # There is no configure option for this and we need to export it - # since the glibc build will re-run configure on itself - export libc_cv_rootsbindir="$(host_eprefix)/sbin" - export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)" - - # We take care of patching our binutils to use both hash styles, - # and many people like to force gnu hash style only, so disable - # this overriding check. #347761 - export libc_cv_hashstyle=no - - local builddir=$(builddir nptl) - mkdir -p "${builddir}" - cd "${builddir}" - set -- "${S}"/configure "${myconf[@]}" - echo "$@" - "$@" || die "failed to configure glibc" - - # ia64 static cross-compilers are a pita in so much that they - # can't produce static ELFs (as the libgcc.a is broken). so - # disable building of the programs for those targets if it - # doesn't work. - # XXX: We could turn this into a compiler test, but ia64 is - # the only one that matters, so this should be fine for now. - if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then - sed -i '1i+link-static = touch $@' config.make - fi - - # If we're trying to migrate between ABI sets, we need - # to lie and use a local copy of gcc. Like if the system - # is built with MULTILIB_ABIS="amd64 x86" but we want to - # add x32 to it, gcc/glibc don't yet support x32. - # - if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then - echo 'main(){}' > "${T}"/test.c - if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then - sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die - fi - fi -} - -glibc_headers_configure() { - export ABI=default - - local builddir=$(builddir "headers") - mkdir -p "${builddir}" - cd "${builddir}" - - # if we don't have a compiler yet, we can't really test it now ... - # hopefully they don't affect header generation, so let's hope for - # the best here ... - local v vars=( - ac_cv_header_cpuid_h=yes - libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes - libc_cv_asm_cfi_directives=yes - libc_cv_broken_visibility_attribute=no - libc_cv_c_cleanup=yes - libc_cv_compiler_powerpc64le_binary128_ok=yes - libc_cv_forced_unwind=yes - libc_cv_gcc___thread=yes - libc_cv_mlong_double_128=yes - libc_cv_mlong_double_128ibm=yes - libc_cv_ppc_machine=yes - libc_cv_ppc_rel16=yes - libc_cv_predef_fortify_source=no - libc_cv_target_power8_ok=yes - libc_cv_visibility_attribute=yes - libc_cv_z_combreloc=yes - libc_cv_z_execstack=yes - libc_cv_z_initfirst=yes - libc_cv_z_nodelete=yes - libc_cv_z_nodlopen=yes - libc_cv_z_relro=yes - libc_mips_abi=${ABI} - libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard) - # These libs don't have configure flags. - ac_cv_lib_audit_audit_log_user_avc_message=no - ac_cv_lib_cap_cap_init=no - ) - - einfo "Forcing cached settings:" - for v in "${vars[@]}" ; do - einfo " ${v}" - export ${v} - done - - local headers_only_arch_CPPFLAGS=() - - # Blow away some random CC settings that screw things up. #550192 - if [[ -d ${S}/sysdeps/mips ]]; then - pushd "${S}"/sysdeps/mips >/dev/null - sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die - sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die - - # Force the mips ABI to the default. This is OK because the set of - # installed headers in this phase is the same between the 3 ABIs. - # If this ever changes, this hack will break, but that's unlikely - # as glibc discourages that behavior. - # https://crbug.com/647033 - sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die - - popd >/dev/null - fi - - case ${CTARGET} in - riscv*) - # RISC-V interrogates the compiler to determine which target to - # build. If building the headers then we don't strictly need a - # RISC-V compiler, so the built-in definitions that are provided - # along with all RISC-V compiler might not exist. This causes - # glibc's RISC-V preconfigure script to blow up. Since we're just - # building the headers any value will actually work here, so just - # pick the standard one (rv64g/lp64d) to make the build scripts - # happy for now -- the headers are all the same anyway so it - # doesn't matter. - headers_only_arch_CPPFLAGS+=( - -D__riscv_xlen=64 - -D__riscv_flen=64 - -D__riscv_float_abi_double=1 - -D__riscv_atomic=1 - ) ;; - esac - - local myconf=() - myconf+=( - --disable-sanity-checks - --enable-hacker-mode - --without-cvs - --disable-werror - --enable-bind-now - --build=${CBUILD_OPT:-${CBUILD}} - --host=${CTARGET_OPT:-${CTARGET}} - --with-headers=$(build_eprefix)$(alt_build_headers) - --prefix="$(host_eprefix)/usr" - ${EXTRA_ECONF} - ) - - # Nothing is compiled here which would affect the headers for the target. - # So forcing CC/CFLAGS is sane. - local headers_only_CC=$(tc-getBUILD_CC) - local headers_only_CFLAGS="-O1 -pipe" - local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}" - local headers_only_LDFLAGS="" - set -- "${S}"/configure "${myconf[@]}" - echo \ - "CC=${headers_only_CC}" \ - "CFLAGS=${headers_only_CFLAGS}" \ - "CPPFLAGS=${headers_only_CPPFLAGS}" \ - "LDFLAGS=${headers_only_LDFLAGS}" \ - "$@" - CC=${headers_only_CC} \ - CFLAGS=${headers_only_CFLAGS} \ - CPPFLAGS=${headers_only_CPPFLAGS} \ - LDFLAGS="" \ - "$@" || die "failed to configure glibc" -} - -do_src_configure() { - if just_headers ; then - glibc_headers_configure - else - glibc_do_configure nptl - fi -} - -src_configure() { - foreach_abi do_src_configure -} - -do_src_compile() { - emake -C "$(builddir nptl)" -} - -src_compile() { - if just_headers ; then - return - fi - - foreach_abi do_src_compile -} - -glibc_src_test() { - cd "$(builddir nptl)" - - local myxfailparams="" - if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then - for myt in ${XFAIL_TEST_LIST[@]} ; do - myxfailparams+="test-xfail-${myt}=yes " - done - fi - - # sandbox does not understand unshare() and prevents - # writes to /proc/, which makes many tests fail - - SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check -} - -do_src_test() { - local ret=0 - - glibc_src_test - : $(( ret |= $? )) - - return ${ret} -} - -src_test() { - if just_headers ; then - return - fi - - # Give tests more time to complete. - export TIMEOUTFACTOR=5 - - foreach_abi do_src_test || die "tests failed" -} - -run_locale_gen() { - # if the host locales.gen contains no entries, we'll install everything - local root="$1" - local inplace="" - - if [[ "${root}" == "--inplace-glibc" ]] ; then - inplace="--inplace-glibc" - root="$2" - fi - - local locale_list="${root}/etc/locale.gen" - - pushd "${ED}"/$(get_libdir) >/dev/null - - if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then - [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space" - locale_list="${root}/usr/share/i18n/SUPPORTED" - fi - - set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \ - --destdir "${root}" - echo "$@" - "$@" - - popd >/dev/null -} - -glibc_do_src_install() { - local builddir=$(builddir nptl) - cd "${builddir}" - - emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install - - # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support - # which come without headers etc. Only needed for binary packages since the - # external net-libs/libnsl has increased soversion. Keep only versioned libraries. - find "${D}" -name "libnsl.a" -delete - find "${D}" -name "libnsl.so" -delete - - # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need - # to infer upstream version: - # '#define VERSION "2.26.90"' -> '2.26.90' - local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h) - - # Avoid stripping binaries not targeted by ${CHOST}. Or else - # ${CHOST}-strip would break binaries build for ${CTARGET}. - is_crosscompile && dostrip -x / - # gdb thread introspection relies on local libpthreas symbols. stripping breaks it - # See Note [Disable automatic stripping] - dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so - - if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then - # Move versioned .a file out of libdir to evade portage QA checks - # instead of using gen_usr_ldscript(). We fix ldscript as: - # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..." - sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die - dodir $(alt_usrlibdir)/${P} - mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die - fi - - # We'll take care of the cache ourselves - rm -f "${ED}"/etc/ld.so.cache - - # Everything past this point just needs to be done once ... - is_final_abi || return 0 - - # Make sure the non-native interp can be found on multilib systems even - # if the main library set isn't installed into the right place. Maybe - # we should query the active gcc for info instead of hardcoding it ? - local i ldso_abi ldso_name - local ldso_abi_list=( - # x86 - amd64 /lib64/ld-linux-x86-64.so.2 - x32 /libx32/ld-linux-x32.so.2 - x86 /lib/ld-linux.so.2 - # mips - o32 /lib/ld.so.1 - n32 /lib32/ld.so.1 - n64 /lib64/ld.so.1 - # powerpc - ppc /lib/ld.so.1 - ppc64 /lib64/ld64.so.1 - # riscv - ilp32d /lib/ld-linux-riscv32-ilp32d.so.1 - ilp32 /lib/ld-linux-riscv32-ilp32.so.1 - lp64d /lib/ld-linux-riscv64-lp64d.so.1 - lp64 /lib/ld-linux-riscv64-lp64.so.1 - # s390 - s390 /lib/ld.so.1 - s390x /lib/ld64.so.1 - # sparc - sparc32 /lib/ld-linux.so.2 - sparc64 /lib64/ld-linux.so.2 - ) - case $(tc-endian) in - little) - ldso_abi_list+=( - # arm - arm64 /lib/ld-linux-aarch64.so.1 - ) - ;; - big) - ldso_abi_list+=( - # arm - arm64 /lib/ld-linux-aarch64_be.so.1 - ) - ;; - esac - if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then - dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib - fi - for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do - ldso_abi=${ldso_abi_list[i]} - has ${ldso_abi} $(get_install_abis) || continue - - ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}" - if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then - dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name} - fi - done - - # With devpts under Linux mounted properly, we do not need the pt_chown - # binary to be setuid. This is because the default owners/perms will be - # exactly what we want. - if ! use suid ; then - find "${ED}" -name pt_chown -exec chmod -s {} + - fi - - ################################################################# - # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY # - # Make sure we install some symlink hacks so that when we build - # a 2nd stage cross-compiler, gcc finds the target system - # headers correctly. See gcc/doc/gccinstall.info - if is_crosscompile ; then - # We need to make sure that /lib and /usr/lib always exists. - # gcc likes to use relative paths to get to its multilibs like - # /usr/lib/../lib64/. So while we don't install any files into - # /usr/lib/, we do need it to exist. - keepdir $(alt_prefix)/lib - keepdir $(alt_prefix)/usr/lib - - dosym usr/include $(alt_prefix)/sys-include - return 0 - fi - - # Files for Debian-style locale updating - dodir /usr/share/i18n - sed \ - -e "/^#/d" \ - -e "/SUPPORTED-LOCALES=/d" \ - -e "s: \\\\::g" -e "s:/: :g" \ - "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \ - || die "generating /usr/share/i18n/SUPPORTED failed" - cd "${WORKDIR}"/extra/locale - dosbin locale-gen - doman *.[0-8] - insinto /etc - doins locale.gen - - # Make sure all the ABI's can find the locales and so we only - # have to generate one set - local a - keepdir /usr/$(get_libdir)/locale - for a in $(get_install_abis) ; do - if [[ ! -e ${ED}/usr/$(get_abi_LIBDIR ${a})/locale ]] ; then - dosym ../$(get_libdir)/locale /usr/$(get_abi_LIBDIR ${a})/locale - fi - done - - # HACK: If we're building for riscv, we need to additionally make sure that - # we can find the locale archive afterwards - case ${CTARGET} in - riscv*) - if [[ ! -e ${ED}/usr/lib/locale ]] ; then - dosym ../$(get_libdir)/locale /usr/lib/locale - fi - ;; - *) ;; - esac - - cd "${S}" - - # Install misc network config files - insinto /etc - doins posix/gai.conf nss/nsswitch.conf - - # Gentoo-specific - newins "${FILESDIR}"/host.conf-1 host.conf - - if use nscd ; then - doins nscd/nscd.conf - - newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd - - local nscd_args=( - -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):" - ) - - sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd - - systemd_dounit nscd/nscd.service - systemd_newtmpfilesd nscd/nscd.tmpfiles nscd.conf - fi - - echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc - doenvd "${T}"/00glibc - - for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do - [[ -s ${d} ]] && dodoc ${d} - done - dodoc -r ChangeLog.old - - # Prevent overwriting of the /etc/localtime symlink. We'll handle the - # creation of the "factory" symlink in pkg_postinst(). - rm -f "${ED}"/etc/localtime - - # Generate all locales if this is a native build as locale generation - if use compile-locales && ! is_crosscompile ; then - run_locale_gen --inplace-glibc "${ED}/" - sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die - fi -} - -glibc_headers_install() { - local builddir=$(builddir "headers") - cd "${builddir}" - emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers - - insinto $(alt_headers)/gnu - doins "${S}"/include/gnu/stubs.h - - # Make sure we install the sys-include symlink so that when - # we build a 2nd stage cross-compiler, gcc finds the target - # system headers correctly. See gcc/doc/gccinstall.info - dosym usr/include $(alt_prefix)/sys-include -} - -src_install() { - if just_headers ; then - export ABI=default - glibc_headers_install - return - fi - - foreach_abi glibc_do_src_install - - if ! use static-libs ; then - elog "Not installing static glibc libraries" - find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete - fi -} - -# Simple test to make sure our new glibc isn't completely broken. -# Make sure we don't test with statically built binaries since -# they will fail. Also, skip if this glibc is a cross compiler. -# -# If coreutils is built with USE=multicall, some of these files -# will just be wrapper scripts, not actual ELFs we can test. -glibc_sanity_check() { - cd / #228809 - - # We enter ${ED} so to avoid trouble if the path contains - # special characters; for instance if the path contains the - # colon character (:), then the linker will try to split it - # and look for the libraries in an unexpected place. This can - # lead to unsafe code execution if the generated prefix is - # within a world-writable directory. - # (e.g. /var/tmp/portage:${HOSTNAME}) - pushd "${ED}"/$(get_libdir) >/dev/null - - local x striptest - for x in cal date env free ls true uname uptime ; do - x=$(type -p ${x}) - [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue - striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue - case ${striptest} in - *"statically linked"*) continue;; - *"ASCII text"*) continue;; - esac - # We need to clear the locale settings as the upgrade might want - # incompatible locale data. This test is not for verifying that. - LC_ALL=C \ - ./ld-*.so --library-path . ${x} > /dev/null \ - || die "simple run test (${x}) failed" - done - - popd >/dev/null -} - -pkg_preinst() { - # nothing to do if just installing headers - just_headers && return - - # prepare /etc/ld.so.conf.d/ for files - mkdir -p "${EROOT}"/etc/ld.so.conf.d - - # Default /etc/hosts.conf:multi to on for systems with small dbs. - if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then - sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf - einfo "Defaulting /etc/host.conf:multi to on" - fi - - [[ -n ${ROOT} ]] && return 0 - [[ -d ${ED}/$(get_libdir) ]] || return 0 - [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check -} - -pkg_postinst() { - # nothing to do if just installing headers - just_headers && return - - if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then - # Generate fastloading iconv module configuration file. - "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/" - fi - - if ! is_crosscompile && [[ -z ${ROOT} ]] ; then - use compile-locales || run_locale_gen "${EROOT}/" - fi - - # Check for sanity of /etc/nsswitch.conf, take 2 - if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then - local entry - for entry in passwd group shadow; do - if egrep -q "^[ \t]*${entry}:.*nis" "${EROOT}"/etc/nsswitch.conf; then - ewarn "" - ewarn "Your ${EROOT}/etc/nsswitch.conf uses NIS. Support for that has been" - ewarn "removed from glibc and is now provided by the package" - ewarn " sys-auth/libnss-nis" - ewarn "Install it now to keep your NIS setup working." - ewarn "" - fi - done - fi -} diff --git a/sys-libs/glibc/glibc-2.32-r3.ebuild b/sys-libs/glibc/glibc-2.32-r3.ebuild deleted file mode 100644 index e2ef95ac14bb..000000000000 --- a/sys-libs/glibc/glibc-2.32-r3.ebuild +++ /dev/null @@ -1,1513 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7,8,9} ) - -inherit python-any-r1 prefix eutils toolchain-funcs flag-o-matic gnuconfig \ - multilib systemd multiprocessing - -DESCRIPTION="GNU libc C library" -HOMEPAGE="https://www.gnu.org/software/libc/" -LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE" -SLOT="2.2" - -EMULTILIB_PKG="true" - -# Gentoo patchset (ignored for live ebuilds) -PATCH_VER=2 -PATCH_DEV=dilfridge - -if [[ ${PV} == 9999* ]]; then - inherit git-r3 -else - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" - SRC_URI="mirror://gnu/glibc/${P}.tar.xz" - SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" - SRC_URI+=" riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz )" -fi - -RELEASE_VER=${PV} - -GCC_BOOTSTRAP_VER=20180511 - -LOCALE_GEN_VER=2.10 - -SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz" -SRC_URI+=" multilib? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )" - -IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib nscd profile selinux +ssp +static-libs static-pie suid systemtap test vanilla" - -# Minimum kernel version that glibc requires -MIN_KERN_VER="3.2.0" - -# Here's how the cross-compile logic breaks down ... -# CTARGET - machine that will target the binaries -# CHOST - machine that will host the binaries -# CBUILD - machine that will build the binaries -# If CTARGET != CHOST, it means you want a libc for cross-compiling. -# If CHOST != CBUILD, it means you want to cross-compile the libc. -# CBUILD = CHOST = CTARGET - native build/install -# CBUILD != (CHOST = CTARGET) - cross-compile a native build -# (CBUILD = CHOST) != CTARGET - libc for cross-compiler -# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler -# For install paths: -# CHOST = CTARGET - install into / -# CHOST != CTARGET - install into /usr/CTARGET/ -# -export CBUILD=${CBUILD:-${CHOST}} -export CTARGET=${CTARGET:-${CHOST}} -if [[ ${CTARGET} == ${CHOST} ]] ; then - if [[ ${CATEGORY} == cross-* ]] ; then - export CTARGET=${CATEGORY#cross-} - fi -fi - -# Note [Disable automatic stripping] -# Disabling automatic stripping for a few reasons: -# - portage's attempt to strip breaks non-native binaries at least on -# arm: bug #697428 -# - portage's attempt to strip libpthread.so.0 breaks gdb thread -# enumeration: bug #697910. This is quite subtle: -# * gdb uses glibc's libthread_db-1.0.so to enumerate threads. -# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols -# via 'ps_pglobal_lookup' symbol defined in gdb. -# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all -# known symbols in 'libpthread.so.0'. Specifically 'nptl_version' -# (unexported) is used to sanity check compatibility before enabling -# debugging. -# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint -# * normal 'strip' command trims '.symtab' -# Thus our main goal here is to prevent 'libpthread.so.0' from -# losing it's '.symtab' entries. -# As Gentoo's strip does not allow us to pass less aggressive stripping -# options and does not check the machine target we strip selectively. - -# We need a new-enough binutils/gcc to match upstream baseline. -# Also we need to make sure our binutils/gcc supports TLS, -# and that gcc already contains the hardened patches. -# Lastly, let's avoid some openssh nastiness, bug 708224, as -# convenience to our users. - -# gzip, grep, awk are needed by locale-gen, bug 740750 - -BDEPEND=" - ${PYTHON_DEPS} - >=app-misc/pax-utils-0.1.10 - sys-devel/bison - doc? ( sys-apps/texinfo ) - !compile-locales? ( - app-arch/gzip - sys-apps/grep - virtual/awk - ) -" -COMMON_DEPEND=" - gd? ( media-libs/gd:2= ) - nscd? ( selinux? ( - audit? ( sys-process/audit ) - caps? ( sys-libs/libcap ) - ) ) - suid? ( caps? ( sys-libs/libcap ) ) - selinux? ( sys-libs/libselinux ) - systemtap? ( dev-util/systemtap ) - !<net-misc/openssh-8.1_p1-r2 -" -DEPEND="${COMMON_DEPEND} - compile-locales? ( - app-arch/gzip - sys-apps/grep - virtual/awk - ) - test? ( >=net-dns/libidn2-2.3.0 ) -" -RDEPEND="${COMMON_DEPEND} - app-arch/gzip - sys-apps/grep - virtual/awk - sys-apps/gentoo-functions -" - -RESTRICT="!test? ( test )" - -if [[ ${CATEGORY} == cross-* ]] ; then - BDEPEND+=" !headers-only? ( - >=${CATEGORY}/binutils-2.24 - >=${CATEGORY}/gcc-6 - )" - [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers" -else - BDEPEND+=" - >=sys-devel/binutils-2.24 - >=sys-devel/gcc-6 - " - DEPEND+=" virtual/os-headers " - RDEPEND+=" - >=net-dns/libidn2-2.3.0 - vanilla? ( !sys-libs/timezone-data ) - " - PDEPEND+=" !vanilla? ( sys-libs/timezone-data )" -fi - -# Ignore tests whitelisted below -GENTOO_GLIBC_XFAIL_TESTS="${GENTOO_GLIBC_XFAIL_TESTS:-yes}" - -# The following tests fail due to the Gentoo build system and are thus -# executed but ignored: -XFAIL_TEST_LIST=( - # 9) Failures of unknown origin - tst-latepthread - - # buggy test, assumes /dev/ and /dev/null on a single filesystem - # 'mount --bind /dev/null /chroot/dev/null' breaks it. - # https://sourceware.org/PR25909 - tst-support_descriptors - - # Flaky test, known to fail occasionally: - # https://sourceware.org/PR19329 - # https://bugs.gentoo.org/719674#c12 - tst-stack4 -) - -# -# Small helper functions -# - -is_crosscompile() { - [[ ${CHOST} != ${CTARGET} ]] -} - -just_headers() { - is_crosscompile && use headers-only -} - -alt_prefix() { - is_crosscompile && echo /usr/${CTARGET} -} - -# This prefix is applicable to CHOST when building against this -# glibc. It is baked into the library at configure time. -host_eprefix() { - is_crosscompile || echo "${EPREFIX}" -} - -# This prefix is applicable to CBUILD when building against this -# glibc. It determines the destination path at install time. -build_eprefix() { - is_crosscompile && echo "${EPREFIX}" -} - -# We need to be able to set alternative headers for compiling for non-native -# platform. Will also become useful for testing kernel-headers without screwing -# up the whole system. -alt_headers() { - echo ${ALT_HEADERS:=$(alt_prefix)/usr/include} -} - -alt_build_headers() { - if [[ -z ${ALT_BUILD_HEADERS} ]] ; then - ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)" - if tc-is-cross-compiler ; then - ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers) - if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then - local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h') - ALT_BUILD_HEADERS=${header_path%/linux/version.h} - fi - fi - fi - echo "${ALT_BUILD_HEADERS}" -} - -alt_libdir() { - echo $(alt_prefix)/$(get_libdir) -} -alt_usrlibdir() { - echo $(alt_prefix)/usr/$(get_libdir) -} - -builddir() { - echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1" -} - -do_compile_test() { - local ret save_cflags=${CFLAGS} - CFLAGS+=" $1" - shift - - pushd "${T}" >/dev/null - - rm -f glibc-test* - printf '%b' "$*" > glibc-test.c - - # Most of the time CC is already set, but not in early sanity checks. - nonfatal emake glibc-test CC="${CC-$(tc-getCC ${CTARGET})}" - ret=$? - - popd >/dev/null - - CFLAGS=${save_cflags} - return ${ret} -} - -do_run_test() { - local ret - - if [[ ${MERGE_TYPE} == "binary" ]] ; then - # ignore build failures when installing a binary package #324685 - do_compile_test "" "$@" 2>/dev/null || return 0 - else - if ! do_compile_test "" "$@" ; then - ewarn "Simple build failed ... assuming this is desired #324685" - return 0 - fi - fi - - pushd "${T}" >/dev/null - - ./glibc-test - ret=$? - rm -f glibc-test* - - popd >/dev/null - - return ${ret} -} - -setup_target_flags() { - # This largely mucks with compiler flags. None of which should matter - # when building up just the headers. - just_headers && return 0 - - case $(tc-arch) in - x86) - # -march needed for #185404 #199334 - # TODO: When creating the first glibc cross-compile, this test will - # always fail as it does a full link which in turn requires glibc. - # Probably also applies when changing multilib profile settings (e.g. - # enabling x86 when the profile was amd64-only previously). - # We could change main to _start and pass -nostdlib here so that we - # only test the gcc code compilation. Or we could do a compile and - # then look for the symbol via scanelf. - if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then - local t=${CTARGET_OPT:-${CTARGET}} - t=${t%%-*} - filter-flags '-march=*' - export CFLAGS="-march=${t} ${CFLAGS}" - einfo "Auto adding -march=${t} to CFLAGS #185404" - fi - ;; - amd64) - # -march needed for #185404 #199334 - # TODO: See cross-compile issues listed above for x86. - [[ ${ABI} == x86 ]] && - if ! do_compile_test "${CFLAGS_x86}" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; then - local t=${CTARGET_OPT:-${CTARGET}} - t=${t%%-*} - # Normally the target is x86_64-xxx, so turn that into the -march that - # gcc actually accepts. #528708 - [[ ${t} == "x86_64" ]] && t="x86-64" - filter-flags '-march=*' - # ugly, ugly, ugly. ugly. - CFLAGS_x86=$(CFLAGS=${CFLAGS_x86} filter-flags '-march=*'; echo "${CFLAGS}") - export CFLAGS_x86="${CFLAGS_x86} -march=${t}" - einfo "Auto adding -march=${t} to CFLAGS_x86 #185404 (ABI=${ABI})" - fi - ;; - mips) - # The mips abi cannot support the GNU style hashes. #233233 - filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both - ;; - ppc|ppc64) - # Many arch-specific implementations do not work on ppc with - # cache-block not equal to 128 bytes. This breaks memset: - # https://sourceware.org/PR26522 - # https://bugs.gentoo.org/737996 - # Use default -mcpu=. For ppc it means non-multiarch setup. - filter-flags '-mcpu=*' - ;; - sparc) - # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though. - filter-flags "-fcall-used-g7" - append-flags "-fcall-used-g6" - - local cpu - case ${CTARGET} in - sparc64-*) - cpu="sparc64" - case $(get-flag mcpu) in - v9) - # We need to force at least v9a because the base build doesn't - # work with just v9. - # https://sourceware.org/bugzilla/show_bug.cgi?id=19477 - append-flags "-Wa,-xarch=v9a" - ;; - esac - ;; - sparc-*) - case $(get-flag mcpu) in - v8|supersparc|hypersparc|leon|leon3) - cpu="sparcv8" - ;; - *) - cpu="sparcv9" - ;; - esac - ;; - esac - [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}" - ;; - esac -} - -setup_flags() { - # Make sure host make.conf doesn't pollute us - if is_crosscompile || tc-is-cross-compiler ; then - CHOST=${CTARGET} strip-unsupported-flags - fi - - # Store our CFLAGS because it's changed depending on which CTARGET - # we are building when pulling glibc on a multilib profile - CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}} - CFLAGS=${CFLAGS_BASE} - CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}} - CXXFLAGS=${CXXFLAGS_BASE} - ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}} - ASFLAGS=${ASFLAGS_BASE} - - # Allow users to explicitly avoid flag sanitization via - # USE=custom-cflags. - if ! use custom-cflags; then - # Over-zealous CFLAGS can often cause problems. What may work for one - # person may not work for another. To avoid a large influx of bugs - # relating to failed builds, we strip most CFLAGS out to ensure as few - # problems as possible. - strip-flags - # Lock glibc at -O2; we want to be conservative here. - filter-flags '-O?' - append-flags -O2 - fi - strip-unsupported-flags - filter-flags -m32 -m64 '-mabi=*' - - # glibc aborts if rpath is set by LDFLAGS - filter-ldflags '-Wl,-rpath=*' - - # #492892 - filter-flags -frecord-gcc-switches - - unset CBUILD_OPT CTARGET_OPT - if use multilib ; then - CTARGET_OPT=$(get_abi_CTARGET) - [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST) - fi - - setup_target_flags - - if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then - CBUILD_OPT=${CTARGET_OPT} - fi - - # glibc's headers disallow -O0 and fail at build time: - # include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization" - replace-flags -O0 -O1 - - filter-flags '-fstack-protector*' -} - -want_tls() { - # Archs that can use TLS (Thread Local Storage) - case $(tc-arch) in - x86) - # requires i486 or better #106556 - [[ ${CTARGET} == i[4567]86* ]] && return 0 - return 1 - ;; - esac - return 0 -} - -want__thread() { - want_tls || return 1 - - # For some reason --with-tls --with__thread is causing segfaults on sparc32. - [[ ${PROFILE_ARCH} == "sparc" ]] && return 1 - - [[ -n ${WANT__THREAD} ]] && return ${WANT__THREAD} - - # only test gcc -- can't test linking yet - tc-has-tls -c ${CTARGET} - WANT__THREAD=$? - - return ${WANT__THREAD} -} - -use_multiarch() { - # Allow user to disable runtime arch detection in multilib. - use multiarch || return 1 - # Make sure binutils is new enough to support indirect functions, - # #336792. This funky sed supports gold and bfd linkers. - local bver nver - bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}') - case $(tc-arch ${CTARGET}) in - amd64|x86) nver="2.20" ;; - arm) nver="2.22" ;; - hppa) nver="2.23" ;; - ppc|ppc64) nver="2.20" ;; - # ifunc support was added in 2.23, but glibc also needs - # machinemode which is in 2.24. - s390) nver="2.24" ;; - sparc) nver="2.21" ;; - *) return 1 ;; - esac - ver_test ${bver} -ge ${nver} -} - -# Setup toolchain variables that had historically been defined in the -# profiles for these archs. -setup_env() { - # silly users - unset LD_RUN_PATH - unset LD_ASSUME_KERNEL - - if is_crosscompile || tc-is-cross-compiler ; then - multilib_env ${CTARGET_OPT:-${CTARGET}} - - if ! use multilib ; then - MULTILIB_ABIS=${DEFAULT_ABI} - else - MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}} - fi - - # If the user has CFLAGS_<CTARGET> in their make.conf, use that, - # and fall back on CFLAGS. - local VAR=CFLAGS_${CTARGET//[-.]/_} - CFLAGS=${!VAR-${CFLAGS}} - einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}" - fi - - setup_flags - - export ABI=${ABI:-${DEFAULT_ABI:-default}} - - if just_headers ; then - # Avoid mixing host's CC and target's CFLAGS_${ABI}: - # At this bootstrap stage we have only binutils for - # target but not compiler yet. - einfo "Skip CC ABI injection. We can't use (cross-)compiler yet." - return 0 - fi - local VAR=CFLAGS_${ABI} - # We need to export CFLAGS with abi information in them because glibc's - # configure script checks CFLAGS for some targets (like mips). Keep - # around the original clean value to avoid appending multiple ABIs on - # top of each other. - : ${__GLIBC_CC:=$(tc-getCC ${CTARGET})} - export __GLIBC_CC CC="${__GLIBC_CC} ${!VAR}" - einfo " $(printf '%15s' 'Manual CC:') ${CC}" -} - -foreach_abi() { - setup_env - - local ret=0 - local abilist="" - if use multilib ; then - abilist=$(get_install_abis) - else - abilist=${DEFAULT_ABI} - fi - local -x ABI - for ABI in ${abilist:-default} ; do - setup_env - einfo "Running $1 for ABI ${ABI}" - $1 - : $(( ret |= $? )) - done - return ${ret} -} - -glibc_banner() { - local b="Gentoo ${PVR}" - [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}" - echo "${b}" -} - -# The following Kernel version handling functions are mostly copied from portage -# source. It's better not to use linux-info.eclass here since a) it adds too -# much magic, see bug 326693 for some of the arguments, and b) some of the -# functions are just not provided. - -g_get_running_KV() { - uname -r - return $? -} - -g_KV_major() { - [[ -z $1 ]] && return 1 - local KV=$@ - echo "${KV%%.*}" -} - -g_KV_minor() { - [[ -z $1 ]] && return 1 - local KV=$@ - KV=${KV#*.} - echo "${KV%%.*}" -} - -g_KV_micro() { - [[ -z $1 ]] && return 1 - local KV=$@ - KV=${KV#*.*.} - echo "${KV%%[^[:digit:]]*}" -} - -g_KV_to_int() { - [[ -z $1 ]] && return 1 - local KV_MAJOR=$(g_KV_major "$1") - local KV_MINOR=$(g_KV_minor "$1") - local KV_MICRO=$(g_KV_micro "$1") - local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO )) - - # We make version 2.2.0 the minimum version we will handle as - # a sanity check ... if its less, we fail ... - if [[ ${KV_int} -ge 131584 ]] ; then - echo "${KV_int}" - return 0 - fi - return 1 -} - -g_int_to_KV() { - local version=$1 major minor micro - major=$((version / 65536)) - minor=$(((version % 65536) / 256)) - micro=$((version % 256)) - echo ${major}.${minor}.${micro} -} - -eend_KV() { - [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]] - eend $? -} - -get_kheader_version() { - printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \ - $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \ - tail -n 1 -} - -# We collect all sanity checks here. Consistency is not guranteed between -# pkg_ and src_ phases, so we call this function both in pkg_pretend and in -# src_unpack. -sanity_prechecks() { - # Prevent native builds from downgrading - if [[ ${MERGE_TYPE} != "buildonly" ]] && \ - [[ -z ${ROOT} ]] && \ - [[ ${CBUILD} == ${CHOST} ]] && \ - [[ ${CHOST} == ${CTARGET} ]] ; then - - # The high rev # is to allow people to downgrade between -r# - # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2 - # should be fine. Hopefully we never actually use a r# this - # high. - if has_version ">${CATEGORY}/${P}-r10000" ; then - eerror "Sanity check to keep you from breaking your system:" - eerror " Downgrading glibc is not supported and a sure way to destruction." - [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system." - fi - - if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then - eerror "Your old kernel is broken. You need to update it to a newer" - eerror "version as syscall(<bignum>) will break. See bug 279260." - die "Old and broken kernel." - fi - fi - - # Users have had a chance to phase themselves, time to give em the boot - if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then - eerror "You still haven't deleted ${EROOT}/etc/locales.build." - eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher." - die "Lazy upgrader detected" - fi - - if [[ ${CTARGET} == i386-* ]] ; then - eerror "i386 CHOSTs are no longer supported." - eerror "Chances are you don't actually want/need i386." - eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml" - die "Please fix your CHOST" - fi - - if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then - ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS." - ewarn "This will result in a 50% performance penalty when running with a 32bit" - ewarn "hypervisor, which is probably not what you want." - fi - - # Check for sanity of /etc/nsswitch.conf - if [[ -e ${EROOT}/etc/nsswitch.conf ]] ; then - local entry - for entry in passwd group shadow; do - if ! egrep -q "^[ \t]*${entry}:.*files" "${EROOT}"/etc/nsswitch.conf; then - eerror "Your ${EROOT}/etc/nsswitch.conf is out of date." - eerror "Please make sure you have 'files' entries for" - eerror "'passwd:', 'group:' and 'shadow:' databases." - eerror "For more details see:" - eerror " https://wiki.gentoo.org/wiki/Project:Toolchain/nsswitch.conf_in_glibc-2.26" - die "nsswitch.conf has no 'files' provider in '${entry}'." - fi - done - fi - - # ABI-specific checks follow here. Hey, we have a lot more specific conditions that - # we test for... - if ! is_crosscompile ; then - if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then - ebegin "Checking that IA32 emulation is enabled in the running kernel" - echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c" - local STAT - if "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then - "${T}/check-ia32-emulation.elf32" - STAT=$? - else - # Don't fail here to allow single->multi ABI switch - # or recover from breakage like bug #646424 - ewarn "Failed to compile the ABI test. Broken host glibc?" - STAT=0 - fi - rm -f "${T}/check-ia32-emulation.elf32" - eend $STAT - [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc." - fi - - fi - - # When we actually have to compile something... - if ! just_headers ; then - ebegin "Checking gcc for __thread support" - if ! eend $(want__thread ; echo $?) ; then - echo - eerror "Could not find a gcc that supports the __thread directive!" - eerror "Please update your binutils/gcc and try again." - die "No __thread support in gcc!" - fi - - if [[ ${CTARGET} == *-linux* ]] ; then - local run_kv build_kv want_kv - - run_kv=$(g_get_running_KV) - build_kv=$(g_int_to_KV $(get_kheader_version)) - want_kv=${MIN_KERN_VER} - - if ! is_crosscompile && ! tc-is-cross-compiler ; then - # Building fails on an non-supporting kernel - ebegin "Checking running kernel version (${run_kv} >= ${want_kv})" - if ! eend_KV ${run_kv} ${want_kv} ; then - echo - eerror "You need a kernel of at least ${want_kv}!" - die "Kernel version too low!" - fi - fi - - ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})" - if ! eend_KV ${build_kv} ${want_kv} ; then - echo - eerror "You need linux-headers of at least ${want_kv}!" - die "linux-headers version too low!" - fi - fi - fi -} - -# -# the phases -# - -# pkg_pretend - -pkg_pretend() { - # All the checks... - einfo "Checking general environment sanity." - sanity_prechecks -} - -pkg_setup() { - # see bug 682570 - [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup -} - -# src_unpack - -src_unpack() { - # Consistency is not guaranteed between pkg_ and src_ ... - sanity_prechecks - - use multilib && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz - - setup_env - - if [[ ${PV} == 9999* ]] ; then - EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/toolchain/glibc-patches.git" - EGIT_CHECKOUT_DIR=${WORKDIR}/patches-git - git-r3_src_unpack - mv patches-git/9999 patches || die - - EGIT_REPO_URI="https://sourceware.org/git/glibc.git" - EGIT_CHECKOUT_DIR=${S} - git-r3_src_unpack - else - unpack ${P}.tar.xz - - cd "${WORKDIR}" || die - unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz - fi - - cd "${WORKDIR}" || die - unpack locale-gen-${LOCALE_GEN_VER}.tar.gz - use riscv && unpack backport-rv32.txz -} - -src_prepare() { - local patchsetname - if ! use vanilla ; then - if [[ ${PV} == 9999* ]] ; then - patchsetname="from git master" - else - patchsetname="${RELEASE_VER}-${PATCH_VER}" - fi - elog "Applying Gentoo Glibc Patchset ${patchsetname}" - eapply "${WORKDIR}"/patches - einfo "Done." - - if use riscv ; then - elog "Adding rv32 backport patchset for glibc-2.32 (experimental)" - eapply "${WORKDIR}"/backport-rv32 - einfo "Done." - fi - fi - - default - - gnuconfig_update - - cd "${WORKDIR}" - find . -name configure -exec touch {} + - - # move the external locale-gen to its old place - mkdir extra || die - mv locale-gen-${LOCALE_GEN_VER} extra/locale || die - - eprefixify extra/locale/locale-gen - - # Fix permissions on some of the scripts. - chmod u+x "${S}"/scripts/*.sh - - cd "${S}" -} - -glibc_do_configure() { - # Glibc does not work with gold (for various reasons) #269274. - tc-ld-disable-gold - - # CXX isnt handled by the multilib system, so if we dont unset here - # we accumulate crap across abis - unset CXX - - einfo "Configuring glibc for nptl" - - if use doc ; then - export MAKEINFO=makeinfo - else - export MAKEINFO=/dev/null - fi - - local v - for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM READELF; do - einfo " $(printf '%15s' ${v}:) ${!v}" - done - - # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760 - # To build .S (assembly) files with the same ABI-specific flags - # upstream currently recommends adding CFLAGS to CC/CXX: - # https://sourceware.org/PR23273 - # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS - # and breaks multiarch support. See 659030#c3 for an example. - # The glibc configure script doesn't properly use LDFLAGS all the time. - export CC="$(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS}" - einfo " $(printf '%15s' 'Manual CC:') ${CC}" - - # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548 - export CXX="$(tc-getCXX ${CTARGET}) $(get_abi_CFLAGS) ${CFLAGS}" - - if is_crosscompile; then - # Assume worst-case bootstrap: glibc is buil first time - # when ${CTARGET}-g++ is not available yet. We avoid - # building auxiliary programs that require C++: bug #683074 - # It should not affect final result. - export libc_cv_cxx_link_ok=no - # The line above has the same effect. We set CXX explicitly - # to make build logs less confusing. - export CXX= - fi - einfo " $(printf '%15s' 'Manual CXX:') ${CXX}" - - # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure - # can't detect them automatically due to ${CHOST} mismatch and fallbacks - # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup(). - export NM="$(tc-getNM ${CTARGET})" - export READELF="$(tc-getREADELF ${CTARGET})" - einfo " $(printf '%15s' 'Manual NM:') ${NM}" - einfo " $(printf '%15s' 'Manual READELF:') ${READELF}" - - echo - - local myconf=() - - case ${CTARGET} in - m68k*) - # setjmp() is not compatible with stack protection: - # https://sourceware.org/PR24202 - myconf+=( --enable-stack-protector=no ) - ;; - powerpc-*) - # Currently gcc on powerpc32 generates invalid code for - # __builtin_return_address(0) calls. Normally programs - # don't do that but malloc hooks in glibc do: - # https://gcc.gnu.org/PR81996 - # https://bugs.gentoo.org/629054 - myconf+=( --enable-stack-protector=no ) - ;; - *) - # Use '=strong' instead of '=all' to protect only functions - # worth protecting from stack smashes. - # '=all' is also known to have a problem in IFUNC resolution - # tests: https://sourceware.org/PR25680, bug #712356. - myconf+=( --enable-stack-protector=$(usex ssp strong no) ) - ;; - esac - myconf+=( --enable-stackguard-randomization ) - - # Keep a whitelist of targets supporing IFUNC. glibc's ./configure - # is not robust enough to detect proper support: - # https://bugs.gentoo.org/641216 - # https://sourceware.org/PR22634#c0 - case $(tc-arch ${CTARGET}) in - # Keep whitelist of targets where autodetection mostly works. - amd64|x86|sparc|ppc|ppc64|arm|arm64|s390) ;; - # Blacklist everywhere else - *) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;; - esac - - # Enable Intel Control-flow Enforcement Technology on amd64 if requested - case ${CTARGET} in - x86_64-*) myconf+=( $(use_enable cet) ) ;; - *) ;; - esac - - [[ $(tc-is-softfloat) == "yes" ]] && myconf+=( --without-fp ) - - myconf+=( --enable-kernel=${MIN_KERN_VER} ) - - # Since SELinux support is only required for nscd, only enable it if: - # 1. USE selinux - # 2. only for the primary ABI on multilib systems - # 3. Not a crosscompile - if ! is_crosscompile && use selinux ; then - if use multilib ; then - if is_final_abi ; then - myconf+=( --with-selinux ) - else - myconf+=( --without-selinux ) - fi - else - myconf+=( --with-selinux ) - fi - else - myconf+=( --without-selinux ) - fi - - # Force a few tests where we always know the answer but - # configure is incapable of finding it. - if is_crosscompile ; then - export \ - libc_cv_c_cleanup=yes \ - libc_cv_forced_unwind=yes - fi - - myconf+=( - --without-cvs - --disable-werror - --enable-bind-now - --build=${CBUILD_OPT:-${CBUILD}} - --host=${CTARGET_OPT:-${CTARGET}} - $(use_enable profile) - $(use_with gd) - --with-headers=$(build_eprefix)$(alt_build_headers) - --prefix="$(host_eprefix)/usr" - --sysconfdir="$(host_eprefix)/etc" - --localstatedir="$(host_eprefix)/var" - --libdir='$(prefix)'/$(get_libdir) - --mandir='$(prefix)'/share/man - --infodir='$(prefix)'/share/info - --libexecdir='$(libdir)'/misc/glibc - --with-bugurl=https://bugs.gentoo.org/ - --with-pkgversion="$(glibc_banner)" - $(use_enable crypt) - $(use_multiarch || echo --disable-multi-arch) - $(use_enable static-pie) - $(use_enable systemtap) - $(use_enable nscd) - - # locale data is arch-independent - # https://bugs.gentoo.org/753740 - libc_cv_complocaledir='${exec_prefix}/lib/locale' - - ${EXTRA_ECONF} - ) - - # We rely on sys-libs/timezone-data for timezone tools normally. - myconf+=( $(use_enable vanilla timezone-tools) ) - - # These libs don't have configure flags. - ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no) - ac_cv_lib_cap_cap_init=$(usex caps || echo no) - - # There is no configure option for this and we need to export it - # since the glibc build will re-run configure on itself - export libc_cv_rootsbindir="$(host_eprefix)/sbin" - export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)" - - # We take care of patching our binutils to use both hash styles, - # and many people like to force gnu hash style only, so disable - # this overriding check. #347761 - export libc_cv_hashstyle=no - - local builddir=$(builddir nptl) - mkdir -p "${builddir}" - cd "${builddir}" - set -- "${S}"/configure "${myconf[@]}" - echo "$@" - "$@" || die "failed to configure glibc" - - # ia64 static cross-compilers are a pita in so much that they - # can't produce static ELFs (as the libgcc.a is broken). so - # disable building of the programs for those targets if it - # doesn't work. - # XXX: We could turn this into a compiler test, but ia64 is - # the only one that matters, so this should be fine for now. - if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then - sed -i '1i+link-static = touch $@' config.make - fi - - # If we're trying to migrate between ABI sets, we need - # to lie and use a local copy of gcc. Like if the system - # is built with MULTILIB_ABIS="amd64 x86" but we want to - # add x32 to it, gcc/glibc don't yet support x32. - # - if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then - echo 'main(){}' > "${T}"/test.c - if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then - sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die - fi - fi -} - -glibc_headers_configure() { - export ABI=default - - local builddir=$(builddir "headers") - mkdir -p "${builddir}" - cd "${builddir}" - - # if we don't have a compiler yet, we can't really test it now ... - # hopefully they don't affect header generation, so let's hope for - # the best here ... - local v vars=( - ac_cv_header_cpuid_h=yes - libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes - libc_cv_asm_cfi_directives=yes - libc_cv_broken_visibility_attribute=no - libc_cv_c_cleanup=yes - libc_cv_compiler_powerpc64le_binary128_ok=yes - libc_cv_forced_unwind=yes - libc_cv_gcc___thread=yes - libc_cv_mlong_double_128=yes - libc_cv_mlong_double_128ibm=yes - libc_cv_ppc_machine=yes - libc_cv_ppc_rel16=yes - libc_cv_predef_fortify_source=no - libc_cv_target_power8_ok=yes - libc_cv_visibility_attribute=yes - libc_cv_z_combreloc=yes - libc_cv_z_execstack=yes - libc_cv_z_initfirst=yes - libc_cv_z_nodelete=yes - libc_cv_z_nodlopen=yes - libc_cv_z_relro=yes - libc_mips_abi=${ABI} - libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard) - # These libs don't have configure flags. - ac_cv_lib_audit_audit_log_user_avc_message=no - ac_cv_lib_cap_cap_init=no - ) - - einfo "Forcing cached settings:" - for v in "${vars[@]}" ; do - einfo " ${v}" - export ${v} - done - - local headers_only_arch_CPPFLAGS=() - - # Blow away some random CC settings that screw things up. #550192 - if [[ -d ${S}/sysdeps/mips ]]; then - pushd "${S}"/sysdeps/mips >/dev/null - sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die - sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die - - # Force the mips ABI to the default. This is OK because the set of - # installed headers in this phase is the same between the 3 ABIs. - # If this ever changes, this hack will break, but that's unlikely - # as glibc discourages that behavior. - # https://crbug.com/647033 - sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die - - popd >/dev/null - fi - - case ${CTARGET} in - riscv*) - # RISC-V interrogates the compiler to determine which target to - # build. If building the headers then we don't strictly need a - # RISC-V compiler, so the built-in definitions that are provided - # along with all RISC-V compiler might not exist. This causes - # glibc's RISC-V preconfigure script to blow up. Since we're just - # building the headers any value will actually work here, so just - # pick the standard one (rv64g/lp64d) to make the build scripts - # happy for now -- the headers are all the same anyway so it - # doesn't matter. - headers_only_arch_CPPFLAGS+=( - -D__riscv_xlen=64 - -D__riscv_flen=64 - -D__riscv_float_abi_double=1 - -D__riscv_atomic=1 - ) ;; - esac - - local myconf=() - myconf+=( - --disable-sanity-checks - --enable-hacker-mode - --without-cvs - --disable-werror - --enable-bind-now - --build=${CBUILD_OPT:-${CBUILD}} - --host=${CTARGET_OPT:-${CTARGET}} - --with-headers=$(build_eprefix)$(alt_build_headers) - --prefix="$(host_eprefix)/usr" - ${EXTRA_ECONF} - ) - - # Nothing is compiled here which would affect the headers for the target. - # So forcing CC/CFLAGS is sane. - local headers_only_CC=$(tc-getBUILD_CC) - local headers_only_CFLAGS="-O1 -pipe" - local headers_only_CPPFLAGS="-U_FORTIFY_SOURCE ${headers_only_arch_CPPFLAGS[*]}" - local headers_only_LDFLAGS="" - set -- "${S}"/configure "${myconf[@]}" - echo \ - "CC=${headers_only_CC}" \ - "CFLAGS=${headers_only_CFLAGS}" \ - "CPPFLAGS=${headers_only_CPPFLAGS}" \ - "LDFLAGS=${headers_only_LDFLAGS}" \ - "$@" - CC=${headers_only_CC} \ - CFLAGS=${headers_only_CFLAGS} \ - CPPFLAGS=${headers_only_CPPFLAGS} \ - LDFLAGS="" \ - "$@" || die "failed to configure glibc" -} - -do_src_configure() { - if just_headers ; then - glibc_headers_configure - else - glibc_do_configure nptl - fi -} - -src_configure() { - foreach_abi do_src_configure -} - -do_src_compile() { - emake -C "$(builddir nptl)" -} - -src_compile() { - if just_headers ; then - return - fi - - foreach_abi do_src_compile -} - -glibc_src_test() { - cd "$(builddir nptl)" - - local myxfailparams="" - if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then - for myt in ${XFAIL_TEST_LIST[@]} ; do - myxfailparams+="test-xfail-${myt}=yes " - done - fi - - # sandbox does not understand unshare() and prevents - # writes to /proc/, which makes many tests fail - - SANDBOX_ON=0 LD_PRELOAD= emake ${myxfailparams} check -} - -do_src_test() { - local ret=0 - - glibc_src_test - : $(( ret |= $? )) - - return ${ret} -} - -src_test() { - if just_headers ; then - return - fi - - # Give tests more time to complete. - export TIMEOUTFACTOR=5 - - foreach_abi do_src_test || die "tests failed" -} - -run_locale_gen() { - # if the host locales.gen contains no entries, we'll install everything - local root="$1" - local inplace="" - - if [[ "${root}" == "--inplace-glibc" ]] ; then - inplace="--inplace-glibc" - root="$2" - fi - - local locale_list="${root}/etc/locale.gen" - - pushd "${ED}"/$(get_libdir) >/dev/null - - if [[ -z $(locale-gen --list --config "${locale_list}") ]] ; then - [[ -z ${inplace} ]] && ewarn "Generating all locales; edit /etc/locale.gen to save time/space" - locale_list="${root}/usr/share/i18n/SUPPORTED" - fi - - set -- locale-gen ${inplace} --jobs $(makeopts_jobs) --config "${locale_list}" \ - --destdir "${root}" - echo "$@" - "$@" - - popd >/dev/null -} - -glibc_do_src_install() { - local builddir=$(builddir nptl) - cd "${builddir}" - - emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install - - # This version (2.26) provides some compatibility libraries for the NIS/NIS+ support - # which come without headers etc. Only needed for binary packages since the - # external net-libs/libnsl has increased soversion. Keep only versioned libraries. - find "${D}" -name "libnsl.a" -delete - find "${D}" -name "libnsl.so" -delete - - # Normally upstream_pv is ${PV}. Live ebuilds are exception, there we need - # to infer upstream version: - # '#define VERSION "2.26.90"' -> '2.26.90' - local upstream_pv=$(sed -n -r 's/#define VERSION "(.*)"/\1/p' "${S}"/version.h) - - # Avoid stripping binaries not targeted by ${CHOST}. Or else - # ${CHOST}-strip would break binaries build for ${CTARGET}. - is_crosscompile && dostrip -x / - # gdb thread introspection relies on local libpthreas symbols. stripping breaks it - # See Note [Disable automatic stripping] - dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so - - if [[ -e ${ED}/$(alt_usrlibdir)/libm-${upstream_pv}.a ]] ; then - # Move versioned .a file out of libdir to evade portage QA checks - # instead of using gen_usr_ldscript(). We fix ldscript as: - # "GROUP ( /usr/lib64/libm-<pv>.a ..." -> "GROUP ( /usr/lib64/glibc-<pv>/libm-<pv>.a ..." - sed -i "s@\(libm-${upstream_pv}.a\)@${P}/\1@" "${ED}"/$(alt_usrlibdir)/libm.a || die - dodir $(alt_usrlibdir)/${P} - mv "${ED}"/$(alt_usrlibdir)/libm-${upstream_pv}.a "${ED}"/$(alt_usrlibdir)/${P}/libm-${upstream_pv}.a || die - fi - - # We'll take care of the cache ourselves - rm -f "${ED}"/etc/ld.so.cache - - # Everything past this point just needs to be done once ... - is_final_abi || return 0 - - # Make sure the non-native interp can be found on multilib systems even - # if the main library set isn't installed into the right place. Maybe - # we should query the active gcc for info instead of hardcoding it ? - local i ldso_abi ldso_name - local ldso_abi_list=( - # x86 - amd64 /lib64/ld-linux-x86-64.so.2 - x32 /libx32/ld-linux-x32.so.2 - x86 /lib/ld-linux.so.2 - # mips - o32 /lib/ld.so.1 - n32 /lib32/ld.so.1 - n64 /lib64/ld.so.1 - # powerpc - ppc /lib/ld.so.1 - ppc64 /lib64/ld64.so.1 - # riscv - ilp32d /lib/ld-linux-riscv32-ilp32d.so.1 - ilp32 /lib/ld-linux-riscv32-ilp32.so.1 - lp64d /lib/ld-linux-riscv64-lp64d.so.1 - lp64 /lib/ld-linux-riscv64-lp64.so.1 - # s390 - s390 /lib/ld.so.1 - s390x /lib/ld64.so.1 - # sparc - sparc32 /lib/ld-linux.so.2 - sparc64 /lib64/ld-linux.so.2 - ) - case $(tc-endian) in - little) - ldso_abi_list+=( - # arm - arm64 /lib/ld-linux-aarch64.so.1 - ) - ;; - big) - ldso_abi_list+=( - # arm - arm64 /lib/ld-linux-aarch64_be.so.1 - ) - ;; - esac - if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then - dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib - fi - for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do - ldso_abi=${ldso_abi_list[i]} - has ${ldso_abi} $(get_install_abis) || continue - - ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}" - if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then - dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name} - fi - done - - # With devpts under Linux mounted properly, we do not need the pt_chown - # binary to be setuid. This is because the default owners/perms will be - # exactly what we want. - if ! use suid ; then - find "${ED}" -name pt_chown -exec chmod -s {} + - fi - - ################################################################# - # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY # - # Make sure we install some symlink hacks so that when we build - # a 2nd stage cross-compiler, gcc finds the target system - # headers correctly. See gcc/doc/gccinstall.info - if is_crosscompile ; then - # We need to make sure that /lib and /usr/lib always exists. - # gcc likes to use relative paths to get to its multilibs like - # /usr/lib/../lib64/. So while we don't install any files into - # /usr/lib/, we do need it to exist. - keepdir $(alt_prefix)/lib - keepdir $(alt_prefix)/usr/lib - - dosym usr/include $(alt_prefix)/sys-include - return 0 - fi - - # Files for Debian-style locale updating - dodir /usr/share/i18n - sed \ - -e "/^#/d" \ - -e "/SUPPORTED-LOCALES=/d" \ - -e "s: \\\\::g" -e "s:/: :g" \ - "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \ - || die "generating /usr/share/i18n/SUPPORTED failed" - cd "${WORKDIR}"/extra/locale - dosbin locale-gen - doman *.[0-8] - insinto /etc - doins locale.gen - - keepdir /usr/lib/locale - - cd "${S}" - - # Install misc network config files - insinto /etc - doins posix/gai.conf nss/nsswitch.conf - - # Gentoo-specific - newins "${FILESDIR}"/host.conf-1 host.conf - - if use nscd ; then - doins nscd/nscd.conf - - newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd - - local nscd_args=( - -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):" - ) - - sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd - - systemd_dounit nscd/nscd.service - systemd_newtmpfilesd nscd/nscd.tmpfiles nscd.conf - fi - - echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc - doenvd "${T}"/00glibc - - for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do - [[ -s ${d} ]] && dodoc ${d} - done - dodoc -r ChangeLog.old - - # Prevent overwriting of the /etc/localtime symlink. We'll handle the - # creation of the "factory" symlink in pkg_postinst(). - rm -f "${ED}"/etc/localtime - - # Generate all locales if this is a native build as locale generation - if use compile-locales && ! is_crosscompile ; then - run_locale_gen --inplace-glibc "${ED}/" - sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die - fi -} - -glibc_headers_install() { - local builddir=$(builddir "headers") - cd "${builddir}" - emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers - - insinto $(alt_headers)/gnu - doins "${S}"/include/gnu/stubs.h - - # Make sure we install the sys-include symlink so that when - # we build a 2nd stage cross-compiler, gcc finds the target - # system headers correctly. See gcc/doc/gccinstall.info - dosym usr/include $(alt_prefix)/sys-include -} - -src_install() { - if just_headers ; then - export ABI=default - glibc_headers_install - return - fi - - foreach_abi glibc_do_src_install - - if ! use static-libs ; then - elog "Not installing static glibc libraries" - find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete - fi -} - -# Simple test to make sure our new glibc isn't completely broken. -# Make sure we don't test with statically built binaries since -# they will fail. Also, skip if this glibc is a cross compiler. -# -# If coreutils is built with USE=multicall, some of these files -# will just be wrapper scripts, not actual ELFs we can test. -glibc_sanity_check() { - cd / #228809 - - # We enter ${ED} so to avoid trouble if the path contains - # special characters; for instance if the path contains the - # colon character (:), then the linker will try to split it - # and look for the libraries in an unexpected place. This can - # lead to unsafe code execution if the generated prefix is - # within a world-writable directory. - # (e.g. /var/tmp/portage:${HOSTNAME}) - pushd "${ED}"/$(get_libdir) >/dev/null - - local x striptest - for x in cal date env free ls true uname uptime ; do - x=$(type -p ${x}) - [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue - striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue - case ${striptest} in - *"statically linked"*) continue;; - *"ASCII text"*) continue;; - esac - # We need to clear the locale settings as the upgrade might want - # incompatible locale data. This test is not for verifying that. - LC_ALL=C \ - ./ld-*.so --library-path . ${x} > /dev/null \ - || die "simple run test (${x}) failed" - done - - popd >/dev/null -} - -pkg_preinst() { - # nothing to do if just installing headers - just_headers && return - - # prepare /etc/ld.so.conf.d/ for files - mkdir -p "${EROOT}"/etc/ld.so.conf.d - - # Default /etc/hosts.conf:multi to on for systems with small dbs. - if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then - sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf - einfo "Defaulting /etc/host.conf:multi to on" - fi - - [[ -n ${ROOT} ]] && return 0 - [[ -d ${ED}/$(get_libdir) ]] || return 0 - [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check - - if [[ -L ${EROOT}/usr/lib/locale ]]; then - # Help portage migrate this to a directory - # https://bugs.gentoo.org/753740 - rm "${EROOT}"/usr/lib/locale || die - fi -} - -pkg_postinst() { - # nothing to do if just installing headers - just_headers && return - - if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then - # Generate fastloading iconv module configuration file. - "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/" - fi - - if ! is_crosscompile && [[ -z ${ROOT} ]] ; then - use compile-locales || run_locale_gen "${EROOT}/" - fi - - # Check for sanity of /etc/nsswitch.conf, take 2 - if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then - local entry - for entry in passwd group shadow; do - if egrep -q "^[ \t]*${entry}:.*nis" "${EROOT}"/etc/nsswitch.conf; then - ewarn "" - ewarn "Your ${EROOT}/etc/nsswitch.conf uses NIS. Support for that has been" - ewarn "removed from glibc and is now provided by the package" - ewarn " sys-auth/libnss-nis" - ewarn "Install it now to keep your NIS setup working." - ewarn "" - fi - done - fi -} diff --git a/sys-libs/glibc/glibc-2.32-r6.ebuild b/sys-libs/glibc/glibc-2.32-r6.ebuild index e05b69e194f7..959fb2d9f8bc 100644 --- a/sys-libs/glibc/glibc-2.32-r6.ebuild +++ b/sys-libs/glibc/glibc-2.32-r6.ebuild @@ -22,7 +22,7 @@ PATCH_DEV=slyfox if [[ ${PV} == 9999* ]]; then inherit git-r3 else - KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" SRC_URI="mirror://gnu/glibc/${P}.tar.xz" SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" SRC_URI+=" riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz )" diff --git a/sys-libs/glibc/glibc-2.32-r7.ebuild b/sys-libs/glibc/glibc-2.32-r7.ebuild index 091a9e973585..03889d617851 100644 --- a/sys-libs/glibc/glibc-2.32-r7.ebuild +++ b/sys-libs/glibc/glibc-2.32-r7.ebuild @@ -22,7 +22,7 @@ PATCH_DEV=dilfridge if [[ ${PV} == 9999* ]]; then inherit git-r3 else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86" SRC_URI="mirror://gnu/glibc/${P}.tar.xz" SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" SRC_URI+=" riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz )" diff --git a/sys-libs/glibc/glibc-2.32-r5.ebuild b/sys-libs/glibc/glibc-2.32-r8.ebuild index 2c2fcd5f8659..790c82d04c83 100644 --- a/sys-libs/glibc/glibc-2.32-r5.ebuild +++ b/sys-libs/glibc/glibc-2.32-r8.ebuild @@ -16,13 +16,13 @@ SLOT="2.2" EMULTILIB_PKG="true" # Gentoo patchset (ignored for live ebuilds) -PATCH_VER=4 -PATCH_DEV=slyfox +PATCH_VER=8 +PATCH_DEV=dilfridge if [[ ${PV} == 9999* ]]; then inherit git-r3 else - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv s390 sparc x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" SRC_URI="mirror://gnu/glibc/${P}.tar.xz" SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz" SRC_URI+=" riscv? ( https://dev.gentoo.org/~dilfridge/distfiles/backport-rv32.txz )" diff --git a/sys-libs/glibc/glibc-2.33.ebuild b/sys-libs/glibc/glibc-2.33.ebuild index 9f63bdf17145..fc52ea8c742e 100644 --- a/sys-libs/glibc/glibc-2.33.ebuild +++ b/sys-libs/glibc/glibc-2.33.ebuild @@ -16,7 +16,7 @@ SLOT="2.2" EMULTILIB_PKG="true" # Gentoo patchset (ignored for live ebuilds) -PATCH_VER=1 +PATCH_VER=2 PATCH_DEV=dilfridge if [[ ${PV} == 9999* ]]; then diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest index e4435ee9403c..4c7c82ee5919 100644 --- a/sys-libs/libcxx/Manifest +++ b/sys-libs/libcxx/Manifest @@ -2,19 +2,17 @@ AUX libcxx-3.9-cmake-link-flags.patch 1014 BLAKE2B 8e86059e00a5ebcd7a15288828766 DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151 DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2 DIST llvmorg-11.0.1.tar.gz 122790338 BLAKE2B 0130996b4a8c4d9f757136fd7fb318068c9bfdc565060dec0d4336480c4ab66c4ae3185a7fdb05f13cf9ee8fd4123b09df938881b75d6e5d3689595114b7e32a SHA512 f5e6ef0b3111aae08a89cd01adb2ff4abfa9ef779c68b9190421d0447efd25c2cc00e5aae9f4764805f5fa31434866043d1510ae7389817e28ae53a5442e2fdf -DIST llvmorg-11.1.0-rc1.tar.gz 122793491 BLAKE2B f4777455f5903cffea284eaffd872be6c287c6c1ebbd0c4b5b5473f146d7f5476f3551998a58d3e976ab90cde7b0d05db2b3be97f4e8e2c3474755ff38739268 SHA512 44e281486c44fa1611042ab658b9833a75f9613b7f896863613cfb99de66d13607fb1e9064f42ea3d89ca7951113465a90fd96ca4544262f165f78bd5261f5a8 -DIST llvmorg-11.1.0-rc2.tar.gz 122794772 BLAKE2B ab533f078d9d6c37e27c578866a07896344a0b4cf4ebf6402f4fa490213e017310d1c882bf63e552e99a5b4f6d1d8c01413420713b200bfa6732eff64f3c47a9 SHA512 88d8f1d938f0ba7ec39478d03a35c09a30bea51735276205494265b1061621b3ebcda8ee4211e896783b1b99a377c9fa68046118b0d6cb7fcb7bea1e960f95b7 -DIST llvmorg-11.1.0-rc3.tar.gz 122785838 BLAKE2B d0998219471476be1a1249b3a2444750585a352047d4dc14de6fec87eb3407d0f4b848757340200d3423cb4090554ae033fb4ec3797446e46556fbb566bb77a3 SHA512 b67874cb127f3f929a3796558cdfbf509b384c4247f4936ba08cecf88ca880a167cf67c23d78104b5bab4a98efd9435d1b923deb7ae7367875414e6c896957d1 +DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0-rc1.tar.gz 134164708 BLAKE2B d4261ff7d9586b47f4cfda3d2cda4b76534f9e17fbd5cdb8861895b8eb466021962f4608bfcdeb52f8fce78850a994fd5eda0560f7211e5c8d1ac9330a738a36 SHA512 3d07d013d0705bb99f56898cc55d054d0d95aeb53b3c756cfab80b4c9097cc4935bcea89b9efde2e503a899b9fccf0dacc0073c9991c8ea352755c5ec68a757a +DIST llvmorg-12.0.0-rc2.tar.gz 134242619 BLAKE2B bb741a311db608fc2ba7eeaab71c5c9f2a430f7fee3f0c5c4334e5c14caa19738d18c87b568de963d57d9b53e808ac412cf8554eca7fcae9ecca65aa4442e197 SHA512 d8f9b3dfeb0fe9b91eb7f49da393784333044db2653373fbb168afd3c8d50f3e3ec7a7b8f44df522d0facafbfe4cfc4d9e2906d19f1e6feb0bdc569b6c10a17d DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD libcxx-10.0.1.ebuild 5966 BLAKE2B 230f37223e113c8f17020986b4fe65478d2bc65c5b4236f9709e556159e9118d0659172a59544b1767d9d55884549b51592d45fded05a91bf0e8762388c1baaf SHA512 4cf81cf1a0922d50c4357811169d4c2eda890ed6636fd2a0cee47c7181434bee76b36411ab487ef42d8179650d3c379336ad6c2ec1d18f109338e76d38e82f9d EBUILD libcxx-11.0.0.ebuild 6830 BLAKE2B a57ee66a8096c4456483bbb2a1d67a7e153dce97bdb7eb6a2d8e5ec5ac839d28c7c43f315f8399a5dc5bc157bd8b08cde156e1b3e962cfd05fe95dc6ca811929 SHA512 abaa0922a39380b3dffb65ea8a2c4774ae8c2fa561e9ceec30e70851779a13aedb2853bdf34c7586656dd389fb7b1e0c7dda9ac9de23ae52986b5392dd8ff12a -EBUILD libcxx-11.0.1.ebuild 6835 BLAKE2B f6d1949fe821d3038af20faa593e8e8f1f99495deb2d58a00670b0273debb5a1a51112cec6e5f4bd5cdd4f8796f18fdc6c5dea709b42c3fe4c0a340c79a11fba SHA512 d64fd24069e39f8e00cfcc463e7c31fde0c432d2bf282153063ff3aa0d2cf485be1fb649da73133f01b420532807b9623f5795e65cafefc3cd6731f2ac2f50a6 -EBUILD libcxx-11.1.0_rc1.ebuild 6794 BLAKE2B cdde8697e6c974e68fc5ef47027ae108386b72c1e4506550f94984cd8dcc836dee6823c9660d252a73c8acfff5c1084f32bfe44247bfc2c3f6998f3d6dbb5f0b SHA512 cbc5f18d8be0ab2ab0294e33dc528e6a306b5abcf5411015cfa48427e4dbe10b614ebd38da03dc1b3127ca892de5ab9484493e3cd10d1a52f6d8abaa74ab2ab4 -EBUILD libcxx-11.1.0_rc2.ebuild 6794 BLAKE2B cdde8697e6c974e68fc5ef47027ae108386b72c1e4506550f94984cd8dcc836dee6823c9660d252a73c8acfff5c1084f32bfe44247bfc2c3f6998f3d6dbb5f0b SHA512 cbc5f18d8be0ab2ab0294e33dc528e6a306b5abcf5411015cfa48427e4dbe10b614ebd38da03dc1b3127ca892de5ab9484493e3cd10d1a52f6d8abaa74ab2ab4 -EBUILD libcxx-11.1.0_rc3.ebuild 6794 BLAKE2B cdde8697e6c974e68fc5ef47027ae108386b72c1e4506550f94984cd8dcc836dee6823c9660d252a73c8acfff5c1084f32bfe44247bfc2c3f6998f3d6dbb5f0b SHA512 cbc5f18d8be0ab2ab0294e33dc528e6a306b5abcf5411015cfa48427e4dbe10b614ebd38da03dc1b3127ca892de5ab9484493e3cd10d1a52f6d8abaa74ab2ab4 +EBUILD libcxx-11.0.1.ebuild 6831 BLAKE2B e1b3768dce61c69f4a4f4e7be022966b229e7cea11b1c24351a0c25a1ffe57ed8d4d04c20ce8811f39694849a52c20b980f664070482ffcbaa4e6b431fc8b414 SHA512 afb1ac8b1e5206c0b7988f9fc2644531b486840791beb8e997dfbd5c82a95cc3effab27fc28269d362d8c40873c1d0caf560c1e6a36880f6da72c28909f66802 +EBUILD libcxx-11.1.0.ebuild 6835 BLAKE2B f6d1949fe821d3038af20faa593e8e8f1f99495deb2d58a00670b0273debb5a1a51112cec6e5f4bd5cdd4f8796f18fdc6c5dea709b42c3fe4c0a340c79a11fba SHA512 d64fd24069e39f8e00cfcc463e7c31fde0c432d2bf282153063ff3aa0d2cf485be1fb649da73133f01b420532807b9623f5795e65cafefc3cd6731f2ac2f50a6 EBUILD libcxx-12.0.0.9999.ebuild 6794 BLAKE2B cdde8697e6c974e68fc5ef47027ae108386b72c1e4506550f94984cd8dcc836dee6823c9660d252a73c8acfff5c1084f32bfe44247bfc2c3f6998f3d6dbb5f0b SHA512 cbc5f18d8be0ab2ab0294e33dc528e6a306b5abcf5411015cfa48427e4dbe10b614ebd38da03dc1b3127ca892de5ab9484493e3cd10d1a52f6d8abaa74ab2ab4 EBUILD libcxx-12.0.0_rc1.ebuild 6794 BLAKE2B cdde8697e6c974e68fc5ef47027ae108386b72c1e4506550f94984cd8dcc836dee6823c9660d252a73c8acfff5c1084f32bfe44247bfc2c3f6998f3d6dbb5f0b SHA512 cbc5f18d8be0ab2ab0294e33dc528e6a306b5abcf5411015cfa48427e4dbe10b614ebd38da03dc1b3127ca892de5ab9484493e3cd10d1a52f6d8abaa74ab2ab4 +EBUILD libcxx-12.0.0_rc2.ebuild 6794 BLAKE2B cdde8697e6c974e68fc5ef47027ae108386b72c1e4506550f94984cd8dcc836dee6823c9660d252a73c8acfff5c1084f32bfe44247bfc2c3f6998f3d6dbb5f0b SHA512 cbc5f18d8be0ab2ab0294e33dc528e6a306b5abcf5411015cfa48427e4dbe10b614ebd38da03dc1b3127ca892de5ab9484493e3cd10d1a52f6d8abaa74ab2ab4 EBUILD libcxx-13.0.0.9999.ebuild 6794 BLAKE2B cdde8697e6c974e68fc5ef47027ae108386b72c1e4506550f94984cd8dcc836dee6823c9660d252a73c8acfff5c1084f32bfe44247bfc2c3f6998f3d6dbb5f0b SHA512 cbc5f18d8be0ab2ab0294e33dc528e6a306b5abcf5411015cfa48427e4dbe10b614ebd38da03dc1b3127ca892de5ab9484493e3cd10d1a52f6d8abaa74ab2ab4 EBUILD libcxx-9.0.1.ebuild 6393 BLAKE2B 2f217a0fa5ed41d5ecd6695ed541d6d10a30afa52b39f221f802a3e990093bdf74faf4bf5217a0d8e84d85000a5cd5d3aab0c4287660101effe77f6e05bdeddd SHA512 a86ad384476199ef2aec39cd2f4d1b7f1e92fcd84558971db3e8afa44817ce714527b4f35f1f76713794c2c5eb492d07d4e074d6d865113e3997f39e4f24d234 MISC metadata.xml 731 BLAKE2B a6e96906bc2bff950c1b193b01feeb456b064fa585042566eae77dbe9a207bb08dfd083a3ab5fede2133a80b905a61c6dd541f9196e585c60b5629dd04a06213 SHA512 0a25560aa3eff5355137dadbb9cc48e384d2885b89075a97a8dafc7ac0ebe4ec5fde5b171a3416490264791a734c4405ec8a42dfc98e7e830c30ef0cfef58b6f diff --git a/sys-libs/libcxx/libcxx-11.0.1.ebuild b/sys-libs/libcxx/libcxx-11.0.1.ebuild index 9414c15c0f46..58ec9289d186 100644 --- a/sys-libs/libcxx/libcxx-11.0.1.ebuild +++ b/sys-libs/libcxx/libcxx-11.0.1.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://libcxx.llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos" +KEYWORDS="amd64 arm arm64 ~riscv x86 ~x64-macos" IUSE="elibc_glibc elibc_musl +libcxxabi +libunwind static-libs test" REQUIRED_USE="libunwind? ( libcxxabi )" RESTRICT="!test? ( test )" diff --git a/sys-libs/libcxx/libcxx-11.1.0_rc2.ebuild b/sys-libs/libcxx/libcxx-11.1.0.ebuild index 8ed99383fe0b..9414c15c0f46 100644 --- a/sys-libs/libcxx/libcxx-11.1.0_rc2.ebuild +++ b/sys-libs/libcxx/libcxx-11.1.0.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://libcxx.llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos" IUSE="elibc_glibc elibc_musl +libcxxabi +libunwind static-libs test" REQUIRED_USE="libunwind? ( libcxxabi )" RESTRICT="!test? ( test )" diff --git a/sys-libs/libcxx/libcxx-11.1.0_rc3.ebuild b/sys-libs/libcxx/libcxx-11.1.0_rc3.ebuild deleted file mode 100644 index 8ed99383fe0b..000000000000 --- a/sys-libs/libcxx/libcxx-11.1.0_rc3.ebuild +++ /dev/null @@ -1,218 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs - -DESCRIPTION="New implementation of the C++ standard library, targeting C++11" -HOMEPAGE="https://libcxx.llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="" -IUSE="elibc_glibc elibc_musl +libcxxabi +libunwind static-libs test" -REQUIRED_USE="libunwind? ( libcxxabi )" -RESTRICT="!test? ( test )" - -RDEPEND=" - libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] ) - !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )" -# llvm-6 for new lit options -# clang-3.9.0 installs necessary target symlinks unconditionally -# which removes the need for MULTILIB_USEDEP -DEPEND="${RDEPEND} - >=sys-devel/llvm-6" -BDEPEND=" - test? ( - >=dev-util/cmake-3.16 - >=sys-devel/clang-3.9.0 - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" - -DOCS=( CREDITS.TXT ) - -LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake/modules,utils/llvm-lit} ) -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - # Darwin Prefix builds do not have llvm installed yet, so rely on - # bootstrap-prefix to set the appropriate path vars to LLVM instead - # of using llvm_pkg_setup. - if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then - llvm_pkg_setup - fi - use test && python-any-r1_pkg_setup - - if ! use libcxxabi && ! tc-is-gcc ; then - eerror "To build ${PN} against libsupc++, you have to use gcc. Other" - eerror "compilers are not supported. Please set CC=gcc and CXX=g++" - eerror "and try again." - die - fi -} - -src_prepare() { - # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a - # out-of-tree build. - eapply "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch" - - llvm.org_src_prepare -} - -test_compiler() { - $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \ - <<<'int main() { return 0; }' &>/dev/null -} - -src_configure() { - # note: we need to do this before multilib kicks in since it will - # alter the CHOST - local cxxabi cxxabi_incs - if use libcxxabi; then - cxxabi=libcxxabi - cxxabi_incs="${EPREFIX}/usr/include/libcxxabi" - else - local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)" - cxxabi=libsupc++ - cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}" - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - # we want -lgcc_s for unwinder, and for compiler runtime when using - # gcc, clang with gcc runtime (or any unknown compiler) - local extra_libs=() want_gcc_s=ON want_compiler_rt=OFF - if use libunwind; then - # work-around missing -lunwind upstream - extra_libs+=( -lunwind ) - # if we're using libunwind and clang with compiler-rt, we want - # to link to compiler-rt instead of -lgcc_s - if tc-is-clang; then - local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \ - ${LDFLAGS} -print-libgcc-file-name) - if [[ ${compiler_rt} == *libclang_rt* ]]; then - want_gcc_s=OFF - want_compiler_rt=ON - extra_libs+=( "${compiler_rt}" ) - fi - fi - elif [[ ${CHOST} == *-darwin* ]] && tc-is-clang; then - # clang-based darwin prefix disables libunwind useflag during - # bootstrap, because libunwind is not in the prefix yet. - # override the default, though, because clang based libcxx - # should never use gcc_s on Darwin. - want_gcc_s=OFF - # compiler_rt is not available in EPREFIX during bootstrap, - # so we cannot link to it yet anyway, so keep the defaults - # of want_compiler_rt=OFF and extra_libs=() - fi - - # bootstrap: cmake is unhappy if compiler can't link to stdlib - local nolib_flags=( -nodefaultlibs -lc ) - if ! test_compiler; then - if test_compiler "${nolib_flags[@]}"; then - local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}" - ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}" - fi - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - -DLIBCXX_LIBDIR_SUFFIX=${libdir#lib} - -DLIBCXX_ENABLE_SHARED=ON - -DLIBCXX_ENABLE_STATIC=$(usex static-libs) - -DLIBCXX_CXX_ABI=${cxxabi} - -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs} - # we're using our own mechanism for generating linker scripts - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_HAS_GCC_S_LIB=${want_gcc_s} - -DLIBCXX_INCLUDE_TESTS=$(usex test) - -DLIBCXX_USE_COMPILER_RT=${want_compiler_rt} - -DCMAKE_SHARED_LINKER_FLAGS="${extra_libs[*]} ${LDFLAGS}" - ) - - if use test; then - local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) - [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" - - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - cmake_src_configure -} - -multilib_src_test() { - local -x LIT_PRESERVES_TMP=1 - cmake_build check-cxx -} - -# Usage: deps -gen_ldscript() { - local output_format - output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p') - [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )" - - cat <<-END_LDSCRIPT -/* GNU ld script - Include missing dependencies -*/ -${output_format} -GROUP ( $@ ) -END_LDSCRIPT -} - -gen_static_ldscript() { - local libdir=$(get_libdir) - local cxxabi_lib=$(usex libcxxabi "libc++abi.a" "libsupc++.a") - - # Move it first. - mv "${ED}/usr/${libdir}/libc++.a" "${ED}/usr/${libdir}/libc++_static.a" || die - # Generate libc++.a ldscript for inclusion of its dependencies so that - # clang++ -stdlib=libc++ -static works out of the box. - local deps="libc++_static.a ${cxxabi_lib} $(usex libunwind libunwind.a libgcc_eh.a)" - # On Linux/glibc it does not link without libpthread or libdl. It is - # fine on FreeBSD. - use elibc_glibc && deps+=" libpthread.a libdl.a" - - gen_ldscript "${deps}" > "${ED}/usr/${libdir}/libc++.a" || die -} - -gen_shared_ldscript() { - local libdir=$(get_libdir) - # libsupc++ doesn't have a shared version - local cxxabi_lib=$(usex libcxxabi "libc++abi.so" "libsupc++.a") - - mv "${ED}/usr/${libdir}/libc++.so" "${ED}/usr/${libdir}/libc++_shared.so" || die - local deps="libc++_shared.so ${cxxabi_lib} $(usex libunwind libunwind.so libgcc_s.so)" - - gen_ldscript "${deps}" > "${ED}/usr/${libdir}/libc++.so" || die -} - -multilib_src_install() { - cmake_src_install - if [[ ${CHOST} != *-darwin* ]] ; then - gen_shared_ldscript - use static-libs && gen_static_ldscript - fi -} - -pkg_postinst() { - elog "This package (${PN}) is mainly intended as a replacement for the C++" - elog "standard library when using clang." - elog "To use it, instead of libstdc++, use:" - elog " clang++ -stdlib=libc++" - elog "to compile your C++ programs." -} diff --git a/sys-libs/libcxx/libcxx-11.1.0_rc1.ebuild b/sys-libs/libcxx/libcxx-12.0.0_rc2.ebuild index 8ed99383fe0b..8ed99383fe0b 100644 --- a/sys-libs/libcxx/libcxx-11.1.0_rc1.ebuild +++ b/sys-libs/libcxx/libcxx-12.0.0_rc2.ebuild diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest index ef75d694c57d..a4b3423d9c35 100644 --- a/sys-libs/libcxxabi/Manifest +++ b/sys-libs/libcxxabi/Manifest @@ -1,19 +1,17 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151 DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2 DIST llvmorg-11.0.1.tar.gz 122790338 BLAKE2B 0130996b4a8c4d9f757136fd7fb318068c9bfdc565060dec0d4336480c4ab66c4ae3185a7fdb05f13cf9ee8fd4123b09df938881b75d6e5d3689595114b7e32a SHA512 f5e6ef0b3111aae08a89cd01adb2ff4abfa9ef779c68b9190421d0447efd25c2cc00e5aae9f4764805f5fa31434866043d1510ae7389817e28ae53a5442e2fdf -DIST llvmorg-11.1.0-rc1.tar.gz 122793491 BLAKE2B f4777455f5903cffea284eaffd872be6c287c6c1ebbd0c4b5b5473f146d7f5476f3551998a58d3e976ab90cde7b0d05db2b3be97f4e8e2c3474755ff38739268 SHA512 44e281486c44fa1611042ab658b9833a75f9613b7f896863613cfb99de66d13607fb1e9064f42ea3d89ca7951113465a90fd96ca4544262f165f78bd5261f5a8 -DIST llvmorg-11.1.0-rc2.tar.gz 122794772 BLAKE2B ab533f078d9d6c37e27c578866a07896344a0b4cf4ebf6402f4fa490213e017310d1c882bf63e552e99a5b4f6d1d8c01413420713b200bfa6732eff64f3c47a9 SHA512 88d8f1d938f0ba7ec39478d03a35c09a30bea51735276205494265b1061621b3ebcda8ee4211e896783b1b99a377c9fa68046118b0d6cb7fcb7bea1e960f95b7 -DIST llvmorg-11.1.0-rc3.tar.gz 122785838 BLAKE2B d0998219471476be1a1249b3a2444750585a352047d4dc14de6fec87eb3407d0f4b848757340200d3423cb4090554ae033fb4ec3797446e46556fbb566bb77a3 SHA512 b67874cb127f3f929a3796558cdfbf509b384c4247f4936ba08cecf88ca880a167cf67c23d78104b5bab4a98efd9435d1b923deb7ae7367875414e6c896957d1 +DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0-rc1.tar.gz 134164708 BLAKE2B d4261ff7d9586b47f4cfda3d2cda4b76534f9e17fbd5cdb8861895b8eb466021962f4608bfcdeb52f8fce78850a994fd5eda0560f7211e5c8d1ac9330a738a36 SHA512 3d07d013d0705bb99f56898cc55d054d0d95aeb53b3c756cfab80b4c9097cc4935bcea89b9efde2e503a899b9fccf0dacc0073c9991c8ea352755c5ec68a757a +DIST llvmorg-12.0.0-rc2.tar.gz 134242619 BLAKE2B bb741a311db608fc2ba7eeaab71c5c9f2a430f7fee3f0c5c4334e5c14caa19738d18c87b568de963d57d9b53e808ac412cf8554eca7fcae9ecca65aa4442e197 SHA512 d8f9b3dfeb0fe9b91eb7f49da393784333044db2653373fbb168afd3c8d50f3e3ec7a7b8f44df522d0facafbfe4cfc4d9e2906d19f1e6feb0bdc569b6c10a17d DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD libcxxabi-10.0.1.ebuild 3237 BLAKE2B 828cabd1bccb0f7dc672648fd1143f1913df2b3f075194da3b053413ad8e0ff8f8669ce6263fa51ed0b02702e0bd611a77f4009e57a7d2659362db21c5665e4e SHA512 b9fef273fea1343aab604c3606fa4b9ed340e0e6f649e68f81f1285d96374f440ab787937b203ee5eba5b8e867a5926b48f63d8739c326fd1a646193635dd65e EBUILD libcxxabi-11.0.0.ebuild 3557 BLAKE2B 17ffd28ae4044bfa72830f1ee5614e2d89e8b3382c6fde88e6725bc5ef9bb374632c4abefa334931e8c2c52e232e0b4a74ea53be59d777acc3a80f33290ee499 SHA512 bf185e151c0926ccf5e87d30a4f42f1b4a6fbfe175c7cd40ce0f2abee0b2450d3fedf74366d786796ccb55193ad7ffdd01d9a9c6ee97529bf9f6dc7080ae6289 -EBUILD libcxxabi-11.0.1.ebuild 3563 BLAKE2B b7114186df8da65e7c1297d41aec60b5bff2372ac319f15019f84eaa0f1459cf2788eccb01bbf75df383d50ced4e9e6722ac4d20abf69afcdb76d9c78c6cac9c SHA512 663e88359e06cd7d146b6f1bb43ea0235241b4f77cf559036ba0c1c6e4d99a9b0eda48a5146aafd798055f0a164e2eea21742593c405a7e54d852edd2e581ade -EBUILD libcxxabi-11.1.0_rc1.ebuild 3522 BLAKE2B daf621b1af7d0304b8f0d1440f61548c24c97fe6189bc327f6808d437d2f06efb0874ca8061aaa1fe666b6e92b1705e5df7a096345fab6eba8f6fa5e184dc951 SHA512 08b6f56404eba7dff79518b5ff096270aad3bb5a0a563e392287e4933363e78a938a7990b0c88cbb6d6b36cf3db435e6216ad51c3cc1e364cb7ef08eb4ce272e -EBUILD libcxxabi-11.1.0_rc2.ebuild 3522 BLAKE2B daf621b1af7d0304b8f0d1440f61548c24c97fe6189bc327f6808d437d2f06efb0874ca8061aaa1fe666b6e92b1705e5df7a096345fab6eba8f6fa5e184dc951 SHA512 08b6f56404eba7dff79518b5ff096270aad3bb5a0a563e392287e4933363e78a938a7990b0c88cbb6d6b36cf3db435e6216ad51c3cc1e364cb7ef08eb4ce272e -EBUILD libcxxabi-11.1.0_rc3.ebuild 3522 BLAKE2B daf621b1af7d0304b8f0d1440f61548c24c97fe6189bc327f6808d437d2f06efb0874ca8061aaa1fe666b6e92b1705e5df7a096345fab6eba8f6fa5e184dc951 SHA512 08b6f56404eba7dff79518b5ff096270aad3bb5a0a563e392287e4933363e78a938a7990b0c88cbb6d6b36cf3db435e6216ad51c3cc1e364cb7ef08eb4ce272e +EBUILD libcxxabi-11.0.1.ebuild 3559 BLAKE2B dc74318b252f772fbc6833e413ee2dd9b682c01ae3bca88a78d2f7854aa374311474f7af9f19453e4b4fbb6db4149e8330db7632faf710a0aeb2e0d741119096 SHA512 18632637cb6fb86a3c003ba66f6a80aece299f50e356870599bb932fa100ba3e51293cee71576cc994a7e2b5f56f3b4ec8b4d3eae6202322d50a9bc0aa922ac3 +EBUILD libcxxabi-11.1.0.ebuild 3563 BLAKE2B b7114186df8da65e7c1297d41aec60b5bff2372ac319f15019f84eaa0f1459cf2788eccb01bbf75df383d50ced4e9e6722ac4d20abf69afcdb76d9c78c6cac9c SHA512 663e88359e06cd7d146b6f1bb43ea0235241b4f77cf559036ba0c1c6e4d99a9b0eda48a5146aafd798055f0a164e2eea21742593c405a7e54d852edd2e581ade EBUILD libcxxabi-12.0.0.9999.ebuild 3505 BLAKE2B fe4d762e646ab8a6daad3ca1da7d63c34ffb6735a6bb6657e03e724428422706d821057715369cd818ecc696453620d7f2473535ac031ec0cc0a5bc6f4ec2186 SHA512 40ce77407d30efc2ada70d0166bcadbc4140e33275ecf537dcbd7580e3e8fc9ff030a29ba6be4a67bcadc9835ee8b1a2cd3fef07085c57df4792c04b445b0d7b EBUILD libcxxabi-12.0.0_rc1.ebuild 3505 BLAKE2B fe4d762e646ab8a6daad3ca1da7d63c34ffb6735a6bb6657e03e724428422706d821057715369cd818ecc696453620d7f2473535ac031ec0cc0a5bc6f4ec2186 SHA512 40ce77407d30efc2ada70d0166bcadbc4140e33275ecf537dcbd7580e3e8fc9ff030a29ba6be4a67bcadc9835ee8b1a2cd3fef07085c57df4792c04b445b0d7b +EBUILD libcxxabi-12.0.0_rc2.ebuild 3505 BLAKE2B fe4d762e646ab8a6daad3ca1da7d63c34ffb6735a6bb6657e03e724428422706d821057715369cd818ecc696453620d7f2473535ac031ec0cc0a5bc6f4ec2186 SHA512 40ce77407d30efc2ada70d0166bcadbc4140e33275ecf537dcbd7580e3e8fc9ff030a29ba6be4a67bcadc9835ee8b1a2cd3fef07085c57df4792c04b445b0d7b EBUILD libcxxabi-13.0.0.9999.ebuild 3505 BLAKE2B fe4d762e646ab8a6daad3ca1da7d63c34ffb6735a6bb6657e03e724428422706d821057715369cd818ecc696453620d7f2473535ac031ec0cc0a5bc6f4ec2186 SHA512 40ce77407d30efc2ada70d0166bcadbc4140e33275ecf537dcbd7580e3e8fc9ff030a29ba6be4a67bcadc9835ee8b1a2cd3fef07085c57df4792c04b445b0d7b EBUILD libcxxabi-9.0.1.ebuild 3385 BLAKE2B d6f87c6cdb0a322dbfd3c68637ad7de0f677fb7017202b326d1a5bad6b649cec39175d1657146b48dc02d34acdf655d55f47a3000cfb859f2903748d5a69a0d4 SHA512 6cbf68df2906aff37d329777a36ac95d73e6e63c1e403275fa90fd89f541fceeb761a0adcc807737328fe4e3e754e65196377852afe89d26649adc3f5a75a1fe MISC metadata.xml 350 BLAKE2B 67b70b8d7292327882a845b76667ce24fee728cd84f27ed7e329bc7963631cba4c28bafce5e6a5fefb4ba1df5c7fd572b3b0d7a2b31ef649496f2f991b691bff SHA512 317dd7b59a711dd0461b5369f7e31ea196882b018e047e1dbae8077274d06cb68542c8762efb852cce0b8021bedea69c19aa0c124b9414a36cf1a9c00e0b9703 diff --git a/sys-libs/libcxxabi/libcxxabi-11.0.1.ebuild b/sys-libs/libcxxabi/libcxxabi-11.0.1.ebuild index 7ceb778be532..fa0f31dbb563 100644 --- a/sys-libs/libcxxabi/libcxxabi-11.0.1.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-11.0.1.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://libcxxabi.llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos" +KEYWORDS="amd64 arm arm64 ~riscv x86 ~x64-macos" IUSE="+libunwind static-libs test elibc_musl" RESTRICT="!test? ( test )" diff --git a/sys-libs/libcxxabi/libcxxabi-11.1.0_rc2.ebuild b/sys-libs/libcxxabi/libcxxabi-11.1.0.ebuild index 59511b92f9ed..7ceb778be532 100644 --- a/sys-libs/libcxxabi/libcxxabi-11.1.0_rc2.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-11.1.0.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://libcxxabi.llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos" IUSE="+libunwind static-libs test elibc_musl" RESTRICT="!test? ( test )" diff --git a/sys-libs/libcxxabi/libcxxabi-11.1.0_rc1.ebuild b/sys-libs/libcxxabi/libcxxabi-11.1.0_rc1.ebuild deleted file mode 100644 index 59511b92f9ed..000000000000 --- a/sys-libs/libcxxabi/libcxxabi-11.1.0_rc1.ebuild +++ /dev/null @@ -1,123 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs - -DESCRIPTION="Low level support for a standard C++ library" -HOMEPAGE="https://libcxxabi.llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="" -IUSE="+libunwind static-libs test elibc_musl" -RESTRICT="!test? ( test )" - -RDEPEND=" - libunwind? ( - || ( - >=sys-libs/libunwind-1.0.1-r1[static-libs?,${MULTILIB_USEDEP}] - >=sys-libs/llvm-libunwind-3.9.0-r1[static-libs?,${MULTILIB_USEDEP}] - ) - )" -# llvm-6 for new lit options -DEPEND="${RDEPEND} - >=sys-devel/llvm-6" -BDEPEND=" - test? ( >=sys-devel/clang-3.9.0 - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" - -# libcxx is needed uncondtionally for the headers -LLVM_COMPONENTS=( libcxx{abi,} ) -LLVM_TEST_COMPONENTS=( llvm/cmake ) -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - # darwin prefix builds do not have llvm installed yet, so rely on bootstrap-prefix - # to set the appropriate path vars to LLVM instead of using llvm_pkg_setup. - if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then - llvm_pkg_setup - fi - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - # link against compiler-rt instead of libgcc if we are using clang with libunwind - local want_compiler_rt=OFF - if use libunwind && tc-is-clang; then - local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \ - ${LDFLAGS} -print-libgcc-file-name) - if [[ ${compiler_rt} == *libclang_rt* ]]; then - want_compiler_rt=ON - fi - fi - - local libdir=$(get_libdir) - local mycmakeargs=( - -DLIBCXXABI_LIBDIR_SUFFIX=${libdir#lib} - -DLIBCXXABI_ENABLE_SHARED=ON - -DLIBCXXABI_ENABLE_STATIC=$(usex static-libs) - -DLIBCXXABI_USE_LLVM_UNWINDER=$(usex libunwind) - -DLIBCXXABI_INCLUDE_TESTS=$(usex test) - -DLIBCXXABI_USE_COMPILER_RT=${want_compiler_rt} - - -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include - # upstream is omitting standard search path for this - # probably because gcc & clang are bundling their own unwind.h - -DLIBCXXABI_LIBUNWIND_INCLUDES="${EPREFIX}"/usr/include - ) - if use test; then - local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) - [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" - - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" - -DPython3_EXECUTABLE="${PYTHON}" - ) - fi - cmake_src_configure -} - -build_libcxx() { - local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" - local CMAKE_USE_DIR=${WORKDIR}/libcxx - local BUILD_DIR=${BUILD_DIR}/libcxx - local mycmakeargs=( - -DLIBCXX_LIBDIR_SUFFIX= - -DLIBCXX_ENABLE_SHARED=OFF - -DLIBCXX_ENABLE_STATIC=ON - -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF - -DLIBCXX_CXX_ABI=libcxxabi - -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${S}"/include - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_HAS_GCC_S_LIB=OFF - -DLIBCXX_INCLUDE_TESTS=OFF - ) - - cmake_src_configure - cmake_src_compile -} - -multilib_src_test() { - # build a local copy of libc++ for testing to avoid circular dep - build_libcxx - mv "${BUILD_DIR}"/libcxx/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die - - local -x LIT_PRESERVES_TMP=1 - cmake_build check-cxxabi -} - -multilib_src_install_all() { - insinto /usr/include/libcxxabi - doins -r include/. -} diff --git a/sys-libs/libcxxabi/libcxxabi-11.1.0_rc3.ebuild b/sys-libs/libcxxabi/libcxxabi-12.0.0_rc2.ebuild index 59511b92f9ed..8c24d9691115 100644 --- a/sys-libs/libcxxabi/libcxxabi-11.1.0_rc3.ebuild +++ b/sys-libs/libcxxabi/libcxxabi-12.0.0_rc2.ebuild @@ -32,8 +32,7 @@ BDEPEND=" )" # libcxx is needed uncondtionally for the headers -LLVM_COMPONENTS=( libcxx{abi,} ) -LLVM_TEST_COMPONENTS=( llvm/cmake ) +LLVM_COMPONENTS=( libcxx{abi,} llvm/cmake/modules ) llvm.org_set_globals python_check_deps() { diff --git a/sys-libs/libfaketime/Manifest b/sys-libs/libfaketime/Manifest index 10dae1330d03..c499658c6fca 100644 --- a/sys-libs/libfaketime/Manifest +++ b/sys-libs/libfaketime/Manifest @@ -1,7 +1,9 @@ DIST libfaketime-0.9.6.tar.gz 51333 BLAKE2B b9aab3da744e250f43eca4f837322932c3260d35550171d34da851740a415bf3d2c3bfe02cdf37782058d8524008743838757ed8326384ecb36d0d9839cadd1a SHA512 ab2e9c53f4ca2b9dcd2bbcd8de3ab9e27be57547ed9b52a17f07a6fe880fd3a283a6f10018736be2a6ba4e150f54e92161959ccb887be1f78ddfc96058729860 DIST libfaketime-0.9.7.tar.gz 56277 BLAKE2B 62e10c4b3c33c203cde023cbc4e114c2ee1ad87298b1840bb2f7ea3610fdfd81c12a60c1c00a44409ca322e96408427fcad32f202737b75d28c5d69b85b579d6 SHA512 593e14e96dc0a49f65e93d25b7aace6e78fd2b4251f692c14bd6c6a2ac6360d997573aeac9005388bc49276078075c23a39fdaee912c2469acb8014127625537 DIST libfaketime-0.9.8.tar.gz 70614 BLAKE2B a10a8859c216ce4c2edae3324515507f4c2b8a284d80da5a83d1b8046262ae5e624e358c809c2d473fdc21caa0d89f675beb3adfdb401411356145fdb9a1bac3 SHA512 87081024cab10462d4ed4d4ad9c3c56ab40fee3300d3a9ff180a4d96d418b3f25d80d7d5ad0a1af2fb87204f01a506d9fa273def7a8f9cc3be4cc0e9fef42aed +DIST libfaketime-0.9.9.tar.gz 78610 BLAKE2B 863e3aaf5f26a7b4d6104bdf5dd8fc0ac70547770d01cad302e476a7eeee63f0900ddc825aa75f6db7be08155d7ceb05f3b730fffb9e4928147fbdc097ee0df8 SHA512 b1aecf456753ccf771f0f80c92d57ffcd2c8349dde93a575862b4570a06812d4bce104f2efbcfd627a85a80fed99dbc37cb156dda0389892bfb4e71df816191f EBUILD libfaketime-0.9.6-r2.ebuild 1357 BLAKE2B d10887ac8b725f24397ccfcd398b972008ca208e42e0631f2aa33a71461f8b32186bad3e371ae4fb42d25f91e2e4ece6e5b208c416df3ad05e219aaedbda84a5 SHA512 98f40738a63b3190203b1bb01ac52b3633229cdc61db1ddea75cfe7c195b3a28fb64a572dbe9e0ae8ad298104c4329a9465f0e1dc3c3881a3edc610d80b6c794 EBUILD libfaketime-0.9.7.ebuild 1383 BLAKE2B 7a61df366d1d8c8f5df3798f87d47c524a8eb5e02b90454d9b15b583d1af72a790c3e99251200f9ff854d90310f5b2cbb95b082860f18269dbf5b38e5f8f8e74 SHA512 8db6ca7f9e66b49ce4ef116ff8be3e2debc8ec1f9b31503ddd8f1a5cf785029ed4b10a7bddc7e026d548a3c00d6b7baf28ffe93dcfaac16e8d15758c5e7f955f EBUILD libfaketime-0.9.8.ebuild 1599 BLAKE2B d6d5c3ee1214ce58a1c324dabaa42465b61c75a850fc555d806f117dd5f12c71cb5ce421f8f571d80bd95a7e5228cf5ce1587ee3503a88708bc727ab8a350b41 SHA512 3c86330a7e4452da518afd79f641eeca175451eb40881f147946a1140e78fd647c5b3b92dd397956c2135c493bdb568472be349a34e19d079620abd3849364ee +EBUILD libfaketime-0.9.9.ebuild 1775 BLAKE2B dc603ba42319e8d6359805baabedbbf547feb4a80012d67e0513d857b26b013f59ebc64b977a49058693b855d1a220fd7be4f349a4933c6316addfcfeb970885 SHA512 fec54ad27961e625d2bec81056131cde46f8a14747302e5c151130df788df1a6fd154e0867555904e749e0deca44881ee0323df1d8c14fab4a27dd15a3250bd5 MISC metadata.xml 844 BLAKE2B 55b522c415ccd092c6f940fafffe6d3ef871259265d125844b179f00c3fce55fd4b359c1b535a0ace47722938d2d2b744cf9062e1ff3e32bbea89b9b7a200691 SHA512 77924230fc18b29ee6c5891a73acde9158dabdec2d3f892ceeb84bc6e1b6f2b977dba05382a1da67fa8db6e57ca3be2161f6218e2f52feaefef690a0e1989893 diff --git a/sys-libs/libfaketime/libfaketime-0.9.9.ebuild b/sys-libs/libfaketime/libfaketime-0.9.9.ebuild new file mode 100644 index 000000000000..6f985492cd6d --- /dev/null +++ b/sys-libs/libfaketime/libfaketime-0.9.9.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit flag-o-matic toolchain-funcs multilib-minimal + +DESCRIPTION="Report faked system time to programs" +HOMEPAGE="http://www.code-wizards.com/projects/libfaketime/ https://github.com/wolfcw/libfaketime" +SRC_URI="https://github.com/wolfcw/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86" + +src_prepare() { + default + + sed -i 's/-Werror //' "${S}/src/Makefile" || die + + sed -i 's/-Werror //' "${S}/test/Makefile" || die + + # Bug #617624 (GCC-6 compatibility) + sed -i 's/-Wno-nonnull-compare //' "${S}/src/Makefile" || die + + # upstream doesn't want that we set this by default but + # I didn't find a single system where libfaketime passed + # CLOCK_MONOTONIC test without that + append-cflags -DFORCE_MONOTONIC_FIX + + multilib_copy_sources +} + +multilib_src_compile() { + local target=all + + pushd src > /dev/null || die + multilib_is_native_abi || target="${PN}.so.1 ${PN}MT.so.1" + # ${target} is intentionally not quoted + emake CC="$(tc-getCC)" LIBDIRNAME="/$(get_libdir)" PREFIX=/usr ${target} + popd > /dev/null || die +} + +multilib_src_test() { + if has usersandbox ${FEATURES} ; then + # Tests are using LD_PRELOAD which clashes with FEATURES=usersandbox + ewarn "Tests are known to fail with usersandbox enabled." + fi + + multilib_is_native_abi && emake CC="$(tc-getCC)" test +} + +multilib_src_install() { + multilib_is_native_abi && dobin src/faketime + exeinto /usr/$(get_libdir) + doexe src/${PN}*.so.* + dosym ${PN}.so.1 /usr/$(get_libdir)/${PN}.so + dosym ${PN}MT.so.1 /usr/$(get_libdir)/${PN}MT.so +} + +multilib_src_install_all() { + doman man/faketime.1 + dodoc NEWS README TODO +} diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest index 1119960fb935..6947e4203365 100644 --- a/sys-libs/libomp/Manifest +++ b/sys-libs/libomp/Manifest @@ -1,19 +1,17 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151 DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2 DIST llvmorg-11.0.1.tar.gz 122790338 BLAKE2B 0130996b4a8c4d9f757136fd7fb318068c9bfdc565060dec0d4336480c4ab66c4ae3185a7fdb05f13cf9ee8fd4123b09df938881b75d6e5d3689595114b7e32a SHA512 f5e6ef0b3111aae08a89cd01adb2ff4abfa9ef779c68b9190421d0447efd25c2cc00e5aae9f4764805f5fa31434866043d1510ae7389817e28ae53a5442e2fdf -DIST llvmorg-11.1.0-rc1.tar.gz 122793491 BLAKE2B f4777455f5903cffea284eaffd872be6c287c6c1ebbd0c4b5b5473f146d7f5476f3551998a58d3e976ab90cde7b0d05db2b3be97f4e8e2c3474755ff38739268 SHA512 44e281486c44fa1611042ab658b9833a75f9613b7f896863613cfb99de66d13607fb1e9064f42ea3d89ca7951113465a90fd96ca4544262f165f78bd5261f5a8 -DIST llvmorg-11.1.0-rc2.tar.gz 122794772 BLAKE2B ab533f078d9d6c37e27c578866a07896344a0b4cf4ebf6402f4fa490213e017310d1c882bf63e552e99a5b4f6d1d8c01413420713b200bfa6732eff64f3c47a9 SHA512 88d8f1d938f0ba7ec39478d03a35c09a30bea51735276205494265b1061621b3ebcda8ee4211e896783b1b99a377c9fa68046118b0d6cb7fcb7bea1e960f95b7 -DIST llvmorg-11.1.0-rc3.tar.gz 122785838 BLAKE2B d0998219471476be1a1249b3a2444750585a352047d4dc14de6fec87eb3407d0f4b848757340200d3423cb4090554ae033fb4ec3797446e46556fbb566bb77a3 SHA512 b67874cb127f3f929a3796558cdfbf509b384c4247f4936ba08cecf88ca880a167cf67c23d78104b5bab4a98efd9435d1b923deb7ae7367875414e6c896957d1 +DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0-rc1.tar.gz 134164708 BLAKE2B d4261ff7d9586b47f4cfda3d2cda4b76534f9e17fbd5cdb8861895b8eb466021962f4608bfcdeb52f8fce78850a994fd5eda0560f7211e5c8d1ac9330a738a36 SHA512 3d07d013d0705bb99f56898cc55d054d0d95aeb53b3c756cfab80b4c9097cc4935bcea89b9efde2e503a899b9fccf0dacc0073c9991c8ea352755c5ec68a757a +DIST llvmorg-12.0.0-rc2.tar.gz 134242619 BLAKE2B bb741a311db608fc2ba7eeaab71c5c9f2a430f7fee3f0c5c4334e5c14caa19738d18c87b568de963d57d9b53e808ac412cf8554eca7fcae9ecca65aa4442e197 SHA512 d8f9b3dfeb0fe9b91eb7f49da393784333044db2653373fbb168afd3c8d50f3e3ec7a7b8f44df522d0facafbfe4cfc4d9e2906d19f1e6feb0bdc569b6c10a17d DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD libomp-10.0.1.ebuild 2893 BLAKE2B 6085966e4e392ded8492c6b398d3a14ba5205aee8ecf3f63d0853e463f1bf007ff3b3c31555eb7cb566cc8c4bdc580e9d0ce38ca7cd58785820a7949e2969024 SHA512 e1b7b17dd0800908adbb06b29c7ef2d5bd73c66784104b554c59e5c5176c9c49c5432e0ecd72c6e3c00e71def839342cbedbd666f3886afa3ea92d8fc94ba591 EBUILD libomp-11.0.0.ebuild 2900 BLAKE2B 8dd6c10719ec67cb10e15610cb99276e8e802994a19c3e3028e365458fc02cb2514cbb6032a1d62528776d31a023de81a08935f923520c1d4ec055e285aacf1b SHA512 855a5730ac4e786506ce70d92bf7c46e11531ef73e0a663e9512b9861e7bdf441113a484d1aa583313f6990bfc81e56eb536dcf8d81d95a8375a3073efca2ebc -EBUILD libomp-11.0.1.ebuild 2906 BLAKE2B 532bba9092f082b646fbf7d22c929568e8e763d9ed23b23e5ec6691fe8b5188f359d592892fb2f35768354d722470f538a54285dbac0170e7589471a50d3d836 SHA512 541d34bdc48d88dc140aa7510e8696a2c139347ba5b99f7023582de2bdadfc8e69e204998890598a5fec09aa4c01429c57024fce4a35f9cda90b8961c1fc9afe -EBUILD libomp-11.1.0_rc1.ebuild 2845 BLAKE2B ec9434f4040a5fb085a6b3b8fed7d9a730920657fcdacf6b2828bd37359d709d112ed3b39f120d3c52373362c05ac534829f8873a49d55082a799ae661de51ba SHA512 3ce9cb608ace32f3a861f375df90af73e9ca277ccd7ebdb1678d02a2264da53d7c98f0b7dccfe41692ff35933ac499efcbb11007b559010a81d2f718cad0e7e7 -EBUILD libomp-11.1.0_rc2.ebuild 2845 BLAKE2B ec9434f4040a5fb085a6b3b8fed7d9a730920657fcdacf6b2828bd37359d709d112ed3b39f120d3c52373362c05ac534829f8873a49d55082a799ae661de51ba SHA512 3ce9cb608ace32f3a861f375df90af73e9ca277ccd7ebdb1678d02a2264da53d7c98f0b7dccfe41692ff35933ac499efcbb11007b559010a81d2f718cad0e7e7 -EBUILD libomp-11.1.0_rc3.ebuild 2845 BLAKE2B ec9434f4040a5fb085a6b3b8fed7d9a730920657fcdacf6b2828bd37359d709d112ed3b39f120d3c52373362c05ac534829f8873a49d55082a799ae661de51ba SHA512 3ce9cb608ace32f3a861f375df90af73e9ca277ccd7ebdb1678d02a2264da53d7c98f0b7dccfe41692ff35933ac499efcbb11007b559010a81d2f718cad0e7e7 +EBUILD libomp-11.0.1.ebuild 2902 BLAKE2B c032a2c7ba9ed2237c14ba6ba0f7558369990e29c96a3d0ef97e3f94492c6042bc626fca813718441ce2de3f44e3605331cc63d4d7db8677ddd6ed7539359cdd SHA512 0e70d6b1b84232b9090c069c437d40dd83a76177b5c3b4048a3ea3a52e4f50ef1d6de68fea78b0e7c8d79ca2f9fb876053219114829e6853c3e021b345fd4d79 +EBUILD libomp-11.1.0.ebuild 2906 BLAKE2B 532bba9092f082b646fbf7d22c929568e8e763d9ed23b23e5ec6691fe8b5188f359d592892fb2f35768354d722470f538a54285dbac0170e7589471a50d3d836 SHA512 541d34bdc48d88dc140aa7510e8696a2c139347ba5b99f7023582de2bdadfc8e69e204998890598a5fec09aa4c01429c57024fce4a35f9cda90b8961c1fc9afe EBUILD libomp-12.0.0.9999.ebuild 2858 BLAKE2B 7e0c70445e2822d34c0f48f99debbe2f99e35601cfc3ce8e5d5a22888b29b6af5ca5090c66ebc7fb77990e2fdce37b958a2803d2a4be7e626359b48a7ad68c01 SHA512 8c7c35ed7c2d747d0d47a0d9588f2486a93852f31e7e1120688f41b09089e9507534fbae5d609b18bb28899de7dce2670ea1b87eb2e90cf06bbc116cac7daa22 EBUILD libomp-12.0.0_rc1.ebuild 2858 BLAKE2B 1472a9384d0b92de2402af12c14ea7225aab79198114290c1511b12df7bd63956f95c40791928f85cc67a88c92f62059ac4d4fda1f7a0c3e831a33d827ad19b7 SHA512 2524adeb5ce85b79ea591e273631ffb65bcb8e409367bb7db8a38e9368622cf39d6d7ca2d200b7a57ca125081844ebdc625fdda33193f64e1af0c93ed0f48a22 +EBUILD libomp-12.0.0_rc2.ebuild 2858 BLAKE2B 1472a9384d0b92de2402af12c14ea7225aab79198114290c1511b12df7bd63956f95c40791928f85cc67a88c92f62059ac4d4fda1f7a0c3e831a33d827ad19b7 SHA512 2524adeb5ce85b79ea591e273631ffb65bcb8e409367bb7db8a38e9368622cf39d6d7ca2d200b7a57ca125081844ebdc625fdda33193f64e1af0c93ed0f48a22 EBUILD libomp-13.0.0.9999.ebuild 2858 BLAKE2B 1472a9384d0b92de2402af12c14ea7225aab79198114290c1511b12df7bd63956f95c40791928f85cc67a88c92f62059ac4d4fda1f7a0c3e831a33d827ad19b7 SHA512 2524adeb5ce85b79ea591e273631ffb65bcb8e409367bb7db8a38e9368622cf39d6d7ca2d200b7a57ca125081844ebdc625fdda33193f64e1af0c93ed0f48a22 EBUILD libomp-9.0.1.ebuild 3007 BLAKE2B 4ff0025a12b14723eede00852d2b72cdf158f8b11b523412f174e46eaae790dca0fe380a52ed4ee7df08256a2f51a186fa1aed284a3bd5eb8b5a2ad3035e7431 SHA512 aaa759ee05e47b1f97a12b63b0ee432027974a221f966b22ae34fdc6e4cce4fa7ba3d315a0d4f2eade73325031354cd26748d4fe7edf236d8df3cea64ea1af58 MISC metadata.xml 825 BLAKE2B 07802144018f2f74b0927b53a346f99cbc7e36dbf501bb8dfc786f8d549c10eb688afafb1759f13d4d56d10f1bcae67dfa86cc2047cc39a9655a09a22e9a4260 SHA512 de43d5be94a5ea1cdfd3ae747d55b50d5d6ee577743f55d006d585d2d5acd5b3100845486ac415685f07361cd9985bae9347fff9c65417d198c49a61b4f6ba5e diff --git a/sys-libs/libomp/libomp-11.0.1.ebuild b/sys-libs/libomp/libomp-11.0.1.ebuild index 80389c54aa07..6706c0daa20f 100644 --- a/sys-libs/libomp/libomp-11.0.1.ebuild +++ b/sys-libs/libomp/libomp-11.0.1.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://openmp.llvm.org" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" +KEYWORDS="amd64 arm arm64 ~ppc64 ~riscv x86 ~amd64-linux ~x64-macos" IUSE="cuda hwloc kernel_linux offload ompt test" # CUDA works only with the x86_64 ABI REQUIRED_USE="offload? ( cuda? ( abi_x86_64 ) )" diff --git a/sys-libs/libomp/libomp-11.1.0_rc3.ebuild b/sys-libs/libomp/libomp-11.1.0.ebuild index 72e1ed678464..80389c54aa07 100644 --- a/sys-libs/libomp/libomp-11.1.0_rc3.ebuild +++ b/sys-libs/libomp/libomp-11.1.0.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://openmp.llvm.org" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" IUSE="cuda hwloc kernel_linux offload ompt test" # CUDA works only with the x86_64 ABI REQUIRED_USE="offload? ( cuda? ( abi_x86_64 ) )" diff --git a/sys-libs/libomp/libomp-11.1.0_rc1.ebuild b/sys-libs/libomp/libomp-11.1.0_rc1.ebuild deleted file mode 100644 index 72e1ed678464..000000000000 --- a/sys-libs/libomp/libomp-11.1.0_rc1.ebuild +++ /dev/null @@ -1,105 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake-multilib linux-info llvm.org python-any-r1 - -DESCRIPTION="OpenMP runtime library for LLVM/clang compiler" -HOMEPAGE="https://openmp.llvm.org" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="" -IUSE="cuda hwloc kernel_linux offload ompt test" -# CUDA works only with the x86_64 ABI -REQUIRED_USE="offload? ( cuda? ( abi_x86_64 ) )" -RESTRICT="!test? ( test )" - -RDEPEND=" - hwloc? ( sys-apps/hwloc:0=[${MULTILIB_USEDEP}] ) - offload? ( - virtual/libelf:=[${MULTILIB_USEDEP}] - dev-libs/libffi:=[${MULTILIB_USEDEP}] - cuda? ( dev-util/nvidia-cuda-toolkit:= ) - )" -# tests: -# - dev-python/lit provides the test runner -# - sys-devel/llvm provide test utils (e.g. FileCheck) -# - sys-devel/clang provides the compiler to run tests -DEPEND="${RDEPEND}" -BDEPEND="dev-lang/perl - offload? ( virtual/pkgconfig ) - test? ( - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - >=sys-devel/clang-6 - )" - -LLVM_COMPONENTS=( openmp ) -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -kernel_pds_check() { - if use kernel_linux && kernel_is -lt 4 15 && kernel_is -ge 4 13; then - local CONFIG_CHECK="~!SCHED_PDS" - local ERROR_SCHED_PDS="\ -PDS scheduler versions >= 0.98c < 0.98i (e.g. used in kernels >= 4.13-pf11 -< 4.14-pf9) do not implement sched_yield() call which may result in horrible -performance problems with libomp. If you are using one of the specified -kernel versions, you may want to disable the PDS scheduler." - - check_extra_config - fi -} - -pkg_pretend() { - kernel_pds_check -} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - local libdir="$(get_libdir)" - local mycmakeargs=( - -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}" - - -DLIBOMP_USE_HWLOC=$(usex hwloc) - -DLIBOMP_OMPT_SUPPORT=$(usex ompt) - - -DOPENMP_ENABLE_LIBOMPTARGET=$(usex offload) - - # do not install libgomp.so & libiomp5.so aliases - -DLIBOMP_INSTALL_ALIASES=OFF - # disable unnecessary hack copying stuff back to srcdir - -DLIBOMP_COPY_EXPORTS=OFF - ) - use offload && mycmakeargs+=( - # this is non-fatal and libomp checks for CUDA conditionally - # to ABI, so we can just ignore passing the wrong value - # on non-amd64 ABIs - -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda) - ) - use test && mycmakeargs+=( - # this project does not use standard LLVM cmake macros - -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit" - -DOPENMP_LIT_ARGS="$(get_lit_flags)" - - -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")" - -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")" - ) - cmake_src_configure -} - -multilib_src_test() { - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - - cmake_build check-libomp -} diff --git a/sys-libs/libomp/libomp-11.1.0_rc2.ebuild b/sys-libs/libomp/libomp-12.0.0_rc2.ebuild index 72e1ed678464..592037ef0b29 100644 --- a/sys-libs/libomp/libomp-11.1.0_rc2.ebuild +++ b/sys-libs/libomp/libomp-12.0.0_rc2.ebuild @@ -37,7 +37,7 @@ BDEPEND="dev-lang/perl >=sys-devel/clang-6 )" -LLVM_COMPONENTS=( openmp ) +LLVM_COMPONENTS=( openmp llvm/include ) llvm.org_set_globals python_check_deps() { diff --git a/sys-libs/libselinux/Manifest b/sys-libs/libselinux/Manifest index b1f71f13a6bb..e4ac99b07454 100644 --- a/sys-libs/libselinux/Manifest +++ b/sys-libs/libselinux/Manifest @@ -1,4 +1,3 @@ -AUX 0001-libselinux-Use-Python-distutils-to-install-SELinux-p.patch 8172 BLAKE2B 3c301b206a809311fd7eb1eb35b3925c064731146e35702b7dab5b47f41cb2a61723db7243d67caf4ce317f3b4ca2d1a999b0533e0185c44b2892e72d8cf8bb0 SHA512 287e82b5888f973bc3545b1777d9baa33965fb2bb3810834871b6843b163d11e4dacde9a7361088f715f70947e9087de89331b0b35dec1e37bddd523e5a12c1b DIST libselinux-3.1.tar.gz 204703 BLAKE2B 72ff2d99dd6640405e804f58bdfbf05e152615ea92f902b3942602af13dc17080afeabb942ed33ae6b3f528870f4b11584e533848e455a97bf8f7151a8d44646 SHA512 57730cddd2d4751556d9e1f207c0f85119c81848f0620c16239e997150989e3f9a586a8c23861fd51ed89f7e084ad441190a58a288258a49a95f7beef7dbbb13 EBUILD libselinux-3.1-r1.ebuild 4224 BLAKE2B c2bf188a6ff42906814cf9416f603a8b4dc8989c37b6906192819314b7383f265cd6a0bc3f81c86a2715587704eeabaf8a4c753220abbf9a5a3fdf8cfeec31a8 SHA512 1b185b4d9bbed743116612cf0f00ab12e60cec2a02ecb763299e5b01de39ea5d56c3120c84f2b6e1481c4547cdce4e2663b558217d282373956348be56d5d144 EBUILD libselinux-9999.ebuild 4226 BLAKE2B c99193817d80db37675b72fd0665bd7406539cb75dd922e9e63bb947b9d92c424642d26607fbbe80a284b1e31332cc249b43bff5819d8aec3d87e9f0491e9b1f SHA512 84ce0aa4ab0b31a6c519febb829e1c424d28c911ac5d2617336e75c0c177cc0886fb93444fc668ceab788def80b32376c8c6770e92406869508de3d14b1f3b3f diff --git a/sys-libs/libselinux/files/0001-libselinux-Use-Python-distutils-to-install-SELinux-p.patch b/sys-libs/libselinux/files/0001-libselinux-Use-Python-distutils-to-install-SELinux-p.patch deleted file mode 100644 index 896876a00d6b..000000000000 --- a/sys-libs/libselinux/files/0001-libselinux-Use-Python-distutils-to-install-SELinux-p.patch +++ /dev/null @@ -1,205 +0,0 @@ -From 2efa06857575e4118e91ca250b6b92da68b130d5 Mon Sep 17 00:00:00 2001 -From: Petr Lautrbach <plautrba@redhat.com> -Date: Fri, 7 Jun 2019 17:35:44 +0200 -Subject: [PATCH] libselinux: Use Python distutils to install SELinux python - bindings - -Follow officially documented way how to build C extension modules using -distutils - https://docs.python.org/3.8/extending/building.html#building - -Fixes: - -- selinux python module fails to load when it's built using SWIG-4.0: - ->>> import selinux -Traceback (most recent call last): - File "<stdin>", line 1, in <module> - File "/usr/lib64/python3.7/site-packages/selinux/__init__.py", line 13, in <module> - from . import _selinux -ImportError: cannot import name '_selinux' from 'selinux' (/usr/lib64/python3.7/site-packages/selinux/__init__.py) - -SWIG-4.0 changed (again?) its behavior so that it uses: from . import _selinux -which looks for _selinux module in the same directory as where __init__.py is - -$(PYLIBDIR)/site-packages/selinux. But _selinux module is installed into -$(PYLIBDIR)/site-packages/ since a9604c30a5e2f ("libselinux: Change the location -of _selinux.so"). - -- audit2why python module fails to build with Python 3.8 - -cc -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -DOVERRIDE_GETTID=0 -I../include -D_GNU_SOURCE -DDISABLE_RPM -DNO_ANDROID_BACKEND -DUSE_PCRE2 -DPCRE2_CODE_UNIT_WIDTH=8 -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -L. -shared -o python-3.8audit2why.so python-3.8audit2why.lo -lselinux -l:libsepol.a -Wl,-soname,audit2why.so,--version-script=audit2why.map,-z,defs -/usr/bin/ld: python-3.8audit2why.lo: in function `finish': -/builddir/build/BUILD/libselinux-2.9/src/audit2why.c:166: undefined reference to `PyArg_ParseTuple' -/usr/bin/ld: python-3.8audit2why.lo: in function `_Py_INCREF': -/usr/include/python3.8/object.h:449: undefined reference to `_Py_NoneStruct' -/usr/bin/ld: /usr/include/python3.8/object.h:449: undefined reference to `_Py_NoneStruct' -/usr/bin/ld: python-3.8audit2why.lo: in function `check_booleans': -/builddir/build/BUILD/libselinux-2.9/src/audit2why.c:84: undefined reference to `PyExc_RuntimeError' -... - -It's related to the following Python change -https://docs.python.org/dev/whatsnew/3.8.html#debug-build-uses-the-same-abi-as-release-build - -Python distutils adds correct link options automatically. - -- selinux python module doesn't provide any Python metadata - -When selinux python module was built manually, it didn't provide any metadata. -distutils takes care about that so that selinux Python module is visible for -pip: - -$ pip3 list | grep selinux -selinux 2.9 - -Signed-off-by: Petr Lautrbach <plautrba@redhat.com> ---- - libselinux/src/.gitignore | 2 +- - libselinux/src/Makefile | 36 ++++++++---------------------------- - libselinux/src/setup.py | 24 ++++++++++++++++++++++++ - 3 files changed, 33 insertions(+), 29 deletions(-) - create mode 100644 libselinux/src/setup.py - -diff --git libselinux/src/.gitignore libselinux/src/.gitignore -index 4dcc3b3b..428afe5a 100644 ---- libselinux/src/.gitignore -+++ libselinux/src/.gitignore -@@ -1,4 +1,4 @@ - selinux.py --selinuxswig_wrap.c -+selinuxswig_python_wrap.c - selinuxswig_python_exception.i - selinuxswig_ruby_wrap.c -diff --git libselinux/src/Makefile libselinux/src/Makefile -index e9ed0383..2b1696a0 100644 ---- libselinux/src/Makefile -+++ libselinux/src/Makefile -@@ -36,7 +36,7 @@ TARGET=libselinux.so - LIBPC=libselinux.pc - SWIGIF= selinuxswig_python.i selinuxswig_python_exception.i - SWIGRUBYIF= selinuxswig_ruby.i --SWIGCOUT= selinuxswig_wrap.c -+SWIGCOUT= selinuxswig_python_wrap.c - SWIGPYOUT= selinux.py - SWIGRUBYCOUT= selinuxswig_ruby_wrap.c - SWIGLOBJ:= $(patsubst %.c,$(PYPREFIX)%.lo,$(SWIGCOUT)) -@@ -55,7 +55,7 @@ ifeq ($(LIBSEPOLA),) - LDLIBS_LIBSEPOLA := -l:libsepol.a - endif - --GENERATED=$(SWIGCOUT) $(SWIGRUBYCOUT) selinuxswig_python_exception.i -+GENERATED=$(SWIGCOUT) $(SWIGRUBYCOUT) $(SWIGCOUT) selinuxswig_python_exception.i - SRCS= $(filter-out $(GENERATED) audit2why.c, $(sort $(wildcard *.c))) - - MAX_STACK_SIZE=32768 -@@ -125,25 +125,18 @@ DISABLE_FLAGS+= -DNO_ANDROID_BACKEND - SRCS:= $(filter-out label_backends_android.c, $(SRCS)) - endif - --SWIG = swig -Wall -python -o $(SWIGCOUT) -outdir ./ $(DISABLE_FLAGS) -- - SWIGRUBY = swig -Wall -ruby -o $(SWIGRUBYCOUT) -outdir ./ $(DISABLE_FLAGS) - - all: $(LIBA) $(LIBSO) $(LIBPC) - --pywrap: all $(SWIGFILES) $(AUDIT2WHYSO) -+pywrap: all selinuxswig_python_exception.i -+ CFLAGS="$(CFLAGS) $(SWIG_CFLAGS)" $(PYTHON) setup.py build_ext -I $(DESTDIR)$(INCLUDEDIR) -L $(DESTDIR)$(LIBDIR) - - rubywrap: all $(SWIGRUBYSO) - --$(SWIGLOBJ): $(SWIGCOUT) -- $(CC) $(CFLAGS) $(SWIG_CFLAGS) $(PYINC) -fPIC -DSHARED -c -o $@ $< -- - $(SWIGRUBYLOBJ): $(SWIGRUBYCOUT) - $(CC) $(CFLAGS) $(SWIG_CFLAGS) $(RUBYINC) -fPIC -DSHARED -c -o $@ $< - --$(SWIGSO): $(SWIGLOBJ) -- $(CC) $(CFLAGS) $(LDFLAGS) -L. -shared -o $@ $< -lselinux $(PYLIBS) -- - $(SWIGRUBYSO): $(SWIGRUBYLOBJ) - $(CC) $(CFLAGS) $(LDFLAGS) -L. -shared -o $@ $^ -lselinux $(RUBYLIBS) - -@@ -161,29 +154,15 @@ $(LIBPC): $(LIBPC).in ../VERSION - selinuxswig_python_exception.i: ../include/selinux/selinux.h - bash -e exception.sh > $@ || (rm -f $@ ; false) - --$(AUDIT2WHYLOBJ): audit2why.c -- $(CC) $(filter-out -Werror, $(CFLAGS)) $(PYINC) -fPIC -DSHARED -c -o $@ $< -- --$(AUDIT2WHYSO): $(AUDIT2WHYLOBJ) $(LIBSEPOLA) -- $(CC) $(CFLAGS) $(LDFLAGS) -L. -shared -o $@ $^ -lselinux $(LDLIBS_LIBSEPOLA) $(PYLIBS) -Wl,-soname,audit2why.so,--version-script=audit2why.map,-z,defs -- - %.o: %.c policy.h - $(CC) $(CFLAGS) $(TLSFLAGS) -c -o $@ $< - - %.lo: %.c policy.h - $(CC) $(CFLAGS) -fPIC -DSHARED -c -o $@ $< - --$(SWIGCOUT): $(SWIGIF) -- $(SWIG) $< -- --$(SWIGPYOUT): $(SWIGCOUT) -- - $(SWIGRUBYCOUT): $(SWIGRUBYIF) - $(SWIGRUBY) $< - --swigify: $(SWIGIF) -- $(SWIG) $< -- - install: all - test -d $(DESTDIR)$(LIBDIR) || install -m 755 -d $(DESTDIR)$(LIBDIR) - install -m 644 $(LIBA) $(DESTDIR)$(LIBDIR) -@@ -194,10 +173,9 @@ install: all - ln -sf --relative $(DESTDIR)$(SHLIBDIR)/$(LIBSO) $(DESTDIR)$(LIBDIR)/$(TARGET) - - install-pywrap: pywrap -- test -d $(DESTDIR)$(PYTHONLIBDIR)/selinux || install -m 755 -d $(DESTDIR)$(PYTHONLIBDIR)/selinux -- install -m 755 $(SWIGSO) $(DESTDIR)$(PYTHONLIBDIR)/_selinux$(PYCEXT) -- install -m 755 $(AUDIT2WHYSO) $(DESTDIR)$(PYTHONLIBDIR)/selinux/audit2why$(PYCEXT) -+ $(PYTHON) setup.py install --prefix=$(PREFIX) `test -n "$(DESTDIR)" && echo --root $(DESTDIR)` - install -m 644 $(SWIGPYOUT) $(DESTDIR)$(PYTHONLIBDIR)/selinux/__init__.py -+ ln -sf --relative $(DESTDIR)$(PYTHONLIBDIR)/selinux/_selinux$(PYCEXT) $(DESTDIR)$(PYTHONLIBDIR)/_selinux$(PYCEXT) - - install-rubywrap: rubywrap - test -d $(DESTDIR)$(RUBYINSTALL) || install -m 755 -d $(DESTDIR)$(RUBYINSTALL) -@@ -208,6 +186,8 @@ relabel: - - clean-pywrap: - -rm -f $(SWIGLOBJ) $(SWIGSO) $(AUDIT2WHYLOBJ) $(AUDIT2WHYSO) -+ $(PYTHON) setup.py clean -+ -rm -rf build *~ \#* *pyc .#* - - clean-rubywrap: - -rm -f $(SWIGRUBYLOBJ) $(SWIGRUBYSO) -diff --git libselinux/src/setup.py libselinux/src/setup.py -new file mode 100644 -index 00000000..4dc03f55 ---- /dev/null -+++ libselinux/src/setup.py -@@ -0,0 +1,24 @@ -+#!/usr/bin/python3 -+ -+from distutils.core import Extension, setup -+ -+setup( -+ name="selinux", -+ version="2.9", -+ description="SELinux python 3 bindings", -+ author="SELinux Project", -+ author_email="selinux@vger.kernel.org", -+ ext_modules=[ -+ Extension('selinux._selinux', -+ sources=['selinuxswig_python.i'], -+ include_dirs=['../include'], -+ library_dirs=['.'], -+ libraries=['selinux']), -+ Extension('selinux.audit2why', -+ sources=['audit2why.c'], -+ include_dirs=['../include'], -+ library_dirs=['.'], -+ libraries=['selinux'], -+ extra_link_args=['-l:libsepol.a', '-Wl,--version-script=audit2why.map']) -+ ], -+) --- -2.21.0 - diff --git a/sys-libs/libstatgrab/Manifest b/sys-libs/libstatgrab/Manifest index 2982fbf22968..d7b7b06de093 100644 --- a/sys-libs/libstatgrab/Manifest +++ b/sys-libs/libstatgrab/Manifest @@ -1,4 +1,6 @@ AUX libstatgrab-0.91-tinfo.patch 1833 BLAKE2B 77d33279b50f9210260f3897912735573a6fca5be942b6381413544ae139c7f79d74f8e3fffd231423cf3f7a5d7468579f0fa567156fc83a3e6421ce9fb81c92 SHA512 71908cdac0684e4b6fae04f30156ca390d9bd525467f0954e94b5725e9ef5fe368cfd78ece333d8ffca5e02fc33b66e993655960a3cd1b9667a479be73943b6b DIST libstatgrab-0.91.tar.gz 776046 BLAKE2B 29906d4df8b8e8f1ae8fedf5ccac12b282b5cba66715a2d1b51059426e7cb073862e49cbee535c0f9ea7a34171cbc3d143a38a92149ffe5f22ed9ec426fec0be SHA512 f360f2e1b185bf9603b1d9c50649b0050e9502128ff81a9f4de88457e2f5203deafe7fd7ac13ebc4cc56e6ecd1bdf8aacae64987bdf36af0c9929e30626915f6 -EBUILD libstatgrab-0.91.ebuild 1028 BLAKE2B ca1d27101a697b2fe9ccafdcb3537df1a9a31a2a8ce42b64827b3d6cca0a64fcb1b1c86b798879de66ca1eecd7b491c482961e7090216399e190e99122b6946f SHA512 20baae8873265e26d344c5dbac272ca1c7e5408546f2e70b21f7017e5219ad0a36a52e37a911d897f1eb9141477922193f4decbbe66392b26b9ee8cf1ba8aeed -MISC metadata.xml 166 BLAKE2B c254f1fb642881aba57637be14fb0a89b10384f91a128feaec3a8c870d76efc2cbacb92caccc0dee2dd19a5ac5eaf8643080dafa05c4e2ac96a68568927e5afd SHA512 a56648c974a1d14dd4c18237532773c72057a13ab90c58b5da04f185e3c12a8bd8d5c21fb06053507f31766291a82dc7d87b34cd65fd94cfe2af7295c813ef84 +DIST libstatgrab-0.92.tar.gz 815262 BLAKE2B d8ca538f01d9e0b1d5c459c9c0da6df5b6806e02649d726c3ee8a2f69233a7183df6dda95980a8e6f8b438478ec28f4baa9d623d5372e5e3e28ea4909e905872 SHA512 a99c6be56d930779d0d8f6f81e64e2f31e19423009c39e925b39116a42aa2c6037651992ac2168c43a5c6ecadf3e4a58486ab6148cf96118c429b04fdcf65192 +EBUILD libstatgrab-0.91.ebuild 946 BLAKE2B b0cf0184f773911a205e417f7838d145e6d3204c9c394faa91b76b146ccd7dc714b57f23f46eaa739ca0e54cf327169197e1b7ecc5f85cdd9cfff1e0c819b389 SHA512 30b3af926914c5d515162b20d86e0c3f9ccb6c640f748a74f01bbff2cd80d7e07c3be5261f573a6eee25f946f99d28d2e653adebe36cd3b8af26ff1ea5e0e434 +EBUILD libstatgrab-0.92.ebuild 922 BLAKE2B 4657ab981a10f60b1b7981c95b2ed5ff0a41cd16cc78e82a35fe7916833f678a46e8395095c6c3f9c98fcf22f6059a113e7ed2883a2ddfcaf8c1bb52207d25be SHA512 409025763dc226cebc532ebc2dbfdc42c51c67483bd6c3af6073b7c53a3def232590f6fcf0b016f360fca33a40418c386fc035d0b68980e276983693d0d07dab +MISC metadata.xml 255 BLAKE2B ba7d0981de71831366e07fb905548792571c3660154eed0b3988fb0e57ae92e133bfa15076550b754fbe848d07956764d68f03aa293270aba07d459561298301 SHA512 d099268b71914186aa1cb481cffe2d080ad5b16aa720a3d76e8d012e5adcca479bbbffb72c50a76bf95535bb5c89525b51786157c66476a0431e3bff317b0ece diff --git a/sys-libs/libstatgrab/libstatgrab-0.91.ebuild b/sys-libs/libstatgrab/libstatgrab-0.91.ebuild index 2e211e2a49ee..8fa5c728d722 100644 --- a/sys-libs/libstatgrab/libstatgrab-0.91.ebuild +++ b/sys-libs/libstatgrab/libstatgrab-0.91.ebuild @@ -1,39 +1,42 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=5 +EAPI=7 -AUTOTOOLS_AUTORECONF=frob -inherit autotools-utils +inherit autotools DESCRIPTION="A tool to provide access to statistics about the system on which it's run" HOMEPAGE="https://www.i-scream.org/libstatgrab/" SRC_URI="https://www.mirrorservice.org/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/${P}.tar.gz" LICENSE="|| ( GPL-2 LGPL-2.1 )" -SLOT=0 +SLOT="0" KEYWORDS="amd64 ~arm ~arm64 ~ia64 ppc x86" -IUSE="doc examples static-libs" +IUSE="doc examples" RDEPEND="sys-libs/ncurses" DEPEND="${RDEPEND}" DOCS=( ChangeLog PLATFORMS NEWS AUTHORS README ) -PATCHES=( "${FILESDIR}"/${P}-tinfo.patch ) +PATCHES=( + "${FILESDIR}"/${P}-tinfo.patch +) src_configure() { local myeconfargs=( --disable-setgid-binaries --disable-setuid-binaries --with-ncurses - $(use_enable static-libs static) + --disable-static ) - autotools-utils_src_configure + + econf "${myeconfargs[@]}" } src_install() { - autotools-utils_src_install + default + if use examples; then docompress -x /usr/share/doc/${PF}/examples insinto /usr/share/doc/${PF}/examples diff --git a/sys-libs/libstatgrab/libstatgrab-0.92.ebuild b/sys-libs/libstatgrab/libstatgrab-0.92.ebuild new file mode 100644 index 000000000000..aee5352b1938 --- /dev/null +++ b/sys-libs/libstatgrab/libstatgrab-0.92.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools + +DESCRIPTION="A tool to provide access to statistics about the system on which it's run" +HOMEPAGE="https://www.i-scream.org/libstatgrab/" +SRC_URI="https://www.mirrorservice.org/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/${P}.tar.gz" + +LICENSE="|| ( GPL-2 LGPL-2.1 )" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~x86" +IUSE="examples" + +RDEPEND="sys-libs/ncurses" +DEPEND="${RDEPEND}" + +DOCS=( ChangeLog PLATFORMS NEWS AUTHORS README ) + +src_configure() { + local myeconfargs=( + --disable-setgid-binaries + --disable-setuid-binaries + --with-ncurses + --disable-static + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + if use examples; then + docompress -x /usr/share/doc/${PF}/examples + docinto examples + dodoc -r examples/* + fi + + find "${ED}" -name '*.la' -delete || die +} diff --git a/sys-libs/libstatgrab/metadata.xml b/sys-libs/libstatgrab/metadata.xml index 6f49eba8f496..0d81e83f2137 100644 --- a/sys-libs/libstatgrab/metadata.xml +++ b/sys-libs/libstatgrab/metadata.xml @@ -1,5 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<!-- maintainer-needed --> + <!-- maintainer-needed --> + <upstream> + <remote-id type="github">libstatgrab/libstatgrab</remote-id> + </upstream> </pkgmetadata> diff --git a/sys-libs/libunwind/Manifest b/sys-libs/libunwind/Manifest index 6e8ac3787293..5f868d3a44d3 100644 --- a/sys-libs/libunwind/Manifest +++ b/sys-libs/libunwind/Manifest @@ -4,5 +4,4 @@ AUX libunwind-1.2-ia64-ptrace-coredump.patch 1445 BLAKE2B 0b4b6b5d7b3cfc8be58c39 AUX libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch 1290 BLAKE2B eac40a5cb05fbda00e5dde5b4ecedfa21442cb5481281b8aac45b118d8b8d503bafe69aa9adb93cac9c7e89cb72f8b44bdb7018a09aa4c9d512e20a457c7d78f SHA512 36b76eefdff3ca832696c13b18d9153ca89d5b648c7df11d3c112a85e9ab92e9f124fdbd05d2d9017bd9c5cdc6bbb2de5038918c9f3a2695c8fa3a05835abdb0 DIST libunwind-1.5.0.tar.gz 878355 BLAKE2B ee35441289926ac22a58bedb9f831d8e13bacd663a99b3ce25eed229f25f0423bbbd90e09e3d62b003518d7a620aa6d15b0dd5b93632736a89fa0667b35d5fc2 SHA512 1df20ca7a8cee2f2e61294fa9b677e88fec52e9d5a329f88d05c2671c69fa462f6c18808c97ca9ff664ef57292537a844f00b18d142b1938c9da701ca95a4bab EBUILD libunwind-1.5.0-r1.ebuild 3232 BLAKE2B c13f536ad9073ac1259526b1446b5541f9ea6687c864a41a7b12a6fe79249d37baafce39f55e3d099f6c1b37e269ac9d01d86f48f5c2040e85f0b538021b6a0f SHA512 f637c6c974a4f5017e3bf27b88b1d71be1d50ab70bf444949a2d28a2d143e78e70462bb7495c9a2c691bd91bad75a89b9e6f454e014c3473d177ade23df0174c -EBUILD libunwind-1.5.0.ebuild 3233 BLAKE2B 3f2cf31fabbc43bb0ec23353ae4bb93baf94df6fb2b0ce526989df3bb5d1ac705d537c1342090fd3d27aec779f661df4f83f64a362a159bb4bc9183f269e8846 SHA512 1ca06a8a5f3332746c4964d0befa05579eba67593555a86b09496badd1e5485bf04640760ea1300699c3655bde91c8cad12ca4a2a08f635459c2819a4e192f7a MISC metadata.xml 573 BLAKE2B e47d22f4aae366401c590e779ad2344f03a4bb0657b60f31b9738f38083cbef92d59b06fbb7ccb7b4c74d97ead90fbba1c3a41955f6510af7fafb536d20c95fa SHA512 8bf89292bb26d81b26ab36137965ef3f4db2d02a4bc6c6413c2806b4a6552ec7ff87249c2d09b6812a91948248c5fd006e3c2b7f888590fce80bab5256dd639c diff --git a/sys-libs/libunwind/libunwind-1.5.0.ebuild b/sys-libs/libunwind/libunwind-1.5.0.ebuild deleted file mode 100644 index 0426d0b78971..000000000000 --- a/sys-libs/libunwind/libunwind-1.5.0.ebuild +++ /dev/null @@ -1,107 +0,0 @@ -# Copyright 2005-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -MY_PV=${PV/_/-} -MY_P=${PN}-${MY_PV} -inherit autotools flag-o-matic libtool multilib-minimal - -DESCRIPTION="Portable and efficient API to determine the call-chain of a program" -HOMEPAGE="https://savannah.nongnu.org/projects/libunwind" -SRC_URI="mirror://nongnu/libunwind/${MY_P}.tar.gz" - -LICENSE="MIT" -SLOT="0/8" # libunwind.so.8 -KEYWORDS="amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 -sparc x86 ~amd64-linux ~x86-linux" -IUSE="debug debug-frame doc libatomic lzma +static-libs zlib" - -RESTRICT="test" # some tests are broken (toolchain version dependent, rely on external binaries) - -# We just use the header from libatomic. -RDEPEND=" - lzma? ( app-arch/xz-utils[static-libs?,${MULTILIB_USEDEP}] ) - zlib? ( sys-libs/zlib[static-libs?,${MULTILIB_USEDEP}] ) -" -DEPEND="${RDEPEND} - libatomic? ( dev-libs/libatomic_ops[${MULTILIB_USEDEP}] )" - -S="${WORKDIR}/${MY_P}" - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/libunwind.h - - # see libunwind.h for the full list of arch-specific headers - /usr/include/libunwind-aarch64.h - /usr/include/libunwind-arm.h - /usr/include/libunwind-hppa.h - /usr/include/libunwind-ia64.h - /usr/include/libunwind-mips.h - /usr/include/libunwind-ppc32.h - /usr/include/libunwind-ppc64.h - /usr/include/libunwind-sh.h - /usr/include/libunwind-tilegx.h - /usr/include/libunwind-x86.h - /usr/include/libunwind-x86_64.h -) - -PATCHES=( - "${FILESDIR}"/${PN}-1.2-coredump-regs.patch #586092 - "${FILESDIR}"/${PN}-1.2-ia64-ptrace-coredump.patch - "${FILESDIR}"/${PN}-1.2-ia64-missing.patch - # needs refresh: - #"${FILESDIR}"/${PN}-1.2.1-only-include-execinfo_h-if-avaliable.patch -) - -src_prepare() { - default - chmod +x src/ia64/mk_cursor_i || die - # Since we have tests disabled via RESTRICT, disable building in the subdir - # entirely. This works around some build errors too. #484846 - sed -i -e '/^SUBDIRS/s:tests::' Makefile.in || die - - elibtoolize - eautoreconf - - # Let's wait for proper fix upstream in https://github.com/libunwind/libunwind/issues/154 - # Meanwhile workaround for gcc-10 with -fcommon, bug #706560 - append-cflags -fcommon -} - -multilib_src_configure() { - # --enable-cxx-exceptions: always enable it, headers provide the interface - # and on some archs it is disabled by default causing a mismatch between the - # API and the ABI, bug #418253 - # conservative-checks: validate memory addresses before use; as of 1.0.1, - # only x86_64 supports this, yet may be useful for debugging, couple it with - # debug useflag. - ECONF_SOURCE="${S}" \ - ac_cv_header_atomic_ops_h=$(usex libatomic) \ - econf \ - --enable-cxx-exceptions \ - --enable-coredump \ - --enable-ptrace \ - --enable-setjmp \ - $(use_enable debug-frame) \ - $(use_enable doc documentation) \ - $(use_enable lzma minidebuginfo) \ - $(use_enable static-libs static) \ - $(use_enable zlib zlibdebuginfo) \ - $(use_enable debug conservative_checks) \ - $(use_enable debug) -} - -multilib_src_compile() { - # Bug 586208 - CCACHE_NODIRECT=1 default -} - -multilib_src_test() { - # Explicitly allow parallel build of tests. - # Sandbox causes some tests to freak out. - SANDBOX_ON=0 emake check -} - -multilib_src_install_all() { - find "${D}" -name "*.la" -type f -delete || die -} diff --git a/sys-libs/libxcrypt/Manifest b/sys-libs/libxcrypt/Manifest index 4636c457e95c..ea9de3a1cc84 100644 --- a/sys-libs/libxcrypt/Manifest +++ b/sys-libs/libxcrypt/Manifest @@ -3,5 +3,5 @@ AUX libxcrypt-4.4.12-pythonver.patch 616 BLAKE2B 73c7039127b23c075a7b8e5bc897299 DIST libxcrypt-4.4.16.tar.gz 480694 BLAKE2B 0e93c2ff45a8148f82a80a67fb732a3ef42e87505d19258023f91d3352a382483204e77e2704e7a0de15f4f1e38a326d0867506a5580faf8c81857270588a4a3 SHA512 e1d3b1262c6be7c6c8847b8c4eb8191d9e5e482798be6f1186876c72f3d8c737124378ec45a38aa464f556e10a557b96f855bd371f03c3611eada27904bf6781 DIST libxcrypt-4.4.17.tar.gz 519096 BLAKE2B 12cbe3d1f235baddd8d2ec8159f2a7514e75c2f91cf0db18ef909ec11c38ac19efebecec647a90cafb27c7ebc7e940da448ca8f3edd1c49e5cb9cc4407d5198c SHA512 94aaba6ccf9b6d1a32f9a571ee32261cecd393d5b8d8c6f18d740dc7bb29ac0fbd381124e7f0d84882559bb634208c08151b3dc05c9138fa0a229c4ba20fb6f7 EBUILD libxcrypt-4.4.16.ebuild 4192 BLAKE2B 6bc32959800d5fcfe657abb9a40dbac0f9060ac731c2451c4cb981dc3feb5b90f764376b6516890c753a32d4d3b19898a5ce29c124146889c9e31647d471dc2a SHA512 0f262070da5d399e9f2dce3878fc37a8b0270430f8649a01f0e774ee4c4fa26429464b6e727b8263d154d64dff4132407cf35c027c0134ebc937569f376880dd -EBUILD libxcrypt-4.4.17.ebuild 4258 BLAKE2B 53a20134f66fcb9eae163dd0805483d7a3d4044abfbeea617004cfac7d5b3e54d94ee273b87e13981f40c839e7c25ffcc248fa6cbb53148575a995f73d33d455 SHA512 90357ac3c720730262003c3d459ad2b44ffa3368c7551cf40a5a10977e33c10b8b148607eac48cadf49ce870017c4991b54a684ca4e48dab61cd1c97449be263 +EBUILD libxcrypt-4.4.17.ebuild 4264 BLAKE2B 98e94f887cc0ff084d735dae7ca2229e87e2962e30908235b65ccd244b753e8e946b069f2e3c9b578c37240d24e0d128e3ffc19e720ff6f87eb5887742256af8 SHA512 08542e100139bf2504256e5326c56d3eb3b7d4610c77d6b0ddc7b1e12b58c1f84f20e1019bb71d382ffe563b23d9e7405320d9d0a1c165a2ac19f4fc0f39a40a MISC metadata.xml 856 BLAKE2B e9fea1aa08f5b3f0abdd4d490973da2f133ea90e3a366d4549361233f51e674cc646b2fb6b4b15bca72d5a4e3b36be9a06e55afd3a4cb8f439d3958f09f8af25 SHA512 862cf3201efbecfc23167ecd1f6798f6729ba4e76749c174d17baf8aa4887f21d36f40234f35bc1b896e4384d110033b3f2260f01930b926f759e0243039adf8 diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.17.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.17.ebuild index b75180b9c275..3abf0bf469a0 100644 --- a/sys-libs/libxcrypt/libxcrypt-4.4.17.ebuild +++ b/sys-libs/libxcrypt/libxcrypt-4.4.17.ebuild @@ -11,7 +11,7 @@ HOMEPAGE="https://github.com/besser82/libxcrypt" LICENSE="LGPL-2.1+ public-domain BSD BSD-2" SLOT="0/1" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="+compat split-usr +static-libs system test" DEPEND="system? ( diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest index ce703286a546..9c36d51e1500 100644 --- a/sys-libs/llvm-libunwind/Manifest +++ b/sys-libs/llvm-libunwind/Manifest @@ -1,19 +1,17 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151 DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2 DIST llvmorg-11.0.1.tar.gz 122790338 BLAKE2B 0130996b4a8c4d9f757136fd7fb318068c9bfdc565060dec0d4336480c4ab66c4ae3185a7fdb05f13cf9ee8fd4123b09df938881b75d6e5d3689595114b7e32a SHA512 f5e6ef0b3111aae08a89cd01adb2ff4abfa9ef779c68b9190421d0447efd25c2cc00e5aae9f4764805f5fa31434866043d1510ae7389817e28ae53a5442e2fdf -DIST llvmorg-11.1.0-rc1.tar.gz 122793491 BLAKE2B f4777455f5903cffea284eaffd872be6c287c6c1ebbd0c4b5b5473f146d7f5476f3551998a58d3e976ab90cde7b0d05db2b3be97f4e8e2c3474755ff38739268 SHA512 44e281486c44fa1611042ab658b9833a75f9613b7f896863613cfb99de66d13607fb1e9064f42ea3d89ca7951113465a90fd96ca4544262f165f78bd5261f5a8 -DIST llvmorg-11.1.0-rc2.tar.gz 122794772 BLAKE2B ab533f078d9d6c37e27c578866a07896344a0b4cf4ebf6402f4fa490213e017310d1c882bf63e552e99a5b4f6d1d8c01413420713b200bfa6732eff64f3c47a9 SHA512 88d8f1d938f0ba7ec39478d03a35c09a30bea51735276205494265b1061621b3ebcda8ee4211e896783b1b99a377c9fa68046118b0d6cb7fcb7bea1e960f95b7 -DIST llvmorg-11.1.0-rc3.tar.gz 122785838 BLAKE2B d0998219471476be1a1249b3a2444750585a352047d4dc14de6fec87eb3407d0f4b848757340200d3423cb4090554ae033fb4ec3797446e46556fbb566bb77a3 SHA512 b67874cb127f3f929a3796558cdfbf509b384c4247f4936ba08cecf88ca880a167cf67c23d78104b5bab4a98efd9435d1b923deb7ae7367875414e6c896957d1 +DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81 DIST llvmorg-12.0.0-rc1.tar.gz 134164708 BLAKE2B d4261ff7d9586b47f4cfda3d2cda4b76534f9e17fbd5cdb8861895b8eb466021962f4608bfcdeb52f8fce78850a994fd5eda0560f7211e5c8d1ac9330a738a36 SHA512 3d07d013d0705bb99f56898cc55d054d0d95aeb53b3c756cfab80b4c9097cc4935bcea89b9efde2e503a899b9fccf0dacc0073c9991c8ea352755c5ec68a757a +DIST llvmorg-12.0.0-rc2.tar.gz 134242619 BLAKE2B bb741a311db608fc2ba7eeaab71c5c9f2a430f7fee3f0c5c4334e5c14caa19738d18c87b568de963d57d9b53e808ac412cf8554eca7fcae9ecca65aa4442e197 SHA512 d8f9b3dfeb0fe9b91eb7f49da393784333044db2653373fbb168afd3c8d50f3e3ec7a7b8f44df522d0facafbfe4cfc4d9e2906d19f1e6feb0bdc569b6c10a17d DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD llvm-libunwind-10.0.1.ebuild 3185 BLAKE2B 150bde0a85684ac2cbc01d20139e458f57377c2c9692037e7fec432019b16f073d6e14d772dfee190ab8a682e4b133f538dce51fce3ede54e8e20152575ac7c1 SHA512 4cdf4ce69be5ca630701d4e41bdcfead01eac10ced7edc39a9b20628e3225b65b33ac493d3010f8ac8cfe5cce73b70bb2d4988d1ea00f2766efdbe30c03aa6de EBUILD llvm-libunwind-11.0.0.ebuild 3207 BLAKE2B 38d6419d35871059220e6d43672454fd29a8155da65cd4a729679a01c8bf8a9c97078bd01256126370d2caf48f91bcc44b12c33a8f93f3a737b1128d09e684e7 SHA512 7d450f6dcbf347679c9ac33e8838d9f334bd000e971cdc4c0cd8cfdee0ffe5eee253172fa3c7418e0fa13d6e439e95cd8d816fb69aa2253510c9943486ac1638 -EBUILD llvm-libunwind-11.0.1.ebuild 3213 BLAKE2B 0879af9f4037a6f84f0271228f6b1e73e563e1ce3647f647acab455fe6cb0620e7add0a6a316496aa6e44abd08596e94b37382f64a720a0f8bfe85a83ff1b8ae SHA512 be908911cbaae2c963677fcf13d0737d5fabf2b1798afbd0497744c10856a07e110505d32199cfa3c8c805b3796d2e4737d6c3b19721c09038febd265f27c321 -EBUILD llvm-libunwind-11.1.0_rc1.ebuild 3179 BLAKE2B 151b86081db1a1b1cef8124f2428209c1fb6842228e49123d64aa61431490e6181a7197856f5a475d8b0aad49ff4c4298253d52f95e8c88b15ec2cd988a76a68 SHA512 f345a86c461b6b4f7152eef81abcb77b903bd09312ff541baf41c569fb6be4a96277b42877e5f2aaf0923ddde7de9045ebba04fb15e946fcc1edb281e171b5b8 -EBUILD llvm-libunwind-11.1.0_rc2.ebuild 3179 BLAKE2B 151b86081db1a1b1cef8124f2428209c1fb6842228e49123d64aa61431490e6181a7197856f5a475d8b0aad49ff4c4298253d52f95e8c88b15ec2cd988a76a68 SHA512 f345a86c461b6b4f7152eef81abcb77b903bd09312ff541baf41c569fb6be4a96277b42877e5f2aaf0923ddde7de9045ebba04fb15e946fcc1edb281e171b5b8 -EBUILD llvm-libunwind-11.1.0_rc3.ebuild 3179 BLAKE2B 151b86081db1a1b1cef8124f2428209c1fb6842228e49123d64aa61431490e6181a7197856f5a475d8b0aad49ff4c4298253d52f95e8c88b15ec2cd988a76a68 SHA512 f345a86c461b6b4f7152eef81abcb77b903bd09312ff541baf41c569fb6be4a96277b42877e5f2aaf0923ddde7de9045ebba04fb15e946fcc1edb281e171b5b8 +EBUILD llvm-libunwind-11.0.1.ebuild 3209 BLAKE2B 1d083ebb9be360918af9e89a9eaf98c84b6290414cb8870120d34d2c62c98369e942782a330d654bc80ff62817120dcf676288edabc22ead93b6e18c9d9b87ce SHA512 5c8ff80f595b24bf7cda3d724dba2946a47f57177db716246115c9865320bed3ca7bc8dd90547796d2baafce4036fecc4d7351d57ac925984c5b39ef4fb82e1b +EBUILD llvm-libunwind-11.1.0.ebuild 3213 BLAKE2B 0879af9f4037a6f84f0271228f6b1e73e563e1ce3647f647acab455fe6cb0620e7add0a6a316496aa6e44abd08596e94b37382f64a720a0f8bfe85a83ff1b8ae SHA512 be908911cbaae2c963677fcf13d0737d5fabf2b1798afbd0497744c10856a07e110505d32199cfa3c8c805b3796d2e4737d6c3b19721c09038febd265f27c321 EBUILD llvm-libunwind-12.0.0.9999.ebuild 3191 BLAKE2B c6d413951aed1e093b629506afdb3f76f5887239dc4aedd1d9f7063549d2cad5b286d253df25aacb20116ad6ac6f85453d357eb96de02611d18d5f136d62ebc4 SHA512 99693bac2c943e756f4c7b586d78add1811f91c0bf9bad235bb9a9feb4df1edb779d1e01759ff86a484e48a8bca2ebd6740d5a4c4cdf9dbddab6ebc6a0bd8591 EBUILD llvm-libunwind-12.0.0_rc1.ebuild 3191 BLAKE2B c6d413951aed1e093b629506afdb3f76f5887239dc4aedd1d9f7063549d2cad5b286d253df25aacb20116ad6ac6f85453d357eb96de02611d18d5f136d62ebc4 SHA512 99693bac2c943e756f4c7b586d78add1811f91c0bf9bad235bb9a9feb4df1edb779d1e01759ff86a484e48a8bca2ebd6740d5a4c4cdf9dbddab6ebc6a0bd8591 +EBUILD llvm-libunwind-12.0.0_rc2.ebuild 3191 BLAKE2B c6d413951aed1e093b629506afdb3f76f5887239dc4aedd1d9f7063549d2cad5b286d253df25aacb20116ad6ac6f85453d357eb96de02611d18d5f136d62ebc4 SHA512 99693bac2c943e756f4c7b586d78add1811f91c0bf9bad235bb9a9feb4df1edb779d1e01759ff86a484e48a8bca2ebd6740d5a4c4cdf9dbddab6ebc6a0bd8591 EBUILD llvm-libunwind-13.0.0.9999.ebuild 3191 BLAKE2B c6d413951aed1e093b629506afdb3f76f5887239dc4aedd1d9f7063549d2cad5b286d253df25aacb20116ad6ac6f85453d357eb96de02611d18d5f136d62ebc4 SHA512 99693bac2c943e756f4c7b586d78add1811f91c0bf9bad235bb9a9feb4df1edb779d1e01759ff86a484e48a8bca2ebd6740d5a4c4cdf9dbddab6ebc6a0bd8591 EBUILD llvm-libunwind-9.0.1.ebuild 3351 BLAKE2B 46bb85a2d212aa1c39ea1432dba65e76a7c92ebd25ad1bea24676bc1b3bc384366fd8d0c615719f39c533db0b118fff89b7c6ca12f602d06a00efaf2e57f56f1 SHA512 a4760293bac492040cfb2e05cf365c802f1bbce636b8daed1faafeae715315c8b82962371732d7b688dc056e10ecdee33125f9841b2d042218d26cd761061258 MISC metadata.xml 302 BLAKE2B 1cdee7813ed9a3766b2eddccd14f9e0576ba5cc7f812d7af4f35c8c2e5991790f3800c6473c37da90d72804832fd9af969a2e3bf7aa625f0d3a32da1dbcefacf SHA512 3afaef82e6a495a81e221524ae7604dc170ef5c103333728674faf0417c45ba7996118c10466eaa24f8feef9ed8f0fc60d535a5195462317d61c61a531c8a285 diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-11.0.1.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-11.0.1.ebuild index 0856ae1999ec..30fb0519d758 100644 --- a/sys-libs/llvm-libunwind/llvm-libunwind-11.0.1.ebuild +++ b/sys-libs/llvm-libunwind/llvm-libunwind-11.0.1.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://github.com/llvm-mirror/libunwind" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~x64-macos" +KEYWORDS="amd64 arm arm64 x86 ~x64-macos" IUSE="debug static-libs test" RESTRICT="!test? ( test )" diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0_rc2.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0.ebuild index 350dc8c77379..0856ae1999ec 100644 --- a/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0_rc2.ebuild +++ b/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://github.com/llvm-mirror/libunwind" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" SLOT="0" -KEYWORDS="" +KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~x64-macos" IUSE="debug static-libs test" RESTRICT="!test? ( test )" diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0_rc1.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0_rc1.ebuild deleted file mode 100644 index 350dc8c77379..000000000000 --- a/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0_rc1.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -CMAKE_ECLASS=cmake -PYTHON_COMPAT=( python3_{7..9} ) -inherit cmake-multilib llvm llvm.org python-any-r1 - -DESCRIPTION="C++ runtime stack unwinder from LLVM" -HOMEPAGE="https://github.com/llvm-mirror/libunwind" - -LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="0" -KEYWORDS="" -IUSE="debug static-libs test" -RESTRICT="!test? ( test )" - -RDEPEND="!sys-libs/libunwind" -# llvm-6 for new lit options -DEPEND=" - >=sys-devel/llvm-6" -BDEPEND=" - test? ( >=sys-devel/clang-3.9.0 - $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') - )" - -LLVM_COMPONENTS=( libunwind ) -LLVM_TEST_COMPONENTS=( libcxx{,abi} llvm/cmake ) -llvm.org_set_globals - -python_check_deps() { - has_version "dev-python/lit[${PYTHON_USEDEP}]" -} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - local libdir=$(get_libdir) - - local mycmakeargs=( - -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - -DLIBUNWIND_ENABLE_ASSERTIONS=$(usex debug) - -DLIBUNWIND_ENABLE_STATIC=$(usex static-libs) - -DLLVM_INCLUDE_TESTS=$(usex test) - - # support non-native unwinding; given it's small enough, - # enable it unconditionally - -DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON - ) - if use test; then - local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) - [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" - - mycmakeargs+=( - -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" - -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}" - -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}/libcxx" - ) - fi - - cmake_src_configure -} - -build_libcxxabi() { - local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" - local CMAKE_USE_DIR=${WORKDIR}/libcxxabi - local BUILD_DIR=${BUILD_DIR}/libcxxabi - local mycmakeargs=( - -DLIBCXXABI_LIBDIR_SUFFIX= - -DLIBCXXABI_ENABLE_SHARED=OFF - -DLIBCXXABI_ENABLE_STATIC=ONF - -DLIBCXXABI_USE_LLVM_UNWINDER=ON - -DLIBCXXABI_INCLUDE_TESTS=OFF - - -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include - -DLIBCXXABI_LIBUNWIND_INCLUDES="${S}"/include - ) - - cmake_src_configure - cmake_src_compile -} - -build_libcxx() { - local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/libcxxabi/lib -L${BUILD_DIR}/$(get_libdir)" - local CMAKE_USE_DIR=${WORKDIR}/libcxx - local BUILD_DIR=${BUILD_DIR}/libcxx - local mycmakeargs=( - -DLIBCXX_LIBDIR_SUFFIX= - -DLIBCXX_ENABLE_SHARED=OFF - -DLIBCXX_ENABLE_STATIC=ON - -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF - -DLIBCXXABI_USE_LLVM_UNWINDER=ON - -DLIBCXX_CXX_ABI=libcxxabi - -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${WORKDIR}"/libcxxabi/include - -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF - -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) - -DLIBCXX_HAS_GCC_S_LIB=OFF - -DLIBCXX_INCLUDE_TESTS=OFF - ) - - cmake_src_configure - cmake_src_compile -} - -multilib_src_test() { - # build local copies of libc++ & libc++abi for testing to avoid - # circular deps - build_libcxxabi - build_libcxx - mv "${BUILD_DIR}"/libcxx*/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die - - local -x LIT_PRESERVES_TMP=1 - cmake_build check-unwind -} - -multilib_src_install() { - cmake_src_install - - # install headers like sys-libs/libunwind - doheader "${S}"/include/*.h -} diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0_rc3.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-12.0.0_rc2.ebuild index 350dc8c77379..bf538b66689b 100644 --- a/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0_rc3.ebuild +++ b/sys-libs/llvm-libunwind/llvm-libunwind-12.0.0_rc2.ebuild @@ -25,8 +25,8 @@ BDEPEND=" $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )" -LLVM_COMPONENTS=( libunwind ) -LLVM_TEST_COMPONENTS=( libcxx{,abi} llvm/cmake ) +LLVM_COMPONENTS=( libunwind libcxx llvm/cmake/modules ) +LLVM_TEST_COMPONENTS=( libcxxabi ) llvm.org_set_globals python_check_deps() { diff --git a/sys-libs/pam/Manifest b/sys-libs/pam/Manifest index ed511aa33fad..b91d3b2c3314 100644 --- a/sys-libs/pam/Manifest +++ b/sys-libs/pam/Manifest @@ -1,4 +1,4 @@ DIST Linux-PAM-1.5.1-docs.tar.xz 441632 BLAKE2B 1b3ad1b5167936b8c38977b5328ee11c7d280eb905a0f444e555d24f9d5332583f7e0ce0a758242292ff1244bc082b73d661935647e583e2ebcd8d5058df413e SHA512 95f0b0225e96386f06f5f869203163a201af3ac5c1a4fa8bd30779b9f55290e1a5b63fa49e2efafa1a51476bad1acf258b1f37f56a4bdc3935f9fe5928cbc1f7 DIST Linux-PAM-1.5.1.tar.xz 972964 BLAKE2B a1714569587a383fa8211b23765c66b08b18dc2808c1521a904171dc2886cced56e9afa27408e8a9d5eec6226b31390dc8f14434071370f4e1147c77ce8b36ac SHA512 1db091fc43b934dde220f1b85f35937fbaa0a3feec699b2e597e2cdf0c3ce11c17d36d2286d479c9eed24e8ca3ca6233214e4dff256db47249e358c01d424837 -EBUILD pam-1.5.1.ebuild 3758 BLAKE2B b41ec65e33241e391a61c7b93149c1d3766743d57cc789fdd5fff392ee2f7db636d46494a4e9b04ed0e7a8f3c453830b81680e946a5540d1c9b9d68fc3b59983 SHA512 8056f7540e38702d4e02f8fdcd1f1fd3b8abe248b9b67a285c789877389eeb856c9e623700384d08c5933c8060f43a51bd7902c27375fdef907094d04f0ff166 +EBUILD pam-1.5.1.ebuild 3637 BLAKE2B 7899a80be008f3d02e8f01b66df989fd25004fe50e4c0a945037bc3b74bb84a8cb8bc46f991c9eb1bf20e46362f1ceec472f87c77f12e133f1fa86263be72be1 SHA512 b383c4dbbd1626401384b94fd88851822a3c72778e749a26342e657fd78e1594c86bac33f80a81a78f21db7975988df10f42d94400a275cf9944096d327ef303 MISC metadata.xml 695 BLAKE2B 26bfcf404440c1262220cc12bba80561529e9bf1c5f7f0c9f84375874f348f35b08866117061c087f4b870f6d6f80ebe16f4a42a63ff5e95aa69ae9bcf97c9d9 SHA512 87045043ba8805232883ffdbcfa50dc53de3d46e7889e520481c7b126b4ef9c9c2b83878a73d26a8edd71c0edeff8dd7bcd4a8b2a34893574b8bc8e7e94c6fc7 diff --git a/sys-libs/pam/pam-1.5.1.ebuild b/sys-libs/pam/pam-1.5.1.ebuild index 9b922b712136..d8b000a112c8 100644 --- a/sys-libs/pam/pam-1.5.1.ebuild +++ b/sys-libs/pam/pam-1.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -15,7 +15,7 @@ SRC_URI="https://github.com/linux-pam/linux-pam/releases/download/v${PV}/${MY_P} LICENSE="|| ( BSD GPL-2 )" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" IUSE="audit berkdb debug nis selinux" BDEPEND=" @@ -60,11 +60,10 @@ multilib_src_configure() { local myconf=( CC_FOR_BUILD="$(tc-getBUILD_CC)" --with-db-uniquename=-$(db_findver sys-libs/db) - --with-xml-catalog="${EPREFIX}"/etc/xml/catalog - --enable-securedir="${EPREFIX}"/$(get_libdir)/security - --includedir="${EPREFIX}"/usr/include/security - --libdir="${EPREFIX}"/usr/$(get_libdir) - --exec-prefix="${EPREFIX}" + --with-xml-catalog=/etc/xml/catalog + --enable-securedir=/$(get_libdir)/security + --includedir=/usr/include/security + --libdir=/usr/$(get_libdir) --enable-pie --enable-unix --disable-prelude @@ -83,12 +82,12 @@ multilib_src_configure() { } multilib_src_compile() { - emake sepermitlockdir="${EPREFIX}/run/sepermit" + emake sepermitlockdir="/run/sepermit" } multilib_src_install() { emake DESTDIR="${D}" install \ - sepermitlockdir="${EPREFIX}/run/sepermit" + sepermitlockdir="/run/sepermit" gen_usr_ldscript -a pam pam_misc pamc } diff --git a/sys-libs/timezone-data/Manifest b/sys-libs/timezone-data/Manifest index 4d21d1bd0716..c71774c293e6 100644 --- a/sys-libs/timezone-data/Manifest +++ b/sys-libs/timezone-data/Manifest @@ -1,10 +1,7 @@ -DIST tzcode2020e.tar.gz 262357 BLAKE2B 962ae8481a7e38b1876cdafd1c5688ab0a98bcf99a36b39b170dd08e032462a7e778f1922428c083e4ef71b0f4054f199cfdd23a7d3412b40f461c8f67782173 SHA512 37656ee4400f6e7ac8b3d4b515ea2ae940de05e8a95873112a4ec08afc11227214f269e4ef1bedb0389497958dd07a6d4721191e441920bc45c235b029a8a885 DIST tzcode2020f.tar.gz 262454 BLAKE2B e555f4c59e11e2b091fa48fad4a74ff1577d9f1204c5cc9733a0263a4e1e1d769a548e721e29656cfd187f625d9fdc957f14dbf22b248e6d459e610ba4848101 SHA512 5f6bf1b508434842eb9dacacc744b5f3375c35b88e401ef372b5fde80ad2f523484fe52a6e99460e402230406ebf6a9261a97efde45a610f8e8085893d55c4ed DIST tzcode2021a.tar.gz 262204 BLAKE2B 4072685f2344602ffcfe32a7bf92d3b0d93e38ffca842f1c07a60db5e26f1f18ab32fc7b5f155b0bdab49f8d0bfcd5b58f4a192b4d06d7d9639893e5cb596328 SHA512 bf1d53bcbfecd3b09d57a9e6d3cb49b5dc5f8e1b6674b67e7f974e1a268c2aaf13ca89a7ef12f49d0665aff782bd72685e00c22a41ca88a028da0429f972fd45 -DIST tzdata2020e.tar.gz 411619 BLAKE2B 64eb26fefa4579b731cdf0589da4be0e17587f34a56994cc26bbd4f3a1f073ef48eddd9359d2e9cc123896267388eb66f5b526189115454916c7dd64a6d62ad0 SHA512 1e64b5c91b9e56923cf8e3e079781c59c8afb6c379b38b9b91ef493929814d50c29a6368cfcf77db08a7af3b6876387bac5617f64ac965a5bddab436d17862c4 DIST tzdata2020f.tar.gz 411739 BLAKE2B 703a8c899e76d2e8f6660dc077a92988dd69ae332daca5246cde9a4972688ba0244badd735ab3bc7537b00d44af151d95ee8bfe216028825577cdd953d455767 SHA512 dd312def18c807452fda2e697514e2064c5f51ebdbedd0cfe6f231252c76ee5d4409f653b295ed5657b7d30b868690047fdb70a10942e69eaa40b77473e3f9ca DIST tzdata2021a.tar.gz 411892 BLAKE2B b8d177e90e22bd8a3fd23c9a9c19896cb245efd8e768b59ab8c63e56ab141e67331f3231e3a7c802f844375049cfd902e14e912ce677b3aea38fc0d968905e87 SHA512 7cdd762ec90ce12a30fa36b1d66d1ea82d9fa21e514e2b9c7fcbe2541514ee0fadf30843ff352c65512fb270857b51d1517b45e1232b89c6f954ba9ff1833bb3 -EBUILD timezone-data-2020e.ebuild 5380 BLAKE2B 2f058ece71e2feb8e3db2ad1d09822ec3e32befa081331a2172f451fd84c8674a572aa5433d93294003701bbf94e6bc7d9b8a66d169b5d9f8580b1c9b801ad7b SHA512 a7beca84f4b2d34d602dc68a7a73b0ff64d35e8af4df415e7cbae135bc219d77ab38b62e216c01dbacefb978f7328d9e56a7c68bcec7d5d69950013caf55d6d8 EBUILD timezone-data-2020f.ebuild 5380 BLAKE2B 2f058ece71e2feb8e3db2ad1d09822ec3e32befa081331a2172f451fd84c8674a572aa5433d93294003701bbf94e6bc7d9b8a66d169b5d9f8580b1c9b801ad7b SHA512 a7beca84f4b2d34d602dc68a7a73b0ff64d35e8af4df415e7cbae135bc219d77ab38b62e216c01dbacefb978f7328d9e56a7c68bcec7d5d69950013caf55d6d8 -EBUILD timezone-data-2021a.ebuild 5389 BLAKE2B 24b380342dd1de1943c96608762177926595954e4ad683f92b1b9fd6f77d65aec5f27aa97202c4e819e0ea77b0fc4187c2ac8f12dd6cd44f49d7e254d8be8b6a SHA512 734817e9fd7f2ef4429b314e41b25853d9d024f3a502ec6f6ef2c0c0067311a3db1fecd29fcbc1428a1af3e07fd854c76b3ed3162cad3c90b384cf89828debec +EBUILD timezone-data-2021a.ebuild 5380 BLAKE2B 2f058ece71e2feb8e3db2ad1d09822ec3e32befa081331a2172f451fd84c8674a572aa5433d93294003701bbf94e6bc7d9b8a66d169b5d9f8580b1c9b801ad7b SHA512 a7beca84f4b2d34d602dc68a7a73b0ff64d35e8af4df415e7cbae135bc219d77ab38b62e216c01dbacefb978f7328d9e56a7c68bcec7d5d69950013caf55d6d8 MISC metadata.xml 728 BLAKE2B b390f4f3d184c7f424d97a36883c9ab67f56a2445d6ecfe6deca69d42864b1249fa2fec6a48bf693f9b2101c167597e5a435cf13a8797784e8f37ad870bf3daf SHA512 36e2c2fa026441ae4b21d33b9425a7195c4d4d404e8f010e9bf894be3095b0d461079a87126f22c398475652777301aa5dcf151b195502d25b4094420c56c7e4 diff --git a/sys-libs/timezone-data/timezone-data-2020e.ebuild b/sys-libs/timezone-data/timezone-data-2020e.ebuild deleted file mode 100644 index 52f5fbdca3bd..000000000000 --- a/sys-libs/timezone-data/timezone-data-2020e.ebuild +++ /dev/null @@ -1,183 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit toolchain-funcs flag-o-matic - -code_ver=${PV} -data_ver=${PV} -DESCRIPTION="Timezone data (/usr/share/zoneinfo) and utilities (tzselect/zic/zdump)" -HOMEPAGE="https://www.iana.org/time-zones" -SRC_URI="https://www.iana.org/time-zones/repository/releases/tzdata${data_ver}.tar.gz - https://www.iana.org/time-zones/repository/releases/tzcode${code_ver}.tar.gz" - -LICENSE="BSD public-domain" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="nls leaps-timezone elibc_FreeBSD zic-slim" - -DEPEND="nls? ( virtual/libintl )" -RDEPEND="${DEPEND} - !sys-libs/glibc[vanilla(+)]" - -S=${WORKDIR} - -src_prepare() { - default - - # check_web contacts validator.w3.org - sed -i -e 's/check_tables check_web/check_tables/g' \ - Makefile || die "Failed to disable check_web" - - tc-is-cross-compiler && cp -pR "${S}" "${S}"-native -} - -src_configure() { - tc-export CC - - append-lfs-flags #471102 - - if use elibc_FreeBSD || use elibc_Darwin ; then - append-cppflags -DSTD_INSPIRED #138251 - fi - - append-cppflags -DHAVE_GETTEXT=$(usex nls 1 0) -DTZ_DOMAIN='\"libc\"' - - # Upstream default is 'slim', but it breaks quite a few programs - # that parse /etc/localtime directly: bug# 747538. - append-cppflags -DZIC_BLOAT_DEFAULT='\"'$(usex zic-slim slim fat)'\"' - - LDLIBS="" - if use nls ; then - # See if an external libintl is available. #154181 #578424 - local c="${T}/test" - echo 'main(){}' > "${c}.c" - if $(tc-getCC) ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} "${c}.c" -o "${c}" -lintl 2>/dev/null ; then - LDLIBS+=" -lintl" - fi - fi -} - -_emake() { - emake \ - REDO=$(usex leaps-timezone posix_right posix_only) \ - TZDATA_TEXT= \ - TOPDIR="${EPREFIX}" \ - ZICDIR='$(TOPDIR)/usr/bin' \ - "$@" -} - -src_compile() { - _emake \ - AR="$(tc-getAR)" \ - cc="$(tc-getCC)" \ - RANLIB="$(tc-getRANLIB)" \ - CFLAGS="${CFLAGS} -std=gnu99 ${CPPFLAGS}" \ - LDFLAGS="${LDFLAGS}" \ - LDLIBS="${LDLIBS}" - if tc-is-cross-compiler ; then - _emake -C "${S}"-native \ - AR="$(tc-getBUILD_AR)" \ - cc="$(tc-getBUILD_CC)" \ - RANLIB="$(tc-getBUILD_RANLIB)" \ - CFLAGS="${BUILD_CFLAGS} ${BUILD_CPPFLAGS}" \ - LDFLAGS="${BUILD_LDFLAGS}" \ - LDLIBS="${LDLIBS}" \ - zic - fi -} - -src_test() { - # VALIDATE_ENV is used for extended/web based tests. Punt on them. - emake check VALIDATE_ENV=true -} - -src_install() { - local zic="" - tc-is-cross-compiler && zic="zic=${S}-native/zic" - _emake install ${zic} DESTDIR="${D}" LIBDIR="/nukeit" - rm -rf "${D}/nukeit" "${ED}/etc" || die - - insinto /usr/share/zoneinfo - doins "${S}"/leap-seconds.list - - # Delete man pages installed by man-pages package. - rm "${ED}"/usr/share/man/man5/tzfile.5* "${ED}"/usr/share/man/man8/{tzselect,zdump,zic}.8 || die - dodoc CONTRIBUTING README NEWS *.html -} - -get_TIMEZONE() { - local tz src="${EROOT}/etc/timezone" - if [[ -e ${src} ]] ; then - tz=$(sed -e 's:#.*::' -e 's:[[:space:]]*::g' -e '/^$/d' "${src}") - else - tz="FOOKABLOIE" - fi - [[ -z ${tz} ]] && return 1 || echo "${tz}" -} - -pkg_preinst() { - local tz=$(get_TIMEZONE) - if [[ ${tz} == right/* || ${tz} == posix/* ]] ; then - eerror "The right & posix subdirs are no longer installed as subdirs -- they have been" - eerror "relocated to match upstream paths as sibling paths. Further, posix/xxx is the" - eerror "same as xxx, so you should simply drop the posix/ prefix. You also should not" - eerror "be using right/xxx for the system timezone as it breaks programs." - die "Please fix your timezone setting" - fi - - # Trim the symlink by hand to avoid portage's automatic protection checks. - rm -f "${EROOT}"/usr/share/zoneinfo/posix - - if has_version "<=${CATEGORY}/${PN}-2015c" ; then - elog "Support for accessing posix/ and right/ directly has been dropped to match" - elog "upstream. There is no need to set TZ=posix/xxx as it is the same as TZ=xxx." - elog "For TZ=right/, you can use TZ=../zoneinfo-leaps/xxx instead. See this post" - elog "for details: https://mm.icann.org/pipermail/tz/2015-February/022024.html" - fi -} - -configure_tz_data() { - # make sure the /etc/localtime file does not get stale #127899 - local tz src="${EROOT}/etc/timezone" etc_lt="${EROOT}/etc/localtime" - - # If it's a symlink, assume the user knows what they're doing and - # they're managing it themselves. #511474 - if [[ -L "${etc_lt}" ]] ; then - einfo "Assuming your ${etc_lt} symlink is what you want; skipping update." - return 0 - fi - - if ! tz=$(get_TIMEZONE) ; then - einfo "Assuming your empty ${etc_lt} file is what you want; skipping update." - return 0 - fi - if [[ "${tz}" == "FOOKABLOIE" ]] ; then - elog "You do not have TIMEZONE set in ${src}." - - if [[ ! -e "${etc_lt}" ]] ; then - cp -f "${EROOT}"/usr/share/zoneinfo/Factory "${etc_lt}" - elog "Setting ${etc_lt} to Factory." - else - elog "Skipping auto-update of ${etc_lt}." - fi - return 0 - fi - - if [[ ! -e "${EROOT}/usr/share/zoneinfo/${tz}" ]] ; then - elog "You have an invalid TIMEZONE setting in ${src}" - elog "Your ${etc_lt} has been reset to Factory; enjoy!" - tz="Factory" - fi - einfo "Updating ${etc_lt} with ${EROOT}/usr/share/zoneinfo/${tz}" - cp -f "${EROOT}/usr/share/zoneinfo/${tz}" "${etc_lt}" -} - -pkg_config() { - configure_tz_data -} - -pkg_postinst() { - configure_tz_data -} diff --git a/sys-libs/timezone-data/timezone-data-2021a.ebuild b/sys-libs/timezone-data/timezone-data-2021a.ebuild index 7830674ddfa9..52f5fbdca3bd 100644 --- a/sys-libs/timezone-data/timezone-data-2021a.ebuild +++ b/sys-libs/timezone-data/timezone-data-2021a.ebuild @@ -14,7 +14,7 @@ SRC_URI="https://www.iana.org/time-zones/repository/releases/tzdata${data_ver}.t LICENSE="BSD public-domain" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="nls leaps-timezone elibc_FreeBSD zic-slim" DEPEND="nls? ( virtual/libintl )" diff --git a/sys-libs/zlib/Manifest b/sys-libs/zlib/Manifest index a260473de2ea..1ff71033b9e5 100644 --- a/sys-libs/zlib/Manifest +++ b/sys-libs/zlib/Manifest @@ -3,6 +3,5 @@ AUX zlib-1.2.11-minizip-drop-crypt-header.patch 997 BLAKE2B a964dfb26d05045507cb DIST zlib-1.2.11-cygwin-gzopen_w.patch 1170 BLAKE2B fe351436716634bd823da8c2811d332327d335d450d89bee85d7713b09dd454fe6aee264b044a41bf3be603aa36d67943ba6c7d8b46470e180e9b639728b5274 SHA512 14cc63a17fbf6afb6c8a8dd0b92df9807b48e0faf09c88f952083f10716ae62be8de2a0e1424b77fb538605b88898b381160521f2872afdda59e12bd27535c5a DIST zlib-1.2.11.tar.gz 607698 BLAKE2B 6bfc4bca5dcadba8a0d4121a2b3ed0bfe440c261003521862c8e6381f1a6f0a72d3fc037351d30afd7ef321e8e8d2ec817c046ac749f2ca0c97fbdc2f7e840b7 SHA512 73fd3fff4adeccd4894084c15ddac89890cd10ef105dd5e1835e1e9bbb6a49ff229713bd197d203edfa17c2727700fce65a2a235f07568212d820dca88b528ae DIST zlib-1.2.7-cygwin-minizip.patch 2626 BLAKE2B 885f1fda877c0b783618b163702fb46126b7db572767cd4edb86bd92db1f432c887ef1724e70c8319c26886368dba3a962af5284ec0875c20ec8ad2245fd100a SHA512 e372f1e06311e843eca2092e182c41abb009b5e9880b60292d708e4bc0de5a9e4c43d49b25b0c09df4784bc46a1254472bc5cdbdd8d6c762a9f6a145a555bfe7 -EBUILD zlib-1.2.11-r2.ebuild 3101 BLAKE2B 90e53e105aa8ac4c209c781db0dfb2173e1c51a70f52fd14cefa7e57fba3b2983e693c8b26261e9e05b448db20c677375b1845017fc7985f39a8e7d752deecbc SHA512 e5c4cdae891e4a9febcfcf9c826c79b288bef48599d1d065990077c0970d7a4d449b6a5d8fe19915396810ea45406a757b478e4845205a5a4c3dd1c9b3e7ac32 EBUILD zlib-1.2.11-r3.ebuild 4180 BLAKE2B 11ad2994f6981193ab218e23b6936a099dc020f47a1522e5984b5a6eb6046972bddd7a8609b679bb9d9b8e0cc952b149829ff3fdd625387a8c0f636fdb9ae1a2 SHA512 f1678d18d8defd26ca0c7af83de426f1bb8afa6a12803db4db96bacb74710da95b4d0d7f830b6372c9a093658262f48ff6e9431ed18a3447ee3017768ef92ce1 MISC metadata.xml 432 BLAKE2B 80b2aa4dbc687fa23b3e64f12af789d2b1f308ccba611de152efde3008a5b6f66ee56121c2c4846a482e426c78e5f921ee7cf9b196c28504ee0de420725a6239 SHA512 947d4b2035ab49c42f6141f14553f1e8f4796b4ddc24c6a4f071ac2300eb120648dd03eef49773295d3e3f30cd9d3cbb391bde798dacf1187b46ff75abd59420 diff --git a/sys-libs/zlib/zlib-1.2.11-r2.ebuild b/sys-libs/zlib/zlib-1.2.11-r2.ebuild deleted file mode 100644 index b43e10d36094..000000000000 --- a/sys-libs/zlib/zlib-1.2.11-r2.ebuild +++ /dev/null @@ -1,123 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="5" -AUTOTOOLS_AUTO_DEPEND="no" - -inherit autotools toolchain-funcs multilib multilib-minimal usr-ldscript - -DESCRIPTION="Standard (de)compression library" -HOMEPAGE="https://zlib.net/" -SRC_URI="https://zlib.net/${P}.tar.gz - http://www.gzip.org/zlib/${P}.tar.gz - http://www.zlib.net/current/beta/${P}.tar.gz" - -LICENSE="ZLIB" -SLOT="0/1" # subslot = SONAME -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86" -IUSE="minizip static-libs" - -DEPEND="minizip? ( ${AUTOTOOLS_DEPEND} )" -RDEPEND="!<dev-libs/libxml2-2.7.7" #309623 - -src_prepare() { - epatch "${FILESDIR}"/${PN}-1.2.11-fix-deflateParams-usage.patch - epatch "${FILESDIR}"/${PN}-1.2.11-minizip-drop-crypt-header.patch #658536 - - if use minizip ; then - cd contrib/minizip || die - eautoreconf - fi - - case ${CHOST} in - *-mingw*|mingw*) - # uses preconfigured Makefile rather than configure script - multilib_copy_sources - ;; - esac -} - -echoit() { echo "$@"; "$@"; } - -multilib_src_configure() { - case ${CHOST} in - *-mingw*|mingw*) - ;; - *) # not an autoconf script, so can't use econf - local uname=$("${EPREFIX}"/usr/share/gnuconfig/config.sub "${CHOST}" | cut -d- -f3) #347167 - echoit "${S}"/configure \ - --shared \ - --prefix="${EPREFIX}/usr" \ - --libdir="${EPREFIX}/usr/$(get_libdir)" \ - ${uname:+--uname=${uname}} \ - || die - ;; - esac - - if use minizip ; then - local minizipdir="contrib/minizip" - mkdir -p "${BUILD_DIR}/${minizipdir}" || die - cd ${minizipdir} || die - ECONF_SOURCE="${S}/${minizipdir}" \ - econf $(use_enable static-libs static) - fi -} - -multilib_src_compile() { - case ${CHOST} in - *-mingw*|mingw*) - emake -f win32/Makefile.gcc STRIP=true PREFIX=${CHOST}- - sed \ - -e 's|@prefix@|/usr|g' \ - -e 's|@exec_prefix@|${prefix}|g' \ - -e 's|@libdir@|${exec_prefix}/'$(get_libdir)'|g' \ - -e 's|@sharedlibdir@|${exec_prefix}/'$(get_libdir)'|g' \ - -e 's|@includedir@|${prefix}/include|g' \ - -e 's|@VERSION@|'${PV}'|g' \ - zlib.pc.in > zlib.pc || die - ;; - *) - emake - ;; - esac - use minizip && emake -C contrib/minizip -} - -sed_macros() { - # clean up namespace a little #383179 - # we do it here so we only have to tweak 2 files - sed -i -r 's:\<(O[FN])\>:_Z_\1:g' "$@" || die -} - -multilib_src_install() { - case ${CHOST} in - *-mingw*|mingw*) - emake -f win32/Makefile.gcc install \ - BINARY_PATH="${ED}/usr/bin" \ - LIBRARY_PATH="${ED}/usr/$(get_libdir)" \ - INCLUDE_PATH="${ED}/usr/include" \ - SHARED_MODE=1 - # overwrites zlib.pc created from win32/Makefile.gcc #620136 - insinto /usr/$(get_libdir)/pkgconfig - doins zlib.pc - ;; - - *) - emake install DESTDIR="${D}" LDCONFIG=: - gen_usr_ldscript -a z - ;; - esac - sed_macros "${ED}"/usr/include/*.h - - if use minizip ; then - emake -C contrib/minizip install DESTDIR="${D}" - sed_macros "${ED}"/usr/include/minizip/*.h - fi - - use static-libs || rm -f "${ED}"/usr/$(get_libdir)/lib{z,minizip}.{a,la} #419645 -} - -multilib_src_install_all() { - dodoc FAQ README ChangeLog doc/*.txt - use minizip && dodoc contrib/minizip/*.txt -} |