summaryrefslogtreecommitdiff
path: root/sys-libs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
committerV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
commit752d6256e5204b958b0ef7905675a940b5e9172f (patch)
tree330d16e6362a49cbed8875a777fe641a43376cd3 /sys-libs
parent0c100b7dd2b30e75b799d806df4ef899fd98e1ea (diff)
gentoo resync : 12.05.2022
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/Manifest.gzbin14395 -> 14417 bytes
-rw-r--r--sys-libs/binutils-libs/Manifest2
-rw-r--r--sys-libs/binutils-libs/binutils-libs-2.38-r2.ebuild144
-rw-r--r--sys-libs/compiler-rt-sanitizers/Manifest21
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0-r1.ebuild204
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0-r1.ebuild207
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0.ebuild207
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.1.ebuild2
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.1.ebuild2
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.3.ebuild (renamed from sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.0.ebuild)18
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-15.0.0.9999.ebuild18
-rw-r--r--sys-libs/compiler-rt/Manifest19
-rw-r--r--sys-libs/compiler-rt/compiler-rt-11.1.0.ebuild123
-rw-r--r--sys-libs/compiler-rt/compiler-rt-13.0.0.ebuild130
-rw-r--r--sys-libs/compiler-rt/compiler-rt-13.0.1.ebuild2
-rw-r--r--sys-libs/compiler-rt/compiler-rt-14.0.1.ebuild2
-rw-r--r--sys-libs/compiler-rt/compiler-rt-14.0.3.ebuild (renamed from sys-libs/compiler-rt/compiler-rt-14.0.0.ebuild)10
-rw-r--r--sys-libs/compiler-rt/compiler-rt-15.0.0.9999.ebuild10
-rw-r--r--sys-libs/cracklib/Manifest2
-rw-r--r--sys-libs/cracklib/cracklib-2.9.7.ebuild4
-rw-r--r--sys-libs/db/Manifest4
-rw-r--r--sys-libs/db/db-5.3.28-r8.ebuild2
-rw-r--r--sys-libs/db/db-6.0.35-r4.ebuild2
-rw-r--r--sys-libs/gdbm/Manifest2
-rw-r--r--sys-libs/gdbm/gdbm-1.23.ebuild12
-rw-r--r--sys-libs/glibc/Manifest17
-rw-r--r--sys-libs/glibc/glibc-2.34-r10.ebuild2
-rw-r--r--sys-libs/glibc/glibc-2.34-r12.ebuild1617
-rw-r--r--sys-libs/glibc/glibc-2.34-r13.ebuild1617
-rw-r--r--sys-libs/glibc/glibc-2.35-r3.ebuild (renamed from sys-libs/glibc/glibc-2.35-r2.ebuild)12
-rw-r--r--sys-libs/glibc/glibc-2.35-r4.ebuild (renamed from sys-libs/glibc/glibc-2.35-r1.ebuild)30
-rw-r--r--sys-libs/glibc/glibc-9999.ebuild5
-rw-r--r--sys-libs/glibc/metadata.xml1
-rw-r--r--sys-libs/gpm/Manifest2
-rw-r--r--sys-libs/gpm/gpm-1.20.7-r4.ebuild2
-rw-r--r--sys-libs/kpmcore/Manifest8
-rw-r--r--sys-libs/kpmcore/files/kpmcore-21.08.3-dont-destroy-zfs-pool.patch46
-rw-r--r--sys-libs/kpmcore/files/kpmcore-21.08.3-fix-seek-error-when-shred-partition.patch27
-rw-r--r--sys-libs/kpmcore/kpmcore-21.12.3.ebuild2
-rw-r--r--sys-libs/kpmcore/kpmcore-22.04.0.ebuild (renamed from sys-libs/kpmcore/kpmcore-21.08.3-r1.ebuild)13
-rw-r--r--sys-libs/ldb/Manifest6
-rw-r--r--sys-libs/ldb/ldb-2.3.3.ebuild (renamed from sys-libs/ldb/ldb-2.3.1-r1.ebuild)2
-rw-r--r--sys-libs/ldb/ldb-2.4.0-r2.ebuild120
-rw-r--r--sys-libs/libaal/Manifest2
-rw-r--r--sys-libs/libaal/libaal-1.0.7-r2.ebuild4
-rw-r--r--sys-libs/libblockdev/Manifest8
-rw-r--r--sys-libs/libblockdev/libblockdev-2.25.ebuild119
-rw-r--r--sys-libs/libblockdev/libblockdev-2.26.ebuild6
-rw-r--r--sys-libs/libblockdev/libblockdev-9999.ebuild17
-rw-r--r--sys-libs/libblockdev/metadata.xml1
-rw-r--r--sys-libs/libcap-ng/Manifest2
-rw-r--r--sys-libs/libcap-ng/libcap-ng-0.8.3.ebuild2
-rw-r--r--sys-libs/libcap/Manifest4
-rw-r--r--sys-libs/libcap/libcap-2.64.ebuild2
-rw-r--r--sys-libs/libcap/libcap-9999.ebuild4
-rw-r--r--sys-libs/libcxx/Manifest19
-rw-r--r--sys-libs/libcxx/libcxx-11.1.0.ebuild211
-rw-r--r--sys-libs/libcxx/libcxx-13.0.0.ebuild214
-rw-r--r--sys-libs/libcxx/libcxx-13.0.1.ebuild2
-rw-r--r--sys-libs/libcxx/libcxx-14.0.1.ebuild2
-rw-r--r--sys-libs/libcxx/libcxx-14.0.3.ebuild (renamed from sys-libs/libcxx/libcxx-14.0.0.ebuild)26
-rw-r--r--sys-libs/libcxx/libcxx-15.0.0.9999.ebuild24
-rw-r--r--sys-libs/libcxxabi/Manifest12
-rw-r--r--sys-libs/libcxxabi/libcxxabi-11.1.0.ebuild123
-rw-r--r--sys-libs/libcxxabi/libcxxabi-13.0.0.ebuild125
-rw-r--r--sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild2
-rw-r--r--sys-libs/libcxxabi/libcxxabi-14.0.3.ebuild (renamed from sys-libs/libcxxabi/libcxxabi-14.0.0.ebuild)18
-rw-r--r--sys-libs/libcxxabi/libcxxabi-15.0.0.9999.ebuild18
-rw-r--r--sys-libs/libhugetlbfs/Manifest2
-rw-r--r--sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild24
-rw-r--r--sys-libs/libomp/Manifest13
-rw-r--r--sys-libs/libomp/libomp-11.1.0.ebuild105
-rw-r--r--sys-libs/libomp/libomp-13.0.0-r2.ebuild131
-rw-r--r--sys-libs/libomp/libomp-13.0.1.ebuild2
-rw-r--r--sys-libs/libomp/libomp-14.0.3.ebuild (renamed from sys-libs/libomp/libomp-14.0.0.ebuild)26
-rw-r--r--sys-libs/libomp/libomp-15.0.0.9999.ebuild26
-rw-r--r--sys-libs/libseccomp/Manifest10
-rw-r--r--sys-libs/libseccomp/libseccomp-2.5.1.ebuild84
-rw-r--r--sys-libs/libseccomp/libseccomp-2.5.4.ebuild (renamed from sys-libs/libseccomp/libseccomp-2.5.2.ebuild)56
-rw-r--r--sys-libs/libseccomp/libseccomp-9999.ebuild29
-rw-r--r--sys-libs/libseccomp/metadata.xml3
-rw-r--r--sys-libs/libsmbios/Manifest2
-rw-r--r--sys-libs/libsmbios/libsmbios-2.4.3.ebuild4
-rw-r--r--sys-libs/libstdc++-v3/Manifest2
-rw-r--r--sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r3.ebuild201
-rw-r--r--sys-libs/libucontext/Manifest2
-rw-r--r--sys-libs/libucontext/libucontext-1.2.ebuild69
-rw-r--r--sys-libs/libunwind/Manifest9
-rw-r--r--sys-libs/libunwind/files/libunwind-1.2-coredump-regs.patch16
-rw-r--r--sys-libs/libunwind/files/libunwind-1.2-ia64-missing.patch93
-rw-r--r--sys-libs/libunwind/files/libunwind-1.2-ia64-ptrace-coredump.patch34
-rw-r--r--sys-libs/libunwind/files/libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch53
-rw-r--r--sys-libs/libunwind/files/libunwind-1.5.0-x32.patch17
-rw-r--r--sys-libs/libunwind/libunwind-1.5.0-r1.ebuild108
-rw-r--r--sys-libs/libunwind/libunwind-1.6.2.ebuild4
-rw-r--r--sys-libs/libutempter/Manifest2
-rw-r--r--sys-libs/libutempter/libutempter-1.2.1.ebuild2
-rw-r--r--sys-libs/libxcrypt/Manifest6
-rw-r--r--sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild225
-rw-r--r--sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild225
-rw-r--r--sys-libs/libxcrypt/libxcrypt-4.4.28.ebuild72
-rw-r--r--sys-libs/llvm-libunwind/Manifest14
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-11.1.0.ebuild124
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-13.0.0.ebuild142
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-13.0.1.ebuild2
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-14.0.1.ebuild2
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-14.0.3.ebuild (renamed from sys-libs/llvm-libunwind/llvm-libunwind-14.0.0.ebuild)18
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-15.0.0.9999.ebuild16
-rw-r--r--sys-libs/mtdev/Manifest2
-rw-r--r--sys-libs/mtdev/mtdev-1.1.6.ebuild2
-rw-r--r--sys-libs/musl/Manifest13
-rw-r--r--sys-libs/musl/files/ldconfig.in144
-rw-r--r--sys-libs/musl/files/ldconfig.in-r1155
-rw-r--r--sys-libs/musl/musl-1.2.2-r3.ebuild151
-rw-r--r--sys-libs/musl/musl-1.2.2-r4.ebuild167
-rw-r--r--sys-libs/musl/musl-1.2.2-r6.ebuild167
-rw-r--r--sys-libs/musl/musl-1.2.2-r7.ebuild2
-rw-r--r--sys-libs/musl/musl-1.2.2-r8.ebuild2
-rw-r--r--sys-libs/musl/musl-1.2.3.ebuild2
-rw-r--r--sys-libs/musl/musl-9999.ebuild2
-rw-r--r--sys-libs/ncurses/Manifest56
-rw-r--r--sys-libs/ncurses/ncurses-6.3_p20211106.ebuild4
-rw-r--r--sys-libs/ncurses/ncurses-6.3_p20220423-r1.ebuild395
-rw-r--r--sys-libs/ncurses/ncurses-6.3_p20220423.ebuild393
-rw-r--r--sys-libs/obstack-standalone/Manifest2
-rw-r--r--sys-libs/obstack-standalone/obstack-standalone-1.2.3.ebuild36
-rw-r--r--sys-libs/pam/Manifest2
-rw-r--r--sys-libs/pam/pam-1.5.2-r1.ebuild2
-rw-r--r--sys-libs/pam_wrapper/Manifest2
-rw-r--r--sys-libs/pam_wrapper/pam_wrapper-1.1.3-r3.ebuild4
-rw-r--r--sys-libs/readline/Manifest5
-rw-r--r--sys-libs/readline/readline-8.1_p2.ebuild2
-rw-r--r--sys-libs/readline/readline-8.2_beta.ebuild49
-rw-r--r--sys-libs/readline/readline-9999.ebuild224
-rw-r--r--sys-libs/slang/Manifest2
-rw-r--r--sys-libs/slang/slang-2.3.2.ebuild4
-rw-r--r--sys-libs/tevent/Manifest2
-rw-r--r--sys-libs/tevent/tevent-0.12.0.ebuild78
-rw-r--r--sys-libs/timezone-data/Manifest2
-rw-r--r--sys-libs/timezone-data/timezone-data-2022a.ebuild2
-rw-r--r--sys-libs/zlib/Manifest3
-rw-r--r--sys-libs/zlib/zlib-1.2.12-r1.ebuild188
-rw-r--r--sys-libs/zlib/zlib-1.2.12-r2.ebuild2
143 files changed, 5129 insertions, 4759 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz
index b0e1675ff036..8444b17b18bf 100644
--- a/sys-libs/Manifest.gz
+++ b/sys-libs/Manifest.gz
Binary files differ
diff --git a/sys-libs/binutils-libs/Manifest b/sys-libs/binutils-libs/Manifest
index 7b52cf85a085..82bdebfb0d87 100644
--- a/sys-libs/binutils-libs/Manifest
+++ b/sys-libs/binutils-libs/Manifest
@@ -8,10 +8,12 @@ DIST binutils-2.36.1.tar.xz 22772248 BLAKE2B 03fbfbedd6dba2beaa836b1ed254eddd7a5
DIST binutils-2.37_p1-patches-2.tar.xz 31956 BLAKE2B 39c48628d0e2d7f3a8cf11be391b51dc64c7a534a3e64950fd992907c34fa36bebdf95cc5a184dd5b35e134e0c20376b5883abbf96ae57403c55377e615a6790 SHA512 c927aafa8c87e3b68ad28da5a17edf5647591ec26feeb56c743bc6637ffb10832b50ec6fd8442e80e40628b624e31b2f0f0b5f1193e77dc7e5442df0cb8cc8f1
DIST binutils-2.37_p1.tar.xz 22992196 BLAKE2B a8aa0f386d03a5b1466166ac7c40989c228351ccf0949a9b462b4d4615d70ab7e1a45351299140a42baf39c317b8007733c253eb547ee1dfadb612addde11621 SHA512 46c297ec2a7a5b81d1c6e3f16486a6dc2860a07520fe2dd8871d1eb5160065bbe2cc6b0415d5352bf12284133e5817a4e429e6077182d615e969bd1a8f52ed28
DIST binutils-2.38-patches-3.tar.xz 189068 BLAKE2B 5b14c90ab7dba253e92ad57b3a702fcbf48739dd0121ce8f739d88331da820ce44c35e16ac4bee394525c3a46bce980e9e1bbf4cbc9ce8a14fc324bc8fa059e7 SHA512 099266a8ef4272fd7f7552071e1892d114ed564a38b700df32e058ed691c6bfcd6f2454f649461f9c36594ea819a35d1e4cd2418609a2407be2a4f8885e500e3
+DIST binutils-2.38-patches-4.tar.xz 193852 BLAKE2B 5a83e20008e58464ed563a6817a367e50684c59d08c47345cc546054269c42463d1651441720f865851e4e182e917df1a095c68e64226e0351b64e975d524096 SHA512 6657e547bb02898632cc45a8f1894be098aa7472b6725b65f95393e621abb127e468b4e50310720bf03f7e8d0a68bc2c47af76fc43aaa8f32b2e4a149c0c6290
DIST binutils-2.38.tar.xz 23651408 BLAKE2B 19ede396ec97b88e632aded2f69f4684cc5053109e06c3c4a1934944e3f0ceaa9e4a2604528a440189771f778cb5d75edd510163970eeea31afba87fa256feba SHA512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d
EBUILD binutils-libs-2.34-r2.ebuild 3678 BLAKE2B 2ecd619f2dd9968a11a3c8c2cf8f65d30d7191163bc6fd5ae1fc7d6dfad4bb30b061e5029fc7d2a23c1b7d0a4ca142532b8175b593d9d0ac408338c39cc02e60 SHA512 3ae489fa333ea206ce758f102a56ebbde7a59fa817720503eb1287c4d1d156598cbe7bc78beb2f0ab85f6f60c32f753d4c66cb0428dcbeb13d873407a4c86335
EBUILD binutils-libs-2.35.2.ebuild 4100 BLAKE2B 521acb4f160e171efd6500aba598825f50c19b62f77689b208dcca260396aa1a2c769937db49b147a51e7645baa1fd72f13559fa15e5fced7c8bd57088575027 SHA512 628c171049d6fae374538a96ad7cc76463d78e562d16fbd5877ab7b0800b026e9c72f3b346ec2e3e92a9c5836c483e0eec226c5ac2ecc8e71c2c66c6c8c5b844
EBUILD binutils-libs-2.36.1-r2.ebuild 4053 BLAKE2B 1d2c9609ce0fa3aff3222d89ee237ba73d31515bb0032ffd8d6b6a9a04060aec1df32cb727572a0a20b9ba64834dc43c2260f3401703cb711d0d5516e136a3d1 SHA512 e355a34921f4a260f2f61a222365703b1afc103fc993e255801a8c2deec42409ba1aec8a22d734c38a4440c385b29f81eac52c4584431ee54d0cf0cfe611ff6c
EBUILD binutils-libs-2.37_p1-r2.ebuild 4126 BLAKE2B 63dcef180b378d47d48f714e095ff2ce98dcd027de0d176c64179fcfe1f48df5f451468fb974176ade21914f4ba731487b91b03223eba11662be17cb3b42c9c1 SHA512 c659774de8238e81669507dfd5b2a565b5deaa8c54fe12ee02f5b3b204a147b2aea5bb9a6707930d0ac3ca10225ce486f294e510402b37c99ee1f6c170c31ecc
EBUILD binutils-libs-2.38-r1.ebuild 4530 BLAKE2B 6fbf59602ecd890921c795d31d67559da3e36790d1f2976f25a8cfd4a8c644236870cf03e843c82e6ffdd74ba2386d43ee722c7aa5a421058eabbafa3585bc7d SHA512 42253acb4cd37d34c44af701bdd3c7eeba54409601e55ef5267370ff2cd76574046d32ffbf04921b64104df73ccb0a312a282cc4cc7d1d58cfd8d6d89063b951
+EBUILD binutils-libs-2.38-r2.ebuild 4537 BLAKE2B d614a3575bbe8eb281eae46868e38475fd57e57349ca402a3853955683e86a196d24253d72efa819ed5c7b00b56f072f1cf602d654aeada2e67e047a5543da0d SHA512 b4f9362a4daa410c3141026c6e53b685965b62cf54accfb521d33f1deabb923a44a0d779dd673244cd6c9fe59b946868829af487119e53173d67d5cf7aa6f3bc
MISC metadata.xml 612 BLAKE2B ceaafd9fd1421e9f3993e003d0029c92a78054c7a2b90bd78afc05370ad19c931c6a7c150545cfb7d57165168e0fdaf3a00dde1905b328826a91cbc70d9548a8 SHA512 c8d33bb8d1c62c7e95758624ed0febbc9d40e9f141bfd280837b3207bcd771412158d71c0cb5548d60be0b236f6fe103621daf7efa8875191982859b566ffa8d
diff --git a/sys-libs/binutils-libs/binutils-libs-2.38-r2.ebuild b/sys-libs/binutils-libs/binutils-libs-2.38-r2.ebuild
new file mode 100644
index 000000000000..a48951d19c89
--- /dev/null
+++ b/sys-libs/binutils-libs/binutils-libs-2.38-r2.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PATCH_VER=4
+PATCH_DEV=dilfridge
+
+inherit libtool toolchain-funcs multilib-minimal
+
+MY_PN="binutils"
+MY_P="${MY_PN}-${PV}"
+PATCH_BINUTILS_VER=${PATCH_BINUTILS_VER:-${PV}}
+PATCH_DEV=${PATCH_DEV:-dilfridge}
+
+DESCRIPTION="Core binutils libraries (libbfd, libopcodes, libiberty) for external packages"
+HOMEPAGE="https://sourceware.org/binutils/"
+SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_P}.tar.xz
+ https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${MY_PN}-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz"
+
+LICENSE="|| ( GPL-3 LGPL-3 )"
+SLOT="0/${PV%_p?}"
+IUSE="64-bit-bfd cet multitarget nls static-libs"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~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}]"
+# Need a newer binutils-config that'll reset include/lib symlinks for us.
+RDEPEND="${DEPEND}
+ >=sys-devel/binutils-config-5
+"
+
+S="${WORKDIR}/${MY_P%_p?}"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/bfd.h
+)
+
+src_prepare() {
+ if [[ -n ${PATCH_VER} ]] ; then
+ einfo "Applying binutils-${PATCH_BINUTILS_VER} patchset ${PATCH_VER}"
+ eapply "${WORKDIR}/patch"/*.patch
+ fi
+
+ # Fix cross-compile relinking issue, bug #626402
+ elibtoolize
+
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ # somehow libtool/configure is messed up and (custom patch at
+ # upstream?) and misdetects (basically assumes) nm can be called
+ # with -B arg -- can't run eautoreconf (fails), so patch up
+ # manually, this would break any target that needs -B to nm
+ sed -i -e 's/lt_cv_path_NM="$tmp_nm -B"/lt_cv_path_NM="$tmp_nm"/' \
+ libctf/configure || die
+ fi
+
+ default
+}
+
+pkgversion() {
+ printf "Gentoo ${PVR}"
+ [[ -n ${PATCHVER} ]] && printf " p${PATCHVER}"
+}
+
+multilib_src_configure() {
+ local myconf=(
+ --enable-obsolete
+ --enable-shared
+ --enable-threads
+ # Newer versions (>=2.24) make this an explicit option. #497268
+ --enable-install-libiberty
+ --disable-werror
+ --with-bugurl="https://bugs.gentoo.org/"
+ --with-pkgversion="$(pkgversion)"
+ $(use_enable static-libs static)
+ # The binutils eclass enables this flag for all bi-arch builds,
+ # but other tools often don't care about that support. Put it
+ # beyond a flag if people really want it, but otherwise leave
+ # it disabled as it can slow things down on 32bit arches. #438522
+ $(use_enable 64-bit-bfd)
+ # This only disables building in the zlib subdir.
+ # For binutils itself, it'll use the system version. #591516
+ --without-zlib
+ --with-system-zlib
+ # We only care about the libs, so disable programs. #528088
+ --disable-{binutils,etc,ld,gas,gold,gprof}
+ # Disable modules that are in a combined binutils/gdb tree. #490566
+ --disable-{gdb,libdecnumber,readline,sim}
+ # Strip out broken static link flags.
+ # https://gcc.gnu.org/PR56750
+ --without-stage1-ldflags
+ # We pull in all USE-flags that change ABI in an incompatible
+ # way. #666100
+ # USE=multitarget change size of global arrays
+ # USE=64-bit-bfd changes data structures of exported API
+ --with-extra-soversion-suffix=gentoo-${CATEGORY}-${PN}-$(usex multitarget mt st)-$(usex 64-bit-bfd 64 def)
+
+ # avoid automagic dependency on (currently prefix) systems
+ # systems with debuginfod library, bug #754753
+ --without-debuginfod
+
+ # Allow user to opt into CET for host libraries.
+ # Ideally we would like automagic-or-disabled here.
+ # But the check does not quite work on i686: bug #760926.
+ $(use_enable cet)
+ )
+
+ # mips can't do hash-style=gnu ...
+ if [[ $(tc-arch) != mips ]] ; then
+ myconf+=( --enable-default-hash-style=gnu )
+ fi
+
+ use multitarget && myconf+=( --enable-targets=all --enable-64-bit-bfd )
+
+ use nls \
+ && myconf+=( --without-included-gettext ) \
+ || myconf+=( --disable-nls )
+
+ if [[ ${CHOST} == *-darwin* ]] && use nls ; then
+ # fix underlinking in opcodes
+ sed -i -e 's/@SHARED_LDFLAGS@/@SHARED_LDFLAGS@ -lintl/' \
+ "${S}"/opcodes/Makefile.in || die
+ fi
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+
+ # Prevent makeinfo from running as we don't build docs here.
+ # bug #622652
+ sed -i \
+ -e '/^MAKEINFO/s:=.*:= true:' \
+ Makefile || die
+}
+
+multilib_src_install() {
+ default
+ # Provide libiberty.h directly.
+ dosym libiberty/libiberty.h /usr/include/libiberty.h
+}
+
+multilib_src_install_all() {
+ use static-libs || find "${ED}"/usr -name '*.la' -delete
+}
diff --git a/sys-libs/compiler-rt-sanitizers/Manifest b/sys-libs/compiler-rt-sanitizers/Manifest
index 971bd4a8f422..3e92711dfcd9 100644
--- a/sys-libs/compiler-rt-sanitizers/Manifest
+++ b/sys-libs/compiler-rt-sanitizers/Manifest
@@ -1,22 +1,15 @@
-DIST llvm-gentoo-patchset-11.1.0-3.tar.xz 5984 BLAKE2B 89056fb8e82c7a29ae76c643ac631876d51391ffb579324aaf13c7f79e03f6fd8bbcb27d46e57e0f04a702602ebf51c116e82cb092452a1dbc97fb0eb7518f11 SHA512 08aabe8836b62ecfde4e264d567169ba495d5b5915b56aba35ae86992387e534bba6d512fde94056e641abe909b478e47edcbdaa3ee0b94182ecd68c98201441
DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249
-DIST llvm-gentoo-patchset-13.0.0-r3.tar.xz 10176 BLAKE2B fc5825a4bd3b85bd9c970901e5e036cc4c928373495a8a6f63c7f4531c7f52575d06f80dfbd80671d9f0fcd32d5c48d96f5961602b024c7a936362aeba8a612a SHA512 2289eef3f6301ade2e1110ebc4b66ad3db91ed10868ca7296a29c55667007e06739b01f38c0783bb2c56deadfb8a04605c370df9c5a4c6bc9aea9382e6ed52a5
-DIST llvm-gentoo-patchset-13.0.0.tar.xz 5012 BLAKE2B 6760c78c086aaf6629143fd920b0a2c68cad9278628fbea8164dfeb59db95984a5b5d6b3505b510c697e8c95bf8d2be782c6b73c01622d52f2da9b07ecff39e0 SHA512 7764d49343b795b6bebae64f646ba27e3e6cc2a20b8a1aee645ce0d8474633c34acfbb73c08546fee415755dd4ea5a98c1d84db5e394cf5f4fc802eb61148ab6
DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01
-DIST llvm-gentoo-patchset-14.0.0-r2.tar.xz 7872 BLAKE2B 529986a4be1c876d625b09b0cee7cc22cd0dd883770d7f0ef6aeec79fe2da822bf67a5121602af22722962d54a65352242c3ae643060c778c728ed67917b3470 SHA512 7a7bb329facfe60875d7e4df9da120aaa314ed08ed73f00f953c0e9b235bbe7f68a4d75241e6457407fa795ad1a0fde5ede4ce95dce3b046d44cab20e7be86ac
+DIST llvm-gentoo-patchset-14.0.1.tar.xz 4724 BLAKE2B 2689298c687fa8b5fa2545afccc248c00ff6778f1a14e3e7999e5d52a1b0b9c3b2e66e8c008e27c62c6c3c08009dc7d9d083ca53698138258ac972e4ad03c042 SHA512 a9f071ad0a792f558105a64790f9e470d8aaed05bd1baabbe86539760c881f772602a03265e0962d8599f991f7fd44d14a49e2ef9d74bb5eb283f473f4084d32
+DIST llvm-gentoo-patchset-14.0.3.tar.xz 5492 BLAKE2B 48a46d50a81c5572d1573c6923bc404b198f74ee8587a928e0858553dac37f7fa39cc969d72b938ef3d2f04f6872f9e2e2478821ab90c657ecbbacb3f7d99d7a SHA512 b917b549de6d46cd7aab3e59b888b5e5ffb955435b33d6538be2f31dc30217a24740a673cb6bb661087c245121edb079052b179badaf70b86b985ca69b3652a6
DIST llvm-gentoo-patchset-9999-1.tar.xz 4032 BLAKE2B b9413484dafed8ae0c68c2c164b45fd07bb8d5d0898f03abe118fd2120ffcb1fb6c949de9649a97c2e8105f24b9d131a725c67c0a502ca4d4d192c1a0d65f49d SHA512 e64449eeaf756c5bd945109937b84ba4bd8a015222bd792d39cf3947871e87571a4ca57814790e51544cb05ad4c2d1f044e818e4caaac7c2e2a02cb1aa290fcc
-DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81
DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1
-DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2
DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f
-DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999
DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2
-EBUILD compiler-rt-sanitizers-11.1.0-r1.ebuild 6042 BLAKE2B b2e497920258f581395f794ac977615e42e153ea966fead3a7ce5fbd9c93831ec807f4b711ffc41a1ecb84214e3bd386ffc038b549bc9ade691b7f843a5032a4 SHA512 05092de752ccb3a1832eb834315a63e161b52a7bd4a52ec77b24adeff9611368fe1166bf7bd12b2111e15364a44d2573527111641d97b9e989e593342a4fbc9a
+DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646
EBUILD compiler-rt-sanitizers-12.0.1.ebuild 5959 BLAKE2B acfa1240b3ffa450fe5ede50a6d8bc9d32b06bea46da57f82c004fbde8e69693242037f9571bf885f56d16d3ead4711402f1c3a2bf65fb42741ea95b12a1baff SHA512 cf095eeaf547d431d60b11f147e5e8a03e3659a3b56ec98be4af3fdbd4cb3ed16891eb8066187bff27613f0c6a37d30d08725df95419b515f1038087c149ad82
-EBUILD compiler-rt-sanitizers-13.0.0-r1.ebuild 6162 BLAKE2B e9f41c36aa12ed0257e3fa3298a5504e13243c1f73a0c4e425a9660751011f05856d09f72eb6d6c5fe9c901b670173931899858420352bc63627df69feccb975 SHA512 b134ad7badbd4f6540f8d683c5a0b0b583702879465caa16a13ab0f528328d7db92ed214dae6698371671fec582429032b0d7dbcdcefa94721395f4d366de60a
-EBUILD compiler-rt-sanitizers-13.0.0.ebuild 6154 BLAKE2B 97eaca6637d5f368d5f21e6640486734d1fb60fca89cc330ab19b7d129c425f8eefabfa225711a624018972b403329434e44e55fd1f69cf148d2b0d642ba08ae SHA512 31c7c45eec392795267f8ca2efa1f2894e183ef4fc5f575fbc531a60ebee3c90c4bb4a551f82a6723a3010ac5196a8c83cbd1b7e49704d9b9cfbe1cc68753cf9
-EBUILD compiler-rt-sanitizers-13.0.1.ebuild 6338 BLAKE2B 426d8ba85088ad30835f1499cb5abc26beb79da37fd3073c6d3f585a468a830545572a311edbeec0c0546572c83ef7881ad9cdc22dfc048892bc652060bca61b SHA512 820b956317798da42f7b43594fb3c1eae482bff3d67e498cea44a3e38b632c1edeb715d4e9057583ecc0416118334880b0c4bcced37290985e158b66404431d2
-EBUILD compiler-rt-sanitizers-14.0.0.ebuild 6351 BLAKE2B 8de9e08840a8322278be3733f6805cbba23f8ae7e8bc21eaaa87a1a30a07e89a5340cdc5114a958d30ff8131b9ae0858bd0de116616eee6093577fbf6ac7ab94 SHA512 447fa87861a95615165248d189c36b41b314087e8e2fcbbf2639bbb6b9979a6472e273be30494ff05ba9f6bef4ca5d78e799494aa1379a7569845005ec366c26
-EBUILD compiler-rt-sanitizers-14.0.1.ebuild 6345 BLAKE2B 67e5d67b909ff0521852023f5406032af9a147ca600a09c99e308471545c00afaca3b281ad12ec97b75ec98f71daab9ef82d63c3f01e2cb982bc854464e16980 SHA512 7bcda533453bffb06d4689f6e52695e6050a10929fba34593bd5c2d71ecc0a9deb56da9d96c0474489ffd7a2669e4a347c4f0d9e27f7f18f4119c530210140d7
-EBUILD compiler-rt-sanitizers-15.0.0.9999.ebuild 6273 BLAKE2B 74cecea17e26529cf75ada6ba68c169d587033de3320ed5ed5f31ae85935cff691e9b025011338b34ea50d1a747f8fe2f3fe25874072cfb328704906d0c298bb SHA512 701c5f5d70c20d7cd1276763d7198438dc53772c2b2713be82a96b05d5ef3797d2866eb94b65b16d2a0e3f842caffe4578c12dc3e775368ebc0d7afc8811be0e
+EBUILD compiler-rt-sanitizers-13.0.1.ebuild 6337 BLAKE2B 67f5e39af19ab6e4dccb2989d044a1f148a7e3cafd7134ea7ccdc75481416158613137e3cc7204d32b3c868d00e5047c9d378f09814b8fc1e46ad876d5214423 SHA512 c49b998f5f990103e53253f22f19313e3b8e884818bdc5b651ee976957f8fa10d36ce6146b1db65336c60e4f22f67c435c5841e0f8cea48901724790d3c6738f
+EBUILD compiler-rt-sanitizers-14.0.1.ebuild 6348 BLAKE2B b5af3a1463dbd380734be4ac8bfca915433b6211d2c4a4c1d72d78a9fed3ad6019af27acd3ae35ad2b5c08c1c79dc474fcd4ef61081486db7287ebebbb0aefd2 SHA512 2c20d2182c590f03eab7a59861da8ae324446df3d5a4a4d6b23f49ae9090645c494fc9673f43b2648b201ac330dab9fb104823435763713772e1bffd7e46f44b
+EBUILD compiler-rt-sanitizers-14.0.3.ebuild 6351 BLAKE2B 635b4e58dcd3469c586bd54327640759fc33ea17e86974fc40cdde02a7df22626e4d9e1a7462076fd9d7511a66f0124daf000e3af3ae0206d8080fbe337e63a5 SHA512 8bc9ac8fa1d2eea753b9de57bd27c66903723f4fefeb35781820f80eb2166de6d336240836dca0557e7df8c934aba8f9275f470d1b8129a8bef7122a092db857
+EBUILD compiler-rt-sanitizers-15.0.0.9999.ebuild 6281 BLAKE2B 1535547da34623ff67d497136d5757a5ff788622e8077fa78c64a388637a27954e0aa39873abfb5f014029bf88d4f0349536a33194d11089137e843cb9fadc9e SHA512 9d79e661e825e3f4670efcbf6efe40c6051ab5100b0fdb2ae4bc761665b8dbcfb795e7147836044d0eb1d57cd9c2eec228004bcb13bc303d919e2d3912c58f7f
MISC metadata.xml 1330 BLAKE2B 8381c36fb0ee37358cebacf512ee2a0ff6f2c0fc8e05544d9dc1bb1e11bc53f4196c2ecc6c8eb66c833f266c8d12da2c92a5f0b94cb3404397f925f9ebfc2a72 SHA512 6ea6159eb0929dc9f009ab326295549db329f7594dd5ff82e255238ed1fb17e3e8909079c915c6ae4829bb853666456772d17fa2078a332f6340807d6cd4f20e
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0-r1.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0-r1.ebuild
deleted file mode 100644
index c56dd239fbd5..000000000000
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-11.1.0-r1.ebuild
+++ /dev/null
@@ -1,204 +0,0 @@
-# Copyright 1999-2022 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="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos"
-IUSE="+clang test"
-# 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 )
- test? (
- cfi? ( ubsan )
- gwp-asan? ( scudo )
- )"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-CLANG_SLOT=${SLOT%%.*}
-# llvm-6 for new lit options
-DEPEND="
- >=sys-devel/llvm-6
- virtual/libcrypt"
-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_PATCHSET=11.1.0-3
-llvm.org_set_globals
-
-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
-
- # TODO: fix these tests to be skipped upstream
- if use asan && ! use profile; then
- 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' \
- 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-13.0.0-r1.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0-r1.ebuild
deleted file mode 100644
index 942810e86916..000000000000
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0-r1.ebuild
+++ /dev/null
@@ -1,207 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-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="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
-IUSE="+clang debug test"
-# base targets
-IUSE+=" +libfuzzer +memprof +orc +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 orc profile xray )
- test? (
- cfi? ( ubsan )
- gwp-asan? ( scudo )
- )"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-CLANG_SLOT=${SLOT%%.*}
-# llvm-6 for new lit options
-DEPEND="
- >=sys-devel/llvm-6
- virtual/libcrypt"
-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}
- )
- !test? (
- ${PYTHON_DEPS}
- )"
-
-LLVM_COMPONENTS=( compiler-rt )
-LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest )
-LLVM_PATCHSET=${PV/_/-}-r3
-llvm.org_set_globals
-
-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
-
- # TODO: fix these tests to be skipped upstream
- if use asan && ! use profile; then
- 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
-}
-
-src_configure() {
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- # 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_MEMPROF=$(usex memprof)
- -DCOMPILER_RT_BUILD_ORC=$(usex orc)
- -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-13.0.0.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0.ebuild
deleted file mode 100644
index 0e4e81fde951..000000000000
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.0.ebuild
+++ /dev/null
@@ -1,207 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-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="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos"
-IUSE="+clang debug test"
-# base targets
-IUSE+=" +libfuzzer +memprof +orc +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 orc profile xray )
- test? (
- cfi? ( ubsan )
- gwp-asan? ( scudo )
- )"
-RESTRICT="!test? ( test ) !clang? ( test )"
-
-CLANG_SLOT=${SLOT%%.*}
-# llvm-6 for new lit options
-DEPEND="
- >=sys-devel/llvm-6
- virtual/libcrypt"
-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}
- )
- !test? (
- ${PYTHON_DEPS}
- )"
-
-LLVM_COMPONENTS=( compiler-rt )
-LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest )
-LLVM_PATCHSET=${PV/_/-}
-llvm.org_set_globals
-
-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
-
- # TODO: fix these tests to be skipped upstream
- if use asan && ! use profile; then
- 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
-}
-
-src_configure() {
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- # 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_MEMPROF=$(usex memprof)
- -DCOMPILER_RT_BUILD_ORC=$(usex orc)
- -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-13.0.1.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.1.ebuild
index c7695d4eb7b6..9ea0f646dc82 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.0.1.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-13.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="+abi_x86_32 abi_x86_64 +clang debug test"
# base targets
IUSE+=" +libfuzzer +memprof +orc +profile +xray"
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.1.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.1.ebuild
index 49ba4a231b56..b0a36755b564 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.1.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.1.ebuild
@@ -51,7 +51,7 @@ BDEPEND="
LLVM_COMPONENTS=( compiler-rt cmake )
LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest )
-LLVM_PATCHSET=9999-1
+LLVM_PATCHSET=${PV/_/-}
llvm.org_set_globals
python_check_deps() {
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.0.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.3.ebuild
index 4a0fae4b09bb..433da0366bd7 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.0.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-14.0.3.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
PYTHON_COMPAT=( python3_{8..10} )
inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1
@@ -27,14 +27,19 @@ REQUIRED_USE="
test? (
cfi? ( ubsan )
gwp-asan? ( scudo )
- )"
-RESTRICT="!test? ( test ) !clang? ( test )"
+ )
+"
+RESTRICT="
+ !clang? ( test )
+ !test? ( test )
+"
CLANG_SLOT=${SLOT%%.*}
# llvm-6 for new lit options
DEPEND="
>=sys-devel/llvm-6
- virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?]"
+ virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?]
+"
BDEPEND="
>=dev-util/cmake-3.16
clang? ( sys-devel/clang )
@@ -47,11 +52,12 @@ BDEPEND="
)
!test? (
${PYTHON_DEPS}
- )"
+ )
+"
LLVM_COMPONENTS=( compiler-rt cmake )
LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest )
-LLVM_PATCHSET=${PV/_/-}-r2
+LLVM_PATCHSET=${PV}
llvm.org_set_globals
python_check_deps() {
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-15.0.0.9999.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-15.0.0.9999.ebuild
index 12e5eb2d01e7..5006d1d658ce 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-15.0.0.9999.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-15.0.0.9999.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
PYTHON_COMPAT=( python3_{8..10} )
inherit check-reqs cmake flag-o-matic llvm llvm.org python-any-r1
@@ -27,27 +27,33 @@ REQUIRED_USE="
test? (
cfi? ( ubsan )
gwp-asan? ( scudo )
- )"
-RESTRICT="!test? ( test ) !clang? ( test )"
+ )
+"
+RESTRICT="
+ !clang? ( test )
+ !test? ( test )
+"
CLANG_SLOT=${SLOT%%.*}
# llvm-6 for new lit options
DEPEND="
>=sys-devel/llvm-6
- virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?]"
+ virtual/libcrypt[abi_x86_32(-)?,abi_x86_64(-)?]
+"
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}]")
+ $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
=sys-devel/clang-${PV%_*}*:${CLANG_SLOT}
sys-libs/compiler-rt:${SLOT}
)
!test? (
${PYTHON_DEPS}
- )"
+ )
+"
LLVM_COMPONENTS=( compiler-rt cmake )
LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/unittest )
diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest
index b7aa51355bc2..e6e31f372bec 100644
--- a/sys-libs/compiler-rt/Manifest
+++ b/sys-libs/compiler-rt/Manifest
@@ -1,20 +1,15 @@
-DIST llvm-gentoo-patchset-11.1.0-1.tar.xz 4032 BLAKE2B e69138a422e315b31a3d9c11faa4ae1ddf1bf9092cee2db0de4d2adef81fd802973488293aab48b764402b51996893b17ca03249ef4620848a576d1f6cdb9698 SHA512 e1c5504dab6c5db9fdf4addfeb12316f22d0258717ba551a9b7b3ba37919491fb6011ac5cca1e793b7509d5c1c186bc6bc4213f7d6155d190612492b216f979b
DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249
-DIST llvm-gentoo-patchset-13.0.0.tar.xz 5012 BLAKE2B 6760c78c086aaf6629143fd920b0a2c68cad9278628fbea8164dfeb59db95984a5b5d6b3505b510c697e8c95bf8d2be782c6b73c01622d52f2da9b07ecff39e0 SHA512 7764d49343b795b6bebae64f646ba27e3e6cc2a20b8a1aee645ce0d8474633c34acfbb73c08546fee415755dd4ea5a98c1d84db5e394cf5f4fc802eb61148ab6
DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01
-DIST llvm-gentoo-patchset-14.0.0.tar.xz 4076 BLAKE2B dc114e53fb878ca74489c420506b9dd9c417e2b97dff4d9441d78a0a256ca1e7243ea2ce38b8665d37b0f24436f9ea5771cd05d9b13887e7370a19ec5e05ba20 SHA512 7f7d08fc762d634692fb251a51c0d73a4a9098907f25451b9ca9453315b603331b65a454b2d631cfecbb3fbc11ab3a36f644c0d7b03e1bb8e96ce4aa08d60615
+DIST llvm-gentoo-patchset-14.0.1.tar.xz 4724 BLAKE2B 2689298c687fa8b5fa2545afccc248c00ff6778f1a14e3e7999e5d52a1b0b9c3b2e66e8c008e27c62c6c3c08009dc7d9d083ca53698138258ac972e4ad03c042 SHA512 a9f071ad0a792f558105a64790f9e470d8aaed05bd1baabbe86539760c881f772602a03265e0962d8599f991f7fd44d14a49e2ef9d74bb5eb283f473f4084d32
+DIST llvm-gentoo-patchset-14.0.3.tar.xz 5492 BLAKE2B 48a46d50a81c5572d1573c6923bc404b198f74ee8587a928e0858553dac37f7fa39cc969d72b938ef3d2f04f6872f9e2e2478821ab90c657ecbbacb3f7d99d7a SHA512 b917b549de6d46cd7aab3e59b888b5e5ffb955435b33d6538be2f31dc30217a24740a673cb6bb661087c245121edb079052b179badaf70b86b985ca69b3652a6
DIST llvm-gentoo-patchset-9999-1.tar.xz 4032 BLAKE2B b9413484dafed8ae0c68c2c164b45fd07bb8d5d0898f03abe118fd2120ffcb1fb6c949de9649a97c2e8105f24b9d131a725c67c0a502ca4d4d192c1a0d65f49d SHA512 e64449eeaf756c5bd945109937b84ba4bd8a015222bd792d39cf3947871e87571a4ca57814790e51544cb05ad4c2d1f044e818e4caaac7c2e2a02cb1aa290fcc
-DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81
DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1
-DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2
DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f
-DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999
DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2
-EBUILD compiler-rt-11.1.0.ebuild 3506 BLAKE2B fea54ca4aabe9bf35afc64a579ae18eb4491eeecb58ede43369ba9c294f624851214525f399cfa3adadee70ca66cbe64821376272b9965304266bcfc07b9f220 SHA512 f50906ee9f3b044a251ddd56db6ce10d3d2b632ffa7d3fd608cc5d7320e8d4b47b1ada26965b5fc9bb746e77c1b01ec61b5f719bc6bb2805720df035fca993da
+DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646
EBUILD compiler-rt-12.0.1.ebuild 3539 BLAKE2B 7d6bd0a7be4fec1b8427aa9d81eacf69d3338490c70f097910ad0bb4a67f0313ea8fd6bae15a5e05b8805cad6a789124d94ee91577a58beb96f471a1bf49c3b3 SHA512 bd671f1896182a00ade3b53252ba6b7cb8a6f65eec3d806bbfc7bd4e2b9253a8bc2bd497c018705f34fb30ad1897693af268c6e4cc39e044c788807042d7b55e
-EBUILD compiler-rt-13.0.0.ebuild 3717 BLAKE2B bb6b7ccb4ee20e7da325bd111adefa0c212be6b6291d71e2553d31b56e0c95e7a50ea5ba2b2107bf3cbd052126491ae5811844a06a60b742069cb8ca268c8315 SHA512 03e3925de867fefa79ffc8bf6a1b53020452ccda98d79dedc09b4d2c5dddcef07890b2055c7774ea054241cb124f0629819aef9df1102cb70b6e7579ed52aa44
-EBUILD compiler-rt-13.0.1.ebuild 3869 BLAKE2B e94607722b892fed333b17ceeb35825d0bf83fce783f6a8f4cb1c70eb028a0e0397ed81e50850057f2d863576b5bb19c7b144a25cfb5778805aadacdf8e6c489 SHA512 648bb060f7fa67435859c9548d606fa489f8b6994befa2b10c9ffced1df67cfa9fbc8ca1a3bea7520298bc48b185dbba1a86f9b4283821d0d23a5327a0ea54b9
-EBUILD compiler-rt-14.0.0.ebuild 3879 BLAKE2B f67b9247bb931ef6fe9de922e98842a2df8271e17eba634a34bab201670a8e0ada3a252b378e4a5584ac8d40a32b254a2970a1294dfc75a9198757f4164f403e SHA512 2cd68cecd5e1207086f99d469234fb147e3b64fc65a111260e18b1668efcbe1caa2ce3852a528433bc8c27d0f3575e8089c4d8b118f0ed86ac8941c9a9f9b3c3
-EBUILD compiler-rt-14.0.1.ebuild 3876 BLAKE2B 77cbc5ec36cb3f5ae1f413f511d67073522911329a8fe466044043b5247df9615f9bda56baff64b89534a35508024e86d2a7743b18180301c4ab9bd7ab8729ba SHA512 9b0e71af5288415b2477403424173955e9d2a77b8d1896780ea401e3e6db8397375322612f0f23667b8d62266d95f69b3c41773445e0c3573df254f4ed49cf90
-EBUILD compiler-rt-15.0.0.9999.ebuild 3804 BLAKE2B 5e4c91ff5ed9ddd0c4567b540a2eb4607434000b26ad826c706c806aff443b2b33e86911f09b9c380ca6a052c0012ee2bcb7e464dae67c254793463fff605241 SHA512 1b23c0bec12a5b2450cd4d6e5b09248607f81b7a4c70b074340d3975172bf9a077da89f308af7ae32ee4bfa4d6a080b4cfa08fc1c8c7fcfc661868a0266bbc31
+EBUILD compiler-rt-13.0.1.ebuild 3868 BLAKE2B b2b643b850023513b69076bc791b22b74aa54445250cba334a2d3dfdc26a1ea11d30d1ce9df6cb2d1c813b66eaa59a130821470b3a3076237f9ef93d2919a124 SHA512 334a2609ae6882dbbb9caca5bb3bc7ba0a668f9a8f337570d54bde926d7ebfaa87fe4e53dddc73ea602b2d52e7537b9490f8936736480f1ddac6c9caf7b6832d
+EBUILD compiler-rt-14.0.1.ebuild 3879 BLAKE2B f67b9247bb931ef6fe9de922e98842a2df8271e17eba634a34bab201670a8e0ada3a252b378e4a5584ac8d40a32b254a2970a1294dfc75a9198757f4164f403e SHA512 2cd68cecd5e1207086f99d469234fb147e3b64fc65a111260e18b1668efcbe1caa2ce3852a528433bc8c27d0f3575e8089c4d8b118f0ed86ac8941c9a9f9b3c3
+EBUILD compiler-rt-14.0.3.ebuild 3877 BLAKE2B f86d43aa88361017a82b659262e9d997c4a3520b446836fa4ab48510060d19e246443d1acc0f717f256ecf6dad6f8c93a7c55b9e8373f3d837515c12ea26f168 SHA512 ec4ebd8a3343d28b41bf991a0b00d4df058ef0b53204cbcd786e83f659eadea377822c7ad8043f0fda381255ebd7386c32ebd4a87d3c60bc774e682cbb069807
+EBUILD compiler-rt-15.0.0.9999.ebuild 3803 BLAKE2B 8b63b280b28c95627852a737b9a5838d57682dff031eda2f436c2c624eeab2a76f809a1687f24fddc81ff8d22c50877077f6aeec0e649951bf0338952582872b SHA512 889b8d1d835fb9717511b042399946f1afbc0beb7b1468a347d90ec185e98caf5eba7093b823e16f90939764cd2781fb0141135ccbd3ec73047cb9f38371323c
MISC metadata.xml 334 BLAKE2B e52ad011edc624e8b4c6449a9c77d0972222c4e3ecad01ea24eb9f3175053b191df6267886a186bc3e169581b86b624b6c77f37fac763a12129a1dd8cd6ee285 SHA512 1bf0f62c12690e6596650e8872405fc53bc3c4bbddcf80e02b3bcce9b762f0aa02d462949b9b54c0c930ca6cce5518333e79951ae57378def8eb9719463a9297
diff --git a/sys-libs/compiler-rt/compiler-rt-11.1.0.ebuild b/sys-libs/compiler-rt/compiler-rt-11.1.0.ebuild
deleted file mode 100644
index 46345babf318..000000000000
--- a/sys-libs/compiler-rt/compiler-rt-11.1.0.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
-
-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="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos"
-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_PATCHSET=11.1.0-1
-llvm.org_set_globals
-
-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-13.0.0.ebuild b/sys-libs/compiler-rt/compiler-rt-13.0.0.ebuild
deleted file mode 100644
index a2d62590de11..000000000000
--- a/sys-libs/compiler-rt/compiler-rt-13.0.0.ebuild
+++ /dev/null
@@ -1,130 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-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="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~ppc-macos ~x64-macos"
-IUSE="+clang debug 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}
- )
- !test? (
- ${PYTHON_DEPS}
- )"
-
-LLVM_COMPONENTS=( compiler-rt )
-LLVM_PATCHSET=${PV/_/-}
-llvm.org_set_globals
-
-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() {
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- # 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_MEMPROF=OFF
- -DCOMPILER_RT_BUILD_ORC=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-13.0.1.ebuild b/sys-libs/compiler-rt/compiler-rt-13.0.1.ebuild
index 26709f8a2123..08e7c073204b 100644
--- a/sys-libs/compiler-rt/compiler-rt-13.0.1.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-13.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="+abi_x86_32 abi_x86_64 +clang debug test"
RESTRICT="!test? ( test ) !clang? ( test )"
diff --git a/sys-libs/compiler-rt/compiler-rt-14.0.1.ebuild b/sys-libs/compiler-rt/compiler-rt-14.0.1.ebuild
index 3822cdf53b40..0ac188065657 100644
--- a/sys-libs/compiler-rt/compiler-rt-14.0.1.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-14.0.1.ebuild
@@ -31,7 +31,7 @@ BDEPEND="
)"
LLVM_COMPONENTS=( compiler-rt cmake )
-LLVM_PATCHSET=9999-1
+LLVM_PATCHSET=${PV/_/-}
llvm.org_set_globals
python_check_deps() {
diff --git a/sys-libs/compiler-rt/compiler-rt-14.0.0.ebuild b/sys-libs/compiler-rt/compiler-rt-14.0.3.ebuild
index 0ac188065657..dcbada06ccf0 100644
--- a/sys-libs/compiler-rt/compiler-rt-14.0.0.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-14.0.3.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
PYTHON_COMPAT=( python3_{8..10} )
inherit cmake flag-o-matic llvm llvm.org python-any-r1 toolchain-funcs
@@ -18,7 +18,8 @@ RESTRICT="!test? ( test ) !clang? ( test )"
CLANG_SLOT=${SLOT%%.*}
# llvm-6 for new lit options
DEPEND="
- >=sys-devel/llvm-6"
+ >=sys-devel/llvm-6
+"
BDEPEND="
>=dev-util/cmake-3.16
clang? ( sys-devel/clang )
@@ -28,10 +29,11 @@ BDEPEND="
)
!test? (
${PYTHON_DEPS}
- )"
+ )
+"
LLVM_COMPONENTS=( compiler-rt cmake )
-LLVM_PATCHSET=${PV/_/-}
+LLVM_PATCHSET=${PV}
llvm.org_set_globals
python_check_deps() {
diff --git a/sys-libs/compiler-rt/compiler-rt-15.0.0.9999.ebuild b/sys-libs/compiler-rt/compiler-rt-15.0.0.9999.ebuild
index 1c847a474a08..1a7cc5f2b724 100644
--- a/sys-libs/compiler-rt/compiler-rt-15.0.0.9999.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-15.0.0.9999.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
PYTHON_COMPAT=( python3_{8..10} )
inherit cmake flag-o-matic llvm llvm.org python-any-r1 toolchain-funcs
@@ -18,17 +18,19 @@ RESTRICT="!test? ( test ) !clang? ( test )"
CLANG_SLOT=${SLOT%%.*}
# llvm-6 for new lit options
DEPEND="
- >=sys-devel/llvm-6"
+ >=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}]")
+ $(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
=sys-devel/clang-${PV%_*}*:${CLANG_SLOT}
)
!test? (
${PYTHON_DEPS}
- )"
+ )
+"
LLVM_COMPONENTS=( compiler-rt cmake )
LLVM_PATCHSET=9999-1
diff --git a/sys-libs/cracklib/Manifest b/sys-libs/cracklib/Manifest
index ed02b33ec414..a007bb95f2ad 100644
--- a/sys-libs/cracklib/Manifest
+++ b/sys-libs/cracklib/Manifest
@@ -1,3 +1,3 @@
DIST cracklib-2.9.7.tar.bz2 603630 BLAKE2B 81a45b2fb9f34da84d4fb864e1a9f67a4b22c246f1e4db1c599a555f79d560a04d95afb01a89cd3a2e0936f0e8fc51ff5ada26098c24d7af0777a94f51b82bbd SHA512 f6bf65ac092ba46ff78ddbc115692260fb76dc71219cd679d2ea935ebfb9e709fbb30259a7406743ed00dbdc415335b3ac9d9fcba1d204ea36d5eb96bf1333a2
-EBUILD cracklib-2.9.7.ebuild 2606 BLAKE2B 94554367a34bcd0924abd1a054e64408b605b43ecf904d6e72527612ec485ecd8cb03d9b664372a603e132d32facbbe63f40ca85c74f0206e455ff063672de23 SHA512 c65aad0170ff3b3ac58c30805d6816de1ad1df8174bfb390d6b04117e2761d7e04693fe1d07068831625ae9382b59b39c521e4f27882f5f22a7a275733fac66f
+EBUILD cracklib-2.9.7.ebuild 2613 BLAKE2B 314ce7d109f3987f8386408bd82220793bd65b5a6a459dca63c054faf6d4432b699f226626e096fe7cf1f57d987b4f68019806dcdc70289ddd6e0ad9e53949b3 SHA512 e5e60fe3f604eccac9b0cb1d0e1c15a0c22adee15a99352517770b322d8052f295baa6b5444dbaeb0fdff3557065d7fef2697f104b8daf8cb1f63d601ac1af8c
MISC metadata.xml 385 BLAKE2B f81e1ac44f5a4c3f647473385363eed564accca3b62ecde3cb35fab14112af1ceb2a25dc2816fc096aee9c3ed15006252f32491583861689ed70d49218684360 SHA512 6d9908f12c310ef22feeae2216236f9b632dc5204916fbb5693cc53bb58e592dc44f49c45d2c8bc22addd69cc5e4e63df463a23299d09a637f4f0f7379e7b796
diff --git a/sys-libs/cracklib/cracklib-2.9.7.ebuild b/sys-libs/cracklib/cracklib-2.9.7.ebuild
index b2cada86052b..4acc9d791b07 100644
--- a/sys-libs/cracklib/cracklib-2.9.7.ebuild
+++ b/sys-libs/cracklib/cracklib-2.9.7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -17,7 +17,7 @@ SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.bz2"
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="nls python static-libs zlib"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
diff --git a/sys-libs/db/Manifest b/sys-libs/db/Manifest
index a19eac69f2aa..3aaf35b5f96e 100644
--- a/sys-libs/db/Manifest
+++ b/sys-libs/db/Manifest
@@ -19,8 +19,8 @@ DIST db-6.2.38.tar.gz 41298311 BLAKE2B a04a3344058b1d9982f39628c1114aded8f8c8607
EBUILD db-18.1.32-r1.ebuild 5960 BLAKE2B 0c5376bf33a91c69c3f0bfe3baf9b4f99770082ebbbf202ac436a9a1b9d8f9ce8e59f8e2670c0a524848717e98991cbb0e628098d060af99cead9fa5ef82a632 SHA512 3f5dca955df5d78f95baaeb2f64ae30e67f7ee30656e962ccd119f8a88d45905fecbdf5d29a2e72b5e63c41ef849db6961b22b86cc03aa132a0114fc00310d61
EBUILD db-18.1.40-r1.ebuild 5877 BLAKE2B 225c7e6250140cc1c8c81f0b99a326e5b3ea0007b5b8804155b45e4b3c82fe09bb704590379098789ea43a657d0e72e79b1bd2e0c0dfd69c4615685010939d51 SHA512 6d9052607d2bf864d3ded422054b55a387c7cbc17f2575c879b7333be22b57507f186598f4107167a914dee7594c0a98d5e1628aba40a2c3269dc95ef0b73905
EBUILD db-4.8.30-r6.ebuild 4304 BLAKE2B c9021ae73d814d5f78e0fa9066a27813729d7353fb62b5735dadf7394dbc586b67e4f4703132396f9b80906c70353cde6ae1113cab8ed5778894d6242024e648 SHA512 6509604b1624b47f5e3a51e2b37e5de002836d23a4ea4633b994a4f168c44804dd2283904783473391e160cae5462ed6c087da893d2e4e06440f7db6456246e9
-EBUILD db-5.3.28-r8.ebuild 6274 BLAKE2B 47e32b5796b11c9d794a0ac69d5983d89b17c88ea98b2e50b9678fd9ae1d0072a8c28dc126d3c787324d84f04fd7db9f3d6e1eebea32a29cf35b1f295f4e14e0 SHA512 8b200232eeeee74f7e3cd23f53b202a8da8f3e215ee3a21ee62f57729fcea533379b8515a48de3449442a3b75abd40c4a1bcbab197366e9e82af9de201671dd4
-EBUILD db-6.0.35-r4.ebuild 6221 BLAKE2B c5c9602d02034638fd45c9cf4723cd86ee0bec8d2291add78ebbfb13fe43278fb477dea4337514b41002e4ade5dd2f715cf391b8f5353e9145455766bea2d2f6 SHA512 9642cb3f3b64510ec3d8d8bf04f95299f4301a48641b67c4a219d5c770947df9d2be20adc82c919c1b8be546fb19e0de85a8336fb28f7b7c51825c81f88db4b5
+EBUILD db-5.3.28-r8.ebuild 6325 BLAKE2B 8e4db465357b5fa3aa897134c0f18a0042d004896ed43979bf007b9602a1df889aed765ee0fadb70b9a50b991891d81606cd7d56393b098fb1d1bc42ef821a88 SHA512 e65b8a7801a8c180375949b2584952a05f207a8411021540f4d8989c0b3d6e462eb732592eaf468610cda3abeb70fb2381c07022288021de4cfa8654b4e82c65
+EBUILD db-6.0.35-r4.ebuild 6228 BLAKE2B 6c533595bbe2d1888c296eabaae5eb40f1335c81a76d1d95a3b4bbd2123abc673dee0e08e90c323ab7a59c95ab8890da483aa53cec93c92079000021e4d943b9 SHA512 18497321dd41cd1025c2e9ebffae12a0e0acb70843dd73c7db668bca86d31246cd3e60ceebfb1d06367061a47e8cbde3fa51053c67917000d567d1c4d663541f
EBUILD db-6.1.38-r1.ebuild 6004 BLAKE2B fb9176d0eef059b4b9606d9287bebe69dafa3752c98fd03e536593b34159b500498758b77456771e28edf9409bbf917f10ca13365899c5245685ce2fe10e5a20 SHA512 7ccfff6e27f1e138a53abba02123f56e10a3da56ddc41c12a2715aa9fd6e8a47d8c8b2e05a6489e18ef69b063a1c9150378a93b398288f3c5fb89ed3c2c2449c
EBUILD db-6.2.38-r1.ebuild 6267 BLAKE2B 883d7c81d6e2fc11a2c3d7dc6746935f1ea3a26aae9ab0bc833138234c238057a58caebc23b70e2dc2da05d0ea130bb670a4b33bf68aeb2bfd90bf86d9339b0f SHA512 b1411c814134c6ef9751425aaa79362cc03c0aa8d19a21fd4c5cc8085ec5a98bddc773442bdb69ee9f06544d013505f36b3c2d1301b37b20646f4126573c7aeb
MISC metadata.xml 1261 BLAKE2B 81cfdd965f4e2e0342d812c6c1fd602c43ca8bbbb23bd12f230444d26bee578f9ba2af781a8390bb754b66b4699c6aada379dea90397798f8a489a7fd11b85fb SHA512 08d43450d54a8718639ae2637f13da7626415e99a8fa5948c5107b7a973161f31b3b0cf58dc538dd48a18db996f020d57d20edefbcdd8e37c6e58c206c3aab6e
diff --git a/sys-libs/db/db-5.3.28-r8.ebuild b/sys-libs/db/db-5.3.28-r8.ebuild
index c7f5d0f6d288..133c241be4a6 100644
--- a/sys-libs/db/db-5.3.28-r8.ebuild
+++ b/sys-libs/db/db-5.3.28-r8.ebuild
@@ -38,6 +38,8 @@ REQUIRED_USE="test? ( tcl )"
DEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] )
test? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] )"
RDEPEND="tcl? ( >=dev-lang/tcl-8.5.15-r1:0=[${MULTILIB_USEDEP}] )"
+# bug #841698
+BDEPEND="sys-devel/autoconf-archive"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/db${SLOT}/db.h
diff --git a/sys-libs/db/db-6.0.35-r4.ebuild b/sys-libs/db/db-6.0.35-r4.ebuild
index cf95493690ea..93dc0fcf54a6 100644
--- a/sys-libs/db/db-6.0.35-r4.ebuild
+++ b/sys-libs/db/db-6.0.35-r4.ebuild
@@ -29,7 +29,7 @@ done
LICENSE="AGPL-3"
SLOT="$(ver_cut 1-2)"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="doc cxx tcl test"
REQUIRED_USE="test? ( tcl )"
diff --git a/sys-libs/gdbm/Manifest b/sys-libs/gdbm/Manifest
index 6f7480e033da..a7bf5e45e050 100644
--- a/sys-libs/gdbm/Manifest
+++ b/sys-libs/gdbm/Manifest
@@ -2,5 +2,5 @@ DIST gdbm-1.22.tar.gz 1090100 BLAKE2B f27c65e8cc7c71fc4f4a119b92e1d1b2068c1ec874
DIST gdbm-1.23.tar.gz 1115854 BLAKE2B a47746577cf2f3c9b62faea496c4d6a50a8f1b0a5af448cb2215e90057c99b5b630ba3f5357c85dfb7fd98ba4e90969e30a779120c29106ed1e8736721f9bec1 SHA512 918080cb0225b221c11eb7339634a95e00c526072395f7a3d46ccf42ef020dea7c4c5bec34aff2c4f16033e1fff6583252b7e978f68b8d7f8736b0e025838e10
DIST gdbm-1.23.tar.gz.sig 181 BLAKE2B 34785e6fe8e02100084d61e989749ee388794b8af82fc59a417140807bf169c45c15935f8cf91d0ba116dfdee295e05b2b014f1539f1f128a57acfe59010d34d SHA512 6653751c04584f10aa3325bd1cb5b9f7970a786dd2a99602ea620c11a86a9ba5c342aa52627bd06c03da822e9e1600dc034d9a8f42856a287fd67f6b9f161c71
EBUILD gdbm-1.22.ebuild 1202 BLAKE2B bc388868d2de48c00f3f68086ae93b65672b56a377432bdfb7285818dbbf4ca55d0b741fc13fd46927163947e620fbf2f9b014acc9f2c17cb8c46af89828f069 SHA512 3fcd47d0d2aafe1db816bcadfba4bce22b0bc8c7ebf7a67654e237df10ccff461e746f6ed530e1b4cc84c1f0b66499c7ca09239ba4d83c16a680b3874f63abb8
-EBUILD gdbm-1.23.ebuild 1405 BLAKE2B bb83d1bfda58d40be3383f0cafc9a59288a7a72ee94d3d8ecf8a2613b7c7d1fccf05494c22d1defe2cdbd26b438817985d4d5a404265b71ed49f0205e4288276 SHA512 e0e5ba2fc70e0573fbdfea95b6c0f084da2fb759b84583bdde3ca85ea28899eb14b9a40f7cfaca6cb56afd9a33d42a8232e1d4e2c22372ee1ab1a76bf1851d90
+EBUILD gdbm-1.23.ebuild 1552 BLAKE2B 52913b3c2c9a9db27305b9e8e79283099f3312d7f15d444703b008aefe3ca292438fddf4e4d63ddd683f7050b16c15ca6033299a645fe93ca1625a8a363afe68 SHA512 ff390a0dd103fd0b4b64f317cfe753950fe51246c5a306e59f80f8d067fdb3b77d4c48f9f8b1a48ced69a9a0861ebb23a5cb8592867ac4803bafec66827e98de
MISC metadata.xml 360 BLAKE2B 4133eee8e152f330b954a1bcc947747364b73301a0bbb5c26cc88f8d53fa816a8b16e34b06a79859a19975bf45761dbc8bd73b6b6a875587d63624ccd737600b SHA512 5f8de97ceb589c6db119d81ef7e662042b288d2fca0ab1d1f8fef714dcb2087cf5f87ade607f7a18790fba02579a9ec5a84edb0482c83b7181e7836d108eb9d3
diff --git a/sys-libs/gdbm/gdbm-1.23.ebuild b/sys-libs/gdbm/gdbm-1.23.ebuild
index 634e8f355c15..9df46a0d5032 100644
--- a/sys-libs/gdbm/gdbm-1.23.ebuild
+++ b/sys-libs/gdbm/gdbm-1.23.ebuild
@@ -4,7 +4,7 @@
EAPI=7
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gdbm.asc
-inherit multilib-minimal verify-sig
+inherit libtool multilib-minimal verify-sig
DESCRIPTION="Standard GNU database libraries"
HOMEPAGE="https://www.gnu.org/software/gdbm/"
@@ -13,13 +13,21 @@ SRC_URI+=" verify-sig? ( mirror://gnu/gdbm/${P}.tar.gz.sig )"
LICENSE="GPL-3"
SLOT="0/6" # libgdbm.so version
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+berkdb nls +readline static-libs"
DEPEND="readline? ( sys-libs/readline:=[${MULTILIB_USEDEP}] )"
RDEPEND="${DEPEND}"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-gdbm )"
+src_prepare() {
+ default
+
+ # gdbm ships with very old libtool files, regen to avoid
+ # errors when cross-compiling.
+ elibtoolize
+}
+
multilib_src_configure() {
# gdbm doesn't appear to use either of these libraries
export ac_cv_lib_dbm_main=no ac_cv_lib_ndbm_main=no
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index 4a48e9eb19ea..2f57073cf3a7 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -25,9 +25,10 @@ DIST glibc-2.33-patches-11.tar.xz 143916 BLAKE2B ac13b3ccf9681bb6d3c35ecc33e268e
DIST glibc-2.33.tar.xz 17031280 BLAKE2B 703d12121c1e2c5d9e0c6ba5341f5fb5c4d9111611a83f2360029b5de9c6e5a5611249d1833684a58ed4afdf49cae614365d87ec8721ba0e5d218f593b1f229d SHA512 4cb5777b68b22b746cc51669e0e9282b43c83f6944e42656e6db7195ebb68f2f9260f130fdeb4e3cfc64efae4f58d96c43d388f52be1eb024ca448084684abdb
DIST glibc-2.34-patches-15.tar.xz 146124 BLAKE2B f679f0fc27780173875178537cf996cbfb59bb844566388df0c351dec125eb02070571d4e2852742b43933d09c7a148a39bbc7b2b71fffebd7b8d9d3c16850ac SHA512 5224613e2288fcf027be224001306a84019ebe741114ee1b09d3de9b269dad0280a6dc4d88f4bc38dace501b2944a0098972589a1560756cb3da7e1b7341d672
DIST glibc-2.34-patches-16.tar.xz 164648 BLAKE2B 78786a67109812942ac11bee9a880b9383aa61d0c2b006e3e7e635218842f49c6ce5b7c75597f7d317aa18fede0ca0c79a4bd436b8659ba6a2f1953848484d2a SHA512 acfc91e821cd8b4e57907c7aeaf1eac0bae1f8e244e4011f27819a8ba16a4e9c10fc675c6aaff992be81bba9373ec981fb598838f26aa247e7bd016e2cd786d2
+DIST glibc-2.34-patches-17.tar.xz 241584 BLAKE2B e4eea130c331f64ba66e14a6ba318853141ee3e41b455cb45b8fdb702cae071dd307229dafcfcafcc41e5a56982f52c87e31d95295f824f1a2ae689a7e0f5b49 SHA512 c6a51b373be3986e1ad753541ccf73f29515b5df0f80e0450b26bed37e8c505e22e8f13e89554347e551819c8d89d30f306464e5d25cafa4a12400c112578dca
DIST glibc-2.34.tar.xz 17301232 BLAKE2B 874031192f2f5a3b35c3f5b044a467d4be4e67e8593e070e5b49b901ce8ea6bde2f8d2f6c92fa33b3f61eb723572a9e5f2b45e56064168df80a96d3fdb6fa30c SHA512 15252affd9ef4523a8001db16d497f4fdcb3ddf4cde7fe80e075df0bd3cc6524dc29fbe20229dbf5f97af580556e6b1fac0de321a5fe25322bc3e72f93beb624
-DIST glibc-2.35-patches-4.tar.xz 45456 BLAKE2B 47e1c5e4db4969da27f14816ac9b856f3a57e152139e071f0fd0ecf53b7ac2a0372a8dec7e9e51808d463d2e5b12a6acc9145bb0127a7f36cf1d19b96a0efa41 SHA512 39ca84ed5f3e74bccb8875a77188bb16f6b45b1b22843b4ccf8a7f792d35e05e8305929fbeede290ebb128722caf8277da03dbf4aee9261940765f8dfcd01561
-DIST glibc-2.35-patches-5.tar.xz 45632 BLAKE2B b49161139e8a9e6f4351b5954f38eaa3b0b16a444c370b906e2fcac8eb25c306e6f95474063e511a4f8bf48c0eade9509a6158a1019e32ec4b95c49f992405eb SHA512 5bf20061f24ad087aa0f22808cb0dfd810e5413e71dc9b9c7ec0e9cecd172c40e3517e0a151294175351cf0e037e9c35d8b50ba391a312976e7c4103845089e4
+DIST glibc-2.35-loongarch-patches-20220422.tar.xz 44804 BLAKE2B b93720e45d23c8d17918ffaa480351499f4748bc08ab6e1f1fd3c681fcc0b08a3381188f5d4f14e6706baa5eb45c787bc635d0e8ea59712514012caf93992222 SHA512 28e2d02f07fcf61f76585dd59627314ed20ebe29ecd7ae7f5aea8db0704482fc024fee744cbee1776e666d14b80b1393f64cd2283e3c39be4c97ebe09efcdee2
+DIST glibc-2.35-patches-6.tar.xz 57236 BLAKE2B a03845733e2f0ebe179523458695963d729b4211b4ce14310d55163cd33aff502f9e14a4bb0068410777e9b9bb5be4ef7ad1a1fd51debf9191dcf89dc9ff08b8 SHA512 59c5e1669677e969873f5bba38958316a3b32523cac628b97513aed864e191da10499edac77bb5e9a07179d14cf3c75073fd03e8427f7bcfd68fedcedc35083e
DIST glibc-2.35.tar.xz 18165952 BLAKE2B 623c728884f070cd87ffeb9203f74206197c52405ac9bc44f3dd519a3468b8e8ae2536c883e5d17d94417dbd1e91775de2e674314e4ff7424f9720026d6b7063 SHA512 e7336ce27561be5d7c217832a1136fb327e057bd8d3f92925b35c97e3e9f9e486948b5a1e03e5e4090772ef06437a074d10b82e68f17f1ad8f22077ee39e1b66
DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238
DIST glibc-systemd-20210814.tar.gz 1469 BLAKE2B 10fa7bcb46d4fdce9c0ab353cbd30871e9b09a347a13a9c9a3b5777f931aa3c826c158d2e49532c604d4a834f2fab4089b67495fb88d0398945dc50d45ad9ef1 SHA512 5346a9ea459a1e6ccf665389f2a294de1e16f1e3e05cdf07e3dd99ed0e4f6f8b52cc333d4bff3c75ac90ab6ce70cd4ab2b3e126f920ce7979abd6dda56315efc
@@ -39,9 +40,11 @@ EBUILD glibc-2.30-r9.ebuild 43400 BLAKE2B 01cbb9398dbe5d93f110f7c7ffe24d40719d86
EBUILD glibc-2.31-r7.ebuild 44522 BLAKE2B 1adfba68c35d3af5ec8476b2fe5d3bebf13880eeacb5aaa8438b41b98f5b275f0816a0e654446f62ee2f34f412c5c6e72befcc0deb8988b6faec2c53a07601a9 SHA512 5247b1d75efa86b1a1c85a09219f54d402aae8aaecf0e377ca663a984daf7c69ea97b3072fe83a20002ec7d72661ec7737fbc72982122b58c26cb5bc89997548
EBUILD glibc-2.32-r8.ebuild 44853 BLAKE2B 724f95c0ed2cda18dc2edcaa03b0783a2bc603b72a67e1451535040ddc83be6d1a90ad4b30f9623140b5c0a329ecafb6f19793390137e629d43a3c26e202b28a SHA512 0973b86c266e40203e301cf0c6f8fddc4273c002ffb8fd6c16f6e78f2cfdfbea95fda04adfebb8ee84a14dc950763ba706eadadb2e83f7982b800bee636d5d8f
EBUILD glibc-2.33-r13.ebuild 48593 BLAKE2B 59c4e32d200c6b8fe1e365361c9cc4f4d7f93ab861e93fb13cb9bc0cc8e2d4f3a2f1f8f394570e186398858afc6d844188581f18a8eb7c0964ab73a147be9dcb SHA512 7003a462e28abef982330ab6fc29b836176c3e1943605bd04c907c40376de812783ebcd74a91305a9f86df7c0a75494a29f2187848bc75e6b42198704c514001
-EBUILD glibc-2.34-r10.ebuild 50089 BLAKE2B ada10ebb3acce89f9839a8f3ab4c52e3f42d1a8767f5701f2be1a585178efa551a8c820df524af24def955692858cc0eb7bd60f53e30bed1f3392c9d36402fec SHA512 3d6658c00b5f9cac9c29d1b15ba00ebcd3212819bdeaa83ad56f10f78f4e89286fb1eab12821cd43d4516154d4f602433ed50b9d832ceba1af1a135c80d6d882
+EBUILD glibc-2.34-r10.ebuild 50088 BLAKE2B 0851200f354aaedd3b336e2d1a5a3bf69a75c2496c6a7468b33b14b87bc641173f25154ec67d5a4a55fe620e7449f898f0bad2142e409423dc6840ef83e8d379 SHA512 522199f7d10d0b39f6cc7f13ed47159ceced9c4228c102ff200350f0aafbaf8bf2510a04e78a90c194c332339d5241273aa6f933c0750f25c70f0144162a80ec
EBUILD glibc-2.34-r11.ebuild 50012 BLAKE2B 2b5c796fc88561d3862f5e1897bec6bd9a40bc53897c9b3e49ceb0c3c0f5d9fe872884da288c5284fb8da738002d9e9acd9641299972eeed38b2b12758167100 SHA512 63191d7aa56e3aa0e24976525a01491255a273686ded3f1a05bde06594e96dc0734d7fda64b3f45cd6be042c2a0cfdd6b39dfc79acfd68bc6a19f5f43ba384f0
-EBUILD glibc-2.35-r1.ebuild 48339 BLAKE2B d837073cf2e62d8cb5d6f50f1b48db0ac5d0954f6407784622ea79709fb4750f08d24ffc702d83747671b27589370640a451dea2262ea452e34327ede556ce68 SHA512 0cbc1074684f2ed48317a5face037db43de562693ffd356068eaa4160b063c01155b258fe79e47359d0400c9f50f40f1876d92eef351106974b5be6b29220077
-EBUILD glibc-2.35-r2.ebuild 48683 BLAKE2B dd103c6ff435d01e2c28eabab7099ab06ff60284a7a94eccd5a23e9809005421eaea2e5c058714765264c6d518e2d7a329fa1b7ce520b339aaa54bdbb7d78185 SHA512 1e5e12cf6030cb6dd23bd5a7b98c8d6b96cc3a0d55ef769d793365ea091b3c07f498655f53fbcc7c0391880b67219aaddf4d54bc09f38a0eb8b31c6a01e230d5
-EBUILD glibc-9999.ebuild 48441 BLAKE2B b1b5a913d75abcc15229e073d3417df2ff3c21f146eae9ca9b85a4630d35c2a3811f49deaa28eddebb76a8d4cb4208a7c8552afcca469bd69c897d14fc06d8fe SHA512 9dc2a2c09a4ba4ce923098ce579e54f84d8b756da7ac0acf426abc331447dc47a77811dcdb88e903015c2ddfa3a033cb600f6d00b96e0ef4ba74fedcdb529b80
-MISC metadata.xml 1701 BLAKE2B 91bd245d0a3685d76e3f874b50db872660054767fca5181871022fbdef9a18c4e674890bfed52cc3332c9557430ae8eec64505e67cdbedff000987406ab69ac5 SHA512 524edc37a01a47958ef557d586e8f06c6132481734ea28ed57e146969503fd129ad1da813a4d2d143a9bb8abe8810b0d8c920ab3c422a729287838435c44743a
+EBUILD glibc-2.34-r12.ebuild 49816 BLAKE2B 5ea20d72b5986f2b4ff100d69a8cb85965a529c36da5120fd6c1e8c76c540f917584138d459e13eceaaf3ffdc9d2cecdb9c9e0b22a9833e88b24e2a44bfe6671 SHA512 7b7075e6534fddc9bb69ff7f362647be2061f5389a163b8681244f319fc5872bd222fe7a77dfc19e8b49d5636ae215bd147480637d6b15c22928db8fc1115155
+EBUILD glibc-2.34-r13.ebuild 49811 BLAKE2B 3e6284195fc10ef246becf0840e385a99fae575b9516945d45e83396981860097de8273077485da9ed81438fff8298693475bec8beb38a09d7e0b9d9b364f17e SHA512 fbf32c89f338f10f0155f4ee9b0c6511572fa34da29f9fb4c165b472be5e39853d72407367be66f95198de6aa57bc9a0c45a5eb8b9c772f0d3fb4651d7fa7f32
+EBUILD glibc-2.35-r3.ebuild 49052 BLAKE2B 989cad0d895fdd4c7a6c405a72c3dcb90d799076b47e7667059e54585ee64fec9aba5e1c226546afc8770af13754fc7988f08600c1d50f05e804fec422db7190 SHA512 80289d19be44c9a787022a3a389e640d46ac75c1c3510249f78c56a5898661698b85f124f29678d2a947163050de669953162ff0def1587691466d21bce44853
+EBUILD glibc-2.35-r4.ebuild 48863 BLAKE2B 6ff922da2ddcde3899bc6de017e30e215ed45a177968bf076309dfb8a15d2c91c846ec2dc10d21fb1f76205b979fc160d7924abd69e0f3138f8a34365f459cee SHA512 ce418643d37654d9cfc072272a4680a4f11a78a67682d8ed2072cdedeae02d25271784878adf8f153c569bc982b4ac5c59d6758637847c4bf5a116be717af0af
+EBUILD glibc-9999.ebuild 48245 BLAKE2B 75b64b12a0ac417ac154547505bf1f4067aff625b67e082b26bfd451dfcb1c2610b50f165d76cc21cf595caf2f8c1f97b45169246cc564135a131dae46ba2345 SHA512 2b1d562471dc9754328f20398e37406b02c93e896010260479ecea69e7efe58e52dab5f8b7b82bcb4b78a51fc35a6af5deb31c9db56a887e7709b2bdf502da73
+MISC metadata.xml 1777 BLAKE2B 5dbde040a3ddbb381ff649d9e357a8fc463844ed4b2dfd836104b493f23aa2bc0117f775caf9a1f85d9a05abae9b890c0616aebc24e4f0a1e0312529691ea6c4 SHA512 ada714a8f8878ef0976fd5186979effcb5a1792812222468b881ffd45ccfecdb2c2cb04be670b181ff6f329caa40ed82760ae8019e18d8314e9fb28ea13f7774
diff --git a/sys-libs/glibc/glibc-2.34-r10.ebuild b/sys-libs/glibc/glibc-2.34-r10.ebuild
index e607faf13339..3c6ded33ef89 100644
--- a/sys-libs/glibc/glibc-2.34-r10.ebuild
+++ b/sys-libs/glibc/glibc-2.34-r10.ebuild
@@ -29,7 +29,7 @@ PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
inherit git-r3
else
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
fi
diff --git a/sys-libs/glibc/glibc-2.34-r12.ebuild b/sys-libs/glibc/glibc-2.34-r12.ebuild
new file mode 100644
index 000000000000..ea14a5159f6b
--- /dev/null
+++ b/sys-libs/glibc/glibc-2.34-r12.ebuild
@@ -0,0 +1,1617 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc
+# Please read & adapt the page as necessary if obsolete.
+
+# We avoid Python 3.10 here _for now_ (it does work!) to avoid circular dependencies
+# on upgrades as people migrate to libxcrypt.
+# https://wiki.gentoo.org/wiki/User:Sam/Portage_help/Circular_dependencies#Python_and_libcrypt
+PYTHON_COMPAT=( python3_{8,9} )
+TMPFILES_OPTIONAL=1
+
+inherit python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig \
+ multilib systemd multiprocessing tmpfiles
+
+DESCRIPTION="GNU libc C library"
+HOMEPAGE="https://www.gnu.org/software/libc/"
+LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE"
+SLOT="2.2"
+
+EMULTILIB_PKG="true"
+
+# Gentoo patchset (ignored for live ebuilds)
+PATCH_VER=16
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+else
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
+ SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
+fi
+
+RELEASE_VER=${PV}
+
+GCC_BOOTSTRAP_VER=20201208
+
+LOCALE_GEN_VER=2.22
+
+GLIBC_SYSTEMD_VER=20210729
+
+SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz"
+SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
+SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )"
+
+IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs static-pie suid systemd systemtap test vanilla"
+
+# Minimum kernel version that glibc requires
+MIN_KERN_VER="3.2.0"
+# Minimum pax-utils version needed (which contains any new syscall changes for
+# its seccomp filter!). Please double check this!
+MIN_PAX_UTILS_VER="1.3.3"
+
+# Here's how the cross-compile logic breaks down ...
+# CTARGET - machine that will target the binaries
+# CHOST - machine that will host the binaries
+# CBUILD - machine that will build the binaries
+# If CTARGET != CHOST, it means you want a libc for cross-compiling.
+# If CHOST != CBUILD, it means you want to cross-compile the libc.
+# CBUILD = CHOST = CTARGET - native build/install
+# CBUILD != (CHOST = CTARGET) - cross-compile a native build
+# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
+# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
+# For install paths:
+# CHOST = CTARGET - install into /
+# CHOST != CTARGET - install into /usr/CTARGET/
+#
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+ if [[ ${CATEGORY} == cross-* ]] ; then
+ export CTARGET=${CATEGORY#cross-}
+ fi
+fi
+
+# Note [Disable automatic stripping]
+# Disabling automatic stripping for a few reasons:
+# - portage's attempt to strip breaks non-native binaries at least on
+# arm: bug #697428
+# - portage's attempt to strip libpthread.so.0 breaks gdb thread
+# enumeration: bug #697910. This is quite subtle:
+# * gdb uses glibc's libthread_db-1.0.so to enumerate threads.
+# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols
+# via 'ps_pglobal_lookup' symbol defined in gdb.
+# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all
+# known symbols in 'libpthread.so.0'. Specifically 'nptl_version'
+# (unexported) is used to sanity check compatibility before enabling
+# debugging.
+# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint
+# * normal 'strip' command trims '.symtab'
+# Thus our main goal here is to prevent 'libpthread.so.0' from
+# losing it's '.symtab' entries.
+# As Gentoo's strip does not allow us to pass less aggressive stripping
+# options and does not check the machine target we strip selectively.
+
+# We need a new-enough binutils/gcc to match upstream baseline.
+# Also we need to make sure our binutils/gcc supports TLS,
+# and that gcc already contains the hardened patches.
+# Lastly, let's avoid some openssh nastiness, bug 708224, as
+# convenience to our users.
+
+# gzip, grep, awk are needed by locale-gen, bug 740750
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=app-misc/pax-utils-${MIN_PAX_UTILS_VER}
+ sys-devel/bison
+ doc? ( sys-apps/texinfo )
+ !compile-locales? (
+ app-arch/gzip
+ sys-apps/grep
+ virtual/awk
+ )
+"
+COMMON_DEPEND="
+ gd? ( media-libs/gd:2= )
+ nscd? ( selinux? (
+ audit? ( sys-process/audit )
+ caps? ( sys-libs/libcap )
+ ) )
+ suid? ( caps? ( sys-libs/libcap ) )
+ selinux? ( sys-libs/libselinux )
+ systemtap? ( dev-util/systemtap )
+"
+DEPEND="${COMMON_DEPEND}
+ compile-locales? (
+ app-arch/gzip
+ sys-apps/grep
+ virtual/awk
+ )
+ test? ( >=net-dns/libidn2-2.3.0 )
+"
+RDEPEND="${COMMON_DEPEND}
+ app-arch/gzip
+ sys-apps/grep
+ virtual/awk
+ sys-apps/gentoo-functions
+ !<app-misc/pax-utils-${MIN_PAX_UTILS_VER}
+ !<net-misc/openssh-8.1_p1-r2
+"
+
+RESTRICT="!test? ( test )"
+
+if [[ ${CATEGORY} == cross-* ]] ; then
+ BDEPEND+=" !headers-only? (
+ >=${CATEGORY}/binutils-2.27
+ >=${CATEGORY}/gcc-6
+ )"
+ [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
+else
+ BDEPEND+="
+ >=sys-devel/binutils-2.27
+ >=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=(
+ # buggy test, assumes /dev/ and /dev/null on a single filesystem
+ # 'mount --bind /dev/null /chroot/dev/null' breaks it.
+ # https://sourceware.org/PR25909
+ tst-support_descriptors
+
+ # The following tests fail only inside portage
+ # https://bugs.gentoo.org/831267
+ tst-system
+ tst-strerror
+ tst-strsignal
+)
+
+#
+# Small helper functions
+#
+
+is_crosscompile() {
+ [[ ${CHOST} != ${CTARGET} ]]
+}
+
+just_headers() {
+ is_crosscompile && use headers-only
+}
+
+alt_prefix() {
+ is_crosscompile && echo /usr/${CTARGET}
+}
+
+# This prefix is applicable to CHOST when building against this
+# glibc. It is baked into the library at configure time.
+host_eprefix() {
+ is_crosscompile || echo "${EPREFIX}"
+}
+
+# This prefix is applicable to CBUILD when building against this
+# glibc. It determines the destination path at install time.
+build_eprefix() {
+ is_crosscompile && echo "${EPREFIX}"
+}
+
+# We need to be able to set alternative headers for compiling for non-native
+# platform. Will also become useful for testing kernel-headers without screwing
+# up the whole system.
+alt_headers() {
+ echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
+}
+
+alt_build_headers() {
+ if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
+ ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
+ if tc-is-cross-compiler ; then
+ ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
+ if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
+ local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
+ ALT_BUILD_HEADERS=${header_path%/linux/version.h}
+ fi
+ fi
+ fi
+ echo "${ALT_BUILD_HEADERS}"
+}
+
+alt_libdir() {
+ echo $(alt_prefix)/$(get_libdir)
+}
+alt_usrlibdir() {
+ echo $(alt_prefix)/usr/$(get_libdir)
+}
+
+builddir() {
+ echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
+}
+
+do_compile_test() {
+ local ret save_cflags=${CFLAGS}
+ CFLAGS+=" $1"
+ shift
+
+ pushd "${T}" >/dev/null
+
+ rm -f glibc-test*
+ printf '%b' "$*" > glibc-test.c
+
+ # 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
+
+ # Workaround for https://bugs.gentoo.org/823780. This really should
+ # be removed when the upstream bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103275
+ # is fixed in our tree, either via 11.3 or an 11.2p2 patch set.
+ if [[ ${ABI} == x86 ]] && tc-is-gcc && (($(gcc-major-version) == 11)) && (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)); then
+ export CFLAGS_x86="${CFLAGS_x86} -mno-avx512f"
+ einfo "Auto adding -mno-avx512f to CFLAGS_x86 (bug #823780) (ABI=${ABI})"
+ fi
+ ;;
+ mips)
+ # The mips abi cannot support the GNU style hashes. #233233
+ filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
+ ;;
+ ppc|ppc64)
+ # Many arch-specific implementations do not work on ppc with
+ # cache-block not equal to 128 bytes. This breaks memset:
+ # https://sourceware.org/PR26522
+ # https://bugs.gentoo.org/737996
+ # Use default -mcpu=. For ppc it means non-multiarch setup.
+ filter-flags '-mcpu=*'
+ ;;
+ sparc)
+ # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though.
+ filter-flags "-fcall-used-g7"
+ append-flags "-fcall-used-g6"
+
+ local cpu
+ case ${CTARGET} in
+ sparc64-*)
+ cpu="sparc64"
+ case $(get-flag mcpu) in
+ v9)
+ # We need to force at least v9a because the base build doesn't
+ # work with just v9.
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=19477
+ append-flags "-Wa,-xarch=v9a"
+ ;;
+ esac
+ ;;
+ sparc-*)
+ case $(get-flag mcpu) in
+ v8|supersparc|hypersparc|leon|leon3)
+ cpu="sparcv8"
+ ;;
+ *)
+ cpu="sparcv9"
+ ;;
+ esac
+ ;;
+ esac
+ [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
+ ;;
+ esac
+}
+
+setup_flags() {
+ # Make sure host make.conf doesn't pollute us
+ if is_crosscompile || tc-is-cross-compiler ; then
+ CHOST=${CTARGET} strip-unsupported-flags
+ fi
+
+ # Store our CFLAGS because it's changed depending on which CTARGET
+ # we are building when pulling glibc on a multilib profile
+ CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
+ CFLAGS=${CFLAGS_BASE}
+ CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
+ CXXFLAGS=${CXXFLAGS_BASE}
+ ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
+ ASFLAGS=${ASFLAGS_BASE}
+
+ # Allow users to explicitly avoid flag sanitization via
+ # USE=custom-cflags.
+ if ! use custom-cflags; then
+ # Over-zealous CFLAGS can often cause problems. What may work for one
+ # person may not work for another. To avoid a large influx of bugs
+ # relating to failed builds, we strip most CFLAGS out to ensure as few
+ # problems as possible.
+ strip-flags
+ # Lock glibc at -O2; we want to be conservative here.
+ filter-flags '-O?'
+ append-flags -O2
+ fi
+
+ strip-unsupported-flags
+ filter-flags -m32 -m64 '-mabi=*'
+
+ # glibc aborts if rpath is set by LDFLAGS
+ filter-ldflags '-Wl,-rpath=*'
+
+ # ld can't use -r & --relax at the same time, bug #788901
+ # https://sourceware.org/PR27837
+ filter-ldflags '-Wl,--relax'
+
+ # #492892
+ filter-flags -frecord-gcc-switches
+
+ # #829583
+ filter-lfs-flags
+
+ unset CBUILD_OPT CTARGET_OPT
+ if use multilib ; then
+ CTARGET_OPT=$(get_abi_CTARGET)
+ [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST)
+ fi
+
+ setup_target_flags
+
+ if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then
+ CBUILD_OPT=${CTARGET_OPT}
+ fi
+
+ # glibc's headers disallow -O0 and fail at build time:
+ # include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization"
+ replace-flags -O0 -O1
+
+ filter-flags '-fstack-protector*'
+
+ # See end of bug #830454; we handle this via USE=cet
+ filter-flags '-fcf-protection='
+}
+
+use_multiarch() {
+ # Allow user to disable runtime arch detection in multilib.
+ use multiarch || return 1
+ # Make sure binutils is new enough to support indirect functions,
+ # #336792. This funky sed supports gold and bfd linkers.
+ local bver nver
+ bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}')
+ case $(tc-arch ${CTARGET}) in
+ amd64|x86) nver="2.20" ;;
+ arm) nver="2.22" ;;
+ hppa) nver="2.23" ;;
+ ppc|ppc64) nver="2.20" ;;
+ # ifunc support was added in 2.23, but glibc also needs
+ # machinemode which is in 2.24.
+ s390) nver="2.24" ;;
+ sparc) nver="2.21" ;;
+ *) return 1 ;;
+ esac
+ ver_test ${bver} -ge ${nver}
+}
+
+# Setup toolchain variables that had historically been defined in the
+# profiles for these archs.
+setup_env() {
+ # silly users
+ unset LD_RUN_PATH
+ unset LD_ASSUME_KERNEL
+
+ if is_crosscompile || tc-is-cross-compiler ; then
+ multilib_env ${CTARGET_OPT:-${CTARGET}}
+
+ if ! use multilib ; then
+ MULTILIB_ABIS=${DEFAULT_ABI}
+ else
+ MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}}
+ fi
+
+ # If the user has CFLAGS_<CTARGET> in their make.conf, use that,
+ # and fall back on CFLAGS.
+ local VAR=CFLAGS_${CTARGET//[-.]/_}
+ CFLAGS=${!VAR-${CFLAGS}}
+ einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}"
+ fi
+
+ setup_flags
+
+ export ABI=${ABI:-${DEFAULT_ABI:-default}}
+
+ if just_headers ; then
+ # Avoid mixing host's CC and target's CFLAGS_${ABI}:
+ # At this bootstrap stage we have only binutils for
+ # target but not compiler yet.
+ einfo "Skip CC ABI injection. We can't use (cross-)compiler yet."
+ return 0
+ fi
+
+ # Glibc does not work with gold (for various reasons) #269274.
+ tc-ld-disable-gold
+
+ if use doc ; then
+ export MAKEINFO=makeinfo
+ else
+ export MAKEINFO=/dev/null
+ fi
+
+ # Reset CC and CXX to the value at start of emerge
+ export CC=${__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
+ export CXX=${__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
+
+ # and make sure __ORIC_CC and __ORIG_CXX is defined now.
+ export __ORIG_CC=${CC}
+ export __ORIG_CXX=${CXX}
+
+ if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
+
+ # If we are running in an otherwise clang/llvm environment, we need to
+ # recover the proper gcc and binutils settings here, at least until glibc
+ # is finally building with clang. So let's override everything that is
+ # set in the clang profiles.
+ # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always
+ # a good start into that direction.
+ # Also, if you're crosscompiling, let's assume you know what you are doing.
+ # Hopefully.
+ # Last, we need the settings of the *build* environment, not of the
+ # target environment...
+
+ local current_binutils_path=$(env ROOT="${BROOT}" binutils-config -B)
+ local current_gcc_path=$(env ROOT="${BROOT}" gcc-config -B)
+ einfo "Overriding clang configuration, since it won't work here"
+
+ export CC="${current_gcc_path}/gcc"
+ export CXX="${current_gcc_path}/g++"
+ export LD="${current_binutils_path}/ld.bfd"
+ export AR="${current_binutils_path}/ar"
+ export AS="${current_binutils_path}/as"
+ export NM="${current_binutils_path}/nm"
+ export STRIP="${current_binutils_path}/strip"
+ export RANLIB="${current_binutils_path}/ranlib"
+ export OBJCOPY="${current_binutils_path}/objcopy"
+ export STRINGS="${current_binutils_path}/strings"
+ export OBJDUMP="${current_binutils_path}/objdump"
+ export READELF="${current_binutils_path}/readelf"
+ export ADDR2LINE="${current_binutils_path}/addr2line"
+
+ # do we need to also do flags munging here? yes! at least...
+ filter-flags '-fuse-ld=*'
+ filter-flags '-D_FORTIFY_SOURCE=*'
+
+ else
+
+ # this is the "normal" case
+
+ export CC="$(tc-getCC ${CTARGET})"
+ export CXX="$(tc-getCXX ${CTARGET})"
+
+ # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure
+ # can't detect them automatically due to ${CHOST} mismatch and fallbacks
+ # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup().
+ export NM="$(tc-getNM ${CTARGET})"
+ export READELF="$(tc-getREADELF ${CTARGET})"
+
+ fi
+
+ # We need to export CFLAGS with abi information in them because glibc's
+ # configure script checks CFLAGS for some targets (like mips). Keep
+ # around the original clean value to avoid appending multiple ABIs on
+ # top of each other. (Why does the comment talk about CFLAGS if the code
+ # acts on CC?)
+ export __GLIBC_CC=${CC}
+ export __GLIBC_CXX=${CXX}
+
+ export __abi_CFLAGS="$(get_abi_CFLAGS)"
+
+ # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760
+ # To build .S (assembly) files with the same ABI-specific flags
+ # upstream currently recommends adding CFLAGS to CC/CXX:
+ # https://sourceware.org/PR23273
+ # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS
+ # and breaks multiarch support. See 659030#c3 for an example.
+ # The glibc configure script doesn't properly use LDFLAGS all the time.
+ export CC="${__GLIBC_CC} ${__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}"
+
+ # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548
+ export CXX="${__GLIBC_CXX} ${__abi_CFLAGS} ${CFLAGS}"
+
+ if is_crosscompile; then
+ # Assume worst-case bootstrap: glibc is buil first time
+ # when ${CTARGET}-g++ is not available yet. We avoid
+ # building auxiliary programs that require C++: bug #683074
+ # It should not affect final result.
+ export libc_cv_cxx_link_ok=no
+ # The line above has the same effect. We set CXX explicitly
+ # to make build logs less confusing.
+ export CXX=
+ fi
+}
+
+foreach_abi() {
+ setup_env
+
+ local ret=0
+ local abilist=""
+ if use multilib ; then
+ abilist=$(get_install_abis)
+ else
+ abilist=${DEFAULT_ABI}
+ fi
+ local -x ABI
+ for ABI in ${abilist:-default} ; do
+ setup_env
+ einfo "Running $1 for ABI ${ABI}"
+ $1
+ : $(( ret |= $? ))
+ done
+ return ${ret}
+}
+
+glibc_banner() {
+ local b="Gentoo ${PVR}"
+ [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
+ echo "${b}"
+}
+
+# The following Kernel version handling functions are mostly copied from portage
+# source. It's better not to use linux-info.eclass here since a) it adds too
+# much magic, see bug 326693 for some of the arguments, and b) some of the
+# functions are just not provided.
+
+g_get_running_KV() {
+ uname -r
+ return $?
+}
+
+g_KV_major() {
+ [[ -z $1 ]] && return 1
+ local KV=$@
+ echo "${KV%%.*}"
+}
+
+g_KV_minor() {
+ [[ -z $1 ]] && return 1
+ local KV=$@
+ KV=${KV#*.}
+ echo "${KV%%.*}"
+}
+
+g_KV_micro() {
+ [[ -z $1 ]] && return 1
+ local KV=$@
+ KV=${KV#*.*.}
+ echo "${KV%%[^[:digit:]]*}"
+}
+
+g_KV_to_int() {
+ [[ -z $1 ]] && return 1
+ local KV_MAJOR=$(g_KV_major "$1")
+ local KV_MINOR=$(g_KV_minor "$1")
+ local KV_MICRO=$(g_KV_micro "$1")
+ local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO ))
+
+ # We make version 2.2.0 the minimum version we will handle as
+ # a sanity check ... if its less, we fail ...
+ if [[ ${KV_int} -ge 131584 ]] ; then
+ echo "${KV_int}"
+ return 0
+ fi
+ return 1
+}
+
+g_int_to_KV() {
+ local version=$1 major minor micro
+ major=$((version / 65536))
+ minor=$(((version % 65536) / 256))
+ micro=$((version % 256))
+ echo ${major}.${minor}.${micro}
+}
+
+eend_KV() {
+ [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]]
+ eend $?
+}
+
+get_kheader_version() {
+ printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
+ $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
+ tail -n 1
+}
+
+# We collect all sanity checks here. Consistency is not guranteed between
+# pkg_ and src_ phases, so we call this function both in pkg_pretend and in
+# src_unpack.
+sanity_prechecks() {
+ # Prevent native builds from downgrading
+ if [[ ${MERGE_TYPE} != "buildonly" ]] && \
+ [[ -z ${ROOT} ]] && \
+ [[ ${CBUILD} == ${CHOST} ]] && \
+ [[ ${CHOST} == ${CTARGET} ]] ; then
+
+ # The high rev # is to allow people to downgrade between -r#
+ # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2
+ # should be fine. Hopefully we never actually use a r# this
+ # high.
+ if has_version ">${CATEGORY}/${P}-r10000" ; then
+ eerror "Sanity check to keep you from breaking your system:"
+ eerror " Downgrading glibc is not supported and a sure way to destruction."
+ [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system."
+ fi
+
+ if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then
+ eerror "Your old kernel is broken. You need to update it to a newer"
+ eerror "version as syscall(<bignum>) will break. See bug 279260."
+ die "Old and broken kernel."
+ fi
+ fi
+
+ # Users have had a chance to phase themselves, time to give em the boot
+ if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then
+ eerror "You still haven't deleted ${EROOT}/etc/locales.build."
+ eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher."
+ die "Lazy upgrader detected"
+ fi
+
+ if [[ ${CTARGET} == i386-* ]] ; then
+ eerror "i386 CHOSTs are no longer supported."
+ eerror "Chances are you don't actually want/need i386."
+ eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml"
+ die "Please fix your CHOST"
+ fi
+
+ if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then
+ ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS."
+ ewarn "This will result in a 50% performance penalty when running with a 32bit"
+ ewarn "hypervisor, which is probably not what you want."
+ fi
+
+ # ABI-specific checks follow here. Hey, we have a lot more specific conditions that
+ # we test for...
+ if ! is_crosscompile ; then
+ if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then
+ ebegin "Checking that IA32 emulation is enabled in the running kernel"
+ echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c"
+ local STAT
+ if "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then
+ "${T}/check-ia32-emulation.elf32"
+ STAT=$?
+ else
+ # Don't fail here to allow single->multi ABI switch
+ # or recover from breakage like bug #646424
+ ewarn "Failed to compile the ABI test. Broken host glibc?"
+ STAT=0
+ fi
+ rm -f "${T}/check-ia32-emulation.elf32"
+ eend $STAT
+ [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc."
+ fi
+
+ fi
+
+ # When we actually have to compile something...
+ if ! just_headers && [[ ${MERGE_TYPE} != "binary" ]] ; then
+ if [[ -d "${ESYSROOT}"/usr/lib/include ]] ; then
+ # bug #833620, bug #643302
+ eerror "Found ${ESYSROOT}/usr/lib/include directory!"
+ eerror "This is known to break glibc's build."
+ eerror "Please backup its contents then remove the directory."
+ die "Found directory (${ESYSROOT}/usr/lib/include) which will break build (bug #833620)!"
+ fi
+
+ if [[ ${CTARGET} == *-linux* ]] ; then
+ local run_kv build_kv want_kv
+
+ run_kv=$(g_get_running_KV)
+ build_kv=$(g_int_to_KV $(get_kheader_version))
+ want_kv=${MIN_KERN_VER}
+
+ if ! is_crosscompile && ! tc-is-cross-compiler ; then
+ # Building fails on an non-supporting kernel
+ ebegin "Checking running kernel version (${run_kv} >= ${want_kv})"
+ if ! eend_KV ${run_kv} ${want_kv} ; then
+ echo
+ eerror "You need a kernel of at least ${want_kv}!"
+ die "Kernel version too low!"
+ fi
+ fi
+
+ ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})"
+ if ! eend_KV ${build_kv} ${want_kv} ; then
+ echo
+ eerror "You need linux-headers of at least ${want_kv}!"
+ die "linux-headers version too low!"
+ fi
+ fi
+ fi
+}
+
+upgrade_warning() {
+ if [[ ${MERGE_TYPE} != buildonly && -n ${REPLACING_VERSIONS} && -z ${ROOT} ]]; then
+ local oldv newv=$(ver_cut 1-2 ${PV})
+ for oldv in ${REPLACING_VERSIONS}; do
+ if ver_test ${oldv} -lt ${newv}; then
+ ewarn "After upgrading glibc, please restart all running processes."
+ ewarn "Be sure to include init (telinit u) or systemd (systemctl daemon-reexec)."
+ ewarn "Alternatively, reboot your system."
+ ewarn "(See bug #660556, bug #741116, bug #823756, etc)"
+ break
+ fi
+ done
+ fi
+}
+
+#
+# the phases
+#
+
+# pkg_pretend
+
+pkg_pretend() {
+ # All the checks...
+ einfo "Checking general environment sanity."
+ sanity_prechecks
+ upgrade_warning
+}
+
+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-bootstrap && 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 systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz
+}
+
+src_prepare() {
+ local patchsetname
+ if ! use vanilla ; then
+ if [[ ${PV} == 9999* ]] ; then
+ patchsetname="from git master"
+ else
+ patchsetname="${RELEASE_VER}-${PATCH_VER}"
+ fi
+ einfo "Applying Gentoo Glibc Patchset ${patchsetname}"
+ eapply "${WORKDIR}"/patches
+ einfo "Done."
+ fi
+
+ if use clone3 ; then
+ append-cppflags -DGENTOO_USE_CLONE3
+ else
+ # See e.g. bug #827386, bug #819045.
+ elog "Disabling the clone3 syscall for compatibility with older Electron apps."
+ elog "Please re-enable this flag before filing bugs!"
+ fi
+
+ default
+
+ gnuconfig_update
+
+ cd "${WORKDIR}"
+ find . -name configure -exec touch {} +
+
+ # move the external locale-gen to its old place
+ mkdir extra || die
+ mv locale-gen-${LOCALE_GEN_VER} extra/locale || die
+
+ eprefixify extra/locale/locale-gen
+
+ # Fix permissions on some of the scripts.
+ chmod u+x "${S}"/scripts/*.sh
+
+ cd "${S}"
+}
+
+glibc_do_configure() {
+
+ local v
+ for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do
+ einfo " $(printf '%15s' ${v}:) ${!v}"
+ done
+
+ echo
+ local myconf=()
+
+ case ${CTARGET} in
+ m68k*)
+ # setjmp() is not compatible with stack protection:
+ # https://sourceware.org/PR24202
+ 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'
+
+ # -march= option tricks build system to infer too
+ # high ISA level: https://sourceware.org/PR27318
+ libc_cv_include_x86_isa_level=no
+ # Explicit override of https://sourceware.org/PR27991
+ # exposes a bug in glibc's configure:
+ # https://sourceware.org/PR27991
+ libc_cv_have_x86_lahf_sahf=no
+ libc_cv_have_x86_movbe=no
+
+ ${EXTRA_ECONF}
+ )
+
+ # We rely on sys-libs/timezone-data for timezone tools normally.
+ myconf+=( $(use_enable vanilla timezone-tools) )
+
+ # These libs don't have configure flags.
+ ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no)
+ ac_cv_lib_cap_cap_init=$(usex caps || echo no)
+
+ # There is no configure option for this and we need to export it
+ # since the glibc build will re-run configure on itself
+ export libc_cv_rootsbindir="$(host_eprefix)/sbin"
+ export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)"
+
+ local builddir=$(builddir nptl)
+ mkdir -p "${builddir}"
+ cd "${builddir}"
+ set -- "${S}"/configure "${myconf[@]}"
+ echo "$@"
+ "$@" || die "failed to configure glibc"
+
+ # ia64 static cross-compilers are a pita in so much that they
+ # can't produce static ELFs (as the libgcc.a is broken). so
+ # disable building of the programs for those targets if it
+ # doesn't work.
+ # XXX: We could turn this into a compiler test, but ia64 is
+ # the only one that matters, so this should be fine for now.
+ if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
+ sed -i '1i+link-static = touch $@' config.make
+ fi
+
+ # If we're trying to migrate between ABI sets, we need
+ # to lie and use a local copy of gcc. Like if the system
+ # is built with MULTILIB_ABIS="amd64 x86" but we want to
+ # add x32 to it, gcc/glibc don't yet support x32.
+ #
+ if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib-bootstrap ; then
+ echo 'main(){}' > "${T}"/test.c
+ if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
+ sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
+ fi
+ fi
+}
+
+glibc_headers_configure() {
+ export ABI=default
+
+ local builddir=$(builddir "headers")
+ mkdir -p "${builddir}"
+ cd "${builddir}"
+
+ # if we don't have a compiler yet, we can't really test it now ...
+ # hopefully they don't affect header generation, so let's hope for
+ # the best here ...
+ local v vars=(
+ ac_cv_header_cpuid_h=yes
+ libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes
+ libc_cv_asm_cfi_directives=yes
+ libc_cv_broken_visibility_attribute=no
+ libc_cv_c_cleanup=yes
+ libc_cv_compiler_powerpc64le_binary128_ok=yes
+ libc_cv_forced_unwind=yes
+ libc_cv_gcc___thread=yes
+ libc_cv_mlong_double_128=yes
+ libc_cv_mlong_double_128ibm=yes
+ libc_cv_ppc_machine=yes
+ libc_cv_ppc_rel16=yes
+ libc_cv_predef_fortify_source=no
+ libc_cv_target_power8_ok=yes
+ libc_cv_visibility_attribute=yes
+ libc_cv_z_combreloc=yes
+ libc_cv_z_execstack=yes
+ libc_cv_z_initfirst=yes
+ libc_cv_z_nodelete=yes
+ libc_cv_z_nodlopen=yes
+ libc_cv_z_relro=yes
+ libc_mips_abi=${ABI}
+ libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard)
+ # These libs don't have configure flags.
+ ac_cv_lib_audit_audit_log_user_avc_message=no
+ ac_cv_lib_cap_cap_init=no
+ )
+
+ einfo "Forcing cached settings:"
+ for v in "${vars[@]}" ; do
+ einfo " ${v}"
+ export ${v}
+ done
+
+ local headers_only_arch_CPPFLAGS=()
+
+ # Blow away some random CC settings that screw things up. #550192
+ if [[ -d ${S}/sysdeps/mips ]]; then
+ pushd "${S}"/sysdeps/mips >/dev/null
+ sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die
+ sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die
+
+ # Force the mips ABI to the default. This is OK because the set of
+ # installed headers in this phase is the same between the 3 ABIs.
+ # If this ever changes, this hack will break, but that's unlikely
+ # as glibc discourages that behavior.
+ # https://crbug.com/647033
+ sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die
+
+ popd >/dev/null
+ fi
+
+ case ${CTARGET} in
+ riscv*)
+ # RISC-V interrogates the compiler to determine which target to
+ # build. If building the headers then we don't strictly need a
+ # RISC-V compiler, so the built-in definitions that are provided
+ # along with all RISC-V compiler might not exist. This causes
+ # glibc's RISC-V preconfigure script to blow up. Since we're just
+ # building the headers any value will actually work here, so just
+ # pick the standard one (rv64g/lp64d) to make the build scripts
+ # happy for now -- the headers are all the same anyway so it
+ # doesn't matter.
+ headers_only_arch_CPPFLAGS+=(
+ -D__riscv_xlen=64
+ -D__riscv_flen=64
+ -D__riscv_float_abi_double=1
+ -D__riscv_atomic=1
+ ) ;;
+ esac
+
+ local myconf=()
+ myconf+=(
+ --disable-sanity-checks
+ --enable-hacker-mode
+ --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
+ # riscv
+ ilp32d /lib/ld-linux-riscv32-ilp32d.so.1
+ ilp32 /lib/ld-linux-riscv32-ilp32.so.1
+ lp64d /lib/ld-linux-riscv64-lp64d.so.1
+ lp64 /lib/ld-linux-riscv64-lp64.so.1
+ # s390
+ s390 /lib/ld.so.1
+ s390x /lib/ld64.so.1
+ # sparc
+ sparc32 /lib/ld-linux.so.2
+ sparc64 /lib64/ld-linux.so.2
+ )
+ case $(tc-endian) in
+ little)
+ ldso_abi_list+=(
+ # arm
+ arm64 /lib/ld-linux-aarch64.so.1
+ # ELFv2 (glibc does not support ELFv1 on LE)
+ ppc64 /lib64/ld64.so.2
+ )
+ ;;
+ big)
+ ldso_abi_list+=(
+ # arm
+ arm64 /lib/ld-linux-aarch64_be.so.1
+ # ELFv1 (glibc does not support ELFv2 on BE)
+ ppc64 /lib64/ld64.so.1
+ )
+ ;;
+ esac
+ if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then
+ dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib
+ fi
+ for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do
+ ldso_abi=${ldso_abi_list[i]}
+ has ${ldso_abi} $(get_install_abis) || continue
+
+ ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}"
+ if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then
+ dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name}
+ fi
+ done
+
+ # In the LSB 5.0 definition, someone had the excellent idea to "standardize"
+ # the runtime loader name, see also https://xkcd.com/927/
+ # Normally, in Gentoo one should never come across executables that require this.
+ # However, binary commercial packages are known to adhere to weird practices.
+ # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB
+ local lsb_ldso_name native_ldso_name lsb_ldso_abi
+ local lsb_ldso_abi_list=(
+ # x86
+ amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3
+ )
+ for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do
+ lsb_ldso_abi=${lsb_ldso_abi_list[i]}
+ native_ldso_name=${lsb_ldso_abi_list[i+1]}
+ lsb_ldso_name=${lsb_ldso_abi_list[i+2]}
+ has ${lsb_ldso_abi} $(get_install_abis) || continue
+
+ if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then
+ dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name}"
+ fi
+ done
+
+ # With devpts under Linux mounted properly, we do not need the pt_chown
+ # binary to be setuid. This is because the default owners/perms will be
+ # exactly what we want.
+ if ! use suid ; then
+ find "${ED}" -name pt_chown -exec chmod -s {} +
+ fi
+
+ #################################################################
+ # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY #
+ # Make sure we install some symlink hacks so that when we build
+ # a 2nd stage cross-compiler, gcc finds the target system
+ # headers correctly. See gcc/doc/gccinstall.info
+ if is_crosscompile ; then
+ # We need to make sure that /lib and /usr/lib always exists.
+ # gcc likes to use relative paths to get to its multilibs like
+ # /usr/lib/../lib64/. So while we don't install any files into
+ # /usr/lib/, we do need it to exist.
+ keepdir $(alt_prefix)/lib
+ keepdir $(alt_prefix)/usr/lib
+
+ dosym usr/include $(alt_prefix)/sys-include
+ return 0
+ fi
+
+ # Files for Debian-style locale updating
+ dodir /usr/share/i18n
+ sed \
+ -e "/^#/d" \
+ -e "/SUPPORTED-LOCALES=/d" \
+ -e "s: \\\\::g" -e "s:/: :g" \
+ "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \
+ || die "generating /usr/share/i18n/SUPPORTED failed"
+ cd "${WORKDIR}"/extra/locale
+ dosbin locale-gen
+ doman *.[0-8]
+ insinto /etc
+ doins locale.gen
+
+ keepdir /usr/lib/locale
+
+ cd "${S}"
+
+ # Install misc network config files
+ insinto /etc
+ doins posix/gai.conf
+
+ if use systemd ; then
+ doins "${WORKDIR}/glibc-systemd-${GLIBC_SYSTEMD_VER}/gentoo-config/nsswitch.conf"
+ else
+ doins nss/nsswitch.conf
+ fi
+
+ # Gentoo-specific
+ newins "${FILESDIR}"/host.conf-1 host.conf
+
+ if use nscd ; then
+ doins nscd/nscd.conf
+
+ newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd
+
+ local nscd_args=(
+ -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):"
+ )
+
+ sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd
+
+ use systemd && systemd_dounit nscd/nscd.service
+ newtmpfiles nscd/nscd.tmpfiles nscd.conf
+ fi
+
+ echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc
+ doenvd "${T}"/00glibc
+
+ for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do
+ [[ -s ${d} ]] && dodoc ${d}
+ done
+ dodoc -r ChangeLog.old
+
+ # Prevent overwriting of the /etc/localtime symlink. We'll handle the
+ # creation of the "factory" symlink in pkg_postinst().
+ rm -f "${ED}"/etc/localtime
+
+ # Generate all locales if this is a native build as locale generation
+ if use compile-locales && ! is_crosscompile ; then
+ run_locale_gen --inplace-glibc "${ED}/"
+ sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die
+ fi
+}
+
+glibc_headers_install() {
+ local builddir=$(builddir "headers")
+ cd "${builddir}"
+ emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers
+
+ insinto $(alt_headers)/gnu
+ doins "${S}"/include/gnu/stubs.h
+
+ # Make sure we install the sys-include symlink so that when
+ # we build a 2nd stage cross-compiler, gcc finds the target
+ # system headers correctly. See gcc/doc/gccinstall.info
+ dosym usr/include $(alt_prefix)/sys-include
+}
+
+src_install() {
+ if just_headers ; then
+ export ABI=default
+ glibc_headers_install
+ return
+ fi
+
+ foreach_abi glibc_do_src_install
+
+ if ! use static-libs ; then
+ einfo "Not installing static glibc libraries"
+ find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete
+ fi
+}
+
+# Simple test to make sure our new glibc isn't completely broken.
+# Make sure we don't test with statically built binaries since
+# they will fail. Also, skip if this glibc is a cross compiler.
+#
+# If coreutils is built with USE=multicall, some of these files
+# will just be wrapper scripts, not actual ELFs we can test.
+glibc_sanity_check() {
+ cd / #228809
+
+ # We enter ${ED} so to avoid trouble if the path contains
+ # special characters; for instance if the path contains the
+ # colon character (:), then the linker will try to split it
+ # and look for the libraries in an unexpected place. This can
+ # lead to unsafe code execution if the generated prefix is
+ # within a world-writable directory.
+ # (e.g. /var/tmp/portage:${HOSTNAME})
+ pushd "${ED}"/$(get_libdir) >/dev/null
+
+ # first let's find the actual dynamic linker here
+ # symlinks may point to the wrong abi
+ local newldso=$(find . -maxdepth 1 -name 'ld*so.?' -type f -print -quit)
+
+ einfo Last-minute run tests with ${newldso} in /$(get_libdir) ...
+
+ local x striptest
+ for x in cal date env free ls true uname uptime ; do
+ x=$(type -p ${x})
+ [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue
+ striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue
+ case ${striptest} in
+ *"statically linked"*) continue;;
+ *"ASCII text"*) continue;;
+ esac
+ # We need to clear the locale settings as the upgrade might want
+ # incompatible locale data. This test is not for verifying that.
+ LC_ALL=C \
+ ${newldso} --library-path . ${x} > /dev/null \
+ || die "simple run test (${x}) failed"
+ done
+
+ popd >/dev/null
+}
+
+pkg_preinst() {
+ # nothing to do if just installing headers
+ just_headers && return
+
+ # prepare /etc/ld.so.conf.d/ for files
+ mkdir -p "${EROOT}"/etc/ld.so.conf.d
+
+ # Default /etc/hosts.conf:multi to on for systems with small dbs.
+ if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then
+ sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf
+ einfo "Defaulting /etc/host.conf:multi to on"
+ fi
+
+ [[ -n ${ROOT} ]] && return 0
+ [[ -d ${ED}/$(get_libdir) ]] || return 0
+ [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check
+
+ if [[ -L ${EROOT}/usr/lib/locale ]]; then
+ # Help portage migrate this to a directory
+ # https://bugs.gentoo.org/753740
+ rm "${EROOT}"/usr/lib/locale || die
+ fi
+
+ # Keep around libcrypt so that Perl doesn't break when merging libxcrypt
+ # (libxcrypt is the new provider for now of libcrypt.so.{1,2}).
+ # bug #802207
+ if ! use crypt && has_version "${CATEGORY}/${PN}[crypt]" && ! has preserve-libs ${FEATURES}; then
+ PRESERVED_OLD_LIBCRYPT=1
+ cp -p "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" "${T}/libcrypt$(get_libname 1)" || die
+ else
+ PRESERVED_OLD_LIBCRYPT=0
+ fi
+}
+
+pkg_postinst() {
+ # nothing to do if just installing headers
+ just_headers && return
+
+ if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then
+ # Generate fastloading iconv module configuration file.
+ "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/"
+ fi
+
+ if ! is_crosscompile && [[ -z ${ROOT} ]] ; then
+ use compile-locales || run_locale_gen "${EROOT}/"
+ fi
+
+ upgrade_warning
+
+ # Check for sanity of /etc/nsswitch.conf, take 2
+ if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then
+ local entry
+ for entry in passwd group shadow; do
+ if 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
+
+ if [[ ${PRESERVED_OLD_LIBCRYPT} -eq 1 ]] ; then
+ cp -p "${T}/libcrypt$(get_libname 1)" "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" || die
+ preserve_old_lib_notify /$(get_libdir)/libcrypt$(get_libname 1)
+
+ elog "Please ignore a possible later error message about a file collision involving"
+ elog "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1). We need to preserve this file for the moment to keep"
+ elog "the upgrade working, but it also needs to be overwritten when"
+ elog "sys-libs/libxcrypt is installed. See bug 802210 for more details."
+ fi
+}
diff --git a/sys-libs/glibc/glibc-2.34-r13.ebuild b/sys-libs/glibc/glibc-2.34-r13.ebuild
new file mode 100644
index 000000000000..dd432185bf98
--- /dev/null
+++ b/sys-libs/glibc/glibc-2.34-r13.ebuild
@@ -0,0 +1,1617 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc
+# Please read & adapt the page as necessary if obsolete.
+
+# We avoid Python 3.10 here _for now_ (it does work!) to avoid circular dependencies
+# on upgrades as people migrate to libxcrypt.
+# https://wiki.gentoo.org/wiki/User:Sam/Portage_help/Circular_dependencies#Python_and_libcrypt
+PYTHON_COMPAT=( python3_{8,9} )
+TMPFILES_OPTIONAL=1
+
+inherit python-any-r1 prefix preserve-libs toolchain-funcs flag-o-matic gnuconfig \
+ multilib systemd multiprocessing tmpfiles
+
+DESCRIPTION="GNU libc C library"
+HOMEPAGE="https://www.gnu.org/software/libc/"
+LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE"
+SLOT="2.2"
+
+EMULTILIB_PKG="true"
+
+# Gentoo patchset (ignored for live ebuilds)
+PATCH_VER=17
+PATCH_DEV=dilfridge
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+else
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86"
+ SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
+ SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
+fi
+
+RELEASE_VER=${PV}
+
+GCC_BOOTSTRAP_VER=20201208
+
+LOCALE_GEN_VER=2.22
+
+GLIBC_SYSTEMD_VER=20210729
+
+SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${LOCALE_GEN_VER}.tar.gz"
+SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
+SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )"
+
+IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs static-pie suid systemd systemtap test vanilla"
+
+# Minimum kernel version that glibc requires
+MIN_KERN_VER="3.2.0"
+# Minimum pax-utils version needed (which contains any new syscall changes for
+# its seccomp filter!). Please double check this!
+MIN_PAX_UTILS_VER="1.3.3"
+
+# Here's how the cross-compile logic breaks down ...
+# CTARGET - machine that will target the binaries
+# CHOST - machine that will host the binaries
+# CBUILD - machine that will build the binaries
+# If CTARGET != CHOST, it means you want a libc for cross-compiling.
+# If CHOST != CBUILD, it means you want to cross-compile the libc.
+# CBUILD = CHOST = CTARGET - native build/install
+# CBUILD != (CHOST = CTARGET) - cross-compile a native build
+# (CBUILD = CHOST) != CTARGET - libc for cross-compiler
+# CBUILD != CHOST != CTARGET - cross-compile a libc for a cross-compiler
+# For install paths:
+# CHOST = CTARGET - install into /
+# CHOST != CTARGET - install into /usr/CTARGET/
+#
+export CBUILD=${CBUILD:-${CHOST}}
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+ if [[ ${CATEGORY} == cross-* ]] ; then
+ export CTARGET=${CATEGORY#cross-}
+ fi
+fi
+
+# Note [Disable automatic stripping]
+# Disabling automatic stripping for a few reasons:
+# - portage's attempt to strip breaks non-native binaries at least on
+# arm: bug #697428
+# - portage's attempt to strip libpthread.so.0 breaks gdb thread
+# enumeration: bug #697910. This is quite subtle:
+# * gdb uses glibc's libthread_db-1.0.so to enumerate threads.
+# * libthread_db-1.0.so needs access to libpthread.so.0 local symbols
+# via 'ps_pglobal_lookup' symbol defined in gdb.
+# * 'ps_pglobal_lookup' uses '.symtab' section table to resolve all
+# known symbols in 'libpthread.so.0'. Specifically 'nptl_version'
+# (unexported) is used to sanity check compatibility before enabling
+# debugging.
+# Also see https://sourceware.org/gdb/wiki/FAQ#GDB_does_not_see_any_threads_besides_the_one_in_which_crash_occurred.3B_or_SIGTRAP_kills_my_program_when_I_set_a_breakpoint
+# * normal 'strip' command trims '.symtab'
+# Thus our main goal here is to prevent 'libpthread.so.0' from
+# losing it's '.symtab' entries.
+# As Gentoo's strip does not allow us to pass less aggressive stripping
+# options and does not check the machine target we strip selectively.
+
+# We need a new-enough binutils/gcc to match upstream baseline.
+# Also we need to make sure our binutils/gcc supports TLS,
+# and that gcc already contains the hardened patches.
+# Lastly, let's avoid some openssh nastiness, bug 708224, as
+# convenience to our users.
+
+# gzip, grep, awk are needed by locale-gen, bug 740750
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=app-misc/pax-utils-${MIN_PAX_UTILS_VER}
+ sys-devel/bison
+ doc? ( sys-apps/texinfo )
+ !compile-locales? (
+ app-arch/gzip
+ sys-apps/grep
+ virtual/awk
+ )
+"
+COMMON_DEPEND="
+ gd? ( media-libs/gd:2= )
+ nscd? ( selinux? (
+ audit? ( sys-process/audit )
+ caps? ( sys-libs/libcap )
+ ) )
+ suid? ( caps? ( sys-libs/libcap ) )
+ selinux? ( sys-libs/libselinux )
+ systemtap? ( dev-util/systemtap )
+"
+DEPEND="${COMMON_DEPEND}
+ compile-locales? (
+ app-arch/gzip
+ sys-apps/grep
+ virtual/awk
+ )
+ test? ( >=net-dns/libidn2-2.3.0 )
+"
+RDEPEND="${COMMON_DEPEND}
+ app-arch/gzip
+ sys-apps/grep
+ virtual/awk
+ sys-apps/gentoo-functions
+ !<app-misc/pax-utils-${MIN_PAX_UTILS_VER}
+ !<net-misc/openssh-8.1_p1-r2
+"
+
+RESTRICT="!test? ( test )"
+
+if [[ ${CATEGORY} == cross-* ]] ; then
+ BDEPEND+=" !headers-only? (
+ >=${CATEGORY}/binutils-2.27
+ >=${CATEGORY}/gcc-6
+ )"
+ [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
+else
+ BDEPEND+="
+ >=sys-devel/binutils-2.27
+ >=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=(
+ # buggy test, assumes /dev/ and /dev/null on a single filesystem
+ # 'mount --bind /dev/null /chroot/dev/null' breaks it.
+ # https://sourceware.org/PR25909
+ tst-support_descriptors
+
+ # The following tests fail only inside portage
+ # https://bugs.gentoo.org/831267
+ tst-system
+ tst-strerror
+ tst-strsignal
+)
+
+#
+# Small helper functions
+#
+
+is_crosscompile() {
+ [[ ${CHOST} != ${CTARGET} ]]
+}
+
+just_headers() {
+ is_crosscompile && use headers-only
+}
+
+alt_prefix() {
+ is_crosscompile && echo /usr/${CTARGET}
+}
+
+# This prefix is applicable to CHOST when building against this
+# glibc. It is baked into the library at configure time.
+host_eprefix() {
+ is_crosscompile || echo "${EPREFIX}"
+}
+
+# This prefix is applicable to CBUILD when building against this
+# glibc. It determines the destination path at install time.
+build_eprefix() {
+ is_crosscompile && echo "${EPREFIX}"
+}
+
+# We need to be able to set alternative headers for compiling for non-native
+# platform. Will also become useful for testing kernel-headers without screwing
+# up the whole system.
+alt_headers() {
+ echo ${ALT_HEADERS:=$(alt_prefix)/usr/include}
+}
+
+alt_build_headers() {
+ if [[ -z ${ALT_BUILD_HEADERS} ]] ; then
+ ALT_BUILD_HEADERS="$(host_eprefix)$(alt_headers)"
+ if tc-is-cross-compiler ; then
+ ALT_BUILD_HEADERS=${SYSROOT}$(alt_headers)
+ if [[ ! -e ${ALT_BUILD_HEADERS}/linux/version.h ]] ; then
+ local header_path=$(echo '#include <linux/version.h>' | $(tc-getCPP ${CTARGET}) ${CFLAGS} 2>&1 | grep -o '[^"]*linux/version.h')
+ ALT_BUILD_HEADERS=${header_path%/linux/version.h}
+ fi
+ fi
+ fi
+ echo "${ALT_BUILD_HEADERS}"
+}
+
+alt_libdir() {
+ echo $(alt_prefix)/$(get_libdir)
+}
+alt_usrlibdir() {
+ echo $(alt_prefix)/usr/$(get_libdir)
+}
+
+builddir() {
+ echo "${WORKDIR}/build-${ABI}-${CTARGET}-$1"
+}
+
+do_compile_test() {
+ local ret save_cflags=${CFLAGS}
+ CFLAGS+=" $1"
+ shift
+
+ pushd "${T}" >/dev/null
+
+ rm -f glibc-test*
+ printf '%b' "$*" > glibc-test.c
+
+ # 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
+
+ # Workaround for https://bugs.gentoo.org/823780. This really should
+ # be removed when the upstream bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103275
+ # is fixed in our tree, either via 11.3 or an 11.2p2 patch set.
+ if [[ ${ABI} == x86 ]] && tc-is-gcc && (($(gcc-major-version) == 11)) && (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)); then
+ export CFLAGS_x86="${CFLAGS_x86} -mno-avx512f"
+ einfo "Auto adding -mno-avx512f to CFLAGS_x86 (bug #823780) (ABI=${ABI})"
+ fi
+ ;;
+ mips)
+ # The mips abi cannot support the GNU style hashes. #233233
+ filter-ldflags -Wl,--hash-style=gnu -Wl,--hash-style=both
+ ;;
+ ppc|ppc64)
+ # Many arch-specific implementations do not work on ppc with
+ # cache-block not equal to 128 bytes. This breaks memset:
+ # https://sourceware.org/PR26522
+ # https://bugs.gentoo.org/737996
+ # Use default -mcpu=. For ppc it means non-multiarch setup.
+ filter-flags '-mcpu=*'
+ ;;
+ sparc)
+ # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though.
+ filter-flags "-fcall-used-g7"
+ append-flags "-fcall-used-g6"
+
+ local cpu
+ case ${CTARGET} in
+ sparc64-*)
+ cpu="sparc64"
+ case $(get-flag mcpu) in
+ v9)
+ # We need to force at least v9a because the base build doesn't
+ # work with just v9.
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=19477
+ append-flags "-Wa,-xarch=v9a"
+ ;;
+ esac
+ ;;
+ sparc-*)
+ case $(get-flag mcpu) in
+ v8|supersparc|hypersparc|leon|leon3)
+ cpu="sparcv8"
+ ;;
+ *)
+ cpu="sparcv9"
+ ;;
+ esac
+ ;;
+ esac
+ [[ -n ${cpu} ]] && CTARGET_OPT="${cpu}-${CTARGET#*-}"
+ ;;
+ esac
+}
+
+setup_flags() {
+ # Make sure host make.conf doesn't pollute us
+ if is_crosscompile || tc-is-cross-compiler ; then
+ CHOST=${CTARGET} strip-unsupported-flags
+ fi
+
+ # Store our CFLAGS because it's changed depending on which CTARGET
+ # we are building when pulling glibc on a multilib profile
+ CFLAGS_BASE=${CFLAGS_BASE-${CFLAGS}}
+ CFLAGS=${CFLAGS_BASE}
+ CXXFLAGS_BASE=${CXXFLAGS_BASE-${CXXFLAGS}}
+ CXXFLAGS=${CXXFLAGS_BASE}
+ ASFLAGS_BASE=${ASFLAGS_BASE-${ASFLAGS}}
+ ASFLAGS=${ASFLAGS_BASE}
+
+ # Allow users to explicitly avoid flag sanitization via
+ # USE=custom-cflags.
+ if ! use custom-cflags; then
+ # Over-zealous CFLAGS can often cause problems. What may work for one
+ # person may not work for another. To avoid a large influx of bugs
+ # relating to failed builds, we strip most CFLAGS out to ensure as few
+ # problems as possible.
+ strip-flags
+ # Lock glibc at -O2; we want to be conservative here.
+ filter-flags '-O?'
+ append-flags -O2
+ fi
+
+ strip-unsupported-flags
+ filter-flags -m32 -m64 '-mabi=*'
+
+ # glibc aborts if rpath is set by LDFLAGS
+ filter-ldflags '-Wl,-rpath=*'
+
+ # ld can't use -r & --relax at the same time, bug #788901
+ # https://sourceware.org/PR27837
+ filter-ldflags '-Wl,--relax'
+
+ # #492892
+ filter-flags -frecord-gcc-switches
+
+ # #829583
+ filter-lfs-flags
+
+ unset CBUILD_OPT CTARGET_OPT
+ if use multilib ; then
+ CTARGET_OPT=$(get_abi_CTARGET)
+ [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST)
+ fi
+
+ setup_target_flags
+
+ if [[ -n ${CTARGET_OPT} && ${CBUILD} == ${CHOST} ]] && ! is_crosscompile; then
+ CBUILD_OPT=${CTARGET_OPT}
+ fi
+
+ # glibc's headers disallow -O0 and fail at build time:
+ # include/libc-symbols.h:75:3: #error "glibc cannot be compiled without optimization"
+ replace-flags -O0 -O1
+
+ filter-flags '-fstack-protector*'
+
+ # See end of bug #830454; we handle this via USE=cet
+ filter-flags '-fcf-protection='
+}
+
+use_multiarch() {
+ # Allow user to disable runtime arch detection in multilib.
+ use multiarch || return 1
+ # Make sure binutils is new enough to support indirect functions,
+ # #336792. This funky sed supports gold and bfd linkers.
+ local bver nver
+ bver=$($(tc-getLD ${CTARGET}) -v | sed -n -r '1{s:[^0-9]*::;s:^([0-9.]*).*:\1:;p}')
+ case $(tc-arch ${CTARGET}) in
+ amd64|x86) nver="2.20" ;;
+ arm) nver="2.22" ;;
+ hppa) nver="2.23" ;;
+ ppc|ppc64) nver="2.20" ;;
+ # ifunc support was added in 2.23, but glibc also needs
+ # machinemode which is in 2.24.
+ s390) nver="2.24" ;;
+ sparc) nver="2.21" ;;
+ *) return 1 ;;
+ esac
+ ver_test ${bver} -ge ${nver}
+}
+
+# Setup toolchain variables that had historically been defined in the
+# profiles for these archs.
+setup_env() {
+ # silly users
+ unset LD_RUN_PATH
+ unset LD_ASSUME_KERNEL
+
+ if is_crosscompile || tc-is-cross-compiler ; then
+ multilib_env ${CTARGET_OPT:-${CTARGET}}
+
+ if ! use multilib ; then
+ MULTILIB_ABIS=${DEFAULT_ABI}
+ else
+ MULTILIB_ABIS=${MULTILIB_ABIS:-${DEFAULT_ABI}}
+ fi
+
+ # If the user has CFLAGS_<CTARGET> in their make.conf, use that,
+ # and fall back on CFLAGS.
+ local VAR=CFLAGS_${CTARGET//[-.]/_}
+ CFLAGS=${!VAR-${CFLAGS}}
+ einfo " $(printf '%15s' 'Manual CFLAGS:') ${CFLAGS}"
+ fi
+
+ setup_flags
+
+ export ABI=${ABI:-${DEFAULT_ABI:-default}}
+
+ if just_headers ; then
+ # Avoid mixing host's CC and target's CFLAGS_${ABI}:
+ # At this bootstrap stage we have only binutils for
+ # target but not compiler yet.
+ einfo "Skip CC ABI injection. We can't use (cross-)compiler yet."
+ return 0
+ fi
+
+ # Glibc does not work with gold (for various reasons) #269274.
+ tc-ld-disable-gold
+
+ if use doc ; then
+ export MAKEINFO=makeinfo
+ else
+ export MAKEINFO=/dev/null
+ fi
+
+ # Reset CC and CXX to the value at start of emerge
+ export CC=${__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
+ export CXX=${__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
+
+ # and make sure __ORIC_CC and __ORIG_CXX is defined now.
+ export __ORIG_CC=${CC}
+ export __ORIG_CXX=${CXX}
+
+ if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
+
+ # If we are running in an otherwise clang/llvm environment, we need to
+ # recover the proper gcc and binutils settings here, at least until glibc
+ # is finally building with clang. So let's override everything that is
+ # set in the clang profiles.
+ # Want to shoot yourself into the foot? Set USE=custom-cflags, that's always
+ # a good start into that direction.
+ # Also, if you're crosscompiling, let's assume you know what you are doing.
+ # Hopefully.
+ # Last, we need the settings of the *build* environment, not of the
+ # target environment...
+
+ local current_binutils_path=$(env ROOT="${BROOT}" binutils-config -B)
+ local current_gcc_path=$(env ROOT="${BROOT}" gcc-config -B)
+ einfo "Overriding clang configuration, since it won't work here"
+
+ export CC="${current_gcc_path}/gcc"
+ export CXX="${current_gcc_path}/g++"
+ export LD="${current_binutils_path}/ld.bfd"
+ export AR="${current_binutils_path}/ar"
+ export AS="${current_binutils_path}/as"
+ export NM="${current_binutils_path}/nm"
+ export STRIP="${current_binutils_path}/strip"
+ export RANLIB="${current_binutils_path}/ranlib"
+ export OBJCOPY="${current_binutils_path}/objcopy"
+ export STRINGS="${current_binutils_path}/strings"
+ export OBJDUMP="${current_binutils_path}/objdump"
+ export READELF="${current_binutils_path}/readelf"
+ export ADDR2LINE="${current_binutils_path}/addr2line"
+
+ # do we need to also do flags munging here? yes! at least...
+ filter-flags '-fuse-ld=*'
+ filter-flags '-D_FORTIFY_SOURCE=*'
+
+ else
+
+ # this is the "normal" case
+
+ export CC="$(tc-getCC ${CTARGET})"
+ export CXX="$(tc-getCXX ${CTARGET})"
+
+ # Always use tuple-prefixed toolchain. For non-native ABI glibc's configure
+ # can't detect them automatically due to ${CHOST} mismatch and fallbacks
+ # to unprefixed tools. Similar to multilib.eclass:multilib_toolchain_setup().
+ export NM="$(tc-getNM ${CTARGET})"
+ export READELF="$(tc-getREADELF ${CTARGET})"
+
+ fi
+
+ # We need to export CFLAGS with abi information in them because glibc's
+ # configure script checks CFLAGS for some targets (like mips). Keep
+ # around the original clean value to avoid appending multiple ABIs on
+ # top of each other. (Why does the comment talk about CFLAGS if the code
+ # acts on CC?)
+ export __GLIBC_CC=${CC}
+ export __GLIBC_CXX=${CXX}
+
+ export __abi_CFLAGS="$(get_abi_CFLAGS)"
+
+ # CFLAGS can contain ABI-specific flags like -mfpu=neon, see bug #657760
+ # To build .S (assembly) files with the same ABI-specific flags
+ # upstream currently recommends adding CFLAGS to CC/CXX:
+ # https://sourceware.org/PR23273
+ # Note: Passing CFLAGS via CPPFLAGS overrides glibc's arch-specific CFLAGS
+ # and breaks multiarch support. See 659030#c3 for an example.
+ # The glibc configure script doesn't properly use LDFLAGS all the time.
+ export CC="${__GLIBC_CC} ${__abi_CFLAGS} ${CFLAGS} ${LDFLAGS}"
+
+ # Some of the tests are written in C++, so we need to force our multlib abis in, bug 623548
+ export CXX="${__GLIBC_CXX} ${__abi_CFLAGS} ${CFLAGS}"
+
+ if is_crosscompile; then
+ # Assume worst-case bootstrap: glibc is buil first time
+ # when ${CTARGET}-g++ is not available yet. We avoid
+ # building auxiliary programs that require C++: bug #683074
+ # It should not affect final result.
+ export libc_cv_cxx_link_ok=no
+ # The line above has the same effect. We set CXX explicitly
+ # to make build logs less confusing.
+ export CXX=
+ fi
+}
+
+foreach_abi() {
+ setup_env
+
+ local ret=0
+ local abilist=""
+ if use multilib ; then
+ abilist=$(get_install_abis)
+ else
+ abilist=${DEFAULT_ABI}
+ fi
+ local -x ABI
+ for ABI in ${abilist:-default} ; do
+ setup_env
+ einfo "Running $1 for ABI ${ABI}"
+ $1
+ : $(( ret |= $? ))
+ done
+ return ${ret}
+}
+
+glibc_banner() {
+ local b="Gentoo ${PVR}"
+ [[ -n ${PATCH_VER} ]] && ! use vanilla && b+=" p${PATCH_VER}"
+ echo "${b}"
+}
+
+# The following Kernel version handling functions are mostly copied from portage
+# source. It's better not to use linux-info.eclass here since a) it adds too
+# much magic, see bug 326693 for some of the arguments, and b) some of the
+# functions are just not provided.
+
+g_get_running_KV() {
+ uname -r
+ return $?
+}
+
+g_KV_major() {
+ [[ -z $1 ]] && return 1
+ local KV=$@
+ echo "${KV%%.*}"
+}
+
+g_KV_minor() {
+ [[ -z $1 ]] && return 1
+ local KV=$@
+ KV=${KV#*.}
+ echo "${KV%%.*}"
+}
+
+g_KV_micro() {
+ [[ -z $1 ]] && return 1
+ local KV=$@
+ KV=${KV#*.*.}
+ echo "${KV%%[^[:digit:]]*}"
+}
+
+g_KV_to_int() {
+ [[ -z $1 ]] && return 1
+ local KV_MAJOR=$(g_KV_major "$1")
+ local KV_MINOR=$(g_KV_minor "$1")
+ local KV_MICRO=$(g_KV_micro "$1")
+ local KV_int=$(( KV_MAJOR * 65536 + KV_MINOR * 256 + KV_MICRO ))
+
+ # We make version 2.2.0 the minimum version we will handle as
+ # a sanity check ... if its less, we fail ...
+ if [[ ${KV_int} -ge 131584 ]] ; then
+ echo "${KV_int}"
+ return 0
+ fi
+ return 1
+}
+
+g_int_to_KV() {
+ local version=$1 major minor micro
+ major=$((version / 65536))
+ minor=$(((version % 65536) / 256))
+ micro=$((version % 256))
+ echo ${major}.${minor}.${micro}
+}
+
+eend_KV() {
+ [[ $(g_KV_to_int $1) -ge $(g_KV_to_int $2) ]]
+ eend $?
+}
+
+get_kheader_version() {
+ printf '#include <linux/version.h>\nLINUX_VERSION_CODE\n' | \
+ $(tc-getCPP ${CTARGET}) -I "$(build_eprefix)$(alt_build_headers)" - | \
+ tail -n 1
+}
+
+# We collect all sanity checks here. Consistency is not guranteed between
+# pkg_ and src_ phases, so we call this function both in pkg_pretend and in
+# src_unpack.
+sanity_prechecks() {
+ # Prevent native builds from downgrading
+ if [[ ${MERGE_TYPE} != "buildonly" ]] && \
+ [[ -z ${ROOT} ]] && \
+ [[ ${CBUILD} == ${CHOST} ]] && \
+ [[ ${CHOST} == ${CTARGET} ]] ; then
+
+ # The high rev # is to allow people to downgrade between -r#
+ # versions. We want to block 2.20->2.19, but 2.20-r3->2.20-r2
+ # should be fine. Hopefully we never actually use a r# this
+ # high.
+ if has_version ">${CATEGORY}/${P}-r10000" ; then
+ eerror "Sanity check to keep you from breaking your system:"
+ eerror " Downgrading glibc is not supported and a sure way to destruction."
+ [[ ${I_ALLOW_TO_BREAK_MY_SYSTEM} = yes ]] || die "Aborting to save your system."
+ fi
+
+ if ! do_run_test '#include <unistd.h>\n#include <sys/syscall.h>\nint main(){return syscall(1000)!=-1;}\n' ; then
+ eerror "Your old kernel is broken. You need to update it to a newer"
+ eerror "version as syscall(<bignum>) will break. See bug 279260."
+ die "Old and broken kernel."
+ fi
+ fi
+
+ # Users have had a chance to phase themselves, time to give em the boot
+ if [[ -e ${EROOT}/etc/locale.gen ]] && [[ -e ${EROOT}/etc/locales.build ]] ; then
+ eerror "You still haven't deleted ${EROOT}/etc/locales.build."
+ eerror "Do so now after making sure ${EROOT}/etc/locale.gen is kosher."
+ die "Lazy upgrader detected"
+ fi
+
+ if [[ ${CTARGET} == i386-* ]] ; then
+ eerror "i386 CHOSTs are no longer supported."
+ eerror "Chances are you don't actually want/need i386."
+ eerror "Please read https://www.gentoo.org/doc/en/change-chost.xml"
+ die "Please fix your CHOST"
+ fi
+
+ if [[ -e /proc/xen ]] && [[ $(tc-arch) == "x86" ]] && ! is-flag -mno-tls-direct-seg-refs ; then
+ ewarn "You are using Xen but don't have -mno-tls-direct-seg-refs in your CFLAGS."
+ ewarn "This will result in a 50% performance penalty when running with a 32bit"
+ ewarn "hypervisor, which is probably not what you want."
+ fi
+
+ # ABI-specific checks follow here. Hey, we have a lot more specific conditions that
+ # we test for...
+ if ! is_crosscompile ; then
+ if use amd64 && use multilib && [[ ${MERGE_TYPE} != "binary" ]] ; then
+ ebegin "Checking that IA32 emulation is enabled in the running kernel"
+ echo 'int main(){return 0;}' > "${T}/check-ia32-emulation.c"
+ local STAT
+ if "${CC-${CHOST}-gcc}" ${CFLAGS_x86} "${T}/check-ia32-emulation.c" -o "${T}/check-ia32-emulation.elf32"; then
+ "${T}/check-ia32-emulation.elf32"
+ STAT=$?
+ else
+ # Don't fail here to allow single->multi ABI switch
+ # or recover from breakage like bug #646424
+ ewarn "Failed to compile the ABI test. Broken host glibc?"
+ STAT=0
+ fi
+ rm -f "${T}/check-ia32-emulation.elf32"
+ eend $STAT
+ [[ $STAT -eq 0 ]] || die "CONFIG_IA32_EMULATION must be enabled in the kernel to compile a multilib glibc."
+ fi
+
+ fi
+
+ # When we actually have to compile something...
+ if ! just_headers && [[ ${MERGE_TYPE} != "binary" ]] ; then
+ if [[ -d "${ESYSROOT}"/usr/lib/include ]] ; then
+ # bug #833620, bug #643302
+ eerror "Found ${ESYSROOT}/usr/lib/include directory!"
+ eerror "This is known to break glibc's build."
+ eerror "Please backup its contents then remove the directory."
+ die "Found directory (${ESYSROOT}/usr/lib/include) which will break build (bug #833620)!"
+ fi
+
+ if [[ ${CTARGET} == *-linux* ]] ; then
+ local run_kv build_kv want_kv
+
+ run_kv=$(g_get_running_KV)
+ build_kv=$(g_int_to_KV $(get_kheader_version))
+ want_kv=${MIN_KERN_VER}
+
+ if ! is_crosscompile && ! tc-is-cross-compiler ; then
+ # Building fails on an non-supporting kernel
+ ebegin "Checking running kernel version (${run_kv} >= ${want_kv})"
+ if ! eend_KV ${run_kv} ${want_kv} ; then
+ echo
+ eerror "You need a kernel of at least ${want_kv}!"
+ die "Kernel version too low!"
+ fi
+ fi
+
+ ebegin "Checking linux-headers version (${build_kv} >= ${want_kv})"
+ if ! eend_KV ${build_kv} ${want_kv} ; then
+ echo
+ eerror "You need linux-headers of at least ${want_kv}!"
+ die "linux-headers version too low!"
+ fi
+ fi
+ fi
+}
+
+upgrade_warning() {
+ if [[ ${MERGE_TYPE} != buildonly && -n ${REPLACING_VERSIONS} && -z ${ROOT} ]]; then
+ local oldv newv=$(ver_cut 1-2 ${PV})
+ for oldv in ${REPLACING_VERSIONS}; do
+ if ver_test ${oldv} -lt ${newv}; then
+ ewarn "After upgrading glibc, please restart all running processes."
+ ewarn "Be sure to include init (telinit u) or systemd (systemctl daemon-reexec)."
+ ewarn "Alternatively, reboot your system."
+ ewarn "(See bug #660556, bug #741116, bug #823756, etc)"
+ break
+ fi
+ done
+ fi
+}
+
+#
+# the phases
+#
+
+# pkg_pretend
+
+pkg_pretend() {
+ # All the checks...
+ einfo "Checking general environment sanity."
+ sanity_prechecks
+ upgrade_warning
+}
+
+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-bootstrap && 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 systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz
+}
+
+src_prepare() {
+ local patchsetname
+ if ! use vanilla ; then
+ if [[ ${PV} == 9999* ]] ; then
+ patchsetname="from git master"
+ else
+ patchsetname="${RELEASE_VER}-${PATCH_VER}"
+ fi
+ einfo "Applying Gentoo Glibc Patchset ${patchsetname}"
+ eapply "${WORKDIR}"/patches
+ einfo "Done."
+ fi
+
+ if use clone3 ; then
+ append-cppflags -DGENTOO_USE_CLONE3
+ else
+ # See e.g. bug #827386, bug #819045.
+ elog "Disabling the clone3 syscall for compatibility with older Electron apps."
+ elog "Please re-enable this flag before filing bugs!"
+ fi
+
+ default
+
+ gnuconfig_update
+
+ cd "${WORKDIR}"
+ find . -name configure -exec touch {} +
+
+ # move the external locale-gen to its old place
+ mkdir extra || die
+ mv locale-gen-${LOCALE_GEN_VER} extra/locale || die
+
+ eprefixify extra/locale/locale-gen
+
+ # Fix permissions on some of the scripts.
+ chmod u+x "${S}"/scripts/*.sh
+
+ cd "${S}"
+}
+
+glibc_do_configure() {
+
+ local v
+ for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX LD {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY STRINGS OBJDUMP READELF; do
+ einfo " $(printf '%15s' ${v}:) ${!v}"
+ done
+
+ echo
+ local myconf=()
+
+ case ${CTARGET} in
+ m68k*)
+ # setjmp() is not compatible with stack protection:
+ # https://sourceware.org/PR24202
+ 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'
+
+ # -march= option tricks build system to infer too
+ # high ISA level: https://sourceware.org/PR27318
+ libc_cv_include_x86_isa_level=no
+ # Explicit override of https://sourceware.org/PR27991
+ # exposes a bug in glibc's configure:
+ # https://sourceware.org/PR27991
+ libc_cv_have_x86_lahf_sahf=no
+ libc_cv_have_x86_movbe=no
+
+ ${EXTRA_ECONF}
+ )
+
+ # We rely on sys-libs/timezone-data for timezone tools normally.
+ myconf+=( $(use_enable vanilla timezone-tools) )
+
+ # These libs don't have configure flags.
+ ac_cv_lib_audit_audit_log_user_avc_message=$(usex audit || echo no)
+ ac_cv_lib_cap_cap_init=$(usex caps || echo no)
+
+ # There is no configure option for this and we need to export it
+ # since the glibc build will re-run configure on itself
+ export libc_cv_rootsbindir="$(host_eprefix)/sbin"
+ export libc_cv_slibdir="$(host_eprefix)/$(get_libdir)"
+
+ local builddir=$(builddir nptl)
+ mkdir -p "${builddir}"
+ cd "${builddir}"
+ set -- "${S}"/configure "${myconf[@]}"
+ echo "$@"
+ "$@" || die "failed to configure glibc"
+
+ # ia64 static cross-compilers are a pita in so much that they
+ # can't produce static ELFs (as the libgcc.a is broken). so
+ # disable building of the programs for those targets if it
+ # doesn't work.
+ # XXX: We could turn this into a compiler test, but ia64 is
+ # the only one that matters, so this should be fine for now.
+ if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
+ sed -i '1i+link-static = touch $@' config.make
+ fi
+
+ # If we're trying to migrate between ABI sets, we need
+ # to lie and use a local copy of gcc. Like if the system
+ # is built with MULTILIB_ABIS="amd64 x86" but we want to
+ # add x32 to it, gcc/glibc don't yet support x32.
+ #
+ if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib-bootstrap ; then
+ echo 'main(){}' > "${T}"/test.c
+ if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
+ sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
+ fi
+ fi
+}
+
+glibc_headers_configure() {
+ export ABI=default
+
+ local builddir=$(builddir "headers")
+ mkdir -p "${builddir}"
+ cd "${builddir}"
+
+ # if we don't have a compiler yet, we can't really test it now ...
+ # hopefully they don't affect header generation, so let's hope for
+ # the best here ...
+ local v vars=(
+ ac_cv_header_cpuid_h=yes
+ libc_cv_{386,390,alpha,arm,hppa,ia64,mips,{powerpc,sparc}{,32,64},sh,x86_64}_tls=yes
+ libc_cv_asm_cfi_directives=yes
+ libc_cv_broken_visibility_attribute=no
+ libc_cv_c_cleanup=yes
+ libc_cv_compiler_powerpc64le_binary128_ok=yes
+ libc_cv_forced_unwind=yes
+ libc_cv_gcc___thread=yes
+ libc_cv_mlong_double_128=yes
+ libc_cv_mlong_double_128ibm=yes
+ libc_cv_ppc_machine=yes
+ libc_cv_ppc_rel16=yes
+ libc_cv_predef_fortify_source=no
+ libc_cv_target_power8_ok=yes
+ libc_cv_visibility_attribute=yes
+ libc_cv_z_combreloc=yes
+ libc_cv_z_execstack=yes
+ libc_cv_z_initfirst=yes
+ libc_cv_z_nodelete=yes
+ libc_cv_z_nodlopen=yes
+ libc_cv_z_relro=yes
+ libc_mips_abi=${ABI}
+ libc_mips_float=$([[ $(tc-is-softfloat) == "yes" ]] && echo soft || echo hard)
+ # These libs don't have configure flags.
+ ac_cv_lib_audit_audit_log_user_avc_message=no
+ ac_cv_lib_cap_cap_init=no
+ )
+
+ einfo "Forcing cached settings:"
+ for v in "${vars[@]}" ; do
+ einfo " ${v}"
+ export ${v}
+ done
+
+ local headers_only_arch_CPPFLAGS=()
+
+ # Blow away some random CC settings that screw things up. #550192
+ if [[ -d ${S}/sysdeps/mips ]]; then
+ pushd "${S}"/sysdeps/mips >/dev/null
+ sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=32:' mips32/Makefile mips64/n32/Makefile || die
+ sed -i -e '/^CC +=/s:=.*:= -D_MIPS_SZPTR=64:' mips64/n64/Makefile || die
+
+ # Force the mips ABI to the default. This is OK because the set of
+ # installed headers in this phase is the same between the 3 ABIs.
+ # If this ever changes, this hack will break, but that's unlikely
+ # as glibc discourages that behavior.
+ # https://crbug.com/647033
+ sed -i -e 's:abiflag=.*:abiflag=_ABIO32:' preconfigure || die
+
+ popd >/dev/null
+ fi
+
+ case ${CTARGET} in
+ riscv*)
+ # RISC-V interrogates the compiler to determine which target to
+ # build. If building the headers then we don't strictly need a
+ # RISC-V compiler, so the built-in definitions that are provided
+ # along with all RISC-V compiler might not exist. This causes
+ # glibc's RISC-V preconfigure script to blow up. Since we're just
+ # building the headers any value will actually work here, so just
+ # pick the standard one (rv64g/lp64d) to make the build scripts
+ # happy for now -- the headers are all the same anyway so it
+ # doesn't matter.
+ headers_only_arch_CPPFLAGS+=(
+ -D__riscv_xlen=64
+ -D__riscv_flen=64
+ -D__riscv_float_abi_double=1
+ -D__riscv_atomic=1
+ ) ;;
+ esac
+
+ local myconf=()
+ myconf+=(
+ --disable-sanity-checks
+ --enable-hacker-mode
+ --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
+ # riscv
+ ilp32d /lib/ld-linux-riscv32-ilp32d.so.1
+ ilp32 /lib/ld-linux-riscv32-ilp32.so.1
+ lp64d /lib/ld-linux-riscv64-lp64d.so.1
+ lp64 /lib/ld-linux-riscv64-lp64.so.1
+ # s390
+ s390 /lib/ld.so.1
+ s390x /lib/ld64.so.1
+ # sparc
+ sparc32 /lib/ld-linux.so.2
+ sparc64 /lib64/ld-linux.so.2
+ )
+ case $(tc-endian) in
+ little)
+ ldso_abi_list+=(
+ # arm
+ arm64 /lib/ld-linux-aarch64.so.1
+ # ELFv2 (glibc does not support ELFv1 on LE)
+ ppc64 /lib64/ld64.so.2
+ )
+ ;;
+ big)
+ ldso_abi_list+=(
+ # arm
+ arm64 /lib/ld-linux-aarch64_be.so.1
+ # ELFv1 (glibc does not support ELFv2 on BE)
+ ppc64 /lib64/ld64.so.1
+ )
+ ;;
+ esac
+ if [[ ${SYMLINK_LIB} == "yes" ]] && [[ ! -e ${ED}/$(alt_prefix)/lib ]] ; then
+ dosym $(get_abi_LIBDIR ${DEFAULT_ABI}) $(alt_prefix)/lib
+ fi
+ for (( i = 0; i < ${#ldso_abi_list[@]}; i += 2 )) ; do
+ ldso_abi=${ldso_abi_list[i]}
+ has ${ldso_abi} $(get_install_abis) || continue
+
+ ldso_name="$(alt_prefix)${ldso_abi_list[i+1]}"
+ if [[ ! -L ${ED}/${ldso_name} && ! -e ${ED}/${ldso_name} ]] ; then
+ dosym ../$(get_abi_LIBDIR ${ldso_abi})/${ldso_name##*/} ${ldso_name}
+ fi
+ done
+
+ # In the LSB 5.0 definition, someone had the excellent idea to "standardize"
+ # the runtime loader name, see also https://xkcd.com/927/
+ # Normally, in Gentoo one should never come across executables that require this.
+ # However, binary commercial packages are known to adhere to weird practices.
+ # https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-AMD64/LSB-Core-AMD64.html#BASELIB
+ local lsb_ldso_name native_ldso_name lsb_ldso_abi
+ local lsb_ldso_abi_list=(
+ # x86
+ amd64 ld-linux-x86-64.so.2 ld-lsb-x86-64.so.3
+ )
+ for (( i = 0; i < ${#lsb_ldso_abi_list[@]}; i += 3 )) ; do
+ lsb_ldso_abi=${lsb_ldso_abi_list[i]}
+ native_ldso_name=${lsb_ldso_abi_list[i+1]}
+ lsb_ldso_name=${lsb_ldso_abi_list[i+2]}
+ has ${lsb_ldso_abi} $(get_install_abis) || continue
+
+ if [[ ! -L ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} && ! -e ${ED}/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name} ]] ; then
+ dosym ${native_ldso_name} "$(alt_prefix)/$(get_abi_LIBDIR ${lsb_ldso_abi})/${lsb_ldso_name}"
+ fi
+ done
+
+ # With devpts under Linux mounted properly, we do not need the pt_chown
+ # binary to be setuid. This is because the default owners/perms will be
+ # exactly what we want.
+ if ! use suid ; then
+ find "${ED}" -name pt_chown -exec chmod -s {} +
+ fi
+
+ #################################################################
+ # EVERYTHING AFTER THIS POINT IS FOR NATIVE GLIBC INSTALLS ONLY #
+ # Make sure we install some symlink hacks so that when we build
+ # a 2nd stage cross-compiler, gcc finds the target system
+ # headers correctly. See gcc/doc/gccinstall.info
+ if is_crosscompile ; then
+ # We need to make sure that /lib and /usr/lib always exists.
+ # gcc likes to use relative paths to get to its multilibs like
+ # /usr/lib/../lib64/. So while we don't install any files into
+ # /usr/lib/, we do need it to exist.
+ keepdir $(alt_prefix)/lib
+ keepdir $(alt_prefix)/usr/lib
+
+ dosym usr/include $(alt_prefix)/sys-include
+ return 0
+ fi
+
+ # Files for Debian-style locale updating
+ dodir /usr/share/i18n
+ sed \
+ -e "/^#/d" \
+ -e "/SUPPORTED-LOCALES=/d" \
+ -e "s: \\\\::g" -e "s:/: :g" \
+ "${S}"/localedata/SUPPORTED > "${ED}"/usr/share/i18n/SUPPORTED \
+ || die "generating /usr/share/i18n/SUPPORTED failed"
+ cd "${WORKDIR}"/extra/locale
+ dosbin locale-gen
+ doman *.[0-8]
+ insinto /etc
+ doins locale.gen
+
+ keepdir /usr/lib/locale
+
+ cd "${S}"
+
+ # Install misc network config files
+ insinto /etc
+ doins posix/gai.conf
+
+ if use systemd ; then
+ doins "${WORKDIR}/glibc-systemd-${GLIBC_SYSTEMD_VER}/gentoo-config/nsswitch.conf"
+ else
+ doins nss/nsswitch.conf
+ fi
+
+ # Gentoo-specific
+ newins "${FILESDIR}"/host.conf-1 host.conf
+
+ if use nscd ; then
+ doins nscd/nscd.conf
+
+ newinitd "$(prefixify_ro "${FILESDIR}"/nscd-1)" nscd
+
+ local nscd_args=(
+ -e "s:@PIDFILE@:$(strings "${ED}"/usr/sbin/nscd | grep nscd.pid):"
+ )
+
+ sed -i "${nscd_args[@]}" "${ED}"/etc/init.d/nscd
+
+ use systemd && systemd_dounit nscd/nscd.service
+ newtmpfiles nscd/nscd.tmpfiles nscd.conf
+ fi
+
+ echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00glibc
+ doenvd "${T}"/00glibc
+
+ for d in BUGS ChangeLog CONFORMANCE FAQ NEWS NOTES PROJECTS README* ; do
+ [[ -s ${d} ]] && dodoc ${d}
+ done
+ dodoc -r ChangeLog.old
+
+ # Prevent overwriting of the /etc/localtime symlink. We'll handle the
+ # creation of the "factory" symlink in pkg_postinst().
+ rm -f "${ED}"/etc/localtime
+
+ # Generate all locales if this is a native build as locale generation
+ if use compile-locales && ! is_crosscompile ; then
+ run_locale_gen --inplace-glibc "${ED}/"
+ sed -e 's:COMPILED_LOCALES="":COMPILED_LOCALES="1":' -i "${ED}"/usr/sbin/locale-gen || die
+ fi
+}
+
+glibc_headers_install() {
+ local builddir=$(builddir "headers")
+ cd "${builddir}"
+ emake install_root="${D}/$(build_eprefix)$(alt_prefix)" install-headers
+
+ insinto $(alt_headers)/gnu
+ doins "${S}"/include/gnu/stubs.h
+
+ # Make sure we install the sys-include symlink so that when
+ # we build a 2nd stage cross-compiler, gcc finds the target
+ # system headers correctly. See gcc/doc/gccinstall.info
+ dosym usr/include $(alt_prefix)/sys-include
+}
+
+src_install() {
+ if just_headers ; then
+ export ABI=default
+ glibc_headers_install
+ return
+ fi
+
+ foreach_abi glibc_do_src_install
+
+ if ! use static-libs ; then
+ einfo "Not installing static glibc libraries"
+ find "${ED}" -name "*.a" -and -not -name "*_nonshared.a" -delete
+ fi
+}
+
+# Simple test to make sure our new glibc isn't completely broken.
+# Make sure we don't test with statically built binaries since
+# they will fail. Also, skip if this glibc is a cross compiler.
+#
+# If coreutils is built with USE=multicall, some of these files
+# will just be wrapper scripts, not actual ELFs we can test.
+glibc_sanity_check() {
+ cd / #228809
+
+ # We enter ${ED} so to avoid trouble if the path contains
+ # special characters; for instance if the path contains the
+ # colon character (:), then the linker will try to split it
+ # and look for the libraries in an unexpected place. This can
+ # lead to unsafe code execution if the generated prefix is
+ # within a world-writable directory.
+ # (e.g. /var/tmp/portage:${HOSTNAME})
+ pushd "${ED}"/$(get_libdir) >/dev/null
+
+ # first let's find the actual dynamic linker here
+ # symlinks may point to the wrong abi
+ local newldso=$(find . -maxdepth 1 -name 'ld*so.?' -type f -print -quit)
+
+ einfo Last-minute run tests with ${newldso} in /$(get_libdir) ...
+
+ local x striptest
+ for x in cal date env free ls true uname uptime ; do
+ x=$(type -p ${x})
+ [[ -z ${x} || ${x} != ${EPREFIX}/* ]] && continue
+ striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) || continue
+ case ${striptest} in
+ *"statically linked"*) continue;;
+ *"ASCII text"*) continue;;
+ esac
+ # We need to clear the locale settings as the upgrade might want
+ # incompatible locale data. This test is not for verifying that.
+ LC_ALL=C \
+ ${newldso} --library-path . ${x} > /dev/null \
+ || die "simple run test (${x}) failed"
+ done
+
+ popd >/dev/null
+}
+
+pkg_preinst() {
+ # nothing to do if just installing headers
+ just_headers && return
+
+ # prepare /etc/ld.so.conf.d/ for files
+ mkdir -p "${EROOT}"/etc/ld.so.conf.d
+
+ # Default /etc/hosts.conf:multi to on for systems with small dbs.
+ if [[ $(wc -l < "${EROOT}"/etc/hosts) -lt 1000 ]] ; then
+ sed -i '/^multi off/s:off:on:' "${ED}"/etc/host.conf
+ einfo "Defaulting /etc/host.conf:multi to on"
+ fi
+
+ [[ -n ${ROOT} ]] && return 0
+ [[ -d ${ED}/$(get_libdir) ]] || return 0
+ [[ -z ${BOOTSTRAP_RAP} ]] && glibc_sanity_check
+
+ if [[ -L ${EROOT}/usr/lib/locale ]]; then
+ # Help portage migrate this to a directory
+ # https://bugs.gentoo.org/753740
+ rm "${EROOT}"/usr/lib/locale || die
+ fi
+
+ # Keep around libcrypt so that Perl doesn't break when merging libxcrypt
+ # (libxcrypt is the new provider for now of libcrypt.so.{1,2}).
+ # bug #802207
+ if ! use crypt && has_version "${CATEGORY}/${PN}[crypt]" && ! has preserve-libs ${FEATURES}; then
+ PRESERVED_OLD_LIBCRYPT=1
+ cp -p "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" "${T}/libcrypt$(get_libname 1)" || die
+ else
+ PRESERVED_OLD_LIBCRYPT=0
+ fi
+}
+
+pkg_postinst() {
+ # nothing to do if just installing headers
+ just_headers && return
+
+ if ! tc-is-cross-compiler && [[ -x ${EROOT}/usr/sbin/iconvconfig ]] ; then
+ # Generate fastloading iconv module configuration file.
+ "${EROOT}"/usr/sbin/iconvconfig --prefix="${ROOT}/"
+ fi
+
+ if ! is_crosscompile && [[ -z ${ROOT} ]] ; then
+ use compile-locales || run_locale_gen "${EROOT}/"
+ fi
+
+ upgrade_warning
+
+ # Check for sanity of /etc/nsswitch.conf, take 2
+ if [[ -e ${EROOT}/etc/nsswitch.conf ]] && ! has_version sys-auth/libnss-nis ; then
+ local entry
+ for entry in passwd group shadow; do
+ if 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
+
+ if [[ ${PRESERVED_OLD_LIBCRYPT} -eq 1 ]] ; then
+ cp -p "${T}/libcrypt$(get_libname 1)" "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1)" || die
+ preserve_old_lib_notify /$(get_libdir)/libcrypt$(get_libname 1)
+
+ elog "Please ignore a possible later error message about a file collision involving"
+ elog "${EROOT}/$(get_libdir)/libcrypt$(get_libname 1). We need to preserve this file for the moment to keep"
+ elog "the upgrade working, but it also needs to be overwritten when"
+ elog "sys-libs/libxcrypt is installed. See bug 802210 for more details."
+ fi
+}
diff --git a/sys-libs/glibc/glibc-2.35-r2.ebuild b/sys-libs/glibc/glibc-2.35-r3.ebuild
index 22e2d5153f19..7040d0738b6a 100644
--- a/sys-libs/glibc/glibc-2.35-r2.ebuild
+++ b/sys-libs/glibc/glibc-2.35-r3.ebuild
@@ -20,7 +20,7 @@ SLOT="2.2"
EMULTILIB_PKG="true"
# Gentoo patchset (ignored for live ebuilds)
-PATCH_VER=5
+PATCH_VER=6
PATCH_DEV=dilfridge
if [[ ${PV} == 9999* ]]; then
@@ -29,6 +29,7 @@ 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+=" experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220422.tar.xz )"
fi
RELEASE_VER=${PV}
@@ -43,7 +44,7 @@ SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${L
SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )"
-IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla"
+IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla"
# Minimum kernel version that glibc requires
MIN_KERN_VER="3.2.0"
@@ -843,6 +844,7 @@ src_unpack() {
cd "${WORKDIR}" || die
unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
+ use experimental-loong && unpack glibc-2.35-loongarch-patches-20220422.tar.xz
fi
cd "${WORKDIR}" || die
@@ -861,6 +863,12 @@ src_prepare() {
einfo "Applying Gentoo Glibc Patchset ${patchsetname}"
eapply "${WORKDIR}"/patches
einfo "Done."
+
+ if use experimental-loong ; then
+ einfo "Applying experimental LoongArch patchset"
+ eapply "${WORKDIR}"/loongarch-2.35
+ einfo "Done."
+ fi
fi
if use clone3 ; then
diff --git a/sys-libs/glibc/glibc-2.35-r1.ebuild b/sys-libs/glibc/glibc-2.35-r4.ebuild
index 891974bc21c4..c67cc3205f9f 100644
--- a/sys-libs/glibc/glibc-2.35-r1.ebuild
+++ b/sys-libs/glibc/glibc-2.35-r4.ebuild
@@ -20,15 +20,16 @@ SLOT="2.2"
EMULTILIB_PKG="true"
# Gentoo patchset (ignored for live ebuilds)
-PATCH_VER=4
+PATCH_VER=6
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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
SRC_URI="mirror://gnu/glibc/${P}.tar.xz"
SRC_URI+=" https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz"
+ SRC_URI+=" experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/glibc-2.35-loongarch-patches-20220422.tar.xz )"
fi
RELEASE_VER=${PV}
@@ -43,7 +44,7 @@ SRC_URI+=" https://gitweb.gentoo.org/proj/locale-gen.git/snapshot/locale-gen-${L
SRC_URI+=" multilib-bootstrap? ( https://dev.gentoo.org/~dilfridge/distfiles/gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz )"
SRC_URI+=" systemd? ( https://gitweb.gentoo.org/proj/toolchain/glibc-systemd.git/snapshot/glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz )"
-IUSE="audit caps cet compile-locales +crypt custom-cflags doc gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla"
+IUSE="audit caps cet +clone3 compile-locales +crypt custom-cflags doc experimental-loong gd headers-only +multiarch multilib multilib-bootstrap nscd profile selinux +ssp +static-libs suid systemd systemtap test vanilla"
# Minimum kernel version that glibc requires
MIN_KERN_VER="3.2.0"
@@ -429,6 +430,9 @@ setup_flags() {
replace-flags -O0 -O1
filter-flags '-fstack-protector*'
+
+ # See end of bug #830454; we handle this via USE=cet
+ filter-flags '-fcf-protection='
}
use_multiarch() {
@@ -840,6 +844,7 @@ src_unpack() {
cd "${WORKDIR}" || die
unpack glibc-${RELEASE_VER}-patches-${PATCH_VER}.tar.xz
+ use experimental-loong && unpack glibc-2.35-loongarch-patches-20220422.tar.xz
fi
cd "${WORKDIR}" || die
@@ -858,6 +863,20 @@ src_prepare() {
einfo "Applying Gentoo Glibc Patchset ${patchsetname}"
eapply "${WORKDIR}"/patches
einfo "Done."
+
+ if use experimental-loong ; then
+ einfo "Applying experimental LoongArch patchset"
+ eapply "${WORKDIR}"/loongarch-2.35
+ einfo "Done."
+ fi
+ fi
+
+ if use clone3 ; then
+ append-cppflags -DGENTOO_USE_CLONE3
+ else
+ # See e.g. bug #827386, bug #819045.
+ elog "Disabling the clone3 syscall for compatibility with older Electron apps."
+ elog "Please re-enable this flag before filing bugs!"
fi
default
@@ -990,11 +1009,6 @@ glibc_do_configure() {
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}"
diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild
index 94842d8172b7..0ccad6a681c1 100644
--- a/sys-libs/glibc/glibc-9999.ebuild
+++ b/sys-libs/glibc/glibc-9999.ebuild
@@ -994,11 +994,6 @@ glibc_do_configure() {
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}"
diff --git a/sys-libs/glibc/metadata.xml b/sys-libs/glibc/metadata.xml
index 613e58eff7ee..e00a008ac5c3 100644
--- a/sys-libs/glibc/metadata.xml
+++ b/sys-libs/glibc/metadata.xml
@@ -11,6 +11,7 @@
<flag name="compile-locales">build *all* locales in src_install; this is generally meant for stage building only as it ignores /etc/locale.gen file and can be pretty slow</flag>
<flag name="crypt">build and install libcrypt and crypt.h</flag>
<flag name="debug">When USE=hardened, allow fortify/stack violations to dump core (SIGABRT) and not kill self (SIGKILL)</flag>
+ <flag name="experimental-loong">Add experimental LoongArch patchset</flag>
<flag name="gd">build memusage and memusagestat tools</flag>
<flag name="multiarch">enable optimizations for multiple CPU architectures (detected at runtime)</flag>
<flag name="multilib-bootstrap">Provide prebuilt libgcc.a and crt files if missing. Only needed for ABI switch.</flag>
diff --git a/sys-libs/gpm/Manifest b/sys-libs/gpm/Manifest
index 30384fbe6eff..3a9781c82195 100644
--- a/sys-libs/gpm/Manifest
+++ b/sys-libs/gpm/Manifest
@@ -10,5 +10,5 @@ AUX gpm.service 218 BLAKE2B 728726976390bb394d479e424d5c1fafb9bc17d00e23a9021899
DIST gpm-1.20.7-docs.patch.xz 41668 BLAKE2B cab4649d0eda83c37474b68ac141fab84cbfaac4e18f0f42ad7c0a90d14bc39697b17c450e8a8dc8b1c960f6d9e7ff344ec15791df240f61a27ccfcd7d0a9171 SHA512 6cdcad70d0a77a56cb507330ff8409155de11255b5e61fb92ee439c1e117932c346df475f4187abb0e348ee4c28fa235a9693883b1c36913e91404662df272f4
DIST gpm-1.20.7.tar.lzma 789691 BLAKE2B 5dbceedaa330d5f1ead8b2267fb5844cfd284627e085edd784a72365830a700f9a6a97f96afb4aa00a44ddbae735ef23be7eafc97a65f6250d72e15b359486c7 SHA512 a502741e2f457b47e41c6d155b1f7ef7c95384fd394503f82ddacf80cde9cdc286c906c77be12b6af8565ef1c3ab24d226379c1dcebcfcd15d64bcf3e94b63b9
EBUILD gpm-1.20.7-r3.ebuild 2384 BLAKE2B b54374cfe57825cac1cd3dbea8994b9087333316bcd858d6d0e94af55cdb7d840adb7884824a87b10b1e7714f43cdb61a41bc61af6136265f9de6cb7ab9c6083 SHA512 ff917fae60b9398a205ca3cefb477f4f872867192ca540abc69cf21d59b25af2b51b01d0255d73838a7ceb6630f885e2a6140a1d1ea72357fe82af248c1deb2e
-EBUILD gpm-1.20.7-r4.ebuild 2536 BLAKE2B 45a61f5a57b5775564b7b231327566ccf085c92fde2ed370a862283d8eb434f33738fbd6a4f9e47aebd98e923901b773957320296a9d8bb9da2f381a213bac76 SHA512 c792d00cf7a6aedbcef3c8c0db1430e032a2ecb17675e42890a68b2d3733d0acc6b07d3ba94a1cdcf505ddbadba5d0cfb20c6e822935acc819267959e2425a42
+EBUILD gpm-1.20.7-r4.ebuild 2528 BLAKE2B 677775a267c7844a38959843ee73d6a8a19a8c0086c791f30b1f3ec92400ae1dde6c1808d311f07141e04568a4fabfa43c145b34e61b574b7904dcc343a37f6f SHA512 1372cbcfdf6cd2ba29eba5fa61661f016341dc71caa25a97463c40362052687647a8e13c4c1856571973c5fa13210153ca1667cf6e033e6297f68c33fdabfadc
MISC metadata.xml 254 BLAKE2B f3a9f843cf94243d1129711770df727fcdc8808bca829ef784819cab6f5410dfa463cfed85182f8228c7de796a674dd602653ad3ef817a62c0c3e7198b23befe SHA512 b9fcd3084a7e197f6138e1ce8b0eff99c4c203c37a7d5c40de207040ba1501ef0e5b2f4e00216a567037bcd6d3394fdec6ff587484c9ba2fca9d04f431733b7c
diff --git a/sys-libs/gpm/gpm-1.20.7-r4.ebuild b/sys-libs/gpm/gpm-1.20.7-r4.ebuild
index d554df614508..c658f09ef995 100644
--- a/sys-libs/gpm/gpm-1.20.7-r4.ebuild
+++ b/sys-libs/gpm/gpm-1.20.7-r4.ebuild
@@ -15,7 +15,7 @@ SRC_URI="
LICENSE="GPL-2"
SLOT="0"
-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"
IUSE="selinux"
RDEPEND="
diff --git a/sys-libs/kpmcore/Manifest b/sys-libs/kpmcore/Manifest
index 9e3243a6598a..76416d34e109 100644
--- a/sys-libs/kpmcore/Manifest
+++ b/sys-libs/kpmcore/Manifest
@@ -1,7 +1,5 @@
-AUX kpmcore-21.08.3-dont-destroy-zfs-pool.patch 1539 BLAKE2B 926b93a359383686e341a52ac5a74b20b48e9c8e66ff0b61ebaeaf39137ea1f96600951c41b503c903d778767547717b271d7052f688e46964873e8ba3e2c81e SHA512 3da2cadc6ab753edaf502dbca775cd96700096b2b28d9ad63039872e6728d111b855b77d77b9b2481ff439945f094f35e071425584e752c92ddc53ed5b5ae96e
-AUX kpmcore-21.08.3-fix-seek-error-when-shred-partition.patch 1017 BLAKE2B 88775e15a0d7ab025645f3423675cc6a141ce343eb91c8f352cc5e32dbb4e02c11763c777fb7eccea653eeec49adaefe407261d3415745d4c561a00999ffbcb6 SHA512 2321b77cb3f80de4ff94dc886f06317bb6f3a09080d71b9e3ffbc87c6091332e6dc4e01b7c33da4724683c860f6df7b547a3c10be38f48310cbd707707e9688d
-DIST kpmcore-21.08.3.tar.xz 589464 BLAKE2B 188a702b21976c352bea49c3e40e86c6d3f85b398c3dc9577301471c49cbbf8f161a5f6b62acfc020bcd9530aab2739a39023170c7586a1f18e52add4b2d6ecd SHA512 16570fe9b5e4e83d26b1c2e591d797cd23f37a2195ac5f043ee921d038d0e10d63f9d2c72c4d710e10eeb05d81a6df577f9ddb48b762b034154e399560daa7a7
DIST kpmcore-21.12.3.tar.xz 595940 BLAKE2B ddeb1140b89993ff506d3936017f4882786f716037250f93bb820b1769de2b67301a542e1222adbf71815c36d06372cfffcacee275d807f702c48f1abdd9c84a SHA512 7f26ca0a2a0889c3fe3c67a23e673e7ac96ba359a2da3dec72c1d1d0faeb247d136c405d2e28f1bbe8bcb56352dcca16666a9339cfe199d4a2d0105a44597d16
-EBUILD kpmcore-21.08.3-r1.ebuild 859 BLAKE2B ce8a1d8701008c122a79d78d39f3b744015848db11202201493ced6b342da5cc4cf40fe02f9ba75862c6f2f3f2a473695676d85ea44b588bc212e8e2e2259824 SHA512 dc3bc3f41ac00c73c4403dd4b07cb4be14e63ed30a78d0228391a5b40abdcd51bdbc9faa4c3359e3dff029a5c5ed26aced47f3dd3af9431933c161749b55b8dd
-EBUILD kpmcore-21.12.3.ebuild 737 BLAKE2B cfa563bf6fabc3b3dce840a566a03e5f92ec1f4f2d201ce1fff19662973b1047a7e1afbcf36d6de992dd8161f424248f94bfa71b9c13489949fa2299c9d80c06 SHA512 6e446f8264ee04c9953e6c4085c84a170374be99ac1d47942e22bc511df416c8c883f3922102b8efb546582450ca935c5e1840bf425b48fb76e8ed7ebf22ea8d
+DIST kpmcore-22.04.0.tar.xz 599012 BLAKE2B bca08917139662ad2c983a2be2ee70c949ea613d3d1a901ae564175ca26bf2110dde18c7d828b660e2d3acc40893eca0b98c30d8284557698cf0994fa5674778 SHA512 355b436b58aa99cdbef50dafc4991af8e6f80ff1f885413cb08331954c8a8c3bbcac162f67fa27c1e898e7e3246ec08a967eeefaaff5b537594a14b6f841037d
+EBUILD kpmcore-21.12.3.ebuild 736 BLAKE2B f111e80d31c62c7b427d9bb7ba7944f6c8c6332e516c61622a26882aeb5dfeeaf2efb87bc1d070e1df1a71ef1b28295ae996645d1204bb351ff240baaf245e42 SHA512 ec6a75e5c2dd4f17c746d09b0c6ec50dac0c53257069497ace9cac0cd842d11652ac62c33f0d93cc3a4da8249b6da3332ce53da643676223589d3097f209f734
+EBUILD kpmcore-22.04.0.ebuild 739 BLAKE2B 0d5f6a02b1987babb3bd117cc7e052580b6f6d48193d78deec15f300590a2b73cf88424af348121ea6805f55890cf14b7c51db9254f23523a0d89c9053f73b1c SHA512 9e9746b7c62333352d688d72e24ad5f1011e253d99a6b02f85170282b433dba8ab4c9c96561a705f4ef73a2024484fe52830d8197873084b44032f0c0daf66a9
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
diff --git a/sys-libs/kpmcore/files/kpmcore-21.08.3-dont-destroy-zfs-pool.patch b/sys-libs/kpmcore/files/kpmcore-21.08.3-dont-destroy-zfs-pool.patch
deleted file mode 100644
index 83cc15d0f2d5..000000000000
--- a/sys-libs/kpmcore/files/kpmcore-21.08.3-dont-destroy-zfs-pool.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 282cfdcde179ec44d053b257e13aa715158596bd Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= <andrius@stikonas.eu>
-Date: Sat, 30 Oct 2021 21:13:07 +0100
-Subject: [PATCH] Do not destroy zfs pool when removing zfs partition.
-
-This can be dangerous, e.g. if partition is part of raid set.
-So better be more cautious and in some cases fail to remove partition
-than lose data.
----
- src/fs/zfs.cpp | 7 -------
- src/fs/zfs.h | 1 -
- 2 files changed, 8 deletions(-)
-
-diff --git a/src/fs/zfs.cpp b/src/fs/zfs.cpp
-index 5d12894..5f4c87d 100644
---- a/src/fs/zfs.cpp
-+++ b/src/fs/zfs.cpp
-@@ -77,13 +77,6 @@ qint64 zfs::maxCapacity() const
- return Capacity::unitFactor(Capacity::Unit::Byte, Capacity::Unit::EiB);
- }
-
--bool zfs::remove(Report& report, const QString& deviceNode) const
--{
-- Q_UNUSED(deviceNode)
-- ExternalCommand cmd(report, QStringLiteral("zpool"), { QStringLiteral("destroy"), QStringLiteral("-f"), label() });
-- return cmd.run(-1) && cmd.exitCode() == 0;
--}
--
- bool zfs::writeLabel(Report& report, const QString& deviceNode, const QString& newLabel)
- {
- Q_UNUSED(deviceNode)
-diff --git a/src/fs/zfs.h b/src/fs/zfs.h
-index 6e559de..61026c3 100644
---- a/src/fs/zfs.h
-+++ b/src/fs/zfs.h
-@@ -35,7 +35,6 @@ public:
- public:
- void init() override;
-
-- bool remove(Report& report, const QString& deviceNode) const override;
- bool writeLabel(Report& report, const QString& deviceNode, const QString& newLabel) override;
-
- CommandSupportType supportGetUsed() const override {
---
-GitLab
-
diff --git a/sys-libs/kpmcore/files/kpmcore-21.08.3-fix-seek-error-when-shred-partition.patch b/sys-libs/kpmcore/files/kpmcore-21.08.3-fix-seek-error-when-shred-partition.patch
deleted file mode 100644
index 568db790c7e9..000000000000
--- a/sys-libs/kpmcore/files/kpmcore-21.08.3-fix-seek-error-when-shred-partition.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From e9fc875c5e233401afd12f54ab0472c66ff6fdff Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= <andrius@stikonas.eu>
-Date: Fri, 12 Nov 2021 01:02:15 +0000
-Subject: [PATCH] Fix seek error when filling device with random data or
- zeroes.
-
----
- src/util/externalcommandhelper.cpp | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/util/externalcommandhelper.cpp b/src/util/externalcommandhelper.cpp
-index 6e61aba..0fa400d 100644
---- a/src/util/externalcommandhelper.cpp
-+++ b/src/util/externalcommandhelper.cpp
-@@ -80,7 +80,8 @@ bool ExternalCommandHelper::readData(const QString& sourceDevice, QByteArray& bu
- return false;
- }
-
-- if (!device.seek(offset)) {
-+ // Sequential devices such as /dev/zero or /dev/urandom return false on seek().
-+ if (!device.isSequential() && !device.seek(offset)) {
- qCritical() << xi18n("Could not seek position %1 on device <filename>%2</filename>.", offset, sourceDevice);
- return false;
- }
---
-GitLab
-
diff --git a/sys-libs/kpmcore/kpmcore-21.12.3.ebuild b/sys-libs/kpmcore/kpmcore-21.12.3.ebuild
index 79e6ad38178d..55a0e9f5b790 100644
--- a/sys-libs/kpmcore/kpmcore-21.12.3.ebuild
+++ b/sys-libs/kpmcore/kpmcore-21.12.3.ebuild
@@ -14,7 +14,7 @@ HOMEPAGE="https://apps.kde.org/partitionmanager/"
LICENSE="GPL-3"
SLOT="5/10"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
+KEYWORDS="amd64 ~arm arm64 ~ppc64 x86"
IUSE=""
# bug 689468, tests need polkit etc.
diff --git a/sys-libs/kpmcore/kpmcore-21.08.3-r1.ebuild b/sys-libs/kpmcore/kpmcore-22.04.0.ebuild
index dbf7c293053e..83d3b36bf651 100644
--- a/sys-libs/kpmcore/kpmcore-21.08.3-r1.ebuild
+++ b/sys-libs/kpmcore/kpmcore-22.04.0.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
ECM_NONGUI="true"
KDE_GEAR="true"
-KFMIN=5.84.0
+KFMIN=5.92.0
QTMIN=5.15.2
inherit ecm kde.org
@@ -14,12 +14,13 @@ HOMEPAGE="https://apps.kde.org/partitionmanager/"
LICENSE="GPL-3"
SLOT="5/10"
-KEYWORDS="amd64 ~arm arm64 ~ppc64 x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
IUSE=""
# bug 689468, tests need polkit etc.
RESTRICT="test"
+BDEPEND="virtual/pkgconfig"
DEPEND="
>=dev-qt/qtdbus-${QTMIN}:5
>=dev-qt/qtgui-${QTMIN}:5
@@ -31,9 +32,3 @@ DEPEND="
sys-auth/polkit-qt
"
RDEPEND="${DEPEND}"
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${FILESDIR}/${P}-dont-destroy-zfs-pool.patch"
- "${FILESDIR}/${P}-fix-seek-error-when-shred-partition.patch"
-)
diff --git a/sys-libs/ldb/Manifest b/sys-libs/ldb/Manifest
index 664006118303..d607d32e5e05 100644
--- a/sys-libs/ldb/Manifest
+++ b/sys-libs/ldb/Manifest
@@ -1,15 +1,13 @@
AUX ldb-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch 701 BLAKE2B dd2398f9e1fa39bfc3de89928dd3b935fd6ee9db4bc2c4e381ba5672098ae9209b2d6e475fa2549a9cef2e3ce5e9a789557413fbdb1bbd68842cca89ce1e8094 SHA512 35ba295d94ab5ce767f39c4cd5eb48d57a6e4993977013ee6ae0d640f74b5437a4dff6f1d14dc44dbcdc25d4e51e5084b0e3216353b2af383d8f544993228170
AUX ldb-1.5.2-optional_packages.patch 1441 BLAKE2B 0b9413cd9690aae2b2eb26f097d2509c0bbe0fc59f81bab22add57ffe0c603a8fb0c9be038d06693dcbb1d3817d4ad97a5931120b18bd9783efaac599fe0ccbc SHA512 2f313c3377385279ca3da6db21d926df0559d971e1fd42f8cce57b4001078c3817f472b85088a1f3b0e5ddcdfbbfd943199485d6e4a00412f62c883c6ea04afd
AUX ldb-2.4.2-skip-32bit-time_t-tests.patch 1308 BLAKE2B 1ff687160b92c5395c7838ade8af32ba77637a2b18153d146b9e1496f96ec9c411cc5e5f9721a8dea1730118e6574a091ee7fd1edca1830cc54c5d4fddb007ab SHA512 27a35123cb9a1f6e39b88c91de8241ecfc0f0ed125a235ba26b95767dc3121d176b267ba97b1579e5b68cfb9e3879f40326f0163a31e311f01a1b2eb7751caf4
-DIST ldb-2.3.1.tar.gz 1718379 BLAKE2B e2aa196e6e09846be2a631d81bf0b94c0cd80984ac124757888889717efdf78caf5501c4278ace33dcc2a6fb92a4a2f224b20ea9f3bf3fa5c7333f9994dcbdc1 SHA512 d87f3839481c3ac3f5ce5e2b5bb766451fe39681bff9c53747d45e2cdcef9f1eb91c0a7d6a9c202c4d01097600d66ca431a175f4fc28a126ad987b9783cb87bc
DIST ldb-2.3.2.tar.gz 1718583 BLAKE2B 48b9fb77e414af0f9fffe0cda9cf49971d79ed8b66213b01b73f53a61969e03f9e6426a04a33ff70da906c814470d8fa356902a68aa1169d969cc597e8c234d7 SHA512 be324e8f20db50529634548451dbc5f95f26a701e124bfb40ae2b0a5069de78b7c5c1a66222097209ea24ef6077373d996e67c00257a5a05198f1b81bf0ed53e
-DIST ldb-2.4.0.tar.gz 1689484 BLAKE2B 904d74900011ce3f63ad1c24fe88b1a090e835c68829ddfda5e8af2c0ab3674d7a8cd9a62b95c1f38f26578d0704556d3562e46e21a54cbb44a15b9d83676521 SHA512 6c500b723c081488bc0717b6a5b0e8966c5d8a751232f8856281a6fe4d358ae6b5878c8400a82fa666379066105fbb9259b2967313e73efabef0e1386095e2ee
+DIST ldb-2.3.3.tar.gz 1719542 BLAKE2B 2a5cfe3ddac2054d167c2857e0cd92e0f88d2c196f9285c029b2a525d781025a956a296bd6d793b65f848188cf7adf70f99542999061a85be473b3fc3b2856f1 SHA512 ffb50208fe971afd544a431b79905ec8fce67d78d20c3fcfb8345a56f3b278fb664bc48079d7239a8ca5b70aae8b32076b6007cb63e080cd536e9fe458efeccd
DIST ldb-2.4.1.tar.gz 1719769 BLAKE2B 868d3dcc51bd8272d99f2335ed1af2e37506b6a175254f1aca37f758488ba0997e37419a7d8c81def77698128307df97de26d4807ac78c34088f7a623f8d9e68 SHA512 14ab5397d28c369142b2ccf55a2ab4e678a3fe6e018541cfce46241f8226400bc169360bbef254fae4410a6e15024ae986f02298d3d324e3d3a8b88801bf76d7
DIST ldb-2.4.2.tar.gz 1720169 BLAKE2B d144218bf62dde57560df8b8a641e9f58bee001fdfa7b1527d9eb9a1a55e428662db81912173cbcdb9f993c0b316faab7d758a4878beeff1daadd487e9aa44a9 SHA512 77705ad284eed9105c9aba0459d2e48cd66ca19b657a55f7513e10281dd2e96540d24d1c8df53adc84109a918900687dc75b635cda05c4e788424ed71b5ff989
DIST ldb-2.5.0.tar.gz 1722847 BLAKE2B 880a5a516b0b423854f8a3f9c54da89e4640f8462ccc54a7b147c70c3a9eb073dc9e914d1906ab914a9ddd9b9aa0e7d177ef3ecb4c0b506f5417db931b017849 SHA512 f16a235f1409e06266c51735ac645cf2708d31dd731ee7b95d6778498b115f4252b0a528952e620767d1616a4e1e7c5f2cdc69f3fa32d79288cf14da2f52a010
-EBUILD ldb-2.3.1-r1.ebuild 2942 BLAKE2B d2495240018b7ecece8c88092c30ea64f411ea0f073f0ff2404ca6184fe931ada8342ea3beffd710fb0d3c137174cc01fba37d73d7884ad11edba84855f2ae08 SHA512 8711a2758689c818b66af5548af9881cf217839d5ea951cbcdbc83531ec602a9b39e1d2b12e8452e60691f09ef4e9db0d0d639e7d4a45d16cc7e75db583c714b
EBUILD ldb-2.3.2-r1.ebuild 2942 BLAKE2B d2495240018b7ecece8c88092c30ea64f411ea0f073f0ff2404ca6184fe931ada8342ea3beffd710fb0d3c137174cc01fba37d73d7884ad11edba84855f2ae08 SHA512 8711a2758689c818b66af5548af9881cf217839d5ea951cbcdbc83531ec602a9b39e1d2b12e8452e60691f09ef4e9db0d0d639e7d4a45d16cc7e75db583c714b
-EBUILD ldb-2.4.0-r2.ebuild 2949 BLAKE2B 119bd03399cb6851748acd19904afb7cb423bf77b58cb419169be64ef49a8d1461ab705f992529a726d5e00dd1977ea9d6f6b2e3009f61512f13c431b5d729fe SHA512 6ba869ee1b7c082a02ede9a78384fcd539c2482b44c46bed3afe8712541eabf169cf991c1bf65649ab1b4300b5fce7c3f0512a605e25d37a63f93d9b1a602377
+EBUILD ldb-2.3.3.ebuild 2949 BLAKE2B 5ee78f915254ca0ff1f5f107ec4caf24393022e5eeeac6b3bf5593b4da9c802e3f72965fcc023c81676a93e7ba21bfc255c175204f8497fc6031fdfe644d8af9 SHA512 b9441f83f2b078a7bb7492222acb04afb77238c78cb8c77ddf097a51b340c2ba7bc1f7c552a66d297baf825fc4020f3f77143199a6f4c0edd217deb980f911fb
EBUILD ldb-2.4.1-r1.ebuild 2943 BLAKE2B e96f5909024e90dd48096bd1a80d123460cd86c6a1743372992cdab7ed758f0759f889f558ce999cd493b625a231f8185852e18cf678f086bc221a61f895e887 SHA512 60ffaadddc5007e6c3aa8cbad369b20e5691b26ed163e747196cc7c1fb40ee74477ea00e022cfd94ff69eb9c911aaa51945d793913aa3056321b8026bd38bb66
EBUILD ldb-2.4.2-r1.ebuild 3007 BLAKE2B 543d57e1e3e50a57fdde0a15003fbd04990b16300df7e38b0be8021549f57e2bbfc30417a81b8519ca47d236cfbf3be3bf10d8dbeeff2b5d06e575ab9acff22b SHA512 71027d7877c6af0db3b859aa3271aefb3e9bb0134d732393e5c7d6a2b14da9a55d255fac0e04de271caf269a9d627f4203a932ed13d74137558d1c7adfcccc51
EBUILD ldb-2.5.0-r1.ebuild 3007 BLAKE2B 0abb5aa964f1b945d2bddd1154421bf35d24e9fb78dde2b0ae34b4495326142dbda601c1aa2579bdfb81face8bf6072f0dafb676524d2aa3c1f2e9947c7a9cf7 SHA512 ff46752cb5c33374665b52eef69398821f7c463deaa1a5c8c05115b94fb97cc56c805df49826f09ded208adf91a50799fa9f43e878f36291676ff7e2c9f917a7
diff --git a/sys-libs/ldb/ldb-2.3.1-r1.ebuild b/sys-libs/ldb/ldb-2.3.3.ebuild
index 49ea629050ba..99aa75a74e34 100644
--- a/sys-libs/ldb/ldb-2.3.1-r1.ebuild
+++ b/sys-libs/ldb/ldb-2.3.3.ebuild
@@ -13,7 +13,7 @@ SRC_URI="https://samba.org/ftp/pub/${PN}/${P}.tar.gz"
LICENSE="LGPL-3"
SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="doc ldap +lmdb python test"
REQUIRED_USE="${PYTHON_REQUIRED_USE}
diff --git a/sys-libs/ldb/ldb-2.4.0-r2.ebuild b/sys-libs/ldb/ldb-2.4.0-r2.ebuild
deleted file mode 100644
index ebd2a0d0b0ea..000000000000
--- a/sys-libs/ldb/ldb-2.4.0-r2.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-PYTHON_REQ_USE="threads(+)"
-inherit python-single-r1 waf-utils multilib-minimal
-
-DESCRIPTION="LDAP-like embedded database"
-HOMEPAGE="https://ldb.samba.org"
-SRC_URI="https://samba.org/ftp/pub/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-3"
-SLOT="0/${PV}"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="doc ldap +lmdb python test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- test? ( python )"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-libs/libbsd[${MULTILIB_USEDEP}]
- dev-libs/popt[${MULTILIB_USEDEP}]
- >=dev-util/cmocka-1.1.3[${MULTILIB_USEDEP}]
- >=sys-libs/talloc-2.3.3[${MULTILIB_USEDEP}]
- >=sys-libs/tdb-1.4.4[${MULTILIB_USEDEP}]
- >=sys-libs/tevent-0.11.0[${MULTILIB_USEDEP}]
- ldap? ( net-nds/openldap:= )
- lmdb? ( >=dev-db/lmdb-0.9.16:=[${MULTILIB_USEDEP}] )
- python? (
- ${PYTHON_DEPS}
- sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
- sys-libs/tdb[python,${PYTHON_SINGLE_USEDEP}]
- sys-libs/tevent[python,${PYTHON_SINGLE_USEDEP}]
- )
-"
-DEPEND="${RDEPEND}
- virtual/libcrypt
-"
-BDEPEND="${PYTHON_DEPS}
- dev-libs/libxslt
- virtual/pkgconfig
- doc? ( app-doc/doxygen )
-"
-
-WAF_BINARY="${S}/buildtools/bin/waf"
-
-MULTILIB_WRAPPED_HEADERS=( /usr/include/pyldb.h )
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.5.2-optional_packages.patch
- "${FILESDIR}"/${PN}-1.1.31-fix_PKGCONFIGDIR-when-python-disabled.patch
-)
-
-pkg_setup() {
- # Package fails to build with distcc
- export DISTCC_DISABLE=1
-
- # waf requires a python interpreter
- python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
- multilib_copy_sources
-}
-
-multilib_src_configure() {
- local myconf=(
- $(usex ldap '' --disable-ldap)
- $(usex lmdb '' --without-ldb-lmdb)
- --disable-rpath
- --disable-rpath-install --bundled-libraries=NONE
- --with-modulesdir="${EPREFIX}"/usr/$(get_libdir)/samba
- --builtin-libraries=NONE
- )
- if ! multilib_is_native_abi; then
- myconf+=( --disable-python )
- else
- use python || myconf+=( --disable-python )
- fi
- waf-utils_src_configure "${myconf[@]}"
-}
-
-multilib_src_compile() {
- waf-utils_src_compile
- multilib_is_native_abi && use doc && doxygen Doxyfile
-}
-
-multilib_src_test() {
- if multilib_is_native_abi; then
- WAF_MAKE=1 \
- PATH=buildtools/bin:../../../buildtools/bin:$PATH:"${BUILD_DIR}"/bin/shared/private/ \
- LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"${BUILD_DIR}"/bin/shared/private/:"${BUILD_DIR}"/bin/shared \
- waf test || die
- fi
-}
-
-multilib_src_install() {
- waf-utils_src_install
-
- if multilib_is_native_abi && use doc; then
- doman apidocs/man/man3/*.3
- docinto html
- dodoc -r apidocs/html/.
- fi
-
- use python && python_optimize #726454
-}
-
-pkg_postinst() {
- if has_version sys-auth/sssd; then
- ewarn "You have sssd installed. It is known to break after ldb upgrades,"
- ewarn "so please try to rebuild it before reporting bugs."
- ewarn "See https://bugs.gentoo.org/404281"
- fi
-}
diff --git a/sys-libs/libaal/Manifest b/sys-libs/libaal/Manifest
index abee092c8292..5cd45c3eaf55 100644
--- a/sys-libs/libaal/Manifest
+++ b/sys-libs/libaal/Manifest
@@ -1,3 +1,3 @@
DIST libaal-1.0.7.tar.gz 376068 BLAKE2B 2fb7802401721a64b17c0409f3ff668524399efc03b4bda4b4523af2cce204fdb5cf41bb2b2a6af5cbda34ee88cbb4703eec9bb76774d705b1759c91a33b1e34 SHA512 9b39a8cd3f49257ea912bb0e463c0c63ad06914e8a310deb4d4dce544d3ee34f492203c7321f971af71dddc1eb85f207082a4791b19bd4fad3f7dab516513b3d
-EBUILD libaal-1.0.7-r2.ebuild 893 BLAKE2B 857f04ac3c66445447a663eea012c42bce415b58278480437514eec5a4fdf931381cb237a2e63661b3ccba28512d0b6fa612aba2527463c901675b72aa8fb6db SHA512 e4a690f993a16acba6289921091d65858e5c7a9a8509f7822aaee823d82cc0fb72b66c3a4fcd3409e3031d900dee0034608ce571526eee0a910ec0698caad3b4
+EBUILD libaal-1.0.7-r2.ebuild 900 BLAKE2B 99b2e94b901e1d6a70b808213d101cdbabcd7833d11418c10b6bc2dd6e8d3bfd1ee0bf64908bf4b882f21a506733255fd419bd698b271a868f1ffe42d98f92b1 SHA512 4d39df137ce2b24327067ba199f5b0234c0aba771494c6544fa36a9959e44dbe9545471bb4b7589ed5887aa816be7841dfdea79295b9afb41b5380559270dad2
MISC metadata.xml 407 BLAKE2B 86af1cbf6e229e1cad21aa8ad5ad8ac29eb5fed43a3df646cbcac34614acd0665b7f903dd7f1734a4e4bfe239da49e8b2c875da75ab66dcc377d711fa2ff48b8 SHA512 a0c6fbba6d5dfb54f836a7cdc95d8317fbd126a871883711a03856dc183ddfdefed285ecc3d199588c8ef45c8e70d328b33cd21fdcfed786ed9011e52818a731
diff --git a/sys-libs/libaal/libaal-1.0.7-r2.ebuild b/sys-libs/libaal/libaal-1.0.7-r2.ebuild
index 7994ee19251f..32c17e6921af 100644
--- a/sys-libs/libaal/libaal-1.0.7-r2.ebuild
+++ b/sys-libs/libaal/libaal-1.0.7-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ SRC_URI="mirror://sourceforge/reiser4/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0/7"
-KEYWORDS="amd64 arm ~arm64 ppc ppc64 -sparc x86"
+KEYWORDS="amd64 arm ~arm64 ~loong ppc ppc64 -sparc x86"
IUSE="static-libs"
BDEPEND="virtual/os-headers"
diff --git a/sys-libs/libblockdev/Manifest b/sys-libs/libblockdev/Manifest
index 4838efc018fe..8492c143fe79 100644
--- a/sys-libs/libblockdev/Manifest
+++ b/sys-libs/libblockdev/Manifest
@@ -1,6 +1,4 @@
-DIST libblockdev-2.25.tar.gz 930238 BLAKE2B ae28c40b5e114826baf4a8ba9012267b297dbc4abee52669cf39c886d2c9989291f41937ec742c7457049a6a30e674f9c89ad6478923f393ae1773db3afcf621 SHA512 628d05f3a257b44208a9d0b5d84ae248fefd415812d9a93d132c03039b09fefc4d6110beb9aa0d3072e3f0c992e642d7867d0241209056538f132f86a748e195
DIST libblockdev-2.26.tar.gz 932129 BLAKE2B 39d95db69de917449e6009fa0160b6288327b2c49b64309d17a1e4e028756d1ce170779ce1c4df926c8796d8a8ed7b9131b5d4b51115a3ea901dacdaa971961a SHA512 ddd4e9c22135bd7dad0bb9bc254ac0c63e3bacc592e7c5a0c846e367da3fc248bf6187f1c81407c3bce599d3b0ceeec9a8a0030ad8e981e245f715b35eaec523
-EBUILD libblockdev-2.25.ebuild 2613 BLAKE2B 848c426ed0dc619799901680eb16d5d00d94c36894adf29c9b8338edb711a090d57ebadd94d6dc720217902fda2390f1d45f46c41febe3dee89333b42fd845f8 SHA512 781c02b20d97d28430ba2834998c62aff5721e6b9f36f7e2325285dbaab4eaa7adf5b2511caf6accf48d0935c9bdff455c976c7f0b4a9bebc36c31c71fd919ad
-EBUILD libblockdev-2.26.ebuild 2886 BLAKE2B 42732b4d5822bb2c5f512064dc4367d46a310a9a68eb4f3ee693b94c220a87cbbe666a8c850e3623be5db260bb3839f0b3965b8c354733c22221ee54d9b5827b SHA512 01b97554ec2e6870bbb0e3e8cd0636daacbc3b1636c75e18765273656668c572e2cb39ac68b0c228808208dd74ea5d8aeb5c709a0a8e45fcc15c828720a6d8b3
-EBUILD libblockdev-9999.ebuild 2886 BLAKE2B 42732b4d5822bb2c5f512064dc4367d46a310a9a68eb4f3ee693b94c220a87cbbe666a8c850e3623be5db260bb3839f0b3965b8c354733c22221ee54d9b5827b SHA512 01b97554ec2e6870bbb0e3e8cd0636daacbc3b1636c75e18765273656668c572e2cb39ac68b0c228808208dd74ea5d8aeb5c709a0a8e45fcc15c828720a6d8b3
-MISC metadata.xml 1080 BLAKE2B e959d07886b20d615c369d2a9dd621f7b4af9cb3a93c425cf9ac1c64179eeb09f9b78d95bfc5b8deabe50e9d6bc6f5364eb4ace76c1b8f7f5aab2f01f83e1c08 SHA512 7f6fe7ab61119dcd024bc8a6fd62d2b60ac59e5eb70244d13e62c8e35279db8690717e67381ae05eb10b4b7e6cdeedb8c5b423ddd7fb8e750a77e2d254e6162d
+EBUILD libblockdev-2.26.ebuild 2879 BLAKE2B f916a130ae27de31deb7564e25517733305dc07a00df358ac0b328e35cda81cfa4af9d5d3cb61c25146accccc3df6a318854ca7e4d2c6c35728e1520cbf6000f SHA512 b966334e28a29a979f4bad47c92e4efb2b6bd869ad3408ba9a9f6e4450c2797d1bac3544945991705526b767e67f16e41bd5dc67d66e255e5c7db3622ef1abcf
+EBUILD libblockdev-9999.ebuild 2871 BLAKE2B 91afe84f6a72beef76cdd364203333d56640ec79addd425628bf194407fc1ccd0f73e3e76be89eb2b6229936ccc7ad9f106cce66a9439bf01a786a98bc6a6897 SHA512 dbd469752e2c6e6316b4844957cf95b5b4a82a40a33ed95a1aa0a29ebd6d0fbfddd4e83a11854c24e3b9620823fd1b97569c8d67fd0d9b0f8e230672e1f060ac
+MISC metadata.xml 1158 BLAKE2B 0ee231799be379354cf0ede12466e0d09277bde99687abca2fc8bebe47847fc042844e3909f76b0e3b219d361cf99fb6582e12cb79b862e00ae7a460ce1785bc SHA512 b81132d7617eac81f946c2878759a4dde7edd691514ca7800621bd89be4a4a965b7389efac40b7b9c85ab19fe9ab1e1c4e0977032405bef66984e4ef44bfaee4
diff --git a/sys-libs/libblockdev/libblockdev-2.25.ebuild b/sys-libs/libblockdev/libblockdev-2.25.ebuild
deleted file mode 100644
index 542a3e9e88c6..000000000000
--- a/sys-libs/libblockdev/libblockdev-2.25.ebuild
+++ /dev/null
@@ -1,119 +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 autotools python-single-r1 xdg-utils
-
-DESCRIPTION="A library for manipulating block devices"
-HOMEPAGE="https://github.com/storaged-project/libblockdev"
-if [[ "${PV}" == *9999 ]] ; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/storaged-project/libblockdev.git"
- BDEPEND="
- sys-devel/autoconf-archive
- "
-else
- MY_PV="${PV}-1"
- #MY_P="${PN}-${MY_PV}"
- #SRC_URI="https://github.com/storaged-project/${PN}/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
- SRC_URI="https://github.com/storaged-project/${PN}/releases/download/${MY_PV}/${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv sparc x86"
- #S="${WORKDIR}/${MY_P}"
-fi
-LICENSE="LGPL-2+"
-SLOT="0"
-IUSE="bcache +cryptsetup device-mapper dmraid escrow gtk-doc introspection lvm kbd test +tools vdo"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-libs/glib-2.42.2
- dev-libs/libbytesize
- >=sys-apps/kmod-19
- >=sys-apps/util-linux-2.27
- >=sys-block/parted-3.1
- cryptsetup? (
- escrow? (
- >=dev-libs/nss-3.18.0
- dev-libs/volume_key
- )
- >=sys-fs/cryptsetup-1.6.7:=
- )
- device-mapper? ( sys-fs/lvm2 )
- dmraid? (
- sys-fs/dmraid
- sys-fs/lvm2
- )
- lvm? (
- sys-fs/lvm2
- virtual/udev
- )
- vdo? ( dev-libs/libyaml )
- ${PYTHON_DEPS}
-"
-
-DEPEND="
- ${RDEPEND}
-"
-
-BDEPEND+="
- dev-util/gtk-doc-am
- gtk-doc? ( dev-util/gtk-doc )
- introspection? ( >=dev-libs/gobject-introspection-1.3.0 )
-"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- escrow? ( cryptsetup )"
-
-pkg_setup() {
- python-single-r1_pkg_setup
-}
-
-src_prepare() {
- xdg_environment_reset #623992
- default
-
- # https://bugs.gentoo.org/744289
- find -type f \( -name "Makefile.am" -o -name "configure.ac" \) -print0 \
- | xargs --null sed "s@ -Werror@@" -i || die
-
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- --with-btrfs
- --with-fs
- --with-part
- --without-mpath
- --without-nvdimm
- $(use_enable introspection)
- $(use_enable test tests)
- $(use_with bcache)
- $(use_with cryptsetup crypto)
- $(use_with device-mapper dm)
- $(use_with dmraid)
- $(use_with escrow)
- $(use_with gtk-doc)
- $(use_with kbd)
- $(use_with lvm lvm)
- $(use_with lvm lvm-dbus)
- $(use_with tools)
- $(use_with vdo)
- --without-python2
- --with-python3
- )
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
- find "${ED}" -type f -name "*.la" -delete || die
- # This is installed even with USE=-lvm, but libbd_lvm are omitted so it
- # doesn't work at all.
- if ! use lvm; then
- rm -f "${ED}"/usr/bin/lvm-cache-stats || die
- fi
- python_optimize #718576
-}
diff --git a/sys-libs/libblockdev/libblockdev-2.26.ebuild b/sys-libs/libblockdev/libblockdev-2.26.ebuild
index 0682b4b778eb..b7f75e8e7b48 100644
--- a/sys-libs/libblockdev/libblockdev-2.26.ebuild
+++ b/sys-libs/libblockdev/libblockdev-2.26.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{7..10} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit autotools python-single-r1 xdg-utils
DESCRIPTION="A library for manipulating block devices"
@@ -19,7 +19,7 @@ else
#MY_P="${PN}-${MY_PV}"
#SRC_URI="https://github.com/storaged-project/${PN}/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
SRC_URI="https://github.com/storaged-project/${PN}/releases/download/${MY_PV}/${P}.tar.gz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ppc ppc64 ~riscv sparc x86"
#S="${WORKDIR}/${MY_P}"
fi
LICENSE="LGPL-2+"
diff --git a/sys-libs/libblockdev/libblockdev-9999.ebuild b/sys-libs/libblockdev/libblockdev-9999.ebuild
index 0682b4b778eb..caa2065daf93 100644
--- a/sys-libs/libblockdev/libblockdev-9999.ebuild
+++ b/sys-libs/libblockdev/libblockdev-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{7..10} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit autotools python-single-r1 xdg-utils
DESCRIPTION="A library for manipulating block devices"
@@ -24,7 +24,7 @@ else
fi
LICENSE="LGPL-2+"
SLOT="0"
-IUSE="bcache +cryptsetup device-mapper dmraid escrow gtk-doc introspection lvm kbd test +tools vdo"
+IUSE="bcache +cryptsetup device-mapper dmraid escrow gtk-doc introspection lvm kbd +nvme test +tools"
# Tests require root. In a future release, we may be able to run a smaller
# subset with new run_tests.py arguments.
RESTRICT="!test? ( test ) test"
@@ -51,7 +51,7 @@ RDEPEND="
sys-fs/lvm2
virtual/udev
)
- vdo? ( dev-libs/libyaml )
+ nvme? ( sys-libs/libnvme )
${PYTHON_DEPS}
"
@@ -88,6 +88,7 @@ src_configure() {
--with-btrfs
--with-fs
--with-part
+ --with-python3
--without-mpath
--without-nvdimm
$(use_enable introspection)
@@ -101,10 +102,8 @@ src_configure() {
$(use_with kbd)
$(use_with lvm lvm)
$(use_with lvm lvm-dbus)
+ $(use_with nvme)
$(use_with tools)
- $(use_with vdo)
- --without-python2
- --with-python3
)
econf "${myeconfargs[@]}"
}
@@ -121,7 +120,7 @@ src_install() {
find "${ED}" -type f -name "*.la" -delete || die
# This is installed even with USE=-lvm, but libbd_lvm are omitted so it
# doesn't work at all.
- if ! use lvm; then
+ if ! use lvm ; then
rm -f "${ED}"/usr/bin/lvm-cache-stats || die
fi
python_optimize #718576
diff --git a/sys-libs/libblockdev/metadata.xml b/sys-libs/libblockdev/metadata.xml
index 981e2c38015b..5d09531b8a88 100644
--- a/sys-libs/libblockdev/metadata.xml
+++ b/sys-libs/libblockdev/metadata.xml
@@ -13,6 +13,7 @@
<flag name="escrow">Support for building crypto plugin with escrow device support</flag>
<flag name="kbd">Enable kernel block device support.</flag>
<flag name="lvm">Enable support for Logical Volume Management via <pkg>sys-fs/lvm2</pkg>.</flag>
+ <flag name="nvme">Add nvme support via <pkg>sys-libs/libnvme</pkg></flag>
<flag name="tools">Build tools</flag>
<flag name="vdo">Enable Virtual Data Optimizer support.</flag>
</use>
diff --git a/sys-libs/libcap-ng/Manifest b/sys-libs/libcap-ng/Manifest
index 28af9218a47d..a40aaa876397 100644
--- a/sys-libs/libcap-ng/Manifest
+++ b/sys-libs/libcap-ng/Manifest
@@ -2,5 +2,5 @@ DIST libcap-ng-0.8.2-apply-disable.patch 723 BLAKE2B 70d9959c55119c02bbc4ea60525
DIST libcap-ng-0.8.2.tar.gz 456066 BLAKE2B 7e721d05b92fd3708b970527e76b1898daa91bde3ab6ed5d8f23b1435404fbe7d15731461c6d9d2c791738e5498d1f5eaba727413480d34b7edea13c8691c32b SHA512 0ac6e55c03b1fba3a849048b721e250951afb59190d9646704d4fd9938eccc3bd0767380fbddc42f186b4f55695475e31f34f537ae91c04a37662577a5b7a19b
DIST libcap-ng-0.8.3.tar.gz 455383 BLAKE2B c54dd753e0ef6dd21bcf6af7b003f85ded9faf2fbf1ea834cda6b181b165ff4b11a0284c23c73d0e6f97a810b3e6a63fceeb57ff583a2b32f23924bdee597ef5 SHA512 0ef9bc7bc6b7b59991f43b79aa6cde3e8d2c22c4b9ced2af8deae501e01d51e893033d109cb8aa0fdcba190140110993089245346334d7b114d18f1bb1b55b97
EBUILD libcap-ng-0.8.2-r1.ebuild 2361 BLAKE2B 3cd7b240ded1eaf09ba19073704c49a0e4f3bea9ca86c430a5b3dd916cc5be51f482234918c16ff7b231f76ff0f789b43095cce2d2445653b1af67d93ea72ef0 SHA512 7a9f35ba259d9c39d054905ee95244d3fd265b4f1d0a1c93b9335ded988f349d2508d298e9c7a2c7a4d3062cc4c972033a2b1e1999c7d3a4d8f06984ad8af306
-EBUILD libcap-ng-0.8.3.ebuild 2786 BLAKE2B 099dc21ba5ac41831ff888da3cf3ef4f7e87b7bf8ce766d1ce56ee3c7d8039ab6bb1cbf9c605a7f704c747974ff7bd08f9f1659685af425aee70f4cb2f003b48 SHA512 805fba2a6db0d1ed69c937f322b96e548cdcb972edc8cfb86dccf0cf7b8e9e305e04fe9c8a1ad9c5bd5fd61ab112c6eaf907571ab89f9315d1efd0bddf37a09d
+EBUILD libcap-ng-0.8.3.ebuild 2793 BLAKE2B e6390cd6919c1f3dce84f1a0d61b9446117fde7016939c2dfac7029ab3a769cfbf59b1b315b2dd96a46a92c2d0a51c7a04d81b950a038756acb36b1e1a08e194 SHA512 36143b8094e6df59ca786b00dfcaba3c5549a3885753cc35c9d6da89036f7d9604af4088e2529cb9a18eb6bc91b556ee368697016f01cf712d0000b1bd502ab1
MISC metadata.xml 674 BLAKE2B 3de3fabf1f2c58f226adaf783fc2261c23f30e9777c28d5df4bdd3bf998a491dad164c2aaa90aed6f6378ac3b6036f4ddb06163afda0cfe06c354d4607a7471a SHA512 00a18c626c465437ff1d83ddf0fef4f6caa1cdf144973e7150fd5b771418f3a6980b15a66b998b8d6dfc5032761f4523f04bc96644d55a9ba8f2c05e6bc8a943
diff --git a/sys-libs/libcap-ng/libcap-ng-0.8.3.ebuild b/sys-libs/libcap-ng/libcap-ng-0.8.3.ebuild
index 9dbc035b5526..3e163b1e19cb 100644
--- a/sys-libs/libcap-ng/libcap-ng-0.8.3.ebuild
+++ b/sys-libs/libcap-ng/libcap-ng-0.8.3.ebuild
@@ -19,7 +19,7 @@ SRC_URI="https://people.redhat.com/sgrubb/${PN}/${P}.tar.gz
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
IUSE="python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
diff --git a/sys-libs/libcap/Manifest b/sys-libs/libcap/Manifest
index cc775d123583..54660379309e 100644
--- a/sys-libs/libcap/Manifest
+++ b/sys-libs/libcap/Manifest
@@ -2,6 +2,6 @@ AUX libcap-2.62-ignore-RAISE_SETFCAP-install-failures.patch 901 BLAKE2B 8b4795bf
DIST libcap-2.63.tar.xz 175104 BLAKE2B a49a628f5b9ddf5a3d077428544a53b9cdedf62053ff296a0aa7d61e12ca05f9ba7597f20ee16a3843736bee2417a3d1585ad6b336651fcb3e4ee29b108cfa0f SHA512 832842b71ca32db8f53ca5f1a3010f14e7f42693f62f29632e9948c860f990899bb094165c37307ce8b9e5bc5eb1c833e780ebca98442df3e6d900e4b238834b
DIST libcap-2.64.tar.xz 175704 BLAKE2B 078ce2505a79c1bd4ca0a8eaf3444178bc19a566f0505d28c6959f86fbbac2fe2fc88c06fd0d988087a6e20e8ec66a2633146cea957f0f3fd92eaff4f81d7c66 SHA512 3c5cf478cef249585ee1a0dfd75c6b41b0daf4e1ecb59dce894eac5523841aa79ca499be4161f73193dd8e7363edcd51063f3e281930cee939ebd50983eecbaf
EBUILD libcap-2.63.ebuild 2239 BLAKE2B 180d54dbec5a1835050c7774ccb9d364e1daa66a60daa32874c3d4428a7f1e0a1e29c16d235eb7c70837266066c6fbbc57d8d006bd5b08394520a66f92df4513 SHA512 04101d0259bc4316366857129cf7ce5b4997ae63f7461451471aec8c52c8590e1fe295104b99a7d59dca766d0f7aaba3ced55315380cd9330af3e9414961aa9e
-EBUILD libcap-2.64.ebuild 2247 BLAKE2B 2389e4b01003116fb6b24c1ce10311a6635dc2cb0f705f4cd46f5f45cc89a7a8576442f55d1aaf438a0f90d10c69933dbd2e53982aec7402756ab88762cf9592 SHA512 658f0ddf51fdbd3728c4641ff9b06718cae63b1423812975851a855dc663fc05a45d051235e80c1c91b3818742fc92c8ffc2a4fecd6e5e86ef522f824b00d4f0
-EBUILD libcap-9999.ebuild 2164 BLAKE2B 6d44b9aadf000c40c8dd9c77fb88623fd24f7ea5f14c13515b3a3c06b1d1f615f8cf33876c51a17e553f3c76c553e1f1387f7caa7dc1dc333926616972e4ccfe SHA512 701d3d42487dc00e88a9101846b0f59976dc6baba977c045806c7986c08700496e5596019c1b7de084125ec1380252219dce86b3cf9461a7350c75d779762a24
+EBUILD libcap-2.64.ebuild 2254 BLAKE2B 2a7bb8f1ef55c91aa400a344e32401c982b88e1efb272e120f358d04fdf73a2bab8d744a4919b8a6c2205954d9789d4910e70bd19df987572e59aaf825fea82a SHA512 59bab3761eac29d28b3bd776ec6256b745e8c65daf8c9dcbdc230d4ba2425bae7af1eead73b65c22e0eaf3969feca784192d0562f565da0c2a4cc5f92d147568
+EBUILD libcap-9999.ebuild 2171 BLAKE2B 8f0156d46c0da997b1204aacd200d2c7b249248af2bf96488f2fd5cb41c2bfe0a5c66fd21e6fb9a42c9a2fd3655721f782f1a944d912a74dcc1475bbfbd92df2 SHA512 163e96072426881e6db427d31e89d6c2c4d2d3b9488e4f10bae1910fd898a6c263e40c6ddca8404391ae0944508779845d06170632db9dace7b42068b9cd603c
MISC metadata.xml 438 BLAKE2B b5260cc84a3fe6b992bb6218846c738af296522d7a467337c05a6240fd07fc9d6cece779bd9fcf24a11486a70874e17acae8182647d307a31cf43e1c19c3a2d3 SHA512 fa3713dcf6b7bb2ea6d4c2fdefc05e92ae345c76a6187ebcb40dab8c4ce0148650a8301f236efcb8cf53fff25730977a385578dbaa160b800159c6d6abbf37a9
diff --git a/sys-libs/libcap/libcap-2.64.ebuild b/sys-libs/libcap/libcap-2.64.ebuild
index 041fc1239fb0..8e216f0ec4fe 100644
--- a/sys-libs/libcap/libcap-2.64.ebuild
+++ b/sys-libs/libcap/libcap-2.64.ebuild
@@ -11,7 +11,7 @@ if [[ ${PV} == *9999 ]]; then
else
SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
- 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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="POSIX 1003.1e capabilities"
diff --git a/sys-libs/libcap/libcap-9999.ebuild b/sys-libs/libcap/libcap-9999.ebuild
index 969f9d0aaacb..b155f3846415 100644
--- a/sys-libs/libcap/libcap-9999.ebuild
+++ b/sys-libs/libcap/libcap-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ if [[ ${PV} == *9999 ]]; then
else
SRC_URI="https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${P}.tar.xz"
- 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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="POSIX 1003.1e capabilities"
diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest
index 1a4a61ee604b..67a892955f1f 100644
--- a/sys-libs/libcxx/Manifest
+++ b/sys-libs/libcxx/Manifest
@@ -1,20 +1,15 @@
-DIST llvm-gentoo-patchset-11.1.0-1.tar.xz 4032 BLAKE2B e69138a422e315b31a3d9c11faa4ae1ddf1bf9092cee2db0de4d2adef81fd802973488293aab48b764402b51996893b17ca03249ef4620848a576d1f6cdb9698 SHA512 e1c5504dab6c5db9fdf4addfeb12316f22d0258717ba551a9b7b3ba37919491fb6011ac5cca1e793b7509d5c1c186bc6bc4213f7d6155d190612492b216f979b
DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249
-DIST llvm-gentoo-patchset-13.0.0.tar.xz 5012 BLAKE2B 6760c78c086aaf6629143fd920b0a2c68cad9278628fbea8164dfeb59db95984a5b5d6b3505b510c697e8c95bf8d2be782c6b73c01622d52f2da9b07ecff39e0 SHA512 7764d49343b795b6bebae64f646ba27e3e6cc2a20b8a1aee645ce0d8474633c34acfbb73c08546fee415755dd4ea5a98c1d84db5e394cf5f4fc802eb61148ab6
DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01
-DIST llvm-gentoo-patchset-14.0.0.tar.xz 4076 BLAKE2B dc114e53fb878ca74489c420506b9dd9c417e2b97dff4d9441d78a0a256ca1e7243ea2ce38b8665d37b0f24436f9ea5771cd05d9b13887e7370a19ec5e05ba20 SHA512 7f7d08fc762d634692fb251a51c0d73a4a9098907f25451b9ca9453315b603331b65a454b2d631cfecbb3fbc11ab3a36f644c0d7b03e1bb8e96ce4aa08d60615
+DIST llvm-gentoo-patchset-14.0.1.tar.xz 4724 BLAKE2B 2689298c687fa8b5fa2545afccc248c00ff6778f1a14e3e7999e5d52a1b0b9c3b2e66e8c008e27c62c6c3c08009dc7d9d083ca53698138258ac972e4ad03c042 SHA512 a9f071ad0a792f558105a64790f9e470d8aaed05bd1baabbe86539760c881f772602a03265e0962d8599f991f7fd44d14a49e2ef9d74bb5eb283f473f4084d32
+DIST llvm-gentoo-patchset-14.0.3.tar.xz 5492 BLAKE2B 48a46d50a81c5572d1573c6923bc404b198f74ee8587a928e0858553dac37f7fa39cc969d72b938ef3d2f04f6872f9e2e2478821ab90c657ecbbacb3f7d99d7a SHA512 b917b549de6d46cd7aab3e59b888b5e5ffb955435b33d6538be2f31dc30217a24740a673cb6bb661087c245121edb079052b179badaf70b86b985ca69b3652a6
DIST llvm-gentoo-patchset-9999-1.tar.xz 4032 BLAKE2B b9413484dafed8ae0c68c2c164b45fd07bb8d5d0898f03abe118fd2120ffcb1fb6c949de9649a97c2e8105f24b9d131a725c67c0a502ca4d4d192c1a0d65f49d SHA512 e64449eeaf756c5bd945109937b84ba4bd8a015222bd792d39cf3947871e87571a4ca57814790e51544cb05ad4c2d1f044e818e4caaac7c2e2a02cb1aa290fcc
-DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81
DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1
-DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2
DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f
-DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999
DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2
-EBUILD libcxx-11.1.0.ebuild 6638 BLAKE2B 1c141e7dc80e2e4a47d7619500626458c931903c7efc1d5b1f3173ff927ec682b277ed0a932af1681df1416f499d98fd1e8c024ddd14d839a543bf42f673e896 SHA512 4d37e1d3077908dd49fd55b8422f12547848d58dede2b6f9be58d993862d71e47a45c6ce383677b46c178dbfd6c22559beb7f7745f3b589039208d63585174e2
+DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646
EBUILD libcxx-12.0.1.ebuild 6677 BLAKE2B 32a2f3bbff395d3c129cd4d168a8cb0ee1074c3fc164bf9a33f3287852c07af3e7443018b3fa31036f851cf5544bf80db0579ba2dfa2a3420801a6aef0dd6b05 SHA512 3820b6a249a36cf12ba72b4c4a3847ec035265ce23388dcdbc0547c5708737eee4cf449b14370badc13be3f79ecda2f3c788ac6c7f2f8063c3dd53b1e7b1bf62
-EBUILD libcxx-13.0.0.ebuild 6756 BLAKE2B c27aba7517136e19bdebd4f864958922000fd9d59791c0ae0407afffa5c39db21c3cbf2655532453679a54beddd46ad90df2a9482fed99501340f6b0073e264b SHA512 0516aed74ebe4cb170c2b3a975005f054e1227cdd8ae4807c7f1e6796055b09abce148a44425ffd12dde88eb8f638559e3a3dd6c7e29b1fe2bdc86123783f941
-EBUILD libcxx-13.0.1.ebuild 6781 BLAKE2B 6ada751bfe1f8e1980e4c20b2a45f237c6630deb4fbb695701b596af17b78391e6a2db99101371a6577f4d414933cf4143d0b60d29fd62e6ec8d6ef3f563b77d SHA512 9d389d1323e866d9b66881b215a2625eee8263a6df790ef5027462b0c3de5421d4ae6077d5861fdfe8adad9d66e34a12de754149e1a1764a42fd824b900c03ac
-EBUILD libcxx-14.0.0.ebuild 6937 BLAKE2B 04722fb717fcf971cfad08599681619a1f003ef487ba73dded68aa1661a8ad64369f30844379750045e81df0959d5d3b2416e9fbe4b2f7faf7043456ed913abe SHA512 ae21926685648e200c8ad649d7172c70962b17fc447a6c5b0d7979d31a7fd3428f54ed43efb24ee1af1868ef059d7519a886b427b5cd18ce0489d7b3dee3cd04
-EBUILD libcxx-14.0.1.ebuild 6934 BLAKE2B 1a31c9fbee3e7ada37bfde446b90ce0aad7a9b30445a094b2ff52886e16aaedb1a09799f0fdb7aa99e80e4c3ac46e2cc75acd6247f48ad428d59f48d93272415 SHA512 f3b27537fc2f8448f92d15cd3220273a2ecd9dd46efe3b5ab3afd43d78de17ce0f3fa02b082b1943b96894a448fbc296d0b61d495204ef372ef1da8e71ad346d
-EBUILD libcxx-15.0.0.9999.ebuild 6893 BLAKE2B d45f14e1ecf594063281916fdd8d63bca9fe910e2c51b7d9ca03d363bb1fe9ec06504af44fc61be1f848094ef76ea752ffe479553e9b990544482c69211bea67 SHA512 814773f6731309b31e46636e6e3ed9b4508ed60154eda14826015bf0da75ff4a2cebdacbb1e1535958d3af1d1f10b1e552126eb6aebed945f3a034d36d1b9e1e
+EBUILD libcxx-13.0.1.ebuild 6780 BLAKE2B 575c9089d74bddc871e97147c53f7c298cd1683b989eba6b50601b45693c11d0647e3bd6f70c0a75caaea7ee3fea2f88f1bbad444d7f1785a62175337659e2e3 SHA512 f0ff78e48acca25cb925aee5106fba0d547ab8522ccfd65e2198d4f481f83abbadc415ac3808e45387fc945980f9892fdbda3b6a26d54163cebfa4f12fa17172
+EBUILD libcxx-14.0.1.ebuild 6937 BLAKE2B 04722fb717fcf971cfad08599681619a1f003ef487ba73dded68aa1661a8ad64369f30844379750045e81df0959d5d3b2416e9fbe4b2f7faf7043456ed913abe SHA512 ae21926685648e200c8ad649d7172c70962b17fc447a6c5b0d7979d31a7fd3428f54ed43efb24ee1af1868ef059d7519a886b427b5cd18ce0489d7b3dee3cd04
+EBUILD libcxx-14.0.3.ebuild 6955 BLAKE2B ae137995613e1805f7ebbb2240e7b925ba8571c28a023294134e3609e7bb721839d96680bdff63ee7ae1ab03ca82b3bb19e291b33d16493fb73e490ba170ce79 SHA512 ef1a30de8f760b53f6aacc9f09a7bf69142868b5df59e095b728ca334c7153122be581bd9b0c96c2e36cedbdc6d017eb7ea4caee86c21cdf711aa37d929a2caf
+EBUILD libcxx-15.0.0.9999.ebuild 6915 BLAKE2B 57856c3d8585b4661c87e41f73d033d6060ea8d9ee8adf6f0892bd88ed0d4aa5600f71fa59f4f4094103d8ed58a67ced6b245d11aefbc8c8d68b066fabde40c7 SHA512 c373d2052b681063a7939066866a2d52213626f588c022876dc8f36da5d37f0ddb87a31ae93708043d8a95b88a9e8f101e9c2a507a606b82fe507d1adc8f20ae
MISC metadata.xml 622 BLAKE2B 33ff3f89844694f08cdcdb12d7098ad937041c31aa6f453fbd887bfebec688bc05552f9a39431daccd2b309a58c2fb75b04a6350410f90beb96f32c14ab3ca95 SHA512 8b3d12f8904c336cc35f31352014ffe247dd4475f143921cdd56e5396590ebd64fb700df64f76e83aece127d8ed39af5f45da086fa75fca841c9a5ad767cbed2
diff --git a/sys-libs/libcxx/libcxx-11.1.0.ebuild b/sys-libs/libcxx/libcxx-11.1.0.ebuild
deleted file mode 100644
index a976ee77c535..000000000000
--- a/sys-libs/libcxx/libcxx-11.1.0.ebuild
+++ /dev/null
@@ -1,211 +0,0 @@
-# Copyright 1999-2022 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="amd64 arm arm64 ~riscv x86 ~x64-macos"
-IUSE="+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_PATCHSET=11.1.0-1
-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
-}
-
-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-13.0.0.ebuild b/sys-libs/libcxx/libcxx-13.0.0.ebuild
deleted file mode 100644
index 74bdf451ab48..000000000000
--- a/sys-libs/libcxx/libcxx-13.0.0.ebuild
+++ /dev/null
@@ -1,214 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_ECLASS=cmake
-PYTHON_COMPAT=( python3_{8..10} )
-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="amd64 arm arm64 ~riscv x86 ~x64-macos"
-IUSE="+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,utils/llvm-lit} )
-LLVM_PATCHSET=${PV/_/-}
-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
-}
-
-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}
- -DLIBCXX_HAS_ATOMIC_LIB=${want_gcc_s}
- -DLIBCXX_TARGET_TRIPLE="${CHOST}"
- -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}"
- -DLIBCXX_LINK_TESTS_WITH_SHARED_LIBCXXABI=ON
- -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-13.0.1.ebuild b/sys-libs/libcxx/libcxx-13.0.1.ebuild
index 15d5fa2f2dfc..9720629f1aff 100644
--- a/sys-libs/libcxx/libcxx-13.0.1.ebuild
+++ b/sys-libs/libcxx/libcxx-13.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="+libcxxabi +libunwind static-libs test"
REQUIRED_USE="libunwind? ( libcxxabi )"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/libcxx/libcxx-14.0.1.ebuild b/sys-libs/libcxx/libcxx-14.0.1.ebuild
index 60e533aec52c..ddd39dc817b6 100644
--- a/sys-libs/libcxx/libcxx-14.0.1.ebuild
+++ b/sys-libs/libcxx/libcxx-14.0.1.ebuild
@@ -35,7 +35,7 @@ BDEPEND="
)"
LLVM_COMPONENTS=( runtimes libcxx{,abi} llvm/{cmake,utils/llvm-lit} cmake )
-LLVM_PATCHSET=9999-1
+LLVM_PATCHSET=${PV/_/-}
llvm.org_set_globals
python_check_deps() {
diff --git a/sys-libs/libcxx/libcxx-14.0.0.ebuild b/sys-libs/libcxx/libcxx-14.0.3.ebuild
index ddd39dc817b6..4d6be5bcc7f2 100644
--- a/sys-libs/libcxx/libcxx-14.0.0.ebuild
+++ b/sys-libs/libcxx/libcxx-14.0.3.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
CMAKE_ECLASS=cmake
PYTHON_COMPAT=( python3_{8..10} )
@@ -14,28 +14,36 @@ LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos"
IUSE="+libcxxabi +libunwind static-libs test"
-REQUIRED_USE="libunwind? ( libcxxabi )"
RESTRICT="!test? ( test )"
+REQUIRED_USE="libunwind? ( libcxxabi )"
RDEPEND="
- libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] )
- !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )"
+ 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"
+DEPEND="
+ ${RDEPEND}
+ >=sys-devel/llvm-6
+"
BDEPEND="
- ${PYTHON_DEPS}
+ !test? (
+ ${PYTHON_DEPS}
+ )
test? (
>=dev-util/cmake-3.16
>=sys-devel/clang-3.9.0
sys-devel/gdb[python]
$(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- )"
+ )
+"
LLVM_COMPONENTS=( runtimes libcxx{,abi} llvm/{cmake,utils/llvm-lit} cmake )
-LLVM_PATCHSET=${PV/_/-}
+LLVM_PATCHSET=${PV}
llvm.org_set_globals
python_check_deps() {
diff --git a/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild b/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild
index 0562667b5a4b..dcdce79b90b2 100644
--- a/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild
+++ b/sys-libs/libcxx/libcxx-15.0.0.9999.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
CMAKE_ECLASS=cmake
PYTHON_COMPAT=( python3_{8..10} )
@@ -14,25 +14,33 @@ LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
KEYWORDS=""
IUSE="+libcxxabi +libunwind static-libs test"
-REQUIRED_USE="libunwind? ( libcxxabi )"
RESTRICT="!test? ( test )"
+REQUIRED_USE="libunwind? ( libcxxabi )"
RDEPEND="
- libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] )
- !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )"
+ 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"
+DEPEND="
+ ${RDEPEND}
+ >=sys-devel/llvm-6
+"
BDEPEND="
- ${PYTHON_DEPS}
+ !test? (
+ ${PYTHON_DEPS}
+ )
test? (
>=dev-util/cmake-3.16
>=sys-devel/clang-3.9.0
sys-devel/gdb[python]
$(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- )"
+ )
+"
LLVM_COMPONENTS=( runtimes libcxx{,abi} llvm/{cmake,utils/llvm-lit} cmake )
LLVM_PATCHSET=9999-1
diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest
index b393215a0153..9104ad483782 100644
--- a/sys-libs/libcxxabi/Manifest
+++ b/sys-libs/libcxxabi/Manifest
@@ -1,14 +1,10 @@
-DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81
DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1
-DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2
DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f
-DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999
DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2
-EBUILD libcxxabi-11.1.0.ebuild 3548 BLAKE2B 322a3306a33c720fd242b6dc69c233562f24c373c76b13d7a41332b26e668b7742c33550fd41fd3f2f0965390ed0cc3185b05d36908e434067f94f353b27e2e3 SHA512 40b2755e57c13a6473a53da14c257d73a4e9d13ea4ed08d23957d15892d3a702f705d294059f0dc13320930214da7793037cd94715f64ebfebbfc2da8f23321a
+DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646
EBUILD libcxxabi-12.0.1.ebuild 3532 BLAKE2B 87f97e6d1d5c222b1a421bc7ee0fb1e9f0156c5f34888456dc265356fd2ae5e1b22343cd8970acf2820852f9be12d48006dee1d9493972b5761781156393735d SHA512 6369fbc69360eb0bb25e49d4fc554b897a86c7ac081c99cdc97bf61ddfa6cfe75c297afb91fa3c8fb6f24db67cc326a5ee3de74e10fdab1702d1894b3a5ba8a3
-EBUILD libcxxabi-13.0.0.ebuild 3605 BLAKE2B 7bdc8ecd9c35cdc247f08f9d5687d7362013be7c9c5afe006817cb5a384d4dd272bc686c6fe2ddf2a9bde5be8d1fa185ae60da940fded833a356f76e6105feb8 SHA512 69c4564fc68e3037620de0ce0cda29093bff9eb919f48f4760558edd1031c0d198991e6346774244701679aa0619d6afd814ec80d0d66265418408416621d9d0
-EBUILD libcxxabi-13.0.1.ebuild 3606 BLAKE2B e81a4b8b3f179d70f5e54b311c6298c427505945ba53ae7f9e42c0113e7dbd3e5178ff1e9f0bd2ba27e491ca252efdcc337e572cc722d27912231ca3eee45687 SHA512 36cca18b3f083205d486fe07d78ce8d0cc79b1af59f8289731d5615591fe98d67ae3f48012d8a19c2e87a3a38c7118feaed44a60d132323b90e376c76d0a14f2
-EBUILD libcxxabi-14.0.0.ebuild 3500 BLAKE2B ae2784bce2de92f63f5a0c30a74738ec77e80c69b59d976deca43442a70fa3b0c82eb1d3ea0ece17e317806c8a3f5a88729ed4fe8e7eb4af1602874d848e9400 SHA512 80b46ae415783bb1b64613d144530d0dda03114fb732ccbe3cce10996ca29fb11418f9c06912f64ba4657ff123ebe22d94acadf0628e6f19cb25a42b80b752b7
+EBUILD libcxxabi-13.0.1.ebuild 3605 BLAKE2B 7bdc8ecd9c35cdc247f08f9d5687d7362013be7c9c5afe006817cb5a384d4dd272bc686c6fe2ddf2a9bde5be8d1fa185ae60da940fded833a356f76e6105feb8 SHA512 69c4564fc68e3037620de0ce0cda29093bff9eb919f48f4760558edd1031c0d198991e6346774244701679aa0619d6afd814ec80d0d66265418408416621d9d0
EBUILD libcxxabi-14.0.1.ebuild 3500 BLAKE2B ae2784bce2de92f63f5a0c30a74738ec77e80c69b59d976deca43442a70fa3b0c82eb1d3ea0ece17e317806c8a3f5a88729ed4fe8e7eb4af1602874d848e9400 SHA512 80b46ae415783bb1b64613d144530d0dda03114fb732ccbe3cce10996ca29fb11418f9c06912f64ba4657ff123ebe22d94acadf0628e6f19cb25a42b80b752b7
-EBUILD libcxxabi-15.0.0.9999.ebuild 3459 BLAKE2B e154cf8ad9a7055fb941d4b2cdc78ce87286f3ae648f37170606775c791ff2b69b5b421a9cc716fa12aa86ec9b0a48643e78aab0a7b372d4f79cf362bc4b9a8b SHA512 79b43fd3cecec2393431df7d9a6720a4cff5ef24977b579dc815120262ba2a860df06ceb7e93f9c8df578fd5737a02abad4c737774cc7b9d4983567aa9ef6b3e
+EBUILD libcxxabi-14.0.3.ebuild 3519 BLAKE2B a697541ba82ecf955b816ee75be0f1607cbe37d7cb8372aca749b0c42f6e3a247591cace54ab010de166a1167ba5448c5e3ae1f8d585a8b6080fa0adaaedd243 SHA512 0f296a7b432f6e5a657ad54b5062b8aeb9a814da36021a4b5a0b7455f3d5c2fd69dc854203a388d016bff89e063426fea7b81f6b5d0f57bfa1f09cf9d48c3665
+EBUILD libcxxabi-15.0.0.9999.ebuild 3478 BLAKE2B 4a9508f17dbf7f1587915b565d9a572b20762c75dd1d89472df2ff4c01cb06b02c9d48bfa0a636b187d943fce1cfe3c826445ebd34657dcbe3b2314287fafc2d SHA512 79d6e8b143d1d4f8e08634eea94c5c02f175aca3f330ef008a95377dc03dc33fe8a9c36a77e7e636f74a365954020a57853a241b52ee246681703ae61f4bcadb
MISC metadata.xml 351 BLAKE2B 9071a2cbb0eee25e4396bd720f39cd09b011e70fa4a2a87bab63801fa54d307304219a6bddc9b6fb8d0e3b32b07ea09d0419b8ea74af25d601505c3b577c656a SHA512 096b95417b8cdaeed177108ac27e54cd44c4488e8dd3b6ca0aa07f2c70fc59d42343c926d44adf54349e3f9791b9151293383e471df1282678a3c60031184d13
diff --git a/sys-libs/libcxxabi/libcxxabi-11.1.0.ebuild b/sys-libs/libcxxabi/libcxxabi-11.1.0.ebuild
deleted file mode 100644
index 60fed4fd01c8..000000000000
--- a/sys-libs/libcxxabi/libcxxabi-11.1.0.ebuild
+++ /dev/null
@@ -1,123 +0,0 @@
-# Copyright 1999-2022 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="amd64 arm arm64 ~riscv x86 ~x64-macos"
-IUSE="+libunwind static-libs test"
-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-13.0.0.ebuild b/sys-libs/libcxxabi/libcxxabi-13.0.0.ebuild
deleted file mode 100644
index 690b4d4e2681..000000000000
--- a/sys-libs/libcxxabi/libcxxabi-13.0.0.ebuild
+++ /dev/null
@@ -1,125 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_ECLASS=cmake
-PYTHON_COMPAT=( python3_{8..10} )
-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="amd64 arm arm64 ~riscv x86 ~x64-macos"
-IUSE="+libunwind static-libs test"
-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}]')
- )"
-
-LLVM_COMPONENTS=( libcxx{abi,} 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() {
- # we need a configured libc++ for __config_site
- wrap_libcxx cmake_src_configure
- wrap_libcxx cmake_build generate-cxx-headers
-
- # 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="${BUILD_DIR}"/libcxx/include/c++/v1
- # upstream is omitting standard search path for this
- # probably because gcc & clang are bundling their own unwind.h
- -DLIBCXXABI_LIBUNWIND_INCLUDES="${EPREFIX}"/usr/include
- -DLIBCXXABI_TARGET_TRIPLE="${CHOST}"
- )
- 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
-}
-
-wrap_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
- -DLIBCXX_TARGET_TRIPLE="${CHOST}"
- )
-
- "${@}"
-}
-
-multilib_src_test() {
- wrap_libcxx cmake_src_compile
- 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-13.0.1.ebuild b/sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild
index 804671c1526e..690b4d4e2681 100644
--- a/sys-libs/libcxxabi/libcxxabi-13.0.1.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-13.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"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/libcxxabi/libcxxabi-14.0.0.ebuild b/sys-libs/libcxxabi/libcxxabi-14.0.3.ebuild
index 1598ec8868a1..7d864cba3621 100644
--- a/sys-libs/libcxxabi/libcxxabi-14.0.0.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-14.0.3.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
CMAKE_ECLASS=cmake
PYTHON_COMPAT=( python3_{8..10} )
@@ -22,16 +22,22 @@ RDEPEND="
>=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"
+DEPEND="
+ ${RDEPEND}
+ >=sys-devel/llvm-6
+"
BDEPEND="
- ${PYTHON_DEPS}
+ !test? (
+ ${PYTHON_DEPS}
+ )
test? (
>=sys-devel/clang-3.9.0
$(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- )"
+ )
+"
LLVM_COMPONENTS=( runtimes libcxx{abi,} llvm/cmake cmake )
LLVM_TEST_COMPONENTS=( llvm/utils/llvm-lit )
diff --git a/sys-libs/libcxxabi/libcxxabi-15.0.0.9999.ebuild b/sys-libs/libcxxabi/libcxxabi-15.0.0.9999.ebuild
index 577953191e5d..15858fc7fc75 100644
--- a/sys-libs/libcxxabi/libcxxabi-15.0.0.9999.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-15.0.0.9999.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
CMAKE_ECLASS=cmake
PYTHON_COMPAT=( python3_{8..10} )
@@ -22,16 +22,22 @@ RDEPEND="
>=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"
+DEPEND="
+ ${RDEPEND}
+ >=sys-devel/llvm-6
+"
BDEPEND="
- ${PYTHON_DEPS}
+ !test? (
+ ${PYTHON_DEPS}
+ )
test? (
>=sys-devel/clang-3.9.0
$(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- )"
+ )
+"
LLVM_COMPONENTS=( runtimes libcxx{abi,} llvm/cmake cmake )
LLVM_TEST_COMPONENTS=( llvm/utils/llvm-lit )
diff --git a/sys-libs/libhugetlbfs/Manifest b/sys-libs/libhugetlbfs/Manifest
index 4fb4b9fbcbe5..e1d8b6a02139 100644
--- a/sys-libs/libhugetlbfs/Manifest
+++ b/sys-libs/libhugetlbfs/Manifest
@@ -2,5 +2,5 @@ AUX libhugetlbfs-2.23-allow-building-against-glibc-2.34.patch 10055 BLAKE2B 38b3
AUX libhugetlbfs-2.23-uncompressed-man-pages.patch 1515 BLAKE2B b43415a3059f1071f0fc04ec834cd51d87a8bd93f2df6b428a33296b1b55745f23861415a463d5899b12699c5f4a3e5bdd837a8ec2894d1fc89039924330d77d SHA512 ea3ef19a688866676315af59422233681a41338fd049cfa50ed91f660f0baf1950ba056b9fcd540e6694b8ec348c0d1fbb3aa6b8c1840e22a77634e26555c9bc
AUX libhugetlbfs-2.6-fixup-testsuite.patch 1231 BLAKE2B e49ac448b4ac17a6ce9c32543e3ad7391bc8525e147d7a5100ef7ae15e4b0cf48b58ff1fe62d9a0fa61f142b7b8366228974c6628999edaa61d96114371bc09d SHA512 af9ee541ac4a30260e17baab1616cee13fdcc679ae3fdceed29ca6282c12a6b60d24b04bb61e3aa5f42092e017eb3bae59a56fd2b03954e40803f9f6f2cc4f80
DIST libhugetlbfs-2.23.tar.gz 175459 BLAKE2B f469ff9a65364e9f0e04c11c8010c958855ebd4d50e1dd719576cda7c280586623404304be64a794907a5fb1d97bd9c0620a91d7a2492577e04fa40ff432b4c7 SHA512 fc9a7d59bcda9d3ca9c9e43a3a348f989c9cbdbbb77f21a43a06e71eacd05bbe5a7b2b51e20ae9ea00da9f1c4d1130da529bbfb702e8c9d11cab6efadd3dc168
-EBUILD libhugetlbfs-2.23.ebuild 4291 BLAKE2B dd55d833b540fce08d40672ce2ec9f43dd3e94559b60d03835240818aa6a0b55d20a2e6c58de9d49c95d820e5044aa883350143276c132440afd2f2774849d32 SHA512 c556504423ad39891bdc4622bd93a0b3d08ccf1603f5292419f2c91a961d372352e4cd519205c2b31dda3e12232764128f58d78b829b3ab0342c8a27a7c5d338
+EBUILD libhugetlbfs-2.23.ebuild 4291 BLAKE2B 7fd9c794f8c8051db041246397bb26cbb6d1501f23e21837442164ef1dfdf705dbd41ec26455e305a6515fd5280c95fbe04a5888637220e36b6f349f761a09c8 SHA512 b40f615e1cde2caa08bcbb5f10a36f5031f132abf5145725524fe76051766b5f27dbe81d18dcdadb6c010356afaa6ba95f9b42a38844ee13cd477313b0de94d4
MISC metadata.xml 397 BLAKE2B 7b521a2822a494f6a2b7a85420a38edd396ca0e3856faeb682378c48eda3d1932788af7ac7bbb4e07cae37b2119afd386f75c5dc0ab1f69c8e4630be16cc549e SHA512 96065769a7893c1e05bc3ab9396eb01a60a293dac9b090419087a9bb5a152b2f291a950e8217ffcb7bed34262a5369119da469e22cc3171fdc0ad2b87ae6d698
diff --git a/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild b/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild
index b20145724f82..f31724207108 100644
--- a/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild
+++ b/sys-libs/libhugetlbfs/libhugetlbfs-2.23.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit toolchain-funcs python-any-r1
@@ -49,17 +49,6 @@ src_prepare() {
[[ -f version ]] || echo "${PV}" > version
}
-src_compile() {
- tc-export AR
- emake CC="$(tc-getCC)" libs tools
-}
-
-src_install() {
- default
-
- use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.a
-}
-
src_test_alloc_one() {
hugeadm="${1}"
sign="${2}"
@@ -169,3 +158,14 @@ src_test() {
return ${rc}
}
+
+src_compile() {
+ tc-export AR
+ emake CC="$(tc-getCC)" libs tools
+}
+
+src_install() {
+ default
+
+ use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.a
+}
diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest
index e3c90d151c7f..d2d91badefba 100644
--- a/sys-libs/libomp/Manifest
+++ b/sys-libs/libomp/Manifest
@@ -1,17 +1,12 @@
DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249
-DIST llvm-gentoo-patchset-13.0.0-r2.tar.xz 6500 BLAKE2B 0ce8d0c4a5508f70c8ec49dbc03dfbfc6371ac224bc5dfc9a39f71def0f574405a06df5666baf6159afafd83a8028c5ea6cb369f22a06f927f3ce6795e96994d SHA512 800d44b382c03b673b43965d80d6ed1b7e8e4ced8d066183b9b8df722b2cc002a6aa54092e600f0d77611be581d312f8886ce8af25b23ff818115a209ec21312
DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01
-DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81
DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1
-DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2
DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f
-DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999
DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2
-EBUILD libomp-11.1.0.ebuild 2888 BLAKE2B fa9005fa8b8d26e264ac7555ab755fe0402c93c82205dbcc1802ac0ae54b245f33ebef8aa7d17c125652acd08f59bcd1efaca169e28fd5e5fcf266c4cbf0d1ba SHA512 24e44ea53c7b6238f3de78088076b3c4d426cc6039dbac5c2bbb1694f9b1e4088b7bf8ada2ad51eca525c4f6fff772178511fe07f449c200e95206c828a2095a
+DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646
EBUILD libomp-12.0.1.ebuild 2955 BLAKE2B 731a206c38d7c982b1b746517061de539c64e1d3bd5afd24c2e1d441bbcd7e91d80e6b20920d64eabaf0c3de85d5e269ef59c17ebdbe30c8808f1deeff495b88 SHA512 0d27c7374062a9831edcadbbea0787998184fca979637da1bab9b8848b3c7165e5e558fc9ef388a1f8d9e20e913b61e7fd19c3e9f2ecf885990a041a0f436156
-EBUILD libomp-13.0.0-r2.ebuild 3808 BLAKE2B a24b4436e0547b1f7d7becb8866288c19da6e345f0fd8b5ffb6c016634f3891833de79864bc85f0e310c48ab1eada3d3d59cc7658ef8c96995fd8340a0a1b179 SHA512 decaeeda70320eee804dd6d2320e464d3d4b744c4c5a8ee9bf9a191e80f72ca1e97a1251d0ef69a6608740da2706dc1eea8a379b1e3b0ef06858dc043a2529c7
-EBUILD libomp-13.0.1.ebuild 3837 BLAKE2B c18ab3b04b0fe3d04d28e71be8f53c4b3f0b8aca9d5632cbca832d4e42f78d8d7c145ad70f01eef5ce6b77b0f7ffe9d0821b39cc8f60c9690cceb5c44bd7a277 SHA512 9ce2f9f1f9c9a847945c72ff3a8f47ec5743d2e5cdc9f40dcdd66493450a6d30d7be39cd1e290793317c7395a8342d3380a9c05dcd43d7adb0a4df94f957c4be
-EBUILD libomp-14.0.0.ebuild 3817 BLAKE2B 7f5c80c1a8e6995b58576911a3ab73a3dd1b66338889ab5b6396589aae574aae1cd85529ff9a5baa1dd565f2c260964445062a7575e3bfb8ff74b8f1b92a57e7 SHA512 2bc2897f6e6863d9a4d1e18d09b253d918fe8353e2af094995bef4d86880d1b85377d882782c6e84223ca19ebe93108f380ac602e3b6680d2927f6874bb3e1b5
+EBUILD libomp-13.0.1.ebuild 3836 BLAKE2B bfecc3ecb5928ba0c4f1e79baf7108705b33b654631ebc05a52bebab494eebefe6ec1f7403170f5e0b541942618a88ebad52f5ba80bf185a2544170df3c84bcc SHA512 97a257c4e40440c83dc72d76f67d5b4b49ea74b138e541163c3bc938a50052fae3ae988c60a290c1b0051efc623f9be464c1801b5b7569a8cbb446724fe8267b
EBUILD libomp-14.0.1.ebuild 3817 BLAKE2B 7f5c80c1a8e6995b58576911a3ab73a3dd1b66338889ab5b6396589aae574aae1cd85529ff9a5baa1dd565f2c260964445062a7575e3bfb8ff74b8f1b92a57e7 SHA512 2bc2897f6e6863d9a4d1e18d09b253d918fe8353e2af094995bef4d86880d1b85377d882782c6e84223ca19ebe93108f380ac602e3b6680d2927f6874bb3e1b5
-EBUILD libomp-15.0.0.9999.ebuild 3751 BLAKE2B 849748f2a27549b150afbff92be3279dbf67c8d8e3d7fa1460c9693bc8ae9e684d737e6a1ae79ee4a351759b6c1523ebaab7a17889e58c7328180344492572c8 SHA512 bb4a8c5512249ad1553b0c849882865c98482859eab81f17702283b27253fdc079ee32864af617817c1e13e717b78df39814b4d7b48db0b208e2d8b55e18e216
+EBUILD libomp-14.0.3.ebuild 3828 BLAKE2B 0887d1ac8543821e06bb09a1c3b3331c7d727fc9101232893f19270a7bdc0092c9be0c85e5a9976450e7c131fff8918346515fbf880c700ebd113a5c399948a8 SHA512 d82f5e9129e7515cbf2d836519de4b7ddecc14ed9948584f3a49ea58d6dbd27a0b90a88d5329a9bc568e4063daf0c9ce8755c6c9ddcadad1a56a1f7142511721
+EBUILD libomp-15.0.0.9999.ebuild 3762 BLAKE2B ec449c1019da76ad9d1835e9a86f776e97a83740da240a2e98221d3f5d5eff7911b894584bb37da8fe2375670d5a6a67e41a5523f957694cd3e138543b5ba925 SHA512 643d3c43a9fba97ea44b94d3edd07ffbb487aa8260856fed8a158646873a7e45797c11aed020b224642db7e90da0fb705cd10f69fd0da5139d42b9560b9f2542
MISC metadata.xml 826 BLAKE2B 94bad2982b52156c2755f4fcdc534648e30b45b514f486028d7beba9af050c3c6847a33fdc11cbf26195794b8e8a7cbeb4e110b8b4398f784c7b7c3edeea02ca SHA512 60de2890b1edc3d60feb5b04dbce840b17e0812ff301f00fd7c12242d3b81cdb3b8ad7afeb3624d70526a93cf8285c96a65b5fcd0384dd093b722c1ae645fa2f
diff --git a/sys-libs/libomp/libomp-11.1.0.ebuild b/sys-libs/libomp/libomp-11.1.0.ebuild
deleted file mode 100644
index 5c983795cfff..000000000000
--- a/sys-libs/libomp/libomp-11.1.0.ebuild
+++ /dev/null
@@ -1,105 +0,0 @@
-# Copyright 1999-2022 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="amd64 arm arm64 ppc64 ~riscv x86 ~amd64-linux ~x64-macos"
-IUSE="cuda hwloc 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-13.0.0-r2.ebuild b/sys-libs/libomp/libomp-13.0.0-r2.ebuild
deleted file mode 100644
index 725187193ff6..000000000000
--- a/sys-libs/libomp/libomp-13.0.0-r2.ebuild
+++ /dev/null
@@ -1,131 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_ECLASS=cmake
-PYTHON_COMPAT=( python3_{8..10} )
-inherit cmake-multilib linux-info llvm 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="amd64 arm arm64 ~ppc ppc64 ~riscv x86 ~amd64-linux ~x64-macos"
-IUSE="cuda debug hwloc offload ompt test
- llvm_targets_AMDGPU llvm_targets_NVPTX"
-# CUDA works only with the x86_64 ABI
-REQUIRED_USE="
- cuda? ( llvm_targets_NVPTX )
- offload? ( cuda? ( abi_x86_64 ) )"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] )
- offload? (
- virtual/libelf:=[${MULTILIB_USEDEP}]
- dev-libs/libffi:=[${MULTILIB_USEDEP}]
- ~sys-devel/llvm-${PV}[${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? (
- llvm_targets_AMDGPU? ( sys-devel/clang )
- llvm_targets_NVPTX? ( sys-devel/clang )
- virtual/pkgconfig
- )
- test? (
- $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- sys-devel/clang
- )"
-
-LLVM_COMPONENTS=( openmp llvm/include )
-LLVM_PATCHSET=${PV/_/-}-r2
-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 offload && LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup
- use test && python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
-
- 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
- )
- if use offload && has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then
- mycmakeargs+=(
- -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda)
- -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=$(usex llvm_targets_AMDGPU)
- -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=$(usex llvm_targets_NVPTX)
- # a cheap hack to force clang
- -DLIBOMPTARGET_NVPTX_CUDA_COMPILER="$(type -P "${CHOST}-clang")"
- # upstream defaults to looking for it in clang dir
- # this fails when ccache is being used
- -DLIBOMPTARGET_NVPTX_BC_LINKER="$(type -P llvm-link)"
- )
- else
- mycmakeargs+=(
- -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=ON
- -DLIBOMPTARGET_BUILD_AMDGCN_BCLIB=OFF
- -DLIBOMPTARGET_BUILD_NVPTX_BCLIB=OFF
- )
- fi
- 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++")"
- )
- addpredict /dev/nvidiactl
- 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-13.0.1.ebuild b/sys-libs/libomp/libomp-13.0.1.ebuild
index 082d9ba15a2b..f9268fab32f5 100644
--- a/sys-libs/libomp/libomp-13.0.1.ebuild
+++ b/sys-libs/libomp/libomp-13.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 ~ppc ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86 ~amd64-linux ~x64-macos"
IUSE="cuda debug hwloc offload ompt test
llvm_targets_AMDGPU llvm_targets_NVPTX"
# CUDA works only with the x86_64 ABI
diff --git a/sys-libs/libomp/libomp-14.0.0.ebuild b/sys-libs/libomp/libomp-14.0.3.ebuild
index eac03ceafd28..987d01113d97 100644
--- a/sys-libs/libomp/libomp-14.0.0.ebuild
+++ b/sys-libs/libomp/libomp-14.0.3.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
CMAKE_ECLASS=cmake
PYTHON_COMPAT=( python3_{8..10} )
@@ -13,13 +13,16 @@ HOMEPAGE="https://openmp.llvm.org"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos"
-IUSE="cuda debug hwloc offload ompt test
- llvm_targets_AMDGPU llvm_targets_NVPTX"
+IUSE="
+ cuda debug hwloc offload ompt test
+ llvm_targets_AMDGPU llvm_targets_NVPTX
+"
+RESTRICT="!test? ( test )"
# CUDA works only with the x86_64 ABI
REQUIRED_USE="
cuda? ( llvm_targets_NVPTX )
- offload? ( cuda? ( abi_x86_64 ) )"
-RESTRICT="!test? ( test )"
+ offload? ( cuda? ( abi_x86_64 ) )
+"
RDEPEND="
hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] )
@@ -28,13 +31,17 @@ RDEPEND="
dev-libs/libffi:=[${MULTILIB_USEDEP}]
~sys-devel/llvm-${PV}[${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
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ dev-lang/perl
offload? (
llvm_targets_AMDGPU? ( sys-devel/clang )
llvm_targets_NVPTX? ( sys-devel/clang )
@@ -43,7 +50,8 @@ BDEPEND="dev-lang/perl
test? (
$(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
sys-devel/clang
- )"
+ )
+"
LLVM_COMPONENTS=( openmp llvm/include )
llvm.org_set_globals
diff --git a/sys-libs/libomp/libomp-15.0.0.9999.ebuild b/sys-libs/libomp/libomp-15.0.0.9999.ebuild
index dbee89f1997c..52f9f5285f11 100644
--- a/sys-libs/libomp/libomp-15.0.0.9999.ebuild
+++ b/sys-libs/libomp/libomp-15.0.0.9999.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
CMAKE_ECLASS=cmake
PYTHON_COMPAT=( python3_{8..10} )
@@ -13,13 +13,16 @@ HOMEPAGE="https://openmp.llvm.org"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
KEYWORDS=""
-IUSE="cuda debug hwloc offload ompt test
- llvm_targets_AMDGPU llvm_targets_NVPTX"
+IUSE="
+ cuda debug hwloc offload ompt test
+ llvm_targets_AMDGPU llvm_targets_NVPTX
+"
+RESTRICT="!test? ( test )"
# CUDA works only with the x86_64 ABI
REQUIRED_USE="
cuda? ( llvm_targets_NVPTX )
- offload? ( cuda? ( abi_x86_64 ) )"
-RESTRICT="!test? ( test )"
+ offload? ( cuda? ( abi_x86_64 ) )
+"
RDEPEND="
hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] )
@@ -28,13 +31,17 @@ RDEPEND="
dev-libs/libffi:=[${MULTILIB_USEDEP}]
~sys-devel/llvm-${PV}[${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
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ dev-lang/perl
offload? (
llvm_targets_AMDGPU? ( sys-devel/clang )
llvm_targets_NVPTX? ( sys-devel/clang )
@@ -43,7 +50,8 @@ BDEPEND="dev-lang/perl
test? (
$(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
sys-devel/clang
- )"
+ )
+"
LLVM_COMPONENTS=( openmp llvm/include )
llvm.org_set_globals
diff --git a/sys-libs/libseccomp/Manifest b/sys-libs/libseccomp/Manifest
index fbf8d4f53afe..a7aa5dcfdf56 100644
--- a/sys-libs/libseccomp/Manifest
+++ b/sys-libs/libseccomp/Manifest
@@ -1,11 +1,11 @@
AUX libseccomp-2.5.3-skip-valgrind.patch 516 BLAKE2B d5dc87fcca8e20b7edd427c434d875c9c3c7aa130a651dbe06c2c648825312e330400f89177afcfe4985fa48e0f95de9937773deb6d3d83da9b2351e6e0488fc SHA512 96053f8ca6abc97ea7c5565c3c25563881e8c0363e9c38fa05836d59b5d9ea1a375f9e072bd5f89a67ddac159c1219be7ed829facd651b3fb8bd5071c89bddcb
AUX libseccomp-python-shared.patch 759 BLAKE2B e2c42e18ca93fe5fddbc3a5b47ac0e6a29e566292fd62b87e6b45f6cb230570a2d1907a8b192e80b32c1900d069a4f10a866fa50bd9b88f5b78abff4206bd4cb SHA512 74548c7969869ff8f937a75eac720f1c654fad87dc17aed1c041bcb765586b4ee978a3ff7c6281be03277f6c74f2ec32624f91beb55afec3066a06a9e51483e2
DIST libseccomp-2.5.1.tar.gz 638811 BLAKE2B 683ae7536c0cba36f4d30640b42361171fc34b7cb04985ea56e64369df29c440361a0205385b14580cc0e481e0f9ffd0b0e8ebd4ac98817ed59298db6b274c35 SHA512 2be80a6323f9282dbeae8791724e5778b32e2382b2a3d1b0f77366371ec4072ea28128204f675cce101c091c0420d12c497e1a9ccbb7dc5bcbf61bfd777160af
-DIST libseccomp-2.5.2.tar.gz 640305 BLAKE2B b61214cb9a9a793d1f04ae1de3f62c578cfaec54fcc355947b4c71efb75072bf60497db8c8a0fd34a46764952349027df3f025ddbd276d58be93209170950e89 SHA512 b2a95152cb274d6b35753596fd825406dae20c4a48b2f4076f835f977ecf324de38a3fe02e789dc20b49ecf6b4eb67f03e7733e92d40f5e20f25874307f1c2ac
DIST libseccomp-2.5.3.tar.gz 637572 BLAKE2B cedf04b3a926f9fe5202e6169ddac6b983e755009c14fc1d645157b9c0bcdf65d4085f8ea7abad90f3a0c13ae4d66b5d8306e725168490863aad15976de1eae7 SHA512 00170fe2360f0c0b33293dccfcc33e98fabb99619f34ecefbcc92bfdaa249ba91e7433226545b842b71542a3b224b6e980ea2ae656c4addf07e84a0def1870a0
+DIST libseccomp-2.5.4-loongarch64-20220425.patch.xz 132768 BLAKE2B f3ab165b028b5f8b4c16574936b915595807ebeb49ef7365d6051f3dfafa7da46ef2a9de458e0a268298cb340152abe1f3c0c293446462a06696bc9ce92d2f72 SHA512 94f23c7a2cc2ea8acb01fef00ef184295c276b14b2b3ba0c65687fd72081df8478f3f04c51b0b391ba44529c4f914e6edbb4132af935e3be55902f641d478780
+DIST libseccomp-2.5.4.tar.gz 637228 BLAKE2B 38b134cb578f9355667546f92950ebcf8c53ccaf98db568db9aadfa9629c054136849e03d4bf9f09f73998fe66a5e8a9038573d19740b2bddf5518a8a0119229 SHA512 92650bd7d1d48b383f402a536b97a017fd0f6ad1234daf4b938d01c92e8d134a01d2f2dd45fd9e2d025d7556bd1386ec360402145a87f20580c85949d62cea0e
EBUILD libseccomp-2.5.1-r1.ebuild 2301 BLAKE2B a4d466901b4a8175108e3c0cf8a14c3987e74ce3272f3fd60177a912a2eafb8bfd997f7aa7a90f68c05cfbebc17a4096b50f31bba57f44753659db6368d51656 SHA512 56bf4ebf83113cc8407bb8e8bdcc42ea90d041f2590fa53b320836b5538af03d130bb0092996abd6d20cefeaad4cecaf213845772a22c13efcf0754e1473171e
-EBUILD libseccomp-2.5.1.ebuild 1987 BLAKE2B af2f16371d2053acc196f25e655e9ffc839114de5f3283128db57c36a04c528085502970b01cadf9434537c9e6a7d7dd869ef879cff321e352b0caea59b5962b SHA512 9b256b7f42bb28697edbd44613718c152d0f6bb4a6072748ecf873ce7ed4f44def744a465efbcdd6dd29f599a57ec3f13fe68b09357d92ac82525c798dbe4a74
-EBUILD libseccomp-2.5.2.ebuild 2308 BLAKE2B 22a4b45f0133337b26c6d10391a1276ef1ca06ea4f3d1e3573b9922ca80485c4e7e16f5174d62059c9f6979b6a1cc267b7f5e0a56a2206951ebee9f2f62dbd0b SHA512 21c514240acebb47e708d716627816b861bbbdc7cb1201f4234758db163cbfcfb96a14c317476ff2002c04f68c40f579ae4dcd6a21c0870a731fac40b1d7977b
EBUILD libseccomp-2.5.3.ebuild 2401 BLAKE2B bf3340e3ad81d5e399ba8d30fc9c7c599794e63885199bb16105013de2ff3910d363806086778e22da54132f19fce06b90468ec9e4b4eeaf06fe469d82ddf6d6 SHA512 6ba4926dc3cd97ba46f33cf22d512ed084a72b360410e55ab1c746a75f3f7136dca13015bf6d5ab9d688b17b3828fd4b96f71cbea5b477ac0602e20ffaea3500
-EBUILD libseccomp-9999.ebuild 2408 BLAKE2B 26e9c336ef7d21c77e262afaa9c7068d432082d5e8367d86cef5405aca357f55dcb84a331e7dc87db0589d049d3ea5ba32aab373118ca09e0a93f2f5fbf986f1 SHA512 d20261580d5c7999fe220dda0f9f7f55fdd0acf81babd1919df6bd5d09aedd2047747c2aaff3cdd541245dc8fb94d27a290d90fb76c8048a201777e4330e5b43
-MISC metadata.xml 469 BLAKE2B 6dcc08de3598cce61438d1d0e6c35197159458a43a60c436d33a9f8a32acd3c132da2c76f8d79c5fbe1967b572759d21b5cd17d8e15c54528b5457e1e30aa3ac SHA512 153c1e0171b15997df762d353c1f5acae8f9c80e87a81d1fcd588ababa203279f08e4f82c5fab25e5e4c4ee28d4b208d40577b91749d57fc49dc557767d3ee92
+EBUILD libseccomp-2.5.4.ebuild 2876 BLAKE2B 957c42a44d162a6607b5fc555203b4f48cb56d725ef780d407c6843b052b266346c6072d0ed0fff473b7982b170fad4b7c40d0c1ef13b3948160e88659e24dcd SHA512 e48ccc952d97a7e94276aef32c23e6303cad4c2bbae9c525cd9e03a4332a45f266ee70887b8e0ebb2cc82199a4bf262d3e5bf9c94ca4966714393106fe79b9bd
+EBUILD libseccomp-9999.ebuild 2382 BLAKE2B ecad29840736e18f35e0470a20674fe9aa0996bbf0a14c2297fda4b8873eaa028a8b0537bfd7cb64f67eeaa094ce7a4e981a94eb5a6008a771832931694cf1da SHA512 f41729b208db944ceddab46aba24d59a850a28379e11c1ac7405e82477bffe13050158c2bdf52ffc51f78d001f8ac320e4a27f1b876f9f3cc9c60c0f3513f2b3
+MISC metadata.xml 561 BLAKE2B 48e95fec426ff6123ed948660b9e88aa9e2ecd5f8cc51b6e13d0034c4f3fff988ce2bcb2a9b73557fe5c15065ee09d14c4c4b4bbce488bbf9bd54138b0d6750e SHA512 b45ed0989e466fc27998553f584fdcbd33a9a57c31774f062508eabc834848c7776e91d3ae854707523958282822499e030b785b018c356fdf3590a5a8dc6090
diff --git a/sys-libs/libseccomp/libseccomp-2.5.1.ebuild b/sys-libs/libseccomp/libseccomp-2.5.1.ebuild
deleted file mode 100644
index bf83271b3fde..000000000000
--- a/sys-libs/libseccomp/libseccomp-2.5.1.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-DISTUTILS_OPTIONAL=1
-
-inherit distutils-r1 multilib-minimal
-
-DESCRIPTION="high level interface to Linux seccomp filter"
-HOMEPAGE="https://github.com/seccomp/libseccomp"
-
-if [[ ${PV} == *9999 ]] ; then
- EGIT_REPO_URI="https://github.com/seccomp/libseccomp.git"
- PRERELEASE="2.6.0"
- inherit autotools git-r3
-else
- SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz"
- KEYWORDS="-* amd64 arm arm64 hppa ~mips ppc ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux"
-fi
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-IUSE="python static-libs"
-
-REQUIRED_USE="
- python? (
- static-libs
- ${PYTHON_REQUIRED_USE}
- )"
-
-DEPEND="python? ( ${PYTHON_DEPS} )"
-RDEPEND="${DEPEND}"
-BDEPEND="${DEPEND}
- dev-util/gperf
- python? ( dev-python/cython[${PYTHON_USEDEP}] )
-"
-# We need newer kernel headers; we don't keep strict control of the exact
-# version here, just be safe and pull in the latest stable ones. #551248
-DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3"
-
-src_prepare() {
- default
- if [[ "${PV}" == *9999 ]] ; then
- sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac
- eautoreconf
- fi
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- $(use_enable static-libs static)
- --disable-python
- )
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_compile() {
- emake
-
- if multilib_is_native_abi && use python ; then
- cd "${S}/src/python" || die
- sed -i -e "s/=.*VERSION_RELEASE.*,/=\"${PRERELEASE}\",/" \
- -e "/extra_objects/s,\.\.,${OLDPWD}/src," \
- setup.py || die
- local -x CPPFLAGS="-I${OLDPWD}/include -I../../include"
- distutils-r1_src_compile
- fi
-}
-
-multilib_src_install() {
- emake DESTDIR="${D}" install
-
- if multilib_is_native_abi && use python ; then
- cd "${S}/src/python" || die
- distutils-r1_src_install
- fi
-}
-
-multilib_src_install_all() {
- find "${ED}" -type f -name "${PN}.la" -delete || die
- einstalldocs
-}
diff --git a/sys-libs/libseccomp/libseccomp-2.5.2.ebuild b/sys-libs/libseccomp/libseccomp-2.5.4.ebuild
index eea16fa2bbf5..09258b43b977 100644
--- a/sys-libs/libseccomp/libseccomp-2.5.2.ebuild
+++ b/sys-libs/libseccomp/libseccomp-2.5.4.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{8..9} )
+PYTHON_COMPAT=( python3_{8..10} )
DISTUTILS_OPTIONAL=1
inherit distutils-r1 multilib-minimal
@@ -16,33 +16,49 @@ if [[ ${PV} == *9999 ]] ; then
PRERELEASE="2.6.0"
inherit autotools git-r3
else
- SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz"
- KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux"
+ SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz
+ experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/${P}-loongarch64-20220425.patch.xz )"
+ KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux"
fi
LICENSE="LGPL-2.1"
SLOT="0"
-IUSE="python static-libs"
+IUSE="experimental-loong python static-libs test"
+RESTRICT="!test? ( test )"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-DEPEND="python? ( ${PYTHON_DEPS} )"
+# We need newer kernel headers; we don't keep strict control of the exact
+# version here, just be safe and pull in the latest stable ones. bug #551248
+DEPEND=">=sys-kernel/linux-headers-5.15
+ python? ( ${PYTHON_DEPS} )"
RDEPEND="${DEPEND}"
BDEPEND="${DEPEND}
dev-util/gperf
- python? ( dev-python/cython[${PYTHON_USEDEP}] )
-"
-# We need newer kernel headers; we don't keep strict control of the exact
-# version here, just be safe and pull in the latest stable ones. #551248
-DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3"
+ python? ( dev-python/cython[${PYTHON_USEDEP}] )"
+
+PATCHES=(
+ "${FILESDIR}"/libseccomp-python-shared.patch
+ "${FILESDIR}"/libseccomp-2.5.3-skip-valgrind.patch
+)
src_prepare() {
- local PATCHES=(
- "${FILESDIR}/libseccomp-python-shared.patch"
- )
+ if use experimental-loong; then
+ PATCHES+=( "${WORKDIR}/${P}-loongarch64-20220425.patch" )
+ fi
+
default
- if [[ "${PV}" == *9999 ]] ; then
- sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac
+
+ if use experimental-loong; then
+ # touch generated files to avoid activating maintainer mode
+ # remove when loong-fix-build.patch is no longer necessary
+ touch ./aclocal.m4 ./configure ./configure.h.in || die
+ find . -name Makefile.in -exec touch {} + || die
+ fi
+
+ if [[ ${PV} == *9999 ]] ; then
+ sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac || die
+
eautoreconf
fi
}
@@ -52,12 +68,14 @@ multilib_src_configure() {
$(use_enable static-libs static)
--disable-python
)
+
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
}
do_python() {
# setup.py reads VERSION_RELEASE from the environment
local -x VERSION_RELEASE=${PRERELEASE-${PV}}
+
pushd "${BUILD_DIR}/src/python" >/dev/null || die
"$@"
popd >/dev/null || die
@@ -69,9 +87,10 @@ multilib_src_compile() {
if multilib_is_native_abi && use python ; then
# setup.py expects libseccomp.so to live in "../.libs"
# Copy the python files to the right place for this.
- rm -r "${BUILD_DIR}/src/python" || die
- cp -r "${S}/src/python" "${BUILD_DIR}/src/python" || die
+ rm -r "${BUILD_DIR}"/src/python || die
+ cp -r "${S}"/src/python "${BUILD_DIR}"/src/python || die
local -x CPPFLAGS="-I\"${BUILD_DIR}/include\" -I\"${S}/include\" ${CPPFLAGS}"
+
do_python distutils-r1_src_compile
fi
}
@@ -86,5 +105,6 @@ multilib_src_install() {
multilib_src_install_all() {
find "${ED}" -type f -name "${PN}.la" -delete || die
+
einstalldocs
}
diff --git a/sys-libs/libseccomp/libseccomp-9999.ebuild b/sys-libs/libseccomp/libseccomp-9999.ebuild
index 847d2ce335b0..fed0b3c8f425 100644
--- a/sys-libs/libseccomp/libseccomp-9999.ebuild
+++ b/sys-libs/libseccomp/libseccomp-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -27,25 +27,24 @@ RESTRICT="!test? ( test )"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-DEPEND="python? ( ${PYTHON_DEPS} )"
+# We need newer kernel headers; we don't keep strict control of the exact
+# version here, just be safe and pull in the latest stable ones. bug #551248
+DEPEND=">=sys-kernel/linux-headers-5.15
+ python? ( ${PYTHON_DEPS} )"
RDEPEND="${DEPEND}"
BDEPEND="${DEPEND}
dev-util/gperf
- python? ( dev-python/cython[${PYTHON_USEDEP}] )
-"
-# We need newer kernel headers; we don't keep strict control of the exact
-# version here, just be safe and pull in the latest stable ones. #551248
-DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3"
+ python? ( dev-python/cython[${PYTHON_USEDEP}] )"
-src_prepare() {
- local PATCHES=(
- "${FILESDIR}/libseccomp-python-shared.patch"
- "${FILESDIR}/libseccomp-2.5.3-skip-valgrind.patch"
- )
+PATCHES=(
+ "${FILESDIR}"/libseccomp-python-shared.patch
+ "${FILESDIR}"/libseccomp-2.5.3-skip-valgrind.patch
+)
+src_prepare() {
default
- if [[ "${PV}" == *9999 ]] ; then
+ if [[ ${PV} == *9999 ]] ; then
sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac || die
eautoreconf
@@ -76,8 +75,8 @@ multilib_src_compile() {
if multilib_is_native_abi && use python ; then
# setup.py expects libseccomp.so to live in "../.libs"
# Copy the python files to the right place for this.
- rm -r "${BUILD_DIR}/src/python" || die
- cp -r "${S}/src/python" "${BUILD_DIR}/src/python" || die
+ rm -r "${BUILD_DIR}"/src/python || die
+ cp -r "${S}"/src/python "${BUILD_DIR}"/src/python || die
local -x CPPFLAGS="-I\"${BUILD_DIR}/include\" -I\"${S}/include\" ${CPPFLAGS}"
do_python distutils-r1_src_compile
diff --git a/sys-libs/libseccomp/metadata.xml b/sys-libs/libseccomp/metadata.xml
index dd20dd0473ec..75b652d43244 100644
--- a/sys-libs/libseccomp/metadata.xml
+++ b/sys-libs/libseccomp/metadata.xml
@@ -5,6 +5,9 @@
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
+ <use>
+ <flag name="experimental-loong">Add experimental LoongArch patchset</flag>
+ </use>
<upstream>
<remote-id type="github">seccomp/libseccomp</remote-id>
<remote-id type="sourceforge">libseccomp</remote-id>
diff --git a/sys-libs/libsmbios/Manifest b/sys-libs/libsmbios/Manifest
index 7c82f012113f..9b2cd1f99bcf 100644
--- a/sys-libs/libsmbios/Manifest
+++ b/sys-libs/libsmbios/Manifest
@@ -1,5 +1,5 @@
AUX libsmbios-2.2.28-cppunit-tests.patch 350 BLAKE2B c735096c5fe0e33eec728e280097f9d1e97aca8942cda80d0d574f24f71f25245714dc4bf99d5b53a9613cbbf4b33d5a50cfa9482be5a2dd601b9b9a03be3940 SHA512 51cfb62fce69afaf73659a2c4c819aa3554831b48d69bc35c1b299cd2e0b4d3be7f156a2cb57912cf10f21182e49fd5ce17aad0205a25d151f55ab3e0e58ddd7
AUX libsmbios-2.4.3-avoid_bashisms.patch 2909 BLAKE2B 426ca128f142307ea89cc5003c298518115805a518b348345f154094e34be932721aa6c880612fa7fe3473bc1156bf7c2dc1ce085dd9511ddeaf58e54d2464e1 SHA512 d2199481d87527ce7e90ca355cdfaf48a859982e67090e248034139b19ce2d61717e9887d246c7bd6b1e46f3f97cf6ec6bbdf04e3091c513221cb42d0f1431b3
DIST libsmbios-2.4.3.tar.gz 644140 BLAKE2B 684bff4f6cf755796f785e9a93d4ddbe2a1af52082cdebc27d203772a6a2a0259edb4b9d19921f90fc78b48d54700223fbc2628665b963ebcb601010ff4340ab SHA512 7f6fb36fa9653e123b416b275953fb5652025e76dac3b4ec5600168e193ea56f8ac3ea1a3b5db29d2770e73d88152d712a35bf77a9b3fc5596570fae885585ad
-EBUILD libsmbios-2.4.3.ebuild 1795 BLAKE2B 0a0f2e53325888c4db7adcdab9cca25b91088987ab07055c882d82ba70e233c05d342f918a3a748a802ee4546ff3dd7bf35422318e65107e41cba4afda7198a9 SHA512 6b5a69e5f43a4adff45b67a3d4e4d738a4ab8462f76bf987d98bda9e5b3519cfa0cb373073fde0c0910c7ac19270a6f66945b977476e9cb54ce1c3e8c7b3dcf2
+EBUILD libsmbios-2.4.3.ebuild 1795 BLAKE2B 2bed26164e37fa3d2ea31b22df2740cf76580e90c615ab4fe6dd3f1487cec01225880dbefe9c1b462be33a04a1e51fcf06bea32624142ade712c980fb96d53f9 SHA512 a7a7f8399dec2c3b9158d13b0213e32ec9e3c16de53824d9e8d14d1543b2c1f6fa549e9452708c5bfa3aa537b1dda360b8a4e0ff30a983f11e7c50ac80a84605
MISC metadata.xml 683 BLAKE2B c1ce05b96d532d18aa93942f30d9f499c0196ab42510c196a73d8b0ce4d7d05920e9b5cb8d6b343b8a29fc3813d33e110233303ad17594ea1f729e210576c72b SHA512 e6adf717c5ecfaf17d88ff77afbcf6f3c93ee018dd3a07edc057d1009f39422f89de47eb9252c8363005de3fc8297abe342e8b652af5a90e044c0c378dd1e365
diff --git a/sys-libs/libsmbios/libsmbios-2.4.3.ebuild b/sys-libs/libsmbios/libsmbios-2.4.3.ebuild
index 56a475848ec4..f982ee3c0391 100644
--- a/sys-libs/libsmbios/libsmbios-2.4.3.ebuild
+++ b/sys-libs/libsmbios/libsmbios-2.4.3.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit autotools flag-o-matic python-single-r1
diff --git a/sys-libs/libstdc++-v3/Manifest b/sys-libs/libstdc++-v3/Manifest
index eb5e7631add0..626d62ad5293 100644
--- a/sys-libs/libstdc++-v3/Manifest
+++ b/sys-libs/libstdc++-v3/Manifest
@@ -1,6 +1,4 @@
-DIST gcc-3.3.6-patches-1.10.tar.bz2 53739 BLAKE2B d22772d30c432669299e3e6df350920408c510a241a20e6795dcc680227342a16c3b6d2e477a17d6c49794005b42972ed30b4efe5b2d69398d283f50efdeb459 SHA512 be6cc8fae217f789982e324e0d3ad12d527e43ca4c168bce613397aaf3d86219b125e7b39c2b236638a68112cfee0e06c1b297fead712d92b3923b7195299d0a
DIST gcc-3.3.6-patches-4.tar.bz2 53437 BLAKE2B 372ff1fcfcfacca43b420d2cda7fccb2ede4917408e1fcceb6c094694de8ae21148fa9c5ab8663cf6fb9ad858e3d0cbb3f20c91020db7b627828403444c2fd66 SHA512 1ff4563956d2f3af1240a14cd1ec126ff75dcf24e1cec39d32a17d6be92b94aeb081605ceb04b138ba905cea8ccbe204dce4b42a02ef55383fcfa91643f73faf
DIST gcc-3.3.6.tar.bz2 23972413 BLAKE2B e7b33edcdbbb13b0be41a41156bf6fb6dcfe4f5ad75c41de86cb37f854be6b7a6a8dda0e65d331461469848cd912e25920e8aa2dcb142cb661731ba571cb5de1 SHA512 576b88e2fa675314a79a85f180684fe5af370c596476a0bf02e33e8ae0e2be838417ea80675ce4194a8213792cf7ada50cae5131149e4b890ab61e0b8d50d0ed
-EBUILD libstdc++-v3-3.3.6-r3.ebuild 5062 BLAKE2B 149fc4eb76a0e3e3c163e21fd09bd375cc53232f05f039e4dd005d833f2f7b47b03652dea58574cf77db38d7013aa329858d0ef694362ffa891fe71095527714 SHA512 4dbf4e4ffda9ee85ec09ccce5888600aa6c07f78b189c55d97b5f1f2b8d2032a69a2b315bb242d4bfeb32895111e7fc9d74337a706726a1a57016ca16b95c4d5
EBUILD libstdc++-v3-3.3.6-r4.ebuild 5074 BLAKE2B dba892d8d6b5b417fbee033157f33f491c4843685b3a97d815858aa45770cad2eb9348b2c9c5a347cb055a6bc8ef3034a38f9d49706d162a93ca07fa2d8b683c SHA512 0ebb18227f908002f4baf9e8bceab5a3bb4812839b0186b0d5f0b7acf9cfe3d5dfd087fac124698cbada78fc32931720ad2e5ffb693e1c39a8b965000e3dbb07
MISC metadata.xml 258 BLAKE2B f45bf60ab247635720461e6f8028b41d748c2c0fecea4d5b6eb29a9f532de573e8054773a084b99b2a6a040e980cfc41c8839b13bdeb8ebe6e1de12a1492873b SHA512 2cd16eedd80ae476d1611112f620d3d5eee88fd181fe635d9f9235ac312e24bf8eac5b44f54ff55806ee7a03aaf1d1382a734f7b3496814853d238b9a7b6ee1e
diff --git a/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r3.ebuild b/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r3.ebuild
deleted file mode 100644
index 0bf6a4ade8c8..000000000000
--- a/sys-libs/libstdc++-v3/libstdc++-v3-3.3.6-r3.ebuild
+++ /dev/null
@@ -1,201 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit epatch flag-o-matic libtool multilib toolchain-funcs
-
-PATCH_VER="1.10"
-
-DESCRIPTION="Compatibility package for binaries linked against a pre gcc 3.4 libstdc++"
-HOMEPAGE="https://gcc.gnu.org/libstdc++/"
-SRC_URI="ftp://gcc.gnu.org/pub/gcc/releases/gcc-${PV}/gcc-${PV}.tar.bz2
- mirror://gentoo/gcc-${PV}-patches-${PATCH_VER}.tar.bz2"
-
-LICENSE="GPL-2 LGPL-2.1"
-SLOT="5"
-KEYWORDS="~amd64 ~x86"
-IUSE="multilib nls"
-
-RDEPEND="sys-libs/zlib"
-DEPEND="
- ${RDEPEND}
- sys-devel/bison"
-
-transform_known_flags() {
- declare setting
-
- # and on x86, we just need to filter the 3.4 specific amd64 -marchs
- replace-cpu-flags k8 athlon64 opteron x86-64
-
- # gcc 3.3 doesn't support -march=pentium-m
- replace-cpu-flags pentium-m pentium3m pentium3
-
- #GCC 3.3 does not understand G3, G4, G5 on ppc
- replace-cpu-flags G3 750
- replace-cpu-flags G4 7400
- replace-cpu-flags G5 7400
-
- filter-flags -fdiagnostics-show-option
-}
-
-is_arch_allowed() {
- i386_processor_table="i386 i486 i586 pentium pentium-mmx winchip-c6 \
- winchip2 c3 i686 pentiumpro pentium2 pentium3 pentium4 prescott \
- nocona k6 k6-2 k6-3 athlon athlon-tbird x86-64 athlon-4 athlon-xp \
- athlon-mp"
-
- for proc in ${i386_processor_table} ; do
- [ "${proc}" == "${1}" ] && return 0
- done
-
- mips_processor_table="mips1 mips2 mips3 mips4 mips32 mips64 r3000 r2000 \
- r3900 r6000 r4000 vr4100 vr4111 vr4120 vr4300 r4400 r4600 orion \
- r4650 r8000 vr5000 vr5400 vr5500 4kc 4kp 5kc 20kc sr71000 sb1"
-
- for proc in ${mips_processor_table} ; do
- [ "${proc}" == "${1}" ] && return 0
- done
-
- rs6000_processor_table="common power power2 power3 power4 powerpc \
- powerpc64 rios rios1 rsc rsc1 rios2 rs64a 401 403 405 505 601 602 \
- 603 603e ec603e 604 604e 620 630 740 750 7400 7450 8540 801 821 823 \
- 860"
-
- for proc in ${rs6000_processor_table} ; do
- [ "${proc}" == "${1}" ] && return 0
- done
-
- return 1
-}
-
-do_filter_flags() {
- declare setting
-
- # In general gcc does not like optimization, and add -O2 where
- # it is safe. This is especially true for gcc 3.3 + 3.4
- replace-flags -O? -O2
-
- # gcc 3.3 doesn't support -mtune on numerous archs, so xgcc will fail
- setting="`get-flag mtune`"
- [ ! -z "${setting}" ] && filter-flags -mtune="${setting}"
-
- # in gcc 3.3 there is a bug on ppc64 where if -mcpu is used
- # the compiler incorrectly assumes the code you are about to build
- # is 32 bit
- use ppc64 && setting="`get-flag mcpu`"
- [ ! -z "${setting}" ] && filter-flags -mcpu="${setting}"
-
- # only allow the flags that we -know- are supported
- transform_known_flags
- setting="`get-flag march`"
- if [ ! -z "${setting}" ] ; then
- is_arch_allowed "${setting}" || filter-flags -march="${setting}"
- fi
- setting="`get-flag mcpu`"
- if [ ! -z "${setting}" ] ; then
- is_arch_allowed "${setting}" || filter-flags -mcpu="${setting}"
- fi
-
- # xgcc wont understand gcc 3.4 flags...
- filter-flags -fno-unit-at-a-time
- filter-flags -funit-at-a-time
- filter-flags -fweb
- filter-flags -fno-web
- filter-flags -mno-tls-direct-seg-refs
-
- # xgcc isnt patched with propolice
- filter-flags -fstack-protector-all
- filter-flags -fno-stack-protector-all
- filter-flags -fstack-protector
- filter-flags -fno-stack-protector
-
- # xgcc isnt patched with the gcc symbol visibility patch
- filter-flags -fvisibility-inlines-hidden
- filter-flags -fvisibility=hidden
-
- # Bug #269433 & #290202
- filter-flags -fno-strict-overflow
- filter-flags -fstrict-overflow
-
- # Bug #442784
- filter-flags '-W*'
-
- filter-flags -frecord-gcc-switches
- filter-flags '-fdiagnostics-color*'
-
- # Bug #610064
- filter-flags '-fstack-check*'
-
- # ...sure, why not?
- strip-unsupported-flags
-
- strip-flags
-}
-
-S=${WORKDIR}/gcc-${PV}
-
-src_prepare() {
- EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch
-
- default
-
- elibtoolize --portage --shallow
- ./contrib/gcc_update --touch
-
- if use multilib && [[ ${SYMLINK_LIB} == "yes" ]] ; then
- # ugh, this shit has to match the way we've hacked gcc else
- # the build falls apart #259215
- sed -i \
- -e 's:\(MULTILIB_OSDIRNAMES = \).*:\1../lib64 ../lib32:' \
- "${S}"/gcc/config/i386/t-linux64 \
- || die "sed failed!"
- fi
-
- tc-export AR CC RANLIB NM
-}
-
-src_configure() {
- mkdir -p "${WORKDIR}"/build
- cd "${WORKDIR}"/build
- do_filter_flags
- ECONF_SOURCE=${S} \
- econf \
- --enable-shared \
- --with-system-zlib \
- --enable-languages=c++ \
- --enable-threads=posix \
- --enable-long-long \
- --disable-checking \
- --enable-cstdio=stdio \
- --enable-__cxa_atexit \
- $(use_enable multilib) \
- $(use_enable nls) \
- $(use_with !nls included-gettext)
-
- touch "${S}"/gcc/c-gperf.h
-}
-
-src_compile() {
- emake \
- -C "${WORKDIR}"/build all-target-libstdc++-v3 \
- AR="$(tc-getAR)" \
- NM="$(tc-getNM)"
-}
-
-src_install() {
- emake -j1 \
- -C "${WORKDIR}"/build \
- AR="$(tc-getAR)" \
- NM="$(tc-getNM)" \
- DESTDIR="${D}" \
- install-target-libstdc++-v3
-
- # scrub everything but the library we care about
- pushd "${D}" >/dev/null
- mv usr/lib* . || die
- rm -rf usr
- rm -f lib*/*.{a,la,so} || die
- dodir /usr
- mv lib* usr/ || die
-}
diff --git a/sys-libs/libucontext/Manifest b/sys-libs/libucontext/Manifest
index 62aef2d8e282..271d66958c40 100644
--- a/sys-libs/libucontext/Manifest
+++ b/sys-libs/libucontext/Manifest
@@ -1,4 +1,6 @@
AUX libucontext-1.1-respect-CFLAGS.patch 368 BLAKE2B b04163e9e75ad3f8704d85d78091a41957cb072edd3ecbe58dbf45bf59c5ffb3662b5f96bf413eaaa5e328c964cbe99a70c6f8f23f4f8bc74bfdda7a0e45c54d SHA512 889b67269066ccdf84221dd1a636d4f6782f4c5f6800828f4068f3764b7e9d1797614d9f07f81864bc720f415c475c1b78aba38dd35355a54fcbf2f7a64a57ff
DIST libucontext-1.1.tar.gz 25261 BLAKE2B 269b3899657779bc2c6a2f1c365242f0ee936afeb0acf74e48af5c1e6b96918bbaa239039508e7b1b1f7b358679fb4a222311b761223b69b9a3e7a9be2d0bc40 SHA512 05aed6f82a2b3d9dba896423335a7fc2fc5eddc87ed725f05e14488c6ddfcef10b835c928619439c7783e052baff7ef2dc162b6e06aa78992f6f611ca13c2e39
+DIST libucontext-1.2.tar.gz 29073 BLAKE2B 378816376877729776c41515ad1c3da36c24528bcdcf5272c4df2029b5273cf90228c163e87bd1af558129b1274d0b22632c4fa8ad2a0f37ac7014dae527a48e SHA512 f47b776517fa9e3fe48b762b11ae580c28bd7646f9e3ab843141d3e203f886326e68dd8040852ab1cb92dbd09d821161660c4be44e3025448d90131e74a4cf51
EBUILD libucontext-1.1-r1.ebuild 1227 BLAKE2B 80165906c3525c3a1d8cd1079a509ff11cb8ec92833ea493e03103c775f99c4f303d86c33ee4fb921cb9c1dcdfc9e06b031e2c6158c1547a99a86edf7b4ff9ab SHA512 accd79cbc600ca4f02dcdc76f6ed7a964b8714238dfe2d5d44734ef3be472a998a6d04afa196c9a086e58ca18138c80b64973b4caa870ffe7e1ba5e579220ede
+EBUILD libucontext-1.2.ebuild 1370 BLAKE2B b7a8af9afd2dec3988699e500395a206eb628994d9f7bf50547ae44ae9204850ef1cba637c87a9235a0896a5ebe0785350fa573e0615ba781723d2a7fcd7b739 SHA512 966f7bf60091d9af0d7bb8bed9fabf0fba82087a3d091da79c0b19983d8d2b80ffe67381baab2de3f4dc9c113865ed157377007c9cc85f5c23f331417ae1a31c
MISC metadata.xml 329 BLAKE2B 8958a3567263e9f2fc2409c2cd5858ca3e68659a45f67e5132fca640c6ffe05cac8810436f334b5c775ed049709f43aaf366cfecc97bc732a0917bb47aa5c34d SHA512 7b5d5832b22828f6a0600e3be45ff1da8ff340481a3602db6f5b8540373ff0ac3c72f0de64f00a1691598bbd9cea0128eb869cda67d8ac4894e3a51a7009a730
diff --git a/sys-libs/libucontext/libucontext-1.2.ebuild b/sys-libs/libucontext/libucontext-1.2.ebuild
new file mode 100644
index 000000000000..7120a14d92cb
--- /dev/null
+++ b/sys-libs/libucontext/libucontext-1.2.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="ucontext implementation featuring glibc-compatible ABI"
+HOMEPAGE="https://github.com/kaniini/libucontext"
+SRC_URI="https://github.com/kaniini/libucontext/archive/refs/tags/${P}.tar.gz"
+S="${WORKDIR}"/${PN}-${P}
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+man"
+
+BDEPEND="man? ( app-text/scdoc )"
+
+# segfault needs investigation
+# 1.2 eems ok?
+#RESTRICT="test"
+
+src_compile() {
+ tc-export AR CC
+
+ arch=
+
+ # Override arch detection
+ # https://github.com/kaniini/libucontext/blob/master/Makefile#L3
+ if use x86 ; then
+ arch="x86"
+ elif use arm ; then
+ arch="arm"
+ elif use arm64 ; then
+ arch="aarch64"
+ elif use ppc64 ; then
+ arch="ppc64"
+ else
+ arch="$(uname -m)"
+ fi
+
+ emake \
+ ARCH="${arch}" \
+ LDFLAGS="${LDFLAGS}" \
+ LIBDIR="/usr/$(get_libdir)" \
+ PKGCONFIGDIR="/usr/$(get_libdir)/pkgconfig" \
+ all $(usev man 'docs')
+}
+
+src_test() {
+ emake \
+ ARCH="${arch}" \
+ LDFLAGS="${LDFLAGS}" \
+ LIBDIR="/usr/$(get_libdir)" \
+ PKGCONFIGDIR="/usr/$(get_libdir)/pkgconfig" \
+ check
+}
+
+src_install() {
+ emake \
+ ARCH="${arch}" \
+ DESTDIR="${ED}" \
+ LIBDIR="/usr/$(get_libdir)" \
+ PKGCONFIGDIR="/usr/$(get_libdir)/pkgconfig" \
+ install $(usev man 'install_docs')
+
+ find "${ED}" -name '*.a' -delete || die
+}
diff --git a/sys-libs/libunwind/Manifest b/sys-libs/libunwind/Manifest
index f3ab7cbcb568..d1d9f9f29efd 100644
--- a/sys-libs/libunwind/Manifest
+++ b/sys-libs/libunwind/Manifest
@@ -1,10 +1,3 @@
-AUX libunwind-1.2-coredump-regs.patch 619 BLAKE2B b901d50cb7fa4ab372da26120e512da0ca506322130583623eebe31548a65f5a53249b632d71409d77a6dc00eb002beddd44f8a5d11dc82bf8450b812770a023 SHA512 48536ef54590221b42a3ca568ec781e526807b3d8aed3e33e19e6efacfa05a428a6101d3a51e79ea5d3e1d783bcba9acb92f7623c121d3e00cd3e1a17d13e282
-AUX libunwind-1.2-ia64-missing.patch 3863 BLAKE2B 384d2afd7d725f0730207b5b32ff4ffcedd852043af83b1884c7dc95116298eff41bd7f997e0ad51c9912b59e36b439eb524d3d4786f2a0a19dff32437e62003 SHA512 e8f65d706839770d993f9801371e1e294a0231c4bfe29b497e4a859567b7f5b6561b0a15d59b1626311e549fe57149046f5a76424a2ad69c521610aaa3019c17
-AUX libunwind-1.2-ia64-ptrace-coredump.patch 1445 BLAKE2B 0b4b6b5d7b3cfc8be58c3973b096ceeb19faa84f175a23f2130588351e40f94abf5c53a4eb5813d8b9da7762f032671031d2d637bd2ec445f7e4f9ea9d276773 SHA512 0bab310ff16294d7617077ffa1261fe9c1a6aaeb4339c96918869c4dd9a2b1b73fbe2ebb5c895f1a420ff7922da85cbb44ccfcd69df6e2518c1f2ff64b7b2d76
-AUX libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch 1378 BLAKE2B f343464943d1689e379b702baa63f7c0f198421c124354af035b100a25d8bf1a2c493e09517c27a1abbdc6064cbf1d6ecf8cbb88bb377921277e8c9979c40921 SHA512 7de66bc7a107ada353cc50992fc141bc87b927d55d8df113d5ecea90b27f5518cc6f6aafa19ea7f7f85719a6b48610f9029ba88c2a84d4950c05e1fa37f9ef57
-AUX libunwind-1.5.0-x32.patch 596 BLAKE2B dc032ca1b2c3e21595239954252a41676c07451e1b8a4759b64a0341e0392bd7ff0046cfde53bbd9bffc4f044221d6172b127a8cffa50dfd137930ea7b2b0ec5 SHA512 e3ccd5458ec4247d4d162bd730823483711dc958a51eaf4062b2385c67205c7998255eee33fbeb2cdc32bcc34f5ab27bbdcfb9f66b0a2144650e4a84893a652f
-DIST libunwind-1.5.0.tar.gz 878355 BLAKE2B ee35441289926ac22a58bedb9f831d8e13bacd663a99b3ce25eed229f25f0423bbbd90e09e3d62b003518d7a620aa6d15b0dd5b93632736a89fa0667b35d5fc2 SHA512 1df20ca7a8cee2f2e61294fa9b677e88fec52e9d5a329f88d05c2671c69fa462f6c18808c97ca9ff664ef57292537a844f00b18d142b1938c9da701ca95a4bab
DIST libunwind-1.6.2.tar.gz 901392 BLAKE2B 3d0313f7e92cbc3e1a84ad3831a5170f21cdf772f1697ca0a59dea63cdd47da382e9f1fd77325d9ff8bcd47559a425dc883a820c646c628cd00faed82cb0f83f SHA512 1d17dfb14f99a894a6cda256caf9ec481c14068aaf8f3a85fa3befa7c7cca7fca0f544a91a3a7c2f2fc55bab19b06a67ca79f55ac9081151d94478c7f611f8f7
-EBUILD libunwind-1.5.0-r1.ebuild 3276 BLAKE2B 0a0ab57f71c05521de552b6a9e7530258e6390e64a33bb09f1751ede229abf5ec0d70537321ff77a80946abb1d3d8b6b5517fe17648231e7a5f4b14032870636 SHA512 48aa9c88e5d535bff85cad52fe7ef2b9d854d4adbdb9249430932458cbf5918ce7d4cd29330882577a1acfc85f06efe6adfe669093c8a7cdc3b0ec61f1459a04
-EBUILD libunwind-1.6.2.ebuild 2704 BLAKE2B 9aeabebd03199541b2923c87fa0f5268b5a7e4472f62e59ed3b777d7e29ed6403d533dd76323e27bd291fe75fd07893c32d0fed6ba2a7f27039cd5042428217c SHA512 245400b0698b1675de30bb2ce28f7bb4ca4262aeac303a09878c7a7f41b3fefcb44a72d6cb9a7d7756d655ac2032ea6dbb3a93bb0c39110acc8d49d7941add10
+EBUILD libunwind-1.6.2.ebuild 2680 BLAKE2B 686f5fa9f0362c6669e9195e84f5f35546da5a6d8f66bdf0e9b91a580e1e20b9da4025718ed2f960dff7cbd66d325cb5aec6868b1147bed013486d9ebf4d6b16 SHA512 c44f75111e3a5f97aa85e6124c007c6216445d9ee3cff8418153229a2d97b83b5d97895576993a9c91a457e67f47d74ea50ac755fbbd55f7492a1cbf690ac263
MISC metadata.xml 574 BLAKE2B cf49536a68a838e39d6c67191eff496d8910f1d58cd7830546e519af38972db7cf7add177a6e5902202d2a66bc6b3dadcd261505b3bb61f285f0be10a0db42e7 SHA512 bf5fd787ae0b233c7fe5e8f4b987c472a03b93c07adebf35ce27c7b6759b9ac239296d5ede6725ac11f5030365199533389e51ced10dc6a20bb5aa74baf34ab0
diff --git a/sys-libs/libunwind/files/libunwind-1.2-coredump-regs.patch b/sys-libs/libunwind/files/libunwind-1.2-coredump-regs.patch
deleted file mode 100644
index 3ddc610d4afc..000000000000
--- a/sys-libs/libunwind/files/libunwind-1.2-coredump-regs.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-https://bugs.gentoo.org/586092
-
-this might not be correct, but at least it builds, and doesn't crash
-
---- a/src/coredump/_UCD_access_reg_linux.c
-+++ b/src/coredump/_UCD_access_reg_linux.c
-@@ -51,6 +51,9 @@ _UCD_access_reg (unw_addr_space_t as,
- #elif defined(UNW_TARGET_TILEGX)
- if (regnum < 0 || regnum > UNW_TILEGX_CFA)
- goto badreg;
-+#elif defined(UNW_TARGET_IA64) || defined(UNW_TARGET_HPPA) || defined(UNW_TARGET_PPC32) || defined(UNW_TARGET_PPC64)
-+ if (regnum < 0 || regnum >= ARRAY_SIZE(ui->prstatus->pr_reg))
-+ goto badreg;
- #else
- #if defined(UNW_TARGET_MIPS)
- static const uint8_t remap_regs[] =
diff --git a/sys-libs/libunwind/files/libunwind-1.2-ia64-missing.patch b/sys-libs/libunwind/files/libunwind-1.2-ia64-missing.patch
deleted file mode 100644
index e15250b4c61f..000000000000
--- a/sys-libs/libunwind/files/libunwind-1.2-ia64-missing.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-Original libunwind release is missing a few ia64-specific files in tarball.
-diff --git a/src/ia64/mk_Gcursor_i.c b/src/ia64/mk_Gcursor_i.c
-new file mode 100644
-index 0000000..67b14d5
---- /dev/null
-+++ b/src/ia64/mk_Gcursor_i.c
-@@ -0,0 +1,65 @@
-+/* libunwind - a platform-independent unwind library
-+ Copyright (C) 2003 Hewlett-Packard Co
-+ Contributed by David Mosberger-Tang <davidm@hpl.hp.com>
-+
-+This file is part of libunwind.
-+
-+Permission is hereby granted, free of charge, to any person obtaining
-+a copy of this software and associated documentation files (the
-+"Software"), to deal in the Software without restriction, including
-+without limitation the rights to use, copy, modify, merge, publish,
-+distribute, sublicense, and/or sell copies of the Software, and to
-+permit persons to whom the Software is furnished to do so, subject to
-+the following conditions:
-+
-+The above copyright notice and this permission notice shall be
-+included in all copies or substantial portions of the Software.
-+
-+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
-+
-+/* Utility to generate cursor_i.h. */
-+
-+#include "libunwind_i.h"
-+
-+#ifdef offsetof
-+# undef offsetof
-+#endif
-+
-+#define offsetof(type,field) ((char *) &((type *) 0)->field - (char *) 0)
-+
-+#define OFFSET(sym, offset) \
-+ asm volatile("\n->" #sym " %0" : : "i" (offset))
-+
-+int
-+main (void)
-+{
-+ OFFSET("IP_OFF", offsetof (struct cursor, ip));
-+ OFFSET("PR_OFF", offsetof (struct cursor, pr));
-+ OFFSET("BSP_OFF", offsetof (struct cursor, bsp));
-+ OFFSET("PSP_OFF", offsetof (struct cursor, psp));
-+ OFFSET("PFS_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_PFS]));
-+ OFFSET("RNAT_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_RNAT]));
-+ OFFSET("UNAT_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_UNAT]));
-+ OFFSET("LC_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_LC]));
-+ OFFSET("FPSR_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_FPSR]));
-+ OFFSET("B1_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B1]));
-+ OFFSET("B2_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B2]));
-+ OFFSET("B3_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B3]));
-+ OFFSET("B4_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B4]));
-+ OFFSET("B5_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_B5]));
-+ OFFSET("F2_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F2]));
-+ OFFSET("F3_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F3]));
-+ OFFSET("F4_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F4]));
-+ OFFSET("F5_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F5]));
-+ OFFSET("FR_LOC_OFF", offsetof (struct cursor, loc[IA64_REG_F16]));
-+ OFFSET("LOC_SIZE",
-+ (offsetof (struct cursor, loc[1]) - offsetof (struct cursor, loc[0])));
-+ OFFSET("SIGCONTEXT_ADDR_OFF", offsetof (struct cursor, sigcontext_addr));
-+ return 0;
-+}
-diff --git a/src/ia64/mk_Lcursor_i.c b/src/ia64/mk_Lcursor_i.c
-new file mode 100644
-index 0000000..aee2e7e
---- /dev/null
-+++ b/src/ia64/mk_Lcursor_i.c
-@@ -0,0 +1,2 @@
-+#define UNW_LOCAL_ONLY
-+#include "mk_Gcursor_i.c"
-diff --git a/src/ia64/mk_cursor_i b/src/ia64/mk_cursor_i
-new file mode 100755
-index 0000000..9211f91
---- /dev/null
-+++ b/src/ia64/mk_cursor_i
-@@ -0,0 +1,7 @@
-+#!/bin/sh
-+test -z "$1" && exit 1
-+echo "/* GENERATED */"
-+echo "#ifndef cursor_i_h"
-+echo "#define cursor_i_h"
-+sed -ne 's/^->"\(\S*\)" \(\d*\)/#define \1 \2/p' < $1 || exit $?
-+echo "#endif"
diff --git a/sys-libs/libunwind/files/libunwind-1.2-ia64-ptrace-coredump.patch b/sys-libs/libunwind/files/libunwind-1.2-ia64-ptrace-coredump.patch
deleted file mode 100644
index 3785d8820cd9..000000000000
--- a/sys-libs/libunwind/files/libunwind-1.2-ia64-ptrace-coredump.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Fix build failure on ia64.
- coredump/_UPT_get_dyn_info_list_addr.c
-is almost identical to
- ptrace/_UPT_get_dyn_info_list_addr.c
-It's clearly an __ia64 implementation copy.
-diff --git a/src/coredump/_UPT_get_dyn_info_list_addr.c b/src/coredump/_UPT_get_dyn_info_list_addr.c
-index 0d11905..176b146 100644
---- a/src/coredump/_UPT_get_dyn_info_list_addr.c
-+++ b/src/coredump/_UPT_get_dyn_info_list_addr.c
-@@ -31,2 +31,3 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
- # include "os-linux.h"
-+# include "../ptrace/_UPT_internal.h"
-
-@@ -40,3 +41,2 @@ get_list_addr (unw_addr_space_t as, unw_word_t *dil_addr, void *arg,
- char path[PATH_MAX];
-- unw_dyn_info_t *di;
- unw_word_t res;
-@@ -50,5 +50,5 @@ get_list_addr (unw_addr_space_t as, unw_word_t *dil_addr, void *arg,
-
-- invalidate_edi (&ui->edi);
-+ invalidate_edi(&ui->edi);
-
-- if (elf_map_image (&ui->ei, path) < 0)
-+ if (elf_map_image (&ui->edi.ei, path) < 0)
- /* ignore unmappable stuff like "/SYSV00001b58 (deleted)" */
-@@ -58,6 +58,5 @@ get_list_addr (unw_addr_space_t as, unw_word_t *dil_addr, void *arg,
-
-- di = tdep_find_unwind_table (&ui->edi, as, path, lo, off);
-- if (di)
-+ if (tdep_find_unwind_table (&ui->edi, as, path, lo, off, 0) > 0)
- {
-- res = _Uia64_find_dyn_list (as, di, arg);
-+ res = _Uia64_find_dyn_list (as, &ui->edi.di_cache, arg);
- if (res && count++ == 0)
diff --git a/sys-libs/libunwind/files/libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch b/sys-libs/libunwind/files/libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch
deleted file mode 100644
index b6ba0028c80f..000000000000
--- a/sys-libs/libunwind/files/libunwind-1.2.1-only-include-execinfo_h-if-avaliable.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-https://github.com/libunwind/libunwind/commit/6382d6f5c9d4d149989e47b20446f794365137c1
-
-From 0f3f41a86842f2b19aa07af5242cb775ef9b20d3 Mon Sep 17 00:00:00 2001
-From: "Jory A. Pratt" <anarchy@gentoo.org>
-Date: Sat, 30 Jun 2018 22:44:22 -0500
-Subject: [PATCH] Only include execinfo.h where avaliable
-
-Signed-off-by: Jory A. Pratt <anarchy@gentoo.org>
----
- tests/test-coredump-unwind.c | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/tests/test-coredump-unwind.c b/tests/test-coredump-unwind.c
-index 5254708..33f92b0 100644
---- a/tests/test-coredump-unwind.c
-+++ b/tests/test-coredump-unwind.c
-@@ -57,7 +57,9 @@
- #include <grp.h>
-
- /* For SIGSEGV handler code */
-+#if HAVE_EXECINFO_H
- #include <execinfo.h>
-+#endif
- #include <sys/ucontext.h>
-
- #include <libunwind-coredump.h>
-@@ -202,7 +204,7 @@ void die_out_of_memory(void)
- /* End of utility logging functions */
-
-
--
-+#if HAVE_EXECINFO_H
- static
- void handle_sigsegv(int sig, siginfo_t *info, void *ucontext)
- {
-@@ -249,12 +251,14 @@ void handle_sigsegv(int sig, siginfo_t *info, void *ucontext)
-
- _exit(1);
- }
--
-+#endif
- static void install_sigsegv_handler(void)
- {
- struct sigaction sa;
- memset(&sa, 0, sizeof(sa));
-+#if HAVE_EXECINFO_H
- sa.sa_sigaction = handle_sigsegv;
-+#endif
- sa.sa_flags = SA_SIGINFO;
- sigaction(SIGSEGV, &sa, NULL);
- sigaction(SIGILL, &sa, NULL);
---
-2.18.0
diff --git a/sys-libs/libunwind/files/libunwind-1.5.0-x32.patch b/sys-libs/libunwind/files/libunwind-1.5.0-x32.patch
deleted file mode 100644
index a3bbc81f45b5..000000000000
--- a/sys-libs/libunwind/files/libunwind-1.5.0-x32.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://bugs.gentoo.org/614374
-
-From: kasperk81 <83082615+kasperk81@users.noreply.github.com>
-Date: Wed, 30 Jun 2021 23:23:22 +0000
-Subject: [PATCH] Fix -mx32 compilation error
-
---- a/src/x86_64/Gos-linux.c
-+++ b/src/x86_64/Gos-linux.c
-@@ -149,7 +149,7 @@ x86_64_sigreturn (unw_cursor_t *cursor)
- __asm__ __volatile__ ("mov %0, %%rsp;"
- "mov %1, %%rax;"
- "syscall"
-- :: "r"(sc), "i"(SYS_rt_sigreturn)
-+ :: "r"((uint64_t)sc), "i"(SYS_rt_sigreturn)
- : "memory");
- abort();
- }
diff --git a/sys-libs/libunwind/libunwind-1.5.0-r1.ebuild b/sys-libs/libunwind/libunwind-1.5.0-r1.ebuild
deleted file mode 100644
index 082fdab6ed88..000000000000
--- a/sys-libs/libunwind/libunwind-1.5.0-r1.ebuild
+++ /dev/null
@@ -1,108 +0,0 @@
-# Copyright 2005-2021 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 -riscv -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
- "${FILESDIR}"/${PN}-1.5.0-x32.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/libunwind/libunwind-1.6.2.ebuild b/sys-libs/libunwind/libunwind-1.6.2.ebuild
index f67ca2db225d..3c8d7610772f 100644
--- a/sys-libs/libunwind/libunwind-1.6.2.ebuild
+++ b/sys-libs/libunwind/libunwind-1.6.2.ebuild
@@ -5,7 +5,7 @@ EAPI=7
MY_PV=${PV/_/-}
MY_P=${PN}-${MY_PV}
-inherit autotools multilib-minimal
+inherit multilib-minimal
DESCRIPTION="Portable and efficient API to determine the call-chain of a program"
HOMEPAGE="https://savannah.nongnu.org/projects/libunwind"
@@ -49,8 +49,6 @@ src_prepare() {
default
chmod +x src/ia64/mk_cursor_i || die
-
- eautoreconf
}
multilib_src_configure() {
diff --git a/sys-libs/libutempter/Manifest b/sys-libs/libutempter/Manifest
index 1ddd948d4d3f..0ea557d3a39b 100644
--- a/sys-libs/libutempter/Manifest
+++ b/sys-libs/libutempter/Manifest
@@ -1,3 +1,3 @@
DIST libutempter-1.2.1.tar.gz 17429 BLAKE2B 88ae0a03a8a614b960082ce4d4006ec4e3eb8148b319ae964ac3ba3f684f08f5dd670e693f25d52d04a280f7b2aed6d2894cbbc0e2db3f71ab68e6910ffb58d1 SHA512 d3a3bab7d2c2a68534c5ad41dd02bde849eb08df5dbb895a79b50b74d269c48c4cfcd12c4654941ccb7cdd43f486cfdc19148fa470870562f5cd324ce9782429
-EBUILD libutempter-1.2.1.ebuild 1506 BLAKE2B 385cc330aafa7e66addd3310d515e212e3a1a3bc6d9c8ec9c174eace2dc1248b2b90a1009544357d8fa2026f229ed69605d0aa527976721dce9d34f1e2fa1db2 SHA512 8df583c0ca496cbfdb8cf53524e81330d873473dc2aed0d6a52f1c55ddc1acd8fd0159033f2a6e7481e3fd4ae51c3f8af7e8034b4c7fe923b004e3fa999e85cc
+EBUILD libutempter-1.2.1.ebuild 1513 BLAKE2B ff05b6ac70a441e46d0e0824b62fcd576e6762c22cfcc000f6339e6b6d93de338335d1aee5bec1ceb2e520fc514d4af2ff954c1baefca7162120882e945c7a8b SHA512 fe198624e34027f92c0b7c9ee0ac131ec6015f6195efbc74f0c1bd73810d9e5b53b4302fb583305b887501fdc8c46774f50e97019a990c6c048ceddee1e4ea4f
MISC metadata.xml 254 BLAKE2B f3a9f843cf94243d1129711770df727fcdc8808bca829ef784819cab6f5410dfa463cfed85182f8228c7de796a674dd602653ad3ef817a62c0c3e7198b23befe SHA512 b9fcd3084a7e197f6138e1ce8b0eff99c4c203c37a7d5c40de207040ba1501ef0e5b2f4e00216a567037bcd6d3394fdec6ff587484c9ba2fca9d04f431733b7c
diff --git a/sys-libs/libutempter/libutempter-1.2.1.ebuild b/sys-libs/libutempter/libutempter-1.2.1.ebuild
index 1fcbf2b7f88b..953cc42fcc2d 100644
--- a/sys-libs/libutempter/libutempter-1.2.1.ebuild
+++ b/sys-libs/libutempter/libutempter-1.2.1.ebuild
@@ -11,7 +11,7 @@ SRC_URI="ftp://ftp.altlinux.org/pub/people/ldv/${PN}/${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="static-libs"
RDEPEND="
diff --git a/sys-libs/libxcrypt/Manifest b/sys-libs/libxcrypt/Manifest
index 7004e3b6c94c..726c91142a7f 100644
--- a/sys-libs/libxcrypt/Manifest
+++ b/sys-libs/libxcrypt/Manifest
@@ -1,12 +1,8 @@
AUX libxcrypt-4.4.19-multibuild.patch 303 BLAKE2B cd342eef2a8ce3e305e544d37373370748690878b4171709028b7b894ad2c76c9188496ab089a46645ad6f9fca09fa4f89cdcb444e1400747ee358c079441661 SHA512 3cbd4bbd0827801faaaa2198eccccb285100cdfc43525b70816121aa70b32dc2c8479c53e16b9e99920926b1b11014dcc19909c4f72a09d9d19fcdb0fa6350cd
DIST libxcrypt-4.4.20-autotools.tar.xz 628688 BLAKE2B 4c23af2a765495758e52c8e95d53d1c1d911fea011375160c4f10e468939734fcc7198cc327fafa4d5c90afa6d4c56dfe6d1b56c2c17bbc015b44cffcd7bcc8b SHA512 5b7504e9d83df12af7d11864e88d1034ed9ce0a837ef061044c5c7fe603d7f3e5613ddf20b30613a7943735120cd058f2117401d59879afcba34ce0e48ae62ee
-DIST libxcrypt-4.4.25-autotools.tar.xz 614652 BLAKE2B f0f4fbf92585fdd8d328aaa68811ea15bdf75778363ea4bc46a75fb76bb065f044708446d655356ebbf2834f8b14bac40fbe700b510b09ce101f750667a04298 SHA512 30f38a54c8e5cbd31c463223913079f9869d38ed38a2f64c57778ac4cf1b6f557caa527073df54ca8396bb7220807b84afcae2f9790f6604af1561a4b277874e
-DIST libxcrypt-4.4.26-autotools.tar.xz 617808 BLAKE2B 9fb8e31b22a085c0d0d5ab2ee3fb69fbebaccee2281e9be7d745218b5b92d949ffd3aa9c385671d58c93a654e16b943a33284b0b4737d52d26e43e2f7840fe74 SHA512 22c72cacd87c5751c4160413738fdf52c8fee300dcad01b289a6eaf892439883b9478103f791f5f53c8e5e2f2dd81057e5fda45e7cf7fdfd3ba93dd811bc01e3
DIST libxcrypt-4.4.27-autotools.tar.xz 619240 BLAKE2B 13dd5730fded0684c8e7321fee8a786663ff1080a6ca248bd718c4f6c9f6bd2853689c347be9f9ae51ebc1281aaa2143dfc020149382d259e7eefe66ac8b675e SHA512 f13ae1e69bf5850abb47a28f9ac3e3b0a8b3123adc53d39fd39a26d53847bf6e3fdca751e086cd80ce4e5d9ee419b09148c247cbe5f663b3019b66f82cdc5f5c
DIST libxcrypt-4.4.28-autotools.tar.xz 618560 BLAKE2B c56d510201651e36cbd950b5a0a32273fdbce1f053109aa5867b2c6a57e2a896c34c981c1a2e732a8f34539b754ebe7f50d1b5bf59f9549a75ad6420921f3e1d SHA512 3c60fd32dea308152c4272522c29668c83e88bea47c98b9fe796ed70f5460ad2a9616ffbe789c03e417b28d3c792361b16031bda3d8bc5b6c06f0ebdc66c8217
EBUILD libxcrypt-4.4.20.ebuild 5797 BLAKE2B 888564715e7df7e8d19461ec5e9654ec6b0423148bfd6c9169d61cd12ebe30a6c8384092748bc5459be370b7bad0d615883dbfc51a5dff28abbd43ad57e79199 SHA512 dde0ff01e886294442779aea22148a8ccf17c47357b379f7d3c93ea49412233536a61972197909759b4957deac66afd703056a8c658f6b40fe78b85b85d0c930
-EBUILD libxcrypt-4.4.25-r1.ebuild 6394 BLAKE2B eb7f84bae0267f33a4f3ea17af79891802395eb361cf04565de6d9fafd31f8ca58bada24cb9c54bbae5ef171b822f4a63c94d777a8f81b69369faf40cc1ae2d0 SHA512 415b9151344e36ea65262fcdf51e3dd37c6e3ab11a2ecf15a575b2cf18740aee168c61f4502409d5d7617b8bc17f38c5decacc013125018ec72841f094b63fc6
-EBUILD libxcrypt-4.4.26-r1.ebuild 6402 BLAKE2B 72b434330bc6e591fb053fa472a64e40c45fa34a5c8c355fd3236f62a024c36bd49bb7420239f559cd3fce87931551d2c5340c705e91a6219d0e0c9f3e976041 SHA512 01fced1a1a1cf6838cd8b57ed141a1df3c30843e29b6b4b93bc1656cb729d79882a2d28916e917aa8c0b687bd6c8d6aab51cfc5e3d0b744a74ba59430049fba3
EBUILD libxcrypt-4.4.27.ebuild 6394 BLAKE2B eb7f84bae0267f33a4f3ea17af79891802395eb361cf04565de6d9fafd31f8ca58bada24cb9c54bbae5ef171b822f4a63c94d777a8f81b69369faf40cc1ae2d0 SHA512 415b9151344e36ea65262fcdf51e3dd37c6e3ab11a2ecf15a575b2cf18740aee168c61f4502409d5d7617b8bc17f38c5decacc013125018ec72841f094b63fc6
-EBUILD libxcrypt-4.4.28.ebuild 6402 BLAKE2B 72b434330bc6e591fb053fa472a64e40c45fa34a5c8c355fd3236f62a024c36bd49bb7420239f559cd3fce87931551d2c5340c705e91a6219d0e0c9f3e976041 SHA512 01fced1a1a1cf6838cd8b57ed141a1df3c30843e29b6b4b93bc1656cb729d79882a2d28916e917aa8c0b687bd6c8d6aab51cfc5e3d0b744a74ba59430049fba3
+EBUILD libxcrypt-4.4.28.ebuild 7323 BLAKE2B f8732eb91bbc1dad9592e7440acac3e47ac18521fd39bfe47a6addde931fda3062cacb78a0993e7c1048b811b59f2f65055dbff9840b29e20ac40a6934fc1658 SHA512 4d68220f64b061a51644f7f35f2be09857d5ece5e2a0a4e18d2a35a270feb59b7794b7d161d7241d826ad7abeff1ca12ad03d73b827fc5c9fcfd2ec9cc70cbb1
MISC metadata.xml 831 BLAKE2B f8761f3758acf79afea36926a6488afb73c433a8faa599aa09a3bbc01b6c733d7264d7b584606158312825f099a1176623c70625a317a837de5bb20501f5ed22 SHA512 826ea578d9d3e651767e8f670d2bbb918c11e26ca5dc1c52ff7fbd513c39bee2d9423ecf16e47e2603f5a8c7b6979fd27eacde84182deb5a67004c9a3be281cb
diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild
deleted file mode 100644
index c9559428437e..000000000000
--- a/sys-libs/libxcrypt/libxcrypt-4.4.25-r1.ebuild
+++ /dev/null
@@ -1,225 +0,0 @@
-# Copyright 2004-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-# NEED_BOOTSTRAP is for developers to quickly generate a tarball
-# for publishing to the tree.
-NEED_BOOTSTRAP="no"
-inherit multibuild multilib python-any-r1 toolchain-funcs multilib-minimal
-
-DESCRIPTION="Extended crypt library for descrypt, md5crypt, bcrypt, and others"
-HOMEPAGE="https://github.com/besser82/libxcrypt"
-if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then
- inherit autotools
- SRC_URI="https://github.com/besser82/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-else
- SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-autotools.tar.xz"
-fi
-
-LICENSE="LGPL-2.1+ public-domain BSD BSD-2"
-SLOT="0/1"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="+compat split-usr static-libs system test"
-REQUIRED_USE="split-usr? ( system )"
-RESTRICT="!test? ( test )"
-
-DEPEND="system? (
- elibc_glibc? (
- sys-libs/glibc[-crypt(+)]
- !sys-libs/glibc[crypt(+)]
- )
- !sys-libs/musl
- )
-"
-RDEPEND="${DEPEND}"
-BDEPEND="dev-lang/perl
- test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') )"
-
-python_check_deps() {
- has_version -b "dev-python/passlib[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
- if has "distcc" ${FEATURES} ; then
- ewarn "Please verify all distcc nodes are using the same versions of GCC (>= 10) and Binutils!"
- ewarn "Older/mismatched versions of GCC may lead to a misbehaving library: bug #823179."
-
- if [[ ${BUILD_TYPE} != "binary" ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 10 ]] ; then
- die "libxcrypt is known to fail to build or be broken at runtime with < GCC 10 (bug #823179)!"
- fi
- fi
-}
-
-pkg_setup() {
- MULTIBUILD_VARIANTS=(
- $(usex compat 'xcrypt_compat' '')
- xcrypt_nocompat
- )
-
- use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- default
-
- # WARNING: Please read on bumping or applying patches!
- #
- # There are two circular dependencies to be aware of:
- # 1)
- # if we're bootstrapping configure and makefiles:
- # libxcrypt -> automake -> perl -> libxcrypt
- #
- # mitigation:
- # toolchain@ manually runs `make dist` after running autoconf + `./configure`
- # and the ebuild uses that.
- # (Don't include the pre-generated Perl artefacts.)
- #
- # solution for future:
- # Upstream are working on producing `make dist` tarballs.
- # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573
- #
- # 2)
- # configure *unconditionally* needs Perl at build time to generate
- # a list of enabled algorithms based on the set passed to `configure`:
- # libxcrypt -> perl -> libxcrypt
- #
- # mitigation:
- # None at the moment.
- #
- # solution for future:
- # Not possible right now. Upstream intend on depending on Perl for further
- # configuration options.
- # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573
- #
- # Therefore, on changes (inc. bumps):
- # * You must check whether upstream have started providing tarballs with bootstrapped
- # auto{conf,make};
- #
- # * diff the build system changes!
- #
- if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then
- # Facilitate our split variant build for compat + non-compat
- eapply "${FILESDIR}"/${PN}-4.4.19-multibuild.patch
- eautoreconf
- fi
-}
-
-src_configure() {
- # Avoid possible "illegal instruction" errors with gold
- # bug #821496
- tc-ld-disable-gold
-
- multibuild_foreach_variant multilib-minimal_src_configure
-}
-
-get_xclibdir() {
- printf -- "%s/%s/%s\n" \
- "$(usex split-usr '' '/usr')" \
- "$(get_libdir)" \
- "$(usex system '' 'xcrypt')"
-}
-
-multilib_src_configure() {
- local -a myconf=(
- --disable-werror
- --libdir="${EPREFIX}"$(get_xclibdir)
- --with-pkgconfigdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
- --includedir="${EPREFIX}/usr/include/$(usex system '' 'xcrypt')"
- )
-
- case "${MULTIBUILD_ID}" in
- xcrypt_compat-*)
- myconf+=(
- --disable-static
- --disable-xcrypt-compat-files
- --enable-obsolete-api=yes
- )
- ;;
- xcrypt_nocompat-*)
- myconf+=(
- --enable-obsolete-api=no
- $(use_enable static-libs static)
- )
- ;;
- *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";;
- esac
-
- ECONF_SOURCE="${S}" econf "${myconf[@]}"
-}
-
-src_compile() {
- multibuild_foreach_variant multilib-minimal_src_compile
-}
-
-multilib_src_test() {
- emake check
-}
-
-src_test() {
- multibuild_foreach_variant multilib-minimal_src_test
-}
-
-src_install() {
- multibuild_foreach_variant multilib-minimal_src_install
-
- (
- shopt -s failglob || die "failglob failed"
-
- # Make sure our man pages do not collide with glibc or man-pages.
- for manpage in "${ED}"/usr/share/man/man3/crypt{,_r}.?*; do
- mv -n "${manpage}" "$(dirname "${manpage}")/xcrypt_$(basename "${manpage}")" \
- || die "mv failed"
- done
- ) || die "failglob error"
-
- # Remove useless stuff from installation
- find "${ED}"/usr/share/doc/${PF} -type l -delete || die
- find "${ED}" -name '*.la' -delete || die
-}
-
-multilib_src_install() {
- emake DESTDIR="${D}" install
-
- # Don't install the libcrypt.so symlink for the "compat" version
- case "${MULTIBUILD_ID}" in
- xcrypt_compat-*)
- rm "${ED}"$(get_xclibdir)/libcrypt$(get_libname) \
- || die "failed to remove extra compat libraries"
- ;;
- xcrypt_nocompat-*)
- if use split-usr; then
- (
- if use static-libs; then
- # .a files are installed to /$(get_libdir) by default
- # Move static libraries to /usr prefix or portage will abort
- shopt -s nullglob || die "failglob failed"
- static_libs=( "${ED}"/$(get_xclibdir)/*.a )
-
- if [[ -n ${static_libs[*]} ]]; then
- dodir "/usr/$(get_xclibdir)"
- mv "${static_libs[@]}" "${ED}/usr/$(get_xclibdir)" \
- || die "Moving static libs failed"
- fi
- fi
-
- if use system; then
- # Move versionless .so symlinks from /$(get_libdir) to /usr/$(get_libdir)
- # to allow linker to correctly find shared libraries.
- shopt -s failglob || die "failglob failed"
-
- for lib_file in "${ED}"$(get_xclibdir)/*$(get_libname); do
- lib_file_basename="$(basename "${lib_file}")"
- lib_file_target="$(basename "$(readlink -f "${lib_file}")")"
- dosym "../../$(get_libdir)/${lib_file_target}" "/usr/$(get_xclibdir)/${lib_file_basename}"
- done
-
- rm "${ED}"$(get_xclibdir)/*$(get_libname) || die "Removing symlinks in incorrect location failed"
- fi
- )
- fi
- ;;
- *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";;
- esac
-}
diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild
deleted file mode 100644
index 9bebb1243fee..000000000000
--- a/sys-libs/libxcrypt/libxcrypt-4.4.26-r1.ebuild
+++ /dev/null
@@ -1,225 +0,0 @@
-# Copyright 2004-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-# NEED_BOOTSTRAP is for developers to quickly generate a tarball
-# for publishing to the tree.
-NEED_BOOTSTRAP="no"
-inherit multibuild multilib python-any-r1 toolchain-funcs multilib-minimal
-
-DESCRIPTION="Extended crypt library for descrypt, md5crypt, bcrypt, and others"
-HOMEPAGE="https://github.com/besser82/libxcrypt"
-if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then
- inherit autotools
- SRC_URI="https://github.com/besser82/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-else
- SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-autotools.tar.xz"
-fi
-
-LICENSE="LGPL-2.1+ public-domain BSD BSD-2"
-SLOT="0/1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="+compat split-usr static-libs system test"
-REQUIRED_USE="split-usr? ( system )"
-RESTRICT="!test? ( test )"
-
-DEPEND="system? (
- elibc_glibc? (
- sys-libs/glibc[-crypt(+)]
- !sys-libs/glibc[crypt(+)]
- )
- !sys-libs/musl
- )
-"
-RDEPEND="${DEPEND}"
-BDEPEND="dev-lang/perl
- test? ( $(python_gen_any_dep 'dev-python/passlib[${PYTHON_USEDEP}]') )"
-
-python_check_deps() {
- has_version -b "dev-python/passlib[${PYTHON_USEDEP}]"
-}
-
-pkg_pretend() {
- if has "distcc" ${FEATURES} ; then
- ewarn "Please verify all distcc nodes are using the same versions of GCC (>= 10) and Binutils!"
- ewarn "Older/mismatched versions of GCC may lead to a misbehaving library: bug #823179."
-
- if [[ ${BUILD_TYPE} != "binary" ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 10 ]] ; then
- die "libxcrypt is known to fail to build or be broken at runtime with < GCC 10 (bug #823179)!"
- fi
- fi
-}
-
-pkg_setup() {
- MULTIBUILD_VARIANTS=(
- $(usex compat 'xcrypt_compat' '')
- xcrypt_nocompat
- )
-
- use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- default
-
- # WARNING: Please read on bumping or applying patches!
- #
- # There are two circular dependencies to be aware of:
- # 1)
- # if we're bootstrapping configure and makefiles:
- # libxcrypt -> automake -> perl -> libxcrypt
- #
- # mitigation:
- # toolchain@ manually runs `make dist` after running autoconf + `./configure`
- # and the ebuild uses that.
- # (Don't include the pre-generated Perl artefacts.)
- #
- # solution for future:
- # Upstream are working on producing `make dist` tarballs.
- # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573
- #
- # 2)
- # configure *unconditionally* needs Perl at build time to generate
- # a list of enabled algorithms based on the set passed to `configure`:
- # libxcrypt -> perl -> libxcrypt
- #
- # mitigation:
- # None at the moment.
- #
- # solution for future:
- # Not possible right now. Upstream intend on depending on Perl for further
- # configuration options.
- # https://github.com/besser82/libxcrypt/issues/134#issuecomment-871833573
- #
- # Therefore, on changes (inc. bumps):
- # * You must check whether upstream have started providing tarballs with bootstrapped
- # auto{conf,make};
- #
- # * diff the build system changes!
- #
- if [[ ${NEED_BOOTSTRAP} == "yes" ]] ; then
- # Facilitate our split variant build for compat + non-compat
- eapply "${FILESDIR}"/${PN}-4.4.19-multibuild.patch
- eautoreconf
- fi
-}
-
-src_configure() {
- # Avoid possible "illegal instruction" errors with gold
- # bug #821496
- tc-ld-disable-gold
-
- multibuild_foreach_variant multilib-minimal_src_configure
-}
-
-get_xclibdir() {
- printf -- "%s/%s/%s\n" \
- "$(usex split-usr '' '/usr')" \
- "$(get_libdir)" \
- "$(usex system '' 'xcrypt')"
-}
-
-multilib_src_configure() {
- local -a myconf=(
- --disable-werror
- --libdir="${EPREFIX}"$(get_xclibdir)
- --with-pkgconfigdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
- --includedir="${EPREFIX}/usr/include/$(usex system '' 'xcrypt')"
- )
-
- case "${MULTIBUILD_ID}" in
- xcrypt_compat-*)
- myconf+=(
- --disable-static
- --disable-xcrypt-compat-files
- --enable-obsolete-api=yes
- )
- ;;
- xcrypt_nocompat-*)
- myconf+=(
- --enable-obsolete-api=no
- $(use_enable static-libs static)
- )
- ;;
- *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";;
- esac
-
- ECONF_SOURCE="${S}" econf "${myconf[@]}"
-}
-
-src_compile() {
- multibuild_foreach_variant multilib-minimal_src_compile
-}
-
-multilib_src_test() {
- emake check
-}
-
-src_test() {
- multibuild_foreach_variant multilib-minimal_src_test
-}
-
-src_install() {
- multibuild_foreach_variant multilib-minimal_src_install
-
- (
- shopt -s failglob || die "failglob failed"
-
- # Make sure our man pages do not collide with glibc or man-pages.
- for manpage in "${ED}"/usr/share/man/man3/crypt{,_r}.?*; do
- mv -n "${manpage}" "$(dirname "${manpage}")/xcrypt_$(basename "${manpage}")" \
- || die "mv failed"
- done
- ) || die "failglob error"
-
- # Remove useless stuff from installation
- find "${ED}"/usr/share/doc/${PF} -type l -delete || die
- find "${ED}" -name '*.la' -delete || die
-}
-
-multilib_src_install() {
- emake DESTDIR="${D}" install
-
- # Don't install the libcrypt.so symlink for the "compat" version
- case "${MULTIBUILD_ID}" in
- xcrypt_compat-*)
- rm "${ED}"$(get_xclibdir)/libcrypt$(get_libname) \
- || die "failed to remove extra compat libraries"
- ;;
- xcrypt_nocompat-*)
- if use split-usr; then
- (
- if use static-libs; then
- # .a files are installed to /$(get_libdir) by default
- # Move static libraries to /usr prefix or portage will abort
- shopt -s nullglob || die "failglob failed"
- static_libs=( "${ED}"/$(get_xclibdir)/*.a )
-
- if [[ -n ${static_libs[*]} ]]; then
- dodir "/usr/$(get_xclibdir)"
- mv "${static_libs[@]}" "${ED}/usr/$(get_xclibdir)" \
- || die "Moving static libs failed"
- fi
- fi
-
- if use system; then
- # Move versionless .so symlinks from /$(get_libdir) to /usr/$(get_libdir)
- # to allow linker to correctly find shared libraries.
- shopt -s failglob || die "failglob failed"
-
- for lib_file in "${ED}"$(get_xclibdir)/*$(get_libname); do
- lib_file_basename="$(basename "${lib_file}")"
- lib_file_target="$(basename "$(readlink -f "${lib_file}")")"
- dosym "../../$(get_libdir)/${lib_file_target}" "/usr/$(get_xclibdir)/${lib_file_basename}"
- done
-
- rm "${ED}"$(get_xclibdir)/*$(get_libname) || die "Removing symlinks in incorrect location failed"
- fi
- )
- fi
- ;;
- *) die "Unexpected MULTIBUILD_ID: ${MULTIBUILD_ID}";;
- esac
-}
diff --git a/sys-libs/libxcrypt/libxcrypt-4.4.28.ebuild b/sys-libs/libxcrypt/libxcrypt-4.4.28.ebuild
index 9bebb1243fee..50aec10c1952 100644
--- a/sys-libs/libxcrypt/libxcrypt-4.4.28.ebuild
+++ b/sys-libs/libxcrypt/libxcrypt-4.4.28.ebuild
@@ -20,17 +20,29 @@ fi
LICENSE="LGPL-2.1+ public-domain BSD BSD-2"
SLOT="0/1"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="+compat split-usr static-libs system test"
REQUIRED_USE="split-usr? ( system )"
RESTRICT="!test? ( test )"
+export CTARGET=${CTARGET:-${CHOST}}
+if [[ ${CTARGET} == ${CHOST} ]] ; then
+ if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then
+ export CTARGET=${CATEGORY/cross-}
+ fi
+fi
+
+is_cross() {
+ local enabled_abis=( $(multilib_get_enabled_abis) )
+ [[ "${#enabled_abis[@]}" -le 1 ]] && [[ ${CHOST} != ${CTARGET} ]]
+}
+
DEPEND="system? (
elibc_glibc? (
- sys-libs/glibc[-crypt(+)]
- !sys-libs/glibc[crypt(+)]
+ ${CATEGORY}/glibc[-crypt(+)]
+ !${CATEGORY}/glibc[crypt(+)]
)
- !sys-libs/musl
+ !${CATEGORY}/musl
)
"
RDEPEND="${DEPEND}"
@@ -114,19 +126,46 @@ src_configure() {
multibuild_foreach_variant multilib-minimal_src_configure
}
+get_xcprefix() {
+ if is_cross; then
+ echo "${EPREFIX}/usr/${CTARGET}"
+ else
+ echo "${EPREFIX}"
+ fi
+}
+
get_xclibdir() {
- printf -- "%s/%s/%s\n" \
+ printf -- "%s/%s/%s/%s\n" \
+ "$(get_xcprefix)" \
"$(usex split-usr '' '/usr')" \
"$(get_libdir)" \
"$(usex system '' 'xcrypt')"
}
+get_xcincludedir() {
+ printf -- "%s/usr/include/%s\n" \
+ "$(get_xcprefix)" \
+ "$(usex system '' 'xcrypt')"
+}
+
+get_xcmandir() {
+ printf -- "%s/usr/share/man\n" \
+ "$(get_xcprefix)"
+}
+
+get_xcpkgconfigdir() {
+ printf -- "%s/usr/%s/pkgconfig\n" \
+ "$(get_xcprefix)" \
+ "$(get_libdir)"
+}
+
multilib_src_configure() {
local -a myconf=(
--disable-werror
- --libdir="${EPREFIX}"$(get_xclibdir)
- --with-pkgconfigdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
- --includedir="${EPREFIX}/usr/include/$(usex system '' 'xcrypt')"
+ --libdir=$(get_xclibdir)
+ --with-pkgconfigdir=$(get_xcpkgconfigdir)
+ --includedir=$(get_xcincludedir)
+ --mandir="$(get_xcmandir)"
)
case "${MULTIBUILD_ID}" in
@@ -168,7 +207,7 @@ src_install() {
shopt -s failglob || die "failglob failed"
# Make sure our man pages do not collide with glibc or man-pages.
- for manpage in "${ED}"/usr/share/man/man3/crypt{,_r}.?*; do
+ for manpage in "${D}$(get_xcmandir)"/man3/crypt{,_r}.?*; do
mv -n "${manpage}" "$(dirname "${manpage}")/xcrypt_$(basename "${manpage}")" \
|| die "mv failed"
done
@@ -177,6 +216,13 @@ src_install() {
# Remove useless stuff from installation
find "${ED}"/usr/share/doc/${PF} -type l -delete || die
find "${ED}" -name '*.la' -delete || die
+
+ # workaround broken upstream cross-* --docdir by installing files in proper locations
+ if is_cross; then
+ insinto "$(get_xcprefix)"/usr/share
+ doins -r "${ED}"/usr/share/doc
+ rm -r "${ED}"/usr/share/doc || die
+ fi
}
multilib_src_install() {
@@ -185,7 +231,7 @@ multilib_src_install() {
# Don't install the libcrypt.so symlink for the "compat" version
case "${MULTIBUILD_ID}" in
xcrypt_compat-*)
- rm "${ED}"$(get_xclibdir)/libcrypt$(get_libname) \
+ rm "${D}"$(get_xclibdir)/libcrypt$(get_libname) \
|| die "failed to remove extra compat libraries"
;;
xcrypt_nocompat-*)
@@ -195,7 +241,7 @@ multilib_src_install() {
# .a files are installed to /$(get_libdir) by default
# Move static libraries to /usr prefix or portage will abort
shopt -s nullglob || die "failglob failed"
- static_libs=( "${ED}"/$(get_xclibdir)/*.a )
+ static_libs=( "${D}"/$(get_xclibdir)/*.a )
if [[ -n ${static_libs[*]} ]]; then
dodir "/usr/$(get_xclibdir)"
@@ -209,13 +255,13 @@ multilib_src_install() {
# to allow linker to correctly find shared libraries.
shopt -s failglob || die "failglob failed"
- for lib_file in "${ED}"$(get_xclibdir)/*$(get_libname); do
+ for lib_file in "${D}"$(get_xclibdir)/*$(get_libname); do
lib_file_basename="$(basename "${lib_file}")"
lib_file_target="$(basename "$(readlink -f "${lib_file}")")"
dosym "../../$(get_libdir)/${lib_file_target}" "/usr/$(get_xclibdir)/${lib_file_basename}"
done
- rm "${ED}"$(get_xclibdir)/*$(get_libname) || die "Removing symlinks in incorrect location failed"
+ rm "${D}"$(get_xclibdir)/*$(get_libname) || die "Removing symlinks in incorrect location failed"
fi
)
fi
diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest
index dee8fc546cd9..6315cf0cdab4 100644
--- a/sys-libs/llvm-libunwind/Manifest
+++ b/sys-libs/llvm-libunwind/Manifest
@@ -1,15 +1,11 @@
DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01
-DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81
DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1
-DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2
DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f
-DIST llvmorg-14.0.0.tar.gz 158057350 BLAKE2B 7052684c620a5eaf52beeee4591adf58cfec9e64a5ee0b24f3d5849fd4df5b006e2906a839cb806ac69c33fab6013c58589b1d74e4fb8558758edcb7d5065064 SHA512 eb5acf96b5e2c59bd07579f7ebe73018b0dd6e2f2d9a5a3c7986320e88febd837d1084b9e5313a2264310342193044629d228337cc76dd2b8527dc0a8bdda999
DIST llvmorg-14.0.1.tar.gz 158074615 BLAKE2B bf80366461580058494eb101646efcd1a8b55a66818a710c2eb8c649bf88c02fe4552cecf4c1c8637a64e7cee8d644bca31aafc804765ed18f2b5e2975dd6c92 SHA512 0a15aa9cfc978a7b03a1659a2affad65ede66d280f5c12bf0beaaf194cd7bdd57ff438b5f40e64c1e1b88f368de99be349e9d30b544d2bbe4a50f0ebed3307f2
-EBUILD llvm-libunwind-11.1.0.ebuild 3222 BLAKE2B e9f47dd9859691d9c629b0eee62cf4e6d9a41e6f74b991410ee4cb1c647c828388a2ea7c1806df7350dcefff9a8178021956f85c7ec2aeb11d702a17e3b32132 SHA512 fc85afa5f560b2e7ad28c1e7d7b0d36b7bc0be408817b66f0d9afb3a811b94c24a282cbb13400685a2ffb00dbf620eb0c94d66fddfe27c9cffc2108f71c11a32
+DIST llvmorg-14.0.3.tar.gz 158092596 BLAKE2B ef901df510ec6bc1242595ec330e9c9ee76e696b077d67a8d62b53608c3d18b2f2d7ea3150864e13d9b37a8ce899ebca946ebe72cbc4538700176e20859ddec2 SHA512 511e93fd9b1c414c38fe9e2649679ac0b16cb04f7f7838569d187b04c542a185e364d6db73e96465026e3b2533649eb75ac95507d12514af32b28bdfb66f2646
EBUILD llvm-libunwind-12.0.1.ebuild 3656 BLAKE2B cdf5e4e4f39ce47ac57ac43f287b5d6a42a61a79d988cdcd52823aadb0c1950abc85f5c1ba8276198e46357fc27f3ab7d06c0e7e9279a9a40e4dc7f4b936aac5 SHA512 c6477d4837e8e0d3ee6c035e0462e0a817752af214ff20ace3b8c3e377c749351cf78bf2ffec3d95085334f6b9a0a23e311f5a50109c390ad5bec60a0bef2dd5
-EBUILD llvm-libunwind-13.0.0.ebuild 3781 BLAKE2B 08d2c7ea77679aa9ea06997ce86d8c8c6c073ae3b8a1ff94be33c6dd5904425ae75632bf8ea3bd00825941e6c7a6fb4879693f33a94b54b9fe054a8ec61eeaec SHA512 b83af0f0a6d45e618d70fd59c7e4ff7dfa815c8eca650a65a4c892756197bc34ea389150bd65f01c6243ea54b0cfac476d5095f657f6a34e72d92967af600aeb
-EBUILD llvm-libunwind-13.0.1.ebuild 3811 BLAKE2B e26f6847c6366294a28924e456cb4a0a23955d71f2351e6a05e8784e830f4c76a1313b83c89cdac20c857218a71848eb85438d261d573b2b3aa9f7955a0e36ba SHA512 58510628813825e4dd9dd75f6a49095636085be26ae77d84b3a418f7412c4a03049891a33e5ae319225a5218f49eb07483a1646b115c0cea0d46d53cfdefb9c5
-EBUILD llvm-libunwind-14.0.0.ebuild 3179 BLAKE2B 5e7cf67a48f80e4b7faae2095063d76865892e1547b76488d9f127f51e8407950842ee156fc7ed132f01b9b3b918b0d450b475a725daf70addc832ba61740449 SHA512 fe6efe833c3f7c5482aa8238393f94803344c67d28927b26946eefa6ad53dd5ebdfd23280d56f531c1821e4f9bb259d831c97ad3f269c8a194da3332d67e7083
-EBUILD llvm-libunwind-14.0.1.ebuild 3179 BLAKE2B 5e7cf67a48f80e4b7faae2095063d76865892e1547b76488d9f127f51e8407950842ee156fc7ed132f01b9b3b918b0d450b475a725daf70addc832ba61740449 SHA512 fe6efe833c3f7c5482aa8238393f94803344c67d28927b26946eefa6ad53dd5ebdfd23280d56f531c1821e4f9bb259d831c97ad3f269c8a194da3332d67e7083
-EBUILD llvm-libunwind-15.0.0.9999.ebuild 3126 BLAKE2B c5f745f265c39e9d4686ac99fe5893b27d2e156208c92d127ddbcfb93aad9e12ed596d5d29774722db6117b3db4962be9a9d355cd2cc7d3f04efe78b2a2ed891 SHA512 dfe17e8eb6fb8b03e25c1662a209530cc4bf6c3d31adeb5dc1a57cc0bead836c60babb027809f5d1b3119d7a7bbcf538ec449b0f766763806c17c351fd775807
+EBUILD llvm-libunwind-13.0.1.ebuild 3810 BLAKE2B c215ba47340bda6a466f6ffcdf978d0d3ab4f4f1f456114f854f53dd3dd04d197ee235c4623d0a3d6e0f26022fef909be2ad04e93679ce357c396c94dc7d3a49 SHA512 96827c5f5838898ac368b79677b6e17fb0545a6a5239f8262622034843777ad4f071f9f80e3c33e0e1a2df334abcefbd7e867c5957d2bf72a1b8416b5b7ac714
+EBUILD llvm-libunwind-14.0.1.ebuild 3186 BLAKE2B e5412e6d38ce37d72640805ee3befc88ea3c0f8ae58e5f2dd2a779ac02cd51e55efe2392d3f7fc9ff1f9b2f135018527fa8e24504910c42e47d2186fa70375fb SHA512 7dc577c803526d2b6180bd1e2364789cf8ace3a7c121be1c38053f8505372b76ede20b97649aafd7ad1ebbc06c0dea405c40b0e39cb5dab139a045e047959e5d
+EBUILD llvm-libunwind-14.0.3.ebuild 3205 BLAKE2B 94ee3640bf57770f52d8bf0adb53ac5eec90884af970ad72e23d0208986a3801bb327a8cf791bd97c2e9414710201e7b61cc5d1d5aef16233b015bf9c4630b4a SHA512 46e2f37981fb1e6e454da41fdeba5d9c3a97173631caf4b619756a1b3bed6b3f4904a73d799ec5fc21a96b4cd46a92033d5fdc113a9be9707c2e1dbc2237b8c6
+EBUILD llvm-libunwind-15.0.0.9999.ebuild 3145 BLAKE2B 37362f37ade47d59ebee5c65337768677a280379541c8468fdd7b31927b4eb93c2576a46838bb320bd526aa2191828cd8f7ae502adafec594b172065f5b90c35 SHA512 132b91d72b419267ef51ef5be15393a882897587f6190d62a3c39b091ef97eaef06e8f1fe62e3d8303c0f23581604357a10bc7b958b5b71ec3316c1a1dcc5e54
MISC metadata.xml 303 BLAKE2B ed0dbe1165e30ee5c3556aaf467abf212e198590a06c70f0de4e2c12060644df928c8f388fadfe776249a77dc000b40881d7254cfdc30f7a41209e2524136adb SHA512 5a69c07b9b1b37646d29a7287f1ba1c9150a5fae60df644266232871b5e4db41c0e8d102e8b873af2bdbf814935e8f8479e1534b8aa47d0ee31e971e2fa4dc50
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0.ebuild
deleted file mode 100644
index 98002383aafb..000000000000
--- a/sys-libs/llvm-libunwind/llvm-libunwind-11.1.0.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="amd64 arm arm64 ~ppc64 ~riscv x86 ~x64-macos"
-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=ON
- -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-13.0.0.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-13.0.0.ebuild
deleted file mode 100644
index 607404341462..000000000000
--- a/sys-libs/llvm-libunwind/llvm-libunwind-13.0.0.ebuild
+++ /dev/null
@@ -1,142 +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_{8..10} )
-inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs
-
-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="amd64 arm arm64 ppc64 ~riscv x86 ~x64-macos"
-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 libcxx llvm/cmake )
-LLVM_TEST_COMPONENTS=( libcxxabi )
-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 use_compiler_rt=OFF
- local libdir=$(get_libdir)
-
- # link to compiler-rt
- # https://github.com/gentoo/gentoo/pull/21516
- if tc-is-clang; then
- local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \
- ${LD_FLAGS} -print-libgcc-file-name)
- if [[ ${compiler_rt} == *libclang_rt* ]]; then
- use_compiler_rt=ON
- fi
- fi
-
- local mycmakeargs=(
- -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
- -DLIBUNWIND_ENABLE_ASSERTIONS=$(usex debug)
- -DLIBUNWIND_ENABLE_STATIC=$(usex static-libs)
- -DLIBUNWIND_TARGET_TRIPLE="${CHOST}"
- -DLLVM_INCLUDE_TESTS=$(usex test)
-
- # support non-native unwinding; given it's small enough,
- # enable it unconditionally
- -DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON
-
- # avoid dependency on libgcc_s if compiler-rt is used
- -DLIBUNWIND_USE_COMPILER_RT=${use_compiler_rt}
- )
- 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
-}
-
-wrap_libcxxabi() {
- local mycmakeargs=(
- -DLIBCXXABI_LIBDIR_SUFFIX=
- -DLIBCXXABI_ENABLE_SHARED=OFF
- -DLIBCXXABI_ENABLE_STATIC=ON
- -DLIBCXXABI_USE_LLVM_UNWINDER=ON
- -DLIBCXXABI_INCLUDE_TESTS=OFF
-
- -DLIBCXXABI_LIBCXX_INCLUDES="${BUILD_DIR}"/libcxx/include/c++/v1
- -DLIBCXXABI_LIBUNWIND_INCLUDES="${S}"/include
- )
-
- local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)"
- local CMAKE_USE_DIR=${WORKDIR}/libcxxabi
- local BUILD_DIR=${BUILD_DIR}/libcxxabi
-
- "${@}"
-}
-
-wrap_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
- )
-
- 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
-
- "${@}"
-}
-
-multilib_src_test() {
- # build local copies of libc++ & libc++abi for testing to avoid
- # circular deps
- wrap_libcxx cmake_src_configure
- wrap_libcxx cmake_build generate-cxx-headers
- wrap_libcxxabi cmake_src_configure
- wrap_libcxxabi cmake_src_compile
- wrap_libcxx cmake_src_compile
- 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-13.0.1.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-13.0.1.ebuild
index 94f7700fd9ca..56489f0dfe52 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-13.0.1.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-13.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 ~ppc ppc64 ~riscv ~x86 ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86 ~x64-macos"
IUSE="debug static-libs test"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-14.0.1.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-14.0.1.ebuild
index 5c46a2ae1249..ad5504a093ce 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-14.0.1.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-14.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 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
IUSE="debug static-libs test"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-14.0.0.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-14.0.3.ebuild
index 5c46a2ae1249..b1b3c2dc140d 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-14.0.0.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-14.0.3.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
CMAKE_ECLASS=cmake
PYTHON_COMPAT=( python3_{8..10} )
@@ -12,20 +12,26 @@ HOMEPAGE="https://github.com/llvm-mirror/libunwind"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x64-macos"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
IUSE="debug static-libs test"
RESTRICT="!test? ( test )"
-RDEPEND="!sys-libs/libunwind"
+RDEPEND="
+ !sys-libs/libunwind
+"
# llvm-6 for new lit options
DEPEND="
- >=sys-devel/llvm-6"
+ >=sys-devel/llvm-6
+"
BDEPEND="
- ${PYTHON_DEPS}
+ !test? (
+ ${PYTHON_DEPS}
+ )
test? (
>=sys-devel/clang-3.9.0
$(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- )"
+ )
+"
LLVM_COMPONENTS=( runtimes libunwind libcxx llvm/cmake cmake )
LLVM_TEST_COMPONENTS=( libcxxabi llvm/utils/llvm-lit )
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-15.0.0.9999.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-15.0.0.9999.ebuild
index 377022eb4033..6d871c89b6b1 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-15.0.0.9999.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-15.0.0.9999.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
CMAKE_ECLASS=cmake
PYTHON_COMPAT=( python3_{8..10} )
@@ -16,16 +16,22 @@ KEYWORDS=""
IUSE="debug static-libs test"
RESTRICT="!test? ( test )"
-RDEPEND="!sys-libs/libunwind"
+RDEPEND="
+ !sys-libs/libunwind
+"
# llvm-6 for new lit options
DEPEND="
- >=sys-devel/llvm-6"
+ >=sys-devel/llvm-6
+"
BDEPEND="
- ${PYTHON_DEPS}
+ !test? (
+ ${PYTHON_DEPS}
+ )
test? (
>=sys-devel/clang-3.9.0
$(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- )"
+ )
+"
LLVM_COMPONENTS=( runtimes libunwind libcxx llvm/cmake cmake )
LLVM_TEST_COMPONENTS=( libcxxabi llvm/utils/llvm-lit )
diff --git a/sys-libs/mtdev/Manifest b/sys-libs/mtdev/Manifest
index 7796d08b38c4..24ad454a8199 100644
--- a/sys-libs/mtdev/Manifest
+++ b/sys-libs/mtdev/Manifest
@@ -1,3 +1,3 @@
DIST mtdev-1.1.6.tar.bz2 295965 BLAKE2B 212cf0f0bea0fc295528c90c6685770e88cb135a714cbf21e53b75ab2eaedd210269d073520e44c5bffafe8a5ecca521221061193725cba916bc2cf703fd5166 SHA512 859fb0803f330ecaae69f80713ff5a5235c0cb00de6d5ac2717ad82cea856a92b866f0c272ecfe743186abcf925f95585149ba4828b4c91555cfeb2f2a1c98f1
-EBUILD mtdev-1.1.6.ebuild 539 BLAKE2B ed8b6f9a950a7cdc582608e278d4e9f7466913be22f898bbfc6220ce75fe284807b4883d67302bf537240c8913fc0b1640dba48d666f44eb47f6a6ffe2e5cac5 SHA512 ad853de1913e8e9746f29f4d97bcf3e9b5a50a6f99ede232d7987a876cb2c934b13d27f38b2abb99c4bba55fe0210b74b4f56dfe54c6a5f8ffb60086208c076d
+EBUILD mtdev-1.1.6.ebuild 546 BLAKE2B 8a6c844e3c94bd879a155c4c3f5807bb304cf52d0e5bbd8bb9d343e6873bd9423c895d357bdc9cc616be68a9b5c6f057722eeab3af28b4d64dd51d0ea686fa07 SHA512 479c9824f71fc5b21c82a7fe025a9cc62376cac9b7ee86bae185edca06e1e1580cebcf6c6a09adb3f4799b505bdb26703139cb2dc55bb545859df6701feb6dde
MISC metadata.xml 340 BLAKE2B ae387fc6a24b33ac775c764ad49e0989d359142010160bb61838392ee2995f994ec33db4c7952e02eb2df135cbf77e4b1fa1c1314668f07d0451234508103586 SHA512 e5b0a64cefc456ffc0403751f70a97761c8de396430256d168ab946788de18edb1bb4bb23a8d529b12d7246562b03f6ea73a618d9d136c0002f3ff7c54ef9a74
diff --git a/sys-libs/mtdev/mtdev-1.1.6.ebuild b/sys-libs/mtdev/mtdev-1.1.6.ebuild
index abbd8dd4b15f..e427325f3747 100644
--- a/sys-libs/mtdev/mtdev-1.1.6.ebuild
+++ b/sys-libs/mtdev/mtdev-1.1.6.ebuild
@@ -9,7 +9,7 @@ SRC_URI="https://bitmath.org/code/mtdev/${P}.tar.bz2"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE=""
DEPEND=">=sys-kernel/linux-headers-2.6.31"
diff --git a/sys-libs/musl/Manifest b/sys-libs/musl/Manifest
index b0c202750245..8352de4eb2b5 100644
--- a/sys-libs/musl/Manifest
+++ b/sys-libs/musl/Manifest
@@ -1,5 +1,3 @@
-AUX ldconfig.in 2552 BLAKE2B c94f9900e8582d707519171c4b61079c801b60c555677b1740b04adbdec9645578b9a8fc91f11413072568f316c795e46a332970f3d2dde5272b0c49a5d60a78 SHA512 59f1b57361196363d3f127366764f05d26c23dbe3d3dbcdba9bd3c8ca26a671fd713b96d31c509d22805c57ada2b596d979a3f5795bcf0a4d3ac7d168f3bf377
-AUX ldconfig.in-r1 2930 BLAKE2B a0b0d4715d9b4c83c4e7036d466dae854c2da1e2393a48cf1c05789a59426f6809118d5ac266a7eb558010c8c47d344b93c8c86847d9d0158d3885b6076e3bf6 SHA512 7e5b5e396965c7e677168f0974460565dd0302639835ca7b0fbf1198e911dc2818dd64424e0e217a710545cbeeb4c31877f05034f16737a822eb02520c258c4e
AUX ldconfig.in-r2 2970 BLAKE2B a6b93ebbbe0caa07a1d32af07d810e1d95d47f2246573e77dfd14edba4403a9d90fd92a7428754c68036ffdbc7e82b926d95538f6617a76a247ab5c9a3c3ba1b SHA512 5b97f473ead0def43656b42511af77c427237e6c36f8d2afad8241ef4e948ed5f0a58dc9e65205c393b530ac810ee1e9f2db008534707283bca0fac2951fe4f9
AUX ldconfig.in-r3 3093 BLAKE2B 146374fe711c660a61e4a23f89ae066e78b8bca6884719c058981069ab92833d7f660b7bd78e7c8b86112944706823f0260d7c63f19d64960f27f44b4e95a6a3 SHA512 ba021cf7d52c001d6ef9a54a91de93240cd7eef9f7a6d7a48ae0c58f934aaea6796979ce80e1cfa9bdc6008023108f3c226440360f8e3134fc23f7fdac0e55b1
AUX musl-1.2.2-gethostid.patch 1028 BLAKE2B fbe554e681c8f0e4bff6ec6fe97c88fd3c7f84ac07580b5f6cfef13b6b27c985f4f0e1d7722f397c59e655b8cd864fa845f9af2aa0eaa9287349f41e71f7a257 SHA512 d2959ef272e3a2742efec3983a41705cfa6424110dbc1eb53a912492cf067881cdbcb8cd864757e6450dda9b47e0cca7dbe3a86d3e6e74e7f33fb7d1723edfde
@@ -11,11 +9,8 @@ DIST musl-1.2.2.tar.gz.asc 490 BLAKE2B 8eb21bcfcbaf9d567c0a2bba468055d4ed86a9fb3
DIST musl-1.2.3.tar.gz 1058642 BLAKE2B b7f667eeb6b9f612c086cb44e69b34da4361b8cb76819fb65f10ef7dd55f48d2f37a32d698dcada965c7c76c3c1cd5621447c4240b6ab2e5b39b2d214e7e302b SHA512 9332f713d3eb7de4369bc0327d99252275ee52abf523ee34b894b24a387f67579787f7c72a46cf652e090cffdb0bc3719a4e7b84dca66890b6a37f12e8ad089c
DIST musl-1.2.3.tar.gz.asc 490 BLAKE2B 4de3d2b2f4e748795b71e144df3ac073c68b0b1b5d40c7a4c3507cc3700c1f47a4ec745f644fa78d82de4cd1915b80be7ac1071fdfd6d468e01361c49ded065d SHA512 01a857dbc3981c90244d4d1d883efe51986652ca5734a741c9d1a4d06c5a22831e85520ac67212268b70c22049317a8f39b3219be182e7e67741add428ac5bc6
DIST musl-getent-93a08815f8598db442d8b766b463d0150ed8e2ab.c 11656 BLAKE2B 1b7bf7102a1eb91a8cb881ed8ca65eb8eed911dd50238e97dc2952d89d4c6ebed6bfd046a2b38776c550b2872ab54ced8cb452fcc2ad56e5616f722debda761f SHA512 7f5b9d934d82deb5f8b23e16169a5d9b99ccab3a4708df06a95d685e1b24a3a3e69b3dcf4942f2f66c12a3d4bf0c5827e2ee2e8c4d7b1997359fccc2ac212dee
-EBUILD musl-1.2.2-r3.ebuild 3814 BLAKE2B 037af7d810ace77441369b4dc9a8513298167bbe7af7a010ad22f6ff7e99aba2cac0b6b8befd51f080fb3c695452ec7a3cecbdeb46cbfd06d2aef2415a96c28e SHA512 48cb68039a1cc61b230d2c9b549f01c40607ef2a0726589e558e412311f7e1ae988c7328f86b61b148ba88f2f107c72b2829ccd8ba16567a52a3840f2286d477
-EBUILD musl-1.2.2-r4.ebuild 4442 BLAKE2B 1cfdf66f7c975e164161cb90d98f20187c2d3ae0a24914206222c7255714a2cd10c4034a6b34018e3c79a2ec6385012c29f39d525ab83ab9b737a04453232e65 SHA512 340f60f7f73702510251a1df1af6a38af715678bad3606aab1e29c132bf5bb5805c39d916a1ff95c5e492a38b1d9a2ba3ae24560287d2fca647aa338eede2de7
-EBUILD musl-1.2.2-r6.ebuild 4457 BLAKE2B 9fde176fc9b78c29480eb8aa85a1b9decd777976c6c44ca298762fb1dd71ee8144a6dede69d82b69eebad48990b8da4522df2818370aac5dc8c7a1436172154c SHA512 fedb1929ffd0f6282c9103567b1f7813b4da523fdfe678cdce3792c8bdb2b866decccb57c4850eb92e6161894ad9409fb3b9b0fe477f8520cefecb3844bbc5b3
-EBUILD musl-1.2.2-r7.ebuild 4457 BLAKE2B 377ee3688dcd2d84bc6d3fc951e5cf158db7a90199a539ecabfc3a5e74294251903ee0097473ad778578bf9e4157e1339dd6955934f78e99b638049380b5cd92 SHA512 95c9be188d0bdb1a550d0b99b36075d67d989211a4890486a60b88becbe30f03cf45102d3e5172a38246c12c9878b90e145438f9f2cddc8a0e61e535935488ca
-EBUILD musl-1.2.2-r8.ebuild 4770 BLAKE2B 9370f99e4dd0a9269787e2daa1749cb1d39b1d2833887d9b69909185f378e8ef5f04f436103e22e3d93b0c233634f479f7530735cdd01c21ac49807c78e59b22 SHA512 3cb5199c935725f56f8a4425114ab766514d61a9c37d5043fe9474e2bc8e5f2ab52a84c8ea0b229059227df8f0bb0e0700ea2b0f2810f4df7f1c461b6fdd5ed7
-EBUILD musl-1.2.3.ebuild 4771 BLAKE2B d6fd446c557bd0e5c776a45aecbca6ad7f290138ad7cc55c93e6beab24fbe01b6ba78294ad94a8f70bc8e72400b79fc292547da8c3c8b7637f25ef5367b1de18 SHA512 e9843b04a7b02d0bc1ed0dcc25d5fe20da15ba3d5165ea7603e187945a6a334a4201c11bfc0e5889723f427efad3910e75bc3ece7f993f292c225306a10d042c
-EBUILD musl-9999.ebuild 4771 BLAKE2B d6fd446c557bd0e5c776a45aecbca6ad7f290138ad7cc55c93e6beab24fbe01b6ba78294ad94a8f70bc8e72400b79fc292547da8c3c8b7637f25ef5367b1de18 SHA512 e9843b04a7b02d0bc1ed0dcc25d5fe20da15ba3d5165ea7603e187945a6a334a4201c11bfc0e5889723f427efad3910e75bc3ece7f993f292c225306a10d042c
+EBUILD musl-1.2.2-r7.ebuild 4453 BLAKE2B 83ec6285f4249b59c69527d09366a7d64a92b571f81a414867ec3693a6901b9bd8a3bb0f7bdfac176c02447836e5ad18dc5ee7a2baa89cc66848bfb8db26dab1 SHA512 ab2f45a6990f29df081136e2dd16da78e9b96a6382daab9743448537ec7039b86f9c720364aefacc82675751147d5cb568ac1e3320c08555202561dfda65b481
+EBUILD musl-1.2.2-r8.ebuild 4766 BLAKE2B 1e9150602dc0a85f6315f4a3590ab18ecb71eeb970dfa5eb586f4922923ca119a9096fdd72bb758cf7d66bcdf7e0df3b2f6d3278a254c452d82e76a4446db59f SHA512 a92051a1bfde9f45b593d4651927255a42f85af4f5271359b933eba46317c0edd5744b63e1c0b1f775c00008979e7473ea029895d1c11ec9a683a2f45a89e389
+EBUILD musl-1.2.3.ebuild 4767 BLAKE2B d4de42b424cf647216c05f629b2aa5958ddfbb9d03c70b7b41277d4879d3e13b8e3a740d1fa30c4ecc773f5084a35868b0e938877497864080bb5e6e3dcee12c SHA512 2bc3fe1994254d28219f32ce96be8ac1f26e8f837569f98ea6a3f414cd1eb07aae4dec41c796374c1e12a262e377129668d47e32351d6ada89aa0e263cba9dd7
+EBUILD musl-9999.ebuild 4767 BLAKE2B d4de42b424cf647216c05f629b2aa5958ddfbb9d03c70b7b41277d4879d3e13b8e3a740d1fa30c4ecc773f5084a35868b0e938877497864080bb5e6e3dcee12c SHA512 2bc3fe1994254d28219f32ce96be8ac1f26e8f837569f98ea6a3f414cd1eb07aae4dec41c796374c1e12a262e377129668d47e32351d6ada89aa0e263cba9dd7
MISC metadata.xml 559 BLAKE2B 8b1093a5278f716b8e21467b325e373a790f54c8ab71b92adc4c87dd569a92b20e08009372065f0f27ced39e3361c9e5e5a2e1bff271753d280439fabbddd3a4 SHA512 a35c13ea32ac8f26984bdb0d70d28a4285f34e32a2b0b17ad98fe3f357fb46c87a1e853377630d4da58fd5953de3fdeb02ee89181394e1815f5e0bbba4cd9f92
diff --git a/sys-libs/musl/files/ldconfig.in b/sys-libs/musl/files/ldconfig.in
deleted file mode 100644
index 19c94d85353a..000000000000
--- a/sys-libs/musl/files/ldconfig.in
+++ /dev/null
@@ -1,144 +0,0 @@
-#!/bin/bash -e
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-ROOT="/"
-
-LDSO_CONF="/etc/ld.so.conf"
-if [[ ! -e $LDSO_CONF ]]; then
- echo "$LDSO_CONF not found" >&2
- exit 1
-fi
-
-LDSO_CONF_DIR=$(dirname $LDSO_CONF)
-
-VERBOSE=0
-
-UPDATE_LINKS=1
-
-get_options() {
- while getopts "vnNXf:C:r:p" opt "$@"; do
- case $opt in
- v)
- echo "ldconfig for musl in Gentoo"
- VERBOSE=1
- ;;
- r)
- ROOT=$OPTARG
- ;;
- f)
- LDSO_CONF=$OPTARG
- ;;
- X)
- UPDATE_LINKS=0
- ;;
- \?)
- echo "Invalid option: -$opt" >&2
- exit 1
- ;;
- n|N|C|p)
- echo "Unimplemented option: -$opt" >&2
- exit 1
- ;;
- esac
- done
-
- if [[ $UPDATE_LINKS == 1 ]]; then
- echo "Updating links is not implemented."
- fi
-}
-
-
-repeated() {
- local l=$1
- local drs="${@:2}"
- for m in $drs; do
- [[ $m == $l ]] && return 0
- done
- return 1
-}
-
-expand() {
- # We are assuming the ld.so.conf's 'include' is not recursive
- local f line l
- local glob="$LDSO_CONF_DIR/$1"
- local drs="${@:2} "
-
- for f in $glob; do
- [[ ! -f $f ]] && continue
- while read line; do
- line=${line%%#*}
- line=${line//:/ }
- line=${line//,/ }
- for l in $line; do
- #We must add this whether or not the directory exists
- repeated $l $drs && continue
- drs+=" $l "
- done
- done < $f
- done
-
- echo $drs
-}
-
-read_ldso_conf() {
- local drs=" "
-
- while read line; do
- # Sanitize the line - see ldconfig(8) for delimiters
- # Note: bash read turns tabs into spaces and read already
- # delimits on newlines with the default $IFS
- line=${line%%#*} # Remove comments
- line=${line//:/ } # Change colon delimiter to space
- line=${line//,/ } # Change comma delimiter to space
-
- next=0
- for l in $line; do
- if [[ $next == 1 ]]; then
- next=0
- drs=$(expand $l $drs)
- elif [[ $l == "include" ]]; then
- next=1
- else
- # glibc's ldconfig silently skips non directories
- if [[ -d $l ]]; then
- repeated $l $drs && continue
- drs+=" $l "
- fi
- fi
- done
- done < $1
-
- echo $drs
-}
-
-sanitize() {
- local drs=$@
-
- repeated "/lib" $drs || drs="/lib $drs"
- repeated "/usr/lib" $drs || drs="/usr/lib $drs"
-
- echo $drs
-}
-
-get_options "$@"
-drs=$(read_ldso_conf "$LDSO_CONF")
-drs=$(sanitize $drs)
-
-ARCH=@@ARCH@@
-LDSO_PATH="/lib/ld-musl-${ARCH}.so.1"
-if [[ ! -e $LDSO_PATH ]]; then
- echo "$LDSO_PATH not found" >&2
- exit 1
-fi
-
-LDSO_ARCH=$(basename $LDSO_PATH)
-LDSO_NAME=${LDSO_ARCH%.so.1}
-ETC_LDSO_PATH=/etc/${LDSO_NAME}.path
-
-X=$(mktemp -p /tmp ${LDSO_NAME}.XXXXXX)
-for d in $drs; do
- echo $d >> $X
-done
-chmod 644 $X
-mv $X $ETC_LDSO_PATH
diff --git a/sys-libs/musl/files/ldconfig.in-r1 b/sys-libs/musl/files/ldconfig.in-r1
deleted file mode 100644
index 7bf254dfd91c..000000000000
--- a/sys-libs/musl/files/ldconfig.in-r1
+++ /dev/null
@@ -1,155 +0,0 @@
-#!/bin/bash -e
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-ROOT="/"
-LDSO_CONF="/etc/ld.so.conf"
-
-VERBOSE=0
-
-UPDATE_LINKS=1
-
-get_options() {
- while getopts "vnNXf:C:r:p" opt "$@"; do
- case $opt in
- v)
- echo "ldconfig for musl in Gentoo"
- VERBOSE=1
- ;;
- r)
- ROOT=${OPTARG}
- LDSO_CONF=${ROOT}${LDSO_CONF}
- LDSO_CONF_DIR=$(dirname ${LDSO_CONF})
- ;;
- f)
- LDSO_CONF=${OPTARG}
- ;;
- X)
- UPDATE_LINKS=0
- ;;
- \?)
- echo "Invalid option: -${opt}" >&2
- exit 1
- ;;
- n|N|C|p)
- echo "Unimplemented option: -${opt}" >&2
- exit 1
- ;;
- esac
- done
-
- if [[ ${UPDATE_LINKS} == 1 ]]; then
- echo "Updating links is not implemented."
- fi
-}
-
-
-repeated() {
- local l=${1}
- local drs="${@:2}"
- for m in ${drs}; do
- [[ ${m} == ${l} ]] && return 0
- done
- return 1
-}
-
-expand() {
- # We are assuming the ld.so.conf's 'include' is not recursive
- local f line l
- local glob="${LDSO_CONF_DIR}/${1}"
- local drs="${@:2} "
-
- for f in ${glob}; do
- [[ ! -f ${f} ]] && continue
- while read line; do
- line=${line%%#*}
- line=${line//:/ }
- line=${line//,/ }
- for l in ${line}; do
- # We must add this whether or not the directory exists
- repeated ${l} ${drs} && continue
- drs+=" ${l} "
- done
- done < ${f}
- done
-
- echo ${drs}
-}
-
-read_ldso_conf() {
- local drs=" "
-
- while read line; do
- # Sanitize the line - see ldconfig(8) for delimiters
- # Note: bash read turns tabs into spaces and read already
- # delimits on newlines with the default $IFS
- line=${line%%#*} # Remove comments
- line=${line//:/ } # Change colon delimiter to space
- line=${line//,/ } # Change comma delimiter to space
-
- next=0
- for l in ${line}; do
- if [[ ${next} == 1 ]]; then
- next=0
- drs=$(expand ${l} ${drs})
- elif [[ ${l} == "include" ]]; then
- next=1
- else
- # glibc's ldconfig silently skips non directories
- if [[ -d ${l} ]]; then
- repeated ${l} ${drs} && continue
- drs+=" ${l} "
- fi
- fi
- done
- done < ${1}
-
- echo ${drs}
-}
-
-sanitize() {
- local drs=$@
-
- repeated "/lib" ${drs} || drs="/lib ${drs}"
- repeated "/usr/lib" ${drs} || drs="/usr/lib ${drs}"
-
- echo ${drs}
-}
-
-changed() {
- [[ -f ${ETC_LDSO_PATH} ]] || return 0
- local current=$(<${ETC_LDSO_PATH})
- current=${current//$'\n'/ }
- [[ ${current} != ${drs} ]] || return 1
-}
-
-get_options "$@"
-
-if [[ ! -e ${LDSO_CONF} ]]; then
- echo "${LDSO_CONF} not found" >&2
- exit 1
-fi
-
-LDSO_CONF_DIR=$(dirname ${LDSO_CONF})
-
-drs=$(read_ldso_conf "${LDSO_CONF}")
-drs=$(sanitize ${drs})
-
-ARCH=@@ARCH@@
-LDSO_PATH="${ROOT}/lib/ld-musl-${ARCH}.so.1"
-if [[ ! -e ${LDSO_PATH} ]]; then
- echo "${LDSO_PATH} not found" >&2
- exit 1
-fi
-
-LDSO_ARCH=$(basename ${LDSO_PATH})
-LDSO_NAME=${LDSO_ARCH%.so.1}
-ETC_LDSO_PATH="${ROOT}/etc/${LDSO_NAME}.path"
-
-changed || exit 0
-X=$(mktemp -p /tmp ${LDSO_NAME}.XXXXXX)
-for d in ${drs}; do
- echo ${d} >> ${X}
-done
-chmod 644 ${X}
-mv ${X} ${ETC_LDSO_PATH}
diff --git a/sys-libs/musl/musl-1.2.2-r3.ebuild b/sys-libs/musl/musl-1.2.2-r3.ebuild
deleted file mode 100644
index 5d2851eac250..000000000000
--- a/sys-libs/musl/musl-1.2.2-r3.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic toolchain-funcs
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://git.musl-libc.org/musl"
- inherit git-r3
-else
- SRC_URI="http://www.musl-libc.org/releases/${P}.tar.gz"
- KEYWORDS="-* amd64 arm arm64 ~mips ppc ppc64 x86"
-fi
-GETENT_COMMIT="93a08815f8598db442d8b766b463d0150ed8e2ab"
-GETENT_FILE="musl-getent-${GETENT_COMMIT}.c"
-SRC_URI+="
- https://dev.gentoo.org/~blueness/musl-misc/getconf.c
- https://gitlab.alpinelinux.org/alpine/aports/-/raw/${GETENT_COMMIT}/main/musl/getent.c -> ${GETENT_FILE}
- https://dev.gentoo.org/~blueness/musl-misc/iconv.c
-"
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-
-DESCRIPTION="Light, fast and simple C library focused on standards-conformance and safety"
-HOMEPAGE="https://musl.libc.org"
-LICENSE="MIT LGPL-2 GPL-2"
-SLOT="0"
-IUSE="headers-only"
-
-QA_SONAME="/usr/lib/libc.so"
-QA_DT_NEEDED="/usr/lib/libc.so"
-
-is_crosscompile() {
- [[ ${CHOST} != ${CTARGET} ]]
-}
-
-just_headers() {
- use headers-only && is_crosscompile
-}
-
-pkg_setup() {
- if [ ${CTARGET} == ${CHOST} ] ; then
- case ${CHOST} in
- *-musl*) ;;
- *) die "Use sys-devel/crossdev to build a musl toolchain" ;;
- esac
- fi
-
- # fix for #667126, copied from glibc ebuild
- # make sure host make.conf doesn't pollute us
- if is_crosscompile || tc-is-cross-compiler ; then
- CHOST=${CTARGET} strip-unsupported-flags
- fi
-}
-
-src_unpack() {
- if [[ ${PV} == 9999 ]]; then
- git-r3_src_unpack
- else
- unpack "${P}.tar.gz"
- fi
- mkdir misc || die
- cp "${DISTDIR}"/getconf.c misc/getconf.c || die
- cp "${DISTDIR}/${GETENT_FILE}" misc/getent.c || die
- cp "${DISTDIR}"/iconv.c misc/iconv.c || die
-}
-
-src_prepare() {
- default
-
- # Expand gethostid instead of being just a stub
- eapply "${FILESDIR}/${PN}-1.2.2-gethostid.patch"
-}
-
-src_configure() {
- tc-getCC ${CTARGET}
- just_headers && export CC=true
-
- local sysroot
- is_crosscompile && sysroot="${EPREFIX}"/usr/${CTARGET}
- ./configure \
- --target=${CTARGET} \
- --prefix=${sysroot}/usr \
- --syslibdir=${sysroot}/lib \
- --disable-gcc-wrapper || die
-}
-
-src_compile() {
- emake obj/include/bits/alltypes.h
- just_headers && return 0
-
- emake
- if [[ ${CATEGORY} != cross-* ]] ; then
- emake -C "${T}" getconf getent iconv \
- CC="$(tc-getCC)" \
- CFLAGS="${CFLAGS}" \
- CPPFLAGS="${CPPFLAGS}" \
- LDFLAGS="${LDFLAGS}" \
- VPATH="${WORKDIR}/misc"
- fi
-
- $(tc-getCC) ${CFLAGS} -c -o libssp_nonshared.o "${FILESDIR}"/stack_chk_fail_local.c || die
- $(tc-getAR) -rcs libssp_nonshared.a libssp_nonshared.o || die
-}
-
-src_install() {
- local target="install"
- just_headers && target="install-headers"
- emake DESTDIR="${D}" ${target}
- just_headers && return 0
-
- # musl provides ldd via a sym link to its ld.so
- local sysroot
- is_crosscompile && sysroot=/usr/${CTARGET}
- local ldso=$(basename "${D}"${sysroot}/lib/ld-musl-*)
- dosym ${sysroot}/lib/${ldso} ${sysroot}/usr/bin/ldd
-
- if [[ ${CATEGORY} != cross-* ]] ; then
- # Fish out of config:
- # ARCH = ...
- # SUBARCH = ...
- # and print $(ARCH)$(SUBARCH).
- local arch=$(awk '{ k[$1] = $3 } END { printf("%s%s", k["ARCH"], k["SUBARCH"]); }' config.mak)
- [[ -e "${D}"/lib/ld-musl-${arch}.so.1 ]] || die
- cp "${FILESDIR}"/ldconfig.in "${T}" || die
- sed -e "s|@@ARCH@@|${arch}|" "${T}"/ldconfig.in > "${T}"/ldconfig || die
- into /
- dosbin "${T}"/ldconfig
- into /usr
- dobin "${T}"/getconf
- dobin "${T}"/getent
- dobin "${T}"/iconv
- echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00musl || die
- doenvd "${T}"/00musl
- dolib.a libssp_nonshared.a
- fi
-}
-
-pkg_postinst() {
- is_crosscompile && return 0
-
- [ "${ROOT}" != "/" ] && return 0
-
- ldconfig || die
-}
diff --git a/sys-libs/musl/musl-1.2.2-r4.ebuild b/sys-libs/musl/musl-1.2.2-r4.ebuild
deleted file mode 100644
index 868577f61ad2..000000000000
--- a/sys-libs/musl/musl-1.2.2-r4.ebuild
+++ /dev/null
@@ -1,167 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eapi8-dosym flag-o-matic toolchain-funcs
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://git.musl-libc.org/musl"
- inherit git-r3
-else
- SRC_URI="http://www.musl-libc.org/releases/${P}.tar.gz"
- KEYWORDS="-* amd64 arm arm64 ~mips ppc ppc64 x86"
-fi
-GETENT_COMMIT="93a08815f8598db442d8b766b463d0150ed8e2ab"
-GETENT_FILE="musl-getent-${GETENT_COMMIT}.c"
-SRC_URI+="
- https://dev.gentoo.org/~blueness/musl-misc/getconf.c
- https://gitlab.alpinelinux.org/alpine/aports/-/raw/${GETENT_COMMIT}/main/musl/getent.c -> ${GETENT_FILE}
- https://dev.gentoo.org/~blueness/musl-misc/iconv.c
-"
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-
-DESCRIPTION="Light, fast and simple C library focused on standards-conformance and safety"
-HOMEPAGE="https://musl.libc.org"
-LICENSE="MIT LGPL-2 GPL-2"
-SLOT="0"
-IUSE="headers-only"
-
-QA_SONAME="/usr/lib/libc.so"
-QA_DT_NEEDED="/usr/lib/libc.so"
-
-is_crosscompile() {
- [[ ${CHOST} != ${CTARGET} ]]
-}
-
-just_headers() {
- use headers-only && is_crosscompile
-}
-
-pkg_setup() {
- if [ ${CTARGET} == ${CHOST} ] ; then
- case ${CHOST} in
- *-musl*) ;;
- *) die "Use sys-devel/crossdev to build a musl toolchain" ;;
- esac
- fi
-
- # fix for #667126, copied from glibc ebuild
- # make sure host make.conf doesn't pollute us
- if is_crosscompile || tc-is-cross-compiler ; then
- CHOST=${CTARGET} strip-unsupported-flags
- fi
-}
-
-src_unpack() {
- if [[ ${PV} == 9999 ]]; then
- git-r3_src_unpack
- else
- unpack "${P}.tar.gz"
- fi
- mkdir misc || die
- cp "${DISTDIR}"/getconf.c misc/getconf.c || die
- cp "${DISTDIR}/${GETENT_FILE}" misc/getent.c || die
- cp "${DISTDIR}"/iconv.c misc/iconv.c || die
-}
-
-src_prepare() {
- default
-
- # Expand gethostid instead of being just a stub
- eapply "${FILESDIR}/${PN}-1.2.2-gethostid.patch"
-}
-
-src_configure() {
- tc-getCC ${CTARGET}
- just_headers && export CC=true
-
- local sysroot
- is_crosscompile && sysroot="${EPREFIX}"/usr/${CTARGET}
- ./configure \
- --target=${CTARGET} \
- --prefix=${sysroot}/usr \
- --syslibdir=${sysroot}/lib \
- --disable-gcc-wrapper || die
-}
-
-src_compile() {
- emake obj/include/bits/alltypes.h
- just_headers && return 0
-
- emake
- if [[ ${CATEGORY} != cross-* ]] ; then
- emake -C "${T}" getconf getent iconv \
- CC="$(tc-getCC)" \
- CFLAGS="${CFLAGS}" \
- CPPFLAGS="${CPPFLAGS}" \
- LDFLAGS="${LDFLAGS}" \
- VPATH="${WORKDIR}/misc"
- fi
-
- $(tc-getCC) ${CFLAGS} -c -o libssp_nonshared.o "${FILESDIR}"/stack_chk_fail_local.c || die
- $(tc-getAR) -rcs libssp_nonshared.a libssp_nonshared.o || die
-}
-
-src_install() {
- local target="install"
- just_headers && target="install-headers"
- emake DESTDIR="${D}" ${target}
- just_headers && return 0
-
- # musl provides ldd via a sym link to its ld.so
- local sysroot
- is_crosscompile && sysroot=/usr/${CTARGET}
- local ldso=$(basename "${D}"${sysroot}/lib/ld-musl-*)
- dosym ${sysroot}/lib/${ldso} ${sysroot}/usr/bin/ldd
-
- if [[ ${CATEGORY} != cross-* ]] ; then
- # Fish out of config:
- # ARCH = ...
- # SUBARCH = ...
- # and print $(ARCH)$(SUBARCH).
- local arch=$(awk '{ k[$1] = $3 } END { printf("%s%s", k["ARCH"], k["SUBARCH"]); }' config.mak)
-
- if [[ ! -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] ; then
- # During cross (using crossdev), when emerging sys-libs/musl,
- # if /usr/lib/libc.so.1 doesn't exist on the system, installation
- # would fail.
- #
- # The musl build system seems to create a symlink:
- # ${D}/lib/ld-musl-${arch}.so.1 -> /usr/lib/libc.so.1 (absolute)
- # During cross, there's no guarantee that the host is using musl
- # so that file may not exist. Use a relative symlink within ${D}
- # instead.
- dosym8 -r /usr/lib/libc.so /lib/ld-musl-${arch}.so.1
-
- # If it's still a dead symlnk, OK, we really do need to abort.
- [[ -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] || die
- fi
-
- cp "${FILESDIR}"/ldconfig.in "${T}" || die
- sed -e "s|@@ARCH@@|${arch}|" "${T}"/ldconfig.in > "${T}"/ldconfig || die
- into /
- dosbin "${T}"/ldconfig
- into /usr
- dobin "${T}"/getconf
- dobin "${T}"/getent
- dobin "${T}"/iconv
- echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00musl || die
- doenvd "${T}"/00musl
- dolib.a libssp_nonshared.a
- fi
-}
-
-pkg_postinst() {
- is_crosscompile && return 0
-
- [ "${ROOT}" != "/" ] && return 0
-
- ldconfig || die
-}
diff --git a/sys-libs/musl/musl-1.2.2-r6.ebuild b/sys-libs/musl/musl-1.2.2-r6.ebuild
deleted file mode 100644
index 79a60682c79f..000000000000
--- a/sys-libs/musl/musl-1.2.2-r6.ebuild
+++ /dev/null
@@ -1,167 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit eapi8-dosym flag-o-matic toolchain-funcs
-if [[ ${PV} == "9999" ]] ; then
- EGIT_REPO_URI="git://git.musl-libc.org/musl"
- inherit git-r3
-else
- SRC_URI="http://www.musl-libc.org/releases/${P}.tar.gz"
- KEYWORDS="-* amd64 arm arm64 ~mips ppc ppc64 x86"
-fi
-GETENT_COMMIT="93a08815f8598db442d8b766b463d0150ed8e2ab"
-GETENT_FILE="musl-getent-${GETENT_COMMIT}.c"
-SRC_URI+="
- https://dev.gentoo.org/~blueness/musl-misc/getconf.c
- https://gitlab.alpinelinux.org/alpine/aports/-/raw/${GETENT_COMMIT}/main/musl/getent.c -> ${GETENT_FILE}
- https://dev.gentoo.org/~blueness/musl-misc/iconv.c
-"
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-
-DESCRIPTION="Light, fast and simple C library focused on standards-conformance and safety"
-HOMEPAGE="https://musl.libc.org"
-LICENSE="MIT LGPL-2 GPL-2"
-SLOT="0"
-IUSE="headers-only"
-
-QA_SONAME="/usr/lib/libc.so"
-QA_DT_NEEDED="/usr/lib/libc.so"
-
-is_crosscompile() {
- [[ ${CHOST} != ${CTARGET} ]]
-}
-
-just_headers() {
- use headers-only && is_crosscompile
-}
-
-pkg_setup() {
- if [ ${CTARGET} == ${CHOST} ] ; then
- case ${CHOST} in
- *-musl*) ;;
- *) die "Use sys-devel/crossdev to build a musl toolchain" ;;
- esac
- fi
-
- # fix for #667126, copied from glibc ebuild
- # make sure host make.conf doesn't pollute us
- if is_crosscompile || tc-is-cross-compiler ; then
- CHOST=${CTARGET} strip-unsupported-flags
- fi
-}
-
-src_unpack() {
- if [[ ${PV} == 9999 ]]; then
- git-r3_src_unpack
- else
- unpack "${P}.tar.gz"
- fi
- mkdir misc || die
- cp "${DISTDIR}"/getconf.c misc/getconf.c || die
- cp "${DISTDIR}/${GETENT_FILE}" misc/getent.c || die
- cp "${DISTDIR}"/iconv.c misc/iconv.c || die
-}
-
-src_prepare() {
- default
-
- # Expand gethostid instead of being just a stub
- eapply "${FILESDIR}/${PN}-1.2.2-gethostid.patch"
-}
-
-src_configure() {
- tc-getCC ${CTARGET}
- just_headers && export CC=true
-
- local sysroot
- is_crosscompile && sysroot="${EPREFIX}"/usr/${CTARGET}
- ./configure \
- --target=${CTARGET} \
- --prefix=${sysroot}/usr \
- --syslibdir=${sysroot}/lib \
- --disable-gcc-wrapper || die
-}
-
-src_compile() {
- emake obj/include/bits/alltypes.h
- just_headers && return 0
-
- emake
- if [[ ${CATEGORY} != cross-* ]] ; then
- emake -C "${T}" getconf getent iconv \
- CC="$(tc-getCC)" \
- CFLAGS="${CFLAGS}" \
- CPPFLAGS="${CPPFLAGS}" \
- LDFLAGS="${LDFLAGS}" \
- VPATH="${WORKDIR}/misc"
- fi
-
- $(tc-getCC) ${CFLAGS} -c -o libssp_nonshared.o "${FILESDIR}"/stack_chk_fail_local.c || die
- $(tc-getAR) -rcs libssp_nonshared.a libssp_nonshared.o || die
-}
-
-src_install() {
- local target="install"
- just_headers && target="install-headers"
- emake DESTDIR="${D}" ${target}
- just_headers && return 0
-
- # musl provides ldd via a sym link to its ld.so
- local sysroot
- is_crosscompile && sysroot=/usr/${CTARGET}
- local ldso=$(basename "${D}"${sysroot}/lib/ld-musl-*)
- dosym ${sysroot}/lib/${ldso} ${sysroot}/usr/bin/ldd
-
- if [[ ${CATEGORY} != cross-* ]] ; then
- # Fish out of config:
- # ARCH = ...
- # SUBARCH = ...
- # and print $(ARCH)$(SUBARCH).
- local arch=$(awk '{ k[$1] = $3 } END { printf("%s%s", k["ARCH"], k["SUBARCH"]); }' config.mak)
-
- if [[ ! -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] ; then
- # During cross (using crossdev), when emerging sys-libs/musl,
- # if /usr/lib/libc.so.1 doesn't exist on the system, installation
- # would fail.
- #
- # The musl build system seems to create a symlink:
- # ${D}/lib/ld-musl-${arch}.so.1 -> /usr/lib/libc.so.1 (absolute)
- # During cross, there's no guarantee that the host is using musl
- # so that file may not exist. Use a relative symlink within ${D}
- # instead.
- dosym8 -r /usr/lib/libc.so /lib/ld-musl-${arch}.so.1
-
- # If it's still a dead symlnk, OK, we really do need to abort.
- [[ -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] || die
- fi
-
- cp "${FILESDIR}"/ldconfig.in-r1 "${T}"/ldconfig.in || die
- sed -e "s|@@ARCH@@|${arch}|" "${T}"/ldconfig.in > "${T}"/ldconfig || die
- into /
- dosbin "${T}"/ldconfig
- into /usr
- dobin "${T}"/getconf
- dobin "${T}"/getent
- dobin "${T}"/iconv
- echo 'LDPATH="include ld.so.conf.d/*.conf"' > "${T}"/00musl || die
- doenvd "${T}"/00musl
- dolib.a libssp_nonshared.a
- fi
-}
-
-pkg_postinst() {
- is_crosscompile && return 0
-
- [ "${ROOT}" != "/" ] && return 0
-
- ldconfig || die
-}
diff --git a/sys-libs/musl/musl-1.2.2-r7.ebuild b/sys-libs/musl/musl-1.2.2-r7.ebuild
index e03ad57480ff..de91db9af87b 100644
--- a/sys-libs/musl/musl-1.2.2-r7.ebuild
+++ b/sys-libs/musl/musl-1.2.2-r7.ebuild
@@ -161,7 +161,7 @@ src_install() {
pkg_postinst() {
is_crosscompile && return 0
- [ "${ROOT}" != "/" ] && return 0
+ [ -n "${ROOT}" ] && return 0
ldconfig || die
}
diff --git a/sys-libs/musl/musl-1.2.2-r8.ebuild b/sys-libs/musl/musl-1.2.2-r8.ebuild
index c83d3cbb6c04..ee20a7659de3 100644
--- a/sys-libs/musl/musl-1.2.2-r8.ebuild
+++ b/sys-libs/musl/musl-1.2.2-r8.ebuild
@@ -167,7 +167,7 @@ src_install() {
pkg_postinst() {
is_crosscompile && return 0
- [ "${ROOT}" != "/" ] && return 0
+ [ -n "${ROOT}" ] && return 0
ldconfig || die
}
diff --git a/sys-libs/musl/musl-1.2.3.ebuild b/sys-libs/musl/musl-1.2.3.ebuild
index 26ac4bb3ec3b..07ab1388cef8 100644
--- a/sys-libs/musl/musl-1.2.3.ebuild
+++ b/sys-libs/musl/musl-1.2.3.ebuild
@@ -167,7 +167,7 @@ src_install() {
pkg_postinst() {
is_crosscompile && return 0
- [ "${ROOT}" != "/" ] && return 0
+ [ -n "${ROOT}" ] && return 0
ldconfig || die
}
diff --git a/sys-libs/musl/musl-9999.ebuild b/sys-libs/musl/musl-9999.ebuild
index 26ac4bb3ec3b..07ab1388cef8 100644
--- a/sys-libs/musl/musl-9999.ebuild
+++ b/sys-libs/musl/musl-9999.ebuild
@@ -167,7 +167,7 @@ src_install() {
pkg_postinst() {
is_crosscompile && return 0
- [ "${ROOT}" != "/" ] && return 0
+ [ -n "${ROOT}" ] && return 0
ldconfig || die
}
diff --git a/sys-libs/ncurses/Manifest b/sys-libs/ncurses/Manifest
index f38467f98052..33bdfaa809e2 100644
--- a/sys-libs/ncurses/Manifest
+++ b/sys-libs/ncurses/Manifest
@@ -6,11 +6,65 @@ AUX ncurses-6.2_p20210123-cppflags-cross.patch 1246 BLAKE2B f2e6d5b3f106639435f1
DIST ncurses-6.2-20210619-patch.sh.bz2 836967 BLAKE2B f210bf25c33f11d67e54a6f416aae75f0a976880ea543408780fd3a8dc992ee8d9999bf15c925c79504be0f30ade4bbfaed763abedd2b2d6b35de65b353a6314 SHA512 b8392bf6c0b7570766ae31a043df311660201265dfe3e2e49425b1e2aa08c72030b5f5b6c7871532897596262c88a7192e3ff2adfdc618f1b9c13c22c373eeb3
DIST ncurses-6.2.tar.gz 3425862 BLAKE2B 6680cd7a369a4cb8234442a70869c283f0db6db9d7da1da2a7a5c519eb862a2c9b9411957d99f9ebb5089cad00b42e1ca6bc0784327461113df2eeaec695913c SHA512 4c1333dcc30e858e8a9525d4b9aefb60000cfc727bc4a1062bace06ffc4639ad9f6e54f6bdda0e3a0e5ea14de995f96b52b3327d9ec633608792c99a1e8d840d
DIST ncurses-6.3-20211026.patch.gz 117363 BLAKE2B 74c6c80271edc3b69d17c891436e48ee0579b3d16dd1bbd42f953be5b6ef07596343abd34f4d508b0cb371c1c0febfec12d65e938739892a617c8b141f599753 SHA512 25a99bc9cb7a18eb8fd16a0f887bae90c2551e0228b077d28f7217e58190f4b19a526350c999922f7394a1b749e834643c1bf5f339248b842717c146a3ec1df4
+DIST ncurses-6.3-20211026.patch.gz.asc 729 BLAKE2B 470aa4aad00d0dfa9924ca3247d720b720563bfe5a3b5c9571acb4c74a7b3fb55adbae6b0aa854eb0e29c56d7949fa1e3b6d959c25681f1b46c23c96a3c0e054 SHA512 276e8a09ee6fddf20be38b9d8a6f93cbafcec51ed17de375b9d2f4f6c34ff546fdbd81083f54aba1a5aaea5c2c691c25754dfca47568c5b70197437420dd2581
DIST ncurses-6.3-20211030.patch.gz 46304 BLAKE2B 6fa0f5223c97dc045117c208b92e75aad61638585506aeed0fa5cd6b215f67d212fc780e527f1281ae77063edb1ef9b3a3671b00d306fe322c3ca1b34c1d4d81 SHA512 90440af3959a17388999f07a3b40f770c5511bceda6a39d4c56f867dc5ae8494e49cfb700eb79e31422ebfd1b1990f6d7912083c688963139446f1e43e9d08c8
+DIST ncurses-6.3-20211030.patch.gz.asc 729 BLAKE2B af1715038a877ebe10660872bed82d536df410f8987508aca7ffed6d19fcdc95a2f5bd8f527b5a30580b07d7c770fade7bac2cfce3e20315faf472eaeb075d5f SHA512 526ff0ff7030cef711e92150fe0f2be7076bf8fe8c7b5fff9ee709c202e747c921479bf3efc2c3da8df2f0d7926de6b1571d03270e49bf64bc539193b0a3020d
DIST ncurses-6.3-20211106.patch.gz 3995 BLAKE2B fbacfd6bfbf64b2935d47f648bd74c93136ea8d17b51e218b80a24695b52246ce8ec01704a0636692bae72815c8b93dec8573570dfd126b19645ec90926e818a SHA512 799819ed01967387fdca4755ab44401f0dc90306f6f771c894ce6702c929e2ff87f45d3e1c2e683cc32bb01553f3332c3a7591a00b7a4bdff93da25307379bdc
+DIST ncurses-6.3-20211106.patch.gz.asc 729 BLAKE2B a60360000338be6f19e9769d901b03917a632d2da961523ea81191b44b04430d757ba0dea30a6b02e29b324dffdc447cf1fe729428138e0e71b138d84aed26b4 SHA512 3902c88633078ccfebda4ce67dbf6e4ccf0e8be296a0193d07ccf51b56dd75c34f326f885330c90d81aa0d487aad513eb797c3916aba682a8ed6673b51483c84
+DIST ncurses-6.3-20211113.patch.gz 116573 BLAKE2B 5c0926fa97628e1e15f10f47e3c668d5867c066b03b80ec1be2cada6a48ec02aca81dbf997718fc1d9bbdd36016de62981eb19e875aac4b4c531c90c0a2f1c48 SHA512 2225859cb6770d31cd5d147f1b767c61ad28534542b64e3e22a9630977f2cabcdad11313d533c0c462f53a6e0dc17cd80985ca759d796658775676720e50998a
+DIST ncurses-6.3-20211113.patch.gz.asc 729 BLAKE2B 16e9645ea71db7afa7b3a52831b04920e9d7d960bfef074361ac77264a28b9bd95a6240e1e3e2e96373615f2915a35acf6d3c21b63a6c4130fd35bf3c65dbbe2 SHA512 7d5b8740512b31bc5b6ace1cc9ebbdf36f2092bc88aa3994f757085ac2add814648daa70c18410a4433fb6327115d9b1762eaf93f9d337de3e10a9707f411f1f
+DIST ncurses-6.3-20211115.patch.gz 2259 BLAKE2B bf3ecd64919707bdf25b1db20d99c68d47d122406bcc4884c370d9b13c3df4bd8fd5e913d3f5ac7dcfbec58f4910d2d42176c32d879095c45e2513cc4c933a22 SHA512 7571da910f51152200d2fa76659d1a253ceb7022c00bfa587188c7ad1f6896ed836eafa3e724933fe3c4bfc03aaf6ac1d51102c5db1a3e37f944f3b15d50f9db
+DIST ncurses-6.3-20211115.patch.gz.asc 729 BLAKE2B 8b853439790674b22029d4d71a65b29019bfc1d2109b44cc2d08a08cc396bd5b784ca8169e4a8edc1fc4e9a08611b89c50f9e3a18781aef0b5a56ea20b335117 SHA512 5427ac588426bba6e9b579faa6c1e1b17839fe2e3327dcd76ac187a46792693da327b279eef35c43e39b08f755cf930e7efe03a753d8b8ba326c039408131d60
+DIST ncurses-6.3-20211120.patch.gz 122226 BLAKE2B 390bb1bee13b83d282ce31a26327bf46000d74851f5d2a363e04915ef73ca5ffaf365255d6696b0c4d10fbb1fb124baa07fa0b841f378b018a37ac1a741aa579 SHA512 37eca2eb6478332e095c139eaa0ff740b8bdf82da4a1c0e990010ffaa3385b38a1c6956ff3f1dc182894384d9face8c265d35faa3ffd0a517c404890b51d177e
+DIST ncurses-6.3-20211120.patch.gz.asc 729 BLAKE2B dd03ec2ae80bfb83ebce5b55410914ce3d5015da2933984b04d2e4d6170b42cccf109bbe2312b4d77c83933f9bad9af7f19e8b1ff23f3791b99238c2d0834891 SHA512 5693a92e631718c6f2bc791e994f5e225a70cd6eab9df5b5da2c180b96480e77c0e5485f48653cffdfe267048175523b7dc42414083500310fb87554043dd19c
+DIST ncurses-6.3-20211127.patch.gz 38780 BLAKE2B b9e6e1c065c7aa97809e65a0af2bb398e7d2ed17c95c35bc4320451ad47efd1a292dfb74d2ff53ff12a68c9cabd6464fe7be40e389c35c4f99ebdc66ec7ad77f SHA512 e2971c8606173da0e044630622506fdef4b83e968b2c501c4e1db9b0b4e54cf93d76570fdacf0edeff986d9cdd728471050c9365881092817b54bd83917fdb25
+DIST ncurses-6.3-20211127.patch.gz.asc 729 BLAKE2B 11ccba2a3310a70b228d0df1b088501ba30f159878662791ce3a294b48e0819c6619dff8763590cdfd74d6e2dc24a5897705808e6da64510d49eea7889e3b1a0 SHA512 8949ab4d8e6b124769bac40becf2853bc0f370814fdd013c7b0c638b9008c1628e5b7cc372f95731549a5cb184ac6d80172f985e114d186a30cebd67268dae61
+DIST ncurses-6.3-20211204.patch.gz 29875 BLAKE2B ce2c8ada23ea01d22baa8d68bb34bfebd3913ce8dd787f1a3825eb07c7a8d83dfe4317e755fc2a16469f6936022a2c45155ea5e3aaf9d01a5caaf124cf1eede2 SHA512 30454d917631cfad474191dbb7e1318e5370e829cab4b63470f51e9c13c953975d999a41cb10a35dfabcf038fe666247d32659f597a6e8a8bac572a4fe6b3fd6
+DIST ncurses-6.3-20211204.patch.gz.asc 729 BLAKE2B b6cc88dd5ac8edc1afa60baccb8af84daf00d8806822f04284c78f0ed132f7fcd839f4d39bc62ff58d48bd3fbf504baab9bb9815a4c236f0bbdbcf23798be71e SHA512 5dbbd09311d4f5bcf1697373945db190925c0d7d1e0aa3d65f83608e34a9c407a74df8553581ec5a49d634e94261ba8f5fac26dbe9718177df173fc4e52543e2
+DIST ncurses-6.3-20211211.patch.gz 5277 BLAKE2B be82f85d49e28a25ef8c26dda4355ac111fab68917d157af05289b518a669e7e42a1f6bf65a813bb3d0747e56cd2723ee1dfa28dc02501ae8350ac74e01c1b39 SHA512 c57157bc401190867aad64f4503e438777606786814de32b38e44df6d73733b91b5c5ca4e173035dd5ccfddbdca2814fdad7a1781f6a144adae4d96d2c6e7e78
+DIST ncurses-6.3-20211211.patch.gz.asc 729 BLAKE2B 01ba5f095250a316fdf30f3f15032804db351c5995dda85820e67cacbb62a0d8a750c4bdfbe6deb9654f01ef124a78ef89b9fe41e4b494561ffa5a79f243c72e SHA512 17973f01a765d121597b3cff6fed2feffe5ff895c4589ea08a86134ba3b9913742f740deba9369d2e7aa89aa033c1925b4d49518d188cae57ba83ff5a3668225
+DIST ncurses-6.3-20211219.patch.gz 6874 BLAKE2B a5b98f1a0fc7b31340713f5aa2a0106184e270ac2312851a5a92ff6947d70d86e9af849a3830f5306c17bad58fbda4640b4cc15715b23cb6e2411b7f86ba0282 SHA512 c38b31e133d336fb50936cc176a04fa076c197c6e6fe56beb840002d6ac65c76c4a3d1f2506122b1095d680ce254a886b52c56194f2fe586edf69355d68f2a45
+DIST ncurses-6.3-20211219.patch.gz.asc 729 BLAKE2B 2ff431a67bf8ac671ec330c8ea7c61e6467cf2c7acb7760ebe035b72a05e675b1945e891d55943f1dfe0fed0c29f91731094ae5d198e11af6d9d0a21534282ed SHA512 7d6a3a0e4a51c885fa2ef37c71f089b7493daa57a59cb02188bef64597657fabb7dc20fce1d55bbd4c368987becdc1dcb89cdce14b45576ce7657522046d8b2b
+DIST ncurses-6.3-20211225.patch.gz 205972 BLAKE2B 34ea7243f7f8ecff69e60a90fc1a0a9b9d69b4e87227714d7ae8f603c3b16f82466c96987e7696fbb45005dbaa2c732f85a79b4fc39a61f8555bac661f27ba53 SHA512 1c2c1687233cfc72cf050883bbee60d88ed179e0fa865dd752985e83add68b5278e498b2e9bd2658b00ef7791e04fc456f43e82fcbb8cb4ed46365bff3c336d8
+DIST ncurses-6.3-20211225.patch.gz.asc 729 BLAKE2B efc0b1a5cf93c71912ab6a7232ddc7c50d2369a955992e6e60f8d86e56aee3cf539c82e082951d5b6215bbde835219588619ae95525b08a54486d3c75ffe3658 SHA512 f2bb524f604883858015a23fbeb698db8483afb88012b3271bfa10935fc71845088b7b5c9fcf950ea9fc2aaa0e2baa4147a8d9f4e42902d3be9f424ce01f7ad4
+DIST ncurses-6.3-20220101.patch.gz 11576 BLAKE2B 76b2ff3bb028bd6ebbcfd0f79e20aa5fd06806279c569e2640e9b6de83899913ef8755c37888a65cdce3ee701db2ef704181de6d36417abfc158fe651d5c0e68 SHA512 07dbf0def9d21a6b701f4f3d18a8f82d5115f8e4d826a57bf5914534029c79aad2b539f60ab5b1795886894f490a9f604acddce3a77cdd474d80db5428568b97
+DIST ncurses-6.3-20220101.patch.gz.asc 729 BLAKE2B c86a9999b42fb312c1452f619269bdc5c1293c19cb8adb2436b5670acf706800a951d266f2c1b78caf1ab10608933e99fc49e761eaef1a658b0ed35fc4816ea9 SHA512 1ddbcdef1e7b5a04dbf0a7b371cd775337ca3ac39247f5215e5c6d099d4758367b98c28a6d5568a08bdcdcb7ff29a7ef2936b12b431d9a0e00eaad2cc78976d4
+DIST ncurses-6.3-20220115.patch.gz 294400 BLAKE2B 97293251ae0c6322df5e4663fca4991e5a1978ad63f1d7d015027dfd6e5dc5e1a52d46683199da2efb5f7f18e7b5424ff7702d34d0dba5eb4ba83dbd85039078 SHA512 0e42e298fa22bf2a463870576ac697ae71320eacfd3ee41bc4b41a229f05603cbdf52bd4e7b724de83c41c2587469deb1e2f876a5e6eabe1df1799263f5c1a87
+DIST ncurses-6.3-20220115.patch.gz.asc 729 BLAKE2B d1288c86c4fdd9890dc8654f81e2e8c956412173a03f26f0018234d6bad6fae6043df8f65d1bf1942c8ea8de68f631d6cd6e8741c932277b85fe9735ec9414a7 SHA512 cf3aafd09105362d8c896d3de73a49ed1f19818a78bd2f2a9f1f8ece218dc01159e65793ef4010d5f5a850fa9057f4f2723d745e6fbca7530a4e8c468005bd41
+DIST ncurses-6.3-20220122.patch.gz 106624 BLAKE2B 33d12cec7df1553cd2c4c3e09152f53ef5b8e86a4cf9bb5afadcc92065f93bd0734f761be088f13f150ec9e8e4d7d8159ea22b2c2bf0bec824e25078d2ea9251 SHA512 c585ba9f3c27314cfb9097d8cf9feb1653014d676670f1644cefffb347ef70a7172ca56c20015531c7117eb23909d55815a295850738499e58c4d5306ec5d747
+DIST ncurses-6.3-20220122.patch.gz.asc 729 BLAKE2B fb8f0e236ec7582b1adfa9c7facb959fe1b88ffcee494308dec6fb4ece6e518d1aae3af5c52e0b82f59660e60c3c01dd56037e1b107e25240a12a03f4300f91a SHA512 609c55b3028a89d4ff09774279435bad58d8d0e179042dafe2c61092f32b5edcad2397cdd8a6eeb7ab61322064fd1b24d8b6b960adc6ede0b7254c3b12284fe1
+DIST ncurses-6.3-20220129.patch.gz 117854 BLAKE2B 1dce0288609407e6bc803ffc8f61b0c33f8a1dcf1c6c4303cd4c730741e4f0b68b7fb7e7b79c1a29dc1c7cde7f2e5aa7b615402b13ee3af7a7c28cae1ce804d0 SHA512 3f573b645f67279e0394352456d844d289be89e2ca70d832d24fe945ce2e6b017273eb305171e5a704492ac3d600de05e5e6c1e268a939bea4b5cfd74b292753
+DIST ncurses-6.3-20220129.patch.gz.asc 729 BLAKE2B a6b8fa01d3a5c8c3f4055757ac23a2700e5b8627214f8606f25c82f560f1637ff2db70a872f43a9aa25b64e3efb3c98bb9980b0673a35ca13073c4f9d5063fa4 SHA512 b2906c5d27312df3c6e79ab486753420ab83e9562d1b3d35971b5ed7f6d15a1ad7f8a3b18bafe3e5e8c6ef9b09d32dade373269ebfbbe9ce5d2b417e0848a5d9
+DIST ncurses-6.3-20220205.patch.gz 48085 BLAKE2B 1d1bd94138379e1947941c87c1ef6cb76e1e5dcf49e04985b59f1d111a524976629f94ece79f9ec93a2c773f8dda9bde0b90b1d34ed1ec51a573d4f1587cad86 SHA512 166f3f6687f52c18169d67e5cd7338aee7ec283898c522e964a4d9f59b20a5754d6865e0268c5297ef7c4b7fc34b8607f00129aecb5b7ab616788a0b98f674b2
+DIST ncurses-6.3-20220205.patch.gz.asc 729 BLAKE2B cace085a89847d3d19eab5049c64afb187b1419dd7ea6ac1e9cd8c037aa83897788cbddc3e97ebe15d32f09e1c5156664e5d3af5727edf6ba6b739025582f984 SHA512 c2176c35fe7044ba82869a928c614faec3a894521b3becbe37277ab95cc5615fb1b33b935d6394a4f75dad15015e5203bcb29001f68fa05420289145729638b3
+DIST ncurses-6.3-20220212.patch.gz 41501 BLAKE2B a0257b9a740a14090e46e85b67a59e754018e77d6484b30eec6f5a3fa84dddf329078b94d4425800ee45a85a31a9c47b1ccc25ed32fdc2f433465c3238e3c8e7 SHA512 1f596ad2f806411a2e89ebc8b74e9d44754fcdd3baa0c727fe610121fe64eb27e1c35871545dd7ab743930e1c49c2d96581aed0a0b37d0a33d2ee7c590c0c42e
+DIST ncurses-6.3-20220212.patch.gz.asc 729 BLAKE2B ed7466b3294baeda59fdd56df93583662a257efb3434ff2817d31994cd5218605ccd535e95ce668f741693fec9fcc5f39223dd67884668aee777bfc9eeff55ce SHA512 3394f9c37a0a1d7e19becb023542534c734f15f030ff725ba54ae010417898be2935d6820f7f7f6d76a0abc3663a9a7f4ccf98a9571c03123f4ba8321ea5c9c1
+DIST ncurses-6.3-20220219.patch.gz 6845 BLAKE2B 660191d5561af0ca763ba8377899ae5793a48e73fec27ef5d9ae00e28cb53edbe96c6ee0480bc1de321ec19cbc8c02f7330861811f3a000b603ce6bdd9921070 SHA512 41d9e29f4f673a6c930f8637dbbf7c55f427aad28088f96ddab824b560b462015dcc21a371551a087adb44dde4797abe9cde2ea07e2537e81216b17b330a14e7
+DIST ncurses-6.3-20220219.patch.gz.asc 729 BLAKE2B e216aa89dbe7d7ea0bafa6d91aca090ac316844ec6d1b1d36da8452bc623e3897722f19b3fb1cc89174ad1aa41a6e8fab4d1b761081090c2bbf338fa027a534d SHA512 555f22dfb585e7b93727f20e46fb6fa77cb633bafdfe6ca3cf3bfabd462a4761f23bb341fbb25c1518b8d9652388f23d671e15f7acecd01755c55d5fa48d3e67
+DIST ncurses-6.3-20220226.patch.gz 5429 BLAKE2B fd0b50218992daf8e5228cf77fe72db651bba494d9699d0057e0e676fc01b699ff4d8f0fb9636faac5ea3fc1936d59d27403a5a5e89f6aa3c42f7c101d9dcb35 SHA512 0d77a955c1f24b7ba58d830cf5c256bcf5946f535b29077484e4ce4ae871a0803fc0db70c66d177ad427da797f7ae30b9a08ff56cd6d0b5f37dd3f231bd67b35
+DIST ncurses-6.3-20220226.patch.gz.asc 729 BLAKE2B e1b83208bf9e9ca9558b3e93f824766765159fcf3b5b4c7a4d92415229a8ef653eb1503446cc5fc8088a354e08cf6fbefb5fcc28e995c8c1718dc77b59552267 SHA512 972f65a645490ef425a6f7314f859cbf8d1aefe5ce6b0847adad3a457d8fd5634af64becb6542e477d14bdacc72aca00fef213c3d5b51f68258ebaef876aec86
+DIST ncurses-6.3-20220305.patch.gz 3732 BLAKE2B b756ad0d8831c2f0eff78dabf1b45adec7888dedc846a91a94cef739c10057f87bbbe7984a4758aa82a8c146d7cc9eeb356b7321bf529fd54480fe334e0ec608 SHA512 4ced572ac32afc2676896e79acac9145c7b138dafa8ebe0c29b2355bf65169a68df3be8fd273b7b957931f98f39ab0f20ada6081be5e11045d32f91f055116c6
+DIST ncurses-6.3-20220305.patch.gz.asc 729 BLAKE2B ef22a7429cffe8dcfebdbd6e339684b7a96c437e3d0bc3ba3eb02c4e8a537909f14306a4d7ce2d0f0752e1a02975b11ad04aabf27a6ba0aa99f4f486b1fe4826 SHA512 68a73ba690722ecca38099521fd9396e7c46dfab9c1a090f0cb7d1a18480bf027a6b7a5e3f1b0ab92a7ad29b05df1c9f7d4c197e13b9e916b6fcb0c54a472e4e
+DIST ncurses-6.3-20220312.patch.gz 3659 BLAKE2B 8ec667f1a615b7fdaf7aeef1c14145ce4c90ad75c8acc474d160c61bf85b13a10fbb6c248a2659dba94db50a9db866c002c2ff429a3bdab8124b1d9b28031364 SHA512 1565f364fa694e2b84f73e9d6ad716b18cdde4f18aeb9bcee8d78d59ed9e995968f7ecea7d307e6738943208ed17bcd459b6b30cc85fa0f7e8ff2c64e2a7b385
+DIST ncurses-6.3-20220312.patch.gz.asc 729 BLAKE2B e5b4cd10b313c7d7f61e3251fddc2c85fbd920b2855d8b9ecb585a1d3acbd5b1bb3a1dcf5043bcb807ab9ecb03c9e711e1625a86ae6adcf6f41b37f8b71b0d21 SHA512 ca819f78d6b5b4c9bfd9e536c6e8ec4ccd9d6c3ad3f00e1e85f5e646e2e5d2b30e8c72ffe91f789a9b8f2268b89f4fbc07798b433a202b263673a187c74774c9
+DIST ncurses-6.3-20220319.patch.gz 3975 BLAKE2B eb9a9896704463e64c0b46721322190cdaaf1bf6d30f3a8b4ef2d815a5cba5dc0ca84674404ef720d0d861cf724b265988e187fec94096f6926633da62933829 SHA512 f642180bc13bc26d8befa48145a66d36f064cd5a4c5891e0eb5e9e463cd7a446280040ce04aa8d7bedacb06d060916fc32ca7f6f66010ee6fbf95c4a367e2c1f
+DIST ncurses-6.3-20220319.patch.gz.asc 729 BLAKE2B e6f763a035db48bdfb1bb7c05aa30f91c0e693efebb0f74eebc696a0f5b4acba3655112af6bf9b0d5bb502a5d67dd3416b4f26dc3be5cb775692f1c958aaa911 SHA512 e07dce52dc16d73dcddfcb982b40cb9fb4ff60097e704e9dc56604262cb30eabf2283a4b436e78a8ddf6abca69cc3fef5a2d93d9145658ad4a36022e2b053406
+DIST ncurses-6.3-20220326.patch.gz 4163 BLAKE2B 20f83d6491dfe4c6833c72582dbddc5f69f4356f78251989afc7e689a2f261f477a8db17cea7c084ab798d3ead34dd1204a595e4718255a6c4a3a9735c36b217 SHA512 62210e6bdf5577fea31e2d793d15ba55bf1c89a855e02ebfe82bc918dec3423f70c49756b08a8fbf1a7cd4311ff09a2751f76a4bb7b2924a3eacc96c2ea25634
+DIST ncurses-6.3-20220326.patch.gz.asc 729 BLAKE2B 65254b2f56dd831be92fa8e89359bd52252dc7959a16d99888c372722bf533a7c2cc3b285452af5bc33f0478bb2f143ed74b5f0b57ad9cc74626b4902f0ccdbc SHA512 a60b780f39424b3f712e5fd81fe397b1eaa476026b497c50edd5c6e460eaf320ea9412a0d0ce122bb7bb3cdfe2f473bad5a0bbf923a22cc1bcd04c621aa5c023
+DIST ncurses-6.3-20220402.patch.gz 11483 BLAKE2B 3210094fb4be4d7c2b751ce3d7b4efee71db0c420f0159db846efcd0ae6e85673069b7c39b943346a3b1a1aeda247493aba6bf832eb192fd3729a9585d0c9a66 SHA512 f8ce6ab6ef5df746ecbc6286c5b46ec53ab0f3fed831878f693c8afe49b34f3f2769f2d3078b81799952f7905bf18217069fce7dd52d3126b7e4dc2ae84f5443
+DIST ncurses-6.3-20220402.patch.gz.asc 729 BLAKE2B 0ab44b4bbf10aa0c67dc1022012b1e156c9ce9c57214c5f92e7b3714cdccead69e0a869b9247b799797680f896dd8e86b3a2ca2e9587f5cc11250711ab36006f SHA512 299b5b7c337f95b0621571261b23d3110c963ed0f584f145238049caad52ba325d6982e138545d02041e297cf78f3f1a0f8d08f9162bb7b61885870382df2e06
+DIST ncurses-6.3-20220409.patch.gz 22728 BLAKE2B 7b8514a9fc8b8ddbf5cbf1f6b0cb45895808f6226db726c206ed8490c3abccbf8a8d49e6bcfdcad806414d8aa0d4fce89faac43c60a38ecf71e613ff01f67224 SHA512 1dde730b7fa12efeb2bc7b98012f3e5529630f0aabde2d877046ef85d541dafb5d64488747ddb559f97a3f25d1ec5f716815f9e6c1ce100f4f308bfa86501d20
+DIST ncurses-6.3-20220409.patch.gz.asc 729 BLAKE2B 9d5321cd1990c68ac812691713d941d467dcd2f95c93f2488cf212d4162415b615397546bc397a2907f1b6ae38907dea6f72e3012ecdafa0054a91d59a94ca64 SHA512 8db2631d35ee1d7d07d906fa194e499ed8239acfbfd215e192a2382b1cd998a9ee3d0ad971aab43edb5e91cdbb2a772835a42cf0645b2541c5c7dab9bf4adf74
+DIST ncurses-6.3-20220416.patch.gz 67896 BLAKE2B c95a993f51beb87bb9891bd0eee08729795a583df50c66df8265cdd5c4adbef83b9fc0339c71aa5137408fe10fa15b0ba4028d5539a0ac66df06c0c1d72e8359 SHA512 2686ed16f5103d76c92cfa4943a8f82d8bc414db074c1c7fb73810b49c6d1d0103988611edf36715d5be24891d0bb2c97ceb08dc4111d0900b5dba6fac12af0a
+DIST ncurses-6.3-20220416.patch.gz.asc 729 BLAKE2B 52ab1bfcac4b5d7b3733c399509ba4c0a6b9531c02a05846d39344488ba3a9196326a8126db225845a3ff1ca3fdd609fa1d9264583e7e57e28d2f4e3b58b4389 SHA512 c5a60d2ef9996c02264e6656a966f4be910a3acbee777a4ff2a5131efd156bdf1d32418a39d6e3c07fcbb59c75554d4cc1e7e9f84f5b59f69e7e4c17fafc749f
+DIST ncurses-6.3-20220423.patch.gz 3394 BLAKE2B ac93810f1e826fc82de72a85effe5479576af14fa86e0dd08b8823b6f4652922f79242e9c867b1c864f0049c9e6d9864d6efc9282ab1e734dc316cac05655f4c SHA512 5dc87f70793d8319c5ee2f07c7f9432b1128e05f3aa2841a74deeaf294e46859f4198483dc783bb80e5e98f81f05cfef148df75a5abc5acfa69a9d6ad3abb702
+DIST ncurses-6.3-20220423.patch.gz.asc 729 BLAKE2B 7225d28f7e61ae584183e98d8c93c7d470e96984aea4e462333f115c329a8c187927196447b8368949986d4b8c96086f5839fde5b442936e76ac797685ee109b SHA512 b0eecbdad448f193fb255bec2fa458d3fea972c181891882d8dc1e09cc325ecda38e98f2d410993f768f513f3a48b9be4b36dbb2919d82a778496b8ef2051565
DIST ncurses-6.3.tar.gz 3583550 BLAKE2B b2c174ac48d587b4d3aa054f04e4ec8bffd8a657a4aff5f090104965c741901e600712c8f8e5e98f3b8a26bc558996a1e14a746f113854832853b855e9d406c3 SHA512 5373f228cba6b7869210384a607a2d7faecfcbfef6dbfcd7c513f4e84fbd8bcad53ac7db2e7e84b95582248c1039dcfc7c4db205a618f7da22a166db482f0105
+DIST ncurses-6.3.tar.gz.sig 438 BLAKE2B d7f9852292110fe7a048a9e38611ea06564b5142cb4cbeb8d99bba752d5df8eeffa3b57e5ca315c14024520bc008b30650e99669c995dca05a798399a0c85d39 SHA512 b9a2a25e0b1854c272bf89c610c81fc0ba061f0296eca5c0079a79cfe310e44eb16c46eb5a0dd018f1ca9114d569c9d5087a2b8e60b0344f1eb97f7c5addafc6
EBUILD ncurses-6.2_p20210619.ebuild 9938 BLAKE2B e051c20b6dc781586bbb7de7986983c33c1c74df8599148b23bf7e82754c696bd814b5e95e77e4cf346dcd08c507fa9d2e90898f4f77921379bfa155f9a2d9aa SHA512 dec3574e7afc360b2bb165c923b8ea27edd30269dbab96027ad4966b16f2a80aca8d677afbac01cbd0c215459d84d9c239fb03a684771485d3d9e0be0430cc45
EBUILD ncurses-6.3.ebuild 10059 BLAKE2B 49d54b5c55b66745ad0cb6467a59cad1f3774378ee42cd655d0a94627c5500ea5f045db81f7e774b0afcb966cfaaf8ef106fd081af5a0f83b90ee029ebe2a998 SHA512 5c2388851eb130dcaae8db6f411bfe441a46dc7ca8a5849978edb8d8ea47fb2aa55354ed600c17c01b59acb36c3027bb1c8cb622c8b43e118848de855f3bade6
EBUILD ncurses-6.3_p20211106-r1.ebuild 10864 BLAKE2B bf3eccc36c80765fbaa165ff7c954b4632a1ac48abb0abff29a20d3caa81a69659205930a3d97b1fa78157799918db2bb4fb2f404a613931ac12fc5b8c1d253d SHA512 2a99d0674be5e8b0f2316857ae0abeb1a98ce3d718ffb0e04a2b61eb5733d4d5b0c3b20e806df8cbe0eb7cc8fb6ec8a5817225b3896846dc3c2f801b1b8255e4
-EBUILD ncurses-6.3_p20211106.ebuild 10921 BLAKE2B 0ce736bbe7a3d2a11fcca2be97a0fe04167098b95ddb9529487338cb81370e2b171f49e8c850a6ee9e1a0a80ec84fb854eeddaf0904d6eb97b81868474c44bd4 SHA512 15272a24a0dc190b7be5290412f1bd3c009327ca18f41eac281fb5ebe5923482040fc425a7a58b367e3988bdb448a56886e387bb8e00e1d1a61ff333112245cd
+EBUILD ncurses-6.3_p20211106.ebuild 10920 BLAKE2B 582eaa0726501b6b5f6e16e7e2281d773629171c21b137923b29dd4a22aa19044ab637857d1b136fc05264d0782107eee6913ba9b5c72c2ac52e2250fed9a8c3 SHA512 18e7458493d49ccbeb70f63118e673a876f77d64b4ac91dc88f7759861eb8821de658e2fed6a22ec3e21d82238efde2cf00710185ecf9356845256e020d3f158
+EBUILD ncurses-6.3_p20220423-r1.ebuild 11761 BLAKE2B 7329164aed9f787b2d3b09c371285b9f4b547f2376b9117e69b32345cfa4f8c66298efdbdf0e50b0ffe317d0de57c733b6ca6b9208f5f0cd54f2b1b419a30c43 SHA512 5a1be1411093eee58defd01c76a221d96000a26c99f97ffe6097560f1fbe0718c2611fe3c0e6655883aae62163cd2955f7d73191ee25a9579de8c828c63a7b24
+EBUILD ncurses-6.3_p20220423.ebuild 11635 BLAKE2B f5fd585e7e8dc204f553bb96328ca328ec5fac45b3284868a97c0278676326427c88387078c08ad16d066860816f89b37d84adf1316bda1fbdb378c6bbbb49f2 SHA512 424abb69383d9c46d1ac2dcdebfaddc2fa6ee298b5133f273eca7ec04d3bb26594c7b027db97a32b35814f5d41fdfa64e462f2ac555487c4e9dad66eb695d16a
MISC metadata.xml 785 BLAKE2B e8c25458707dab787caf921aaa2fc4a6f66a1cc2c7bf23a6dda74bb9d990f92de7507fc81c83858fc55937d044e45523b2c22b65f86a4bb74ae463ead9781493 SHA512 ac0255fbb20bab036908eab351bf6798856e1b97c02258df158650e732d8b367df20bd1e0674b427cb4d9832662cb2cc02b4e77e124388e470b2dd116245cfaf
diff --git a/sys-libs/ncurses/ncurses-6.3_p20211106.ebuild b/sys-libs/ncurses/ncurses-6.3_p20211106.ebuild
index 6c1bee312825..5794b0aceb63 100644
--- a/sys-libs/ncurses/ncurses-6.3_p20211106.ebuild
+++ b/sys-libs/ncurses/ncurses-6.3_p20211106.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -48,7 +48,7 @@ fi
LICENSE="MIT"
# The subslot reflects the SONAME.
SLOT="0/6"
-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 ~loong ~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="ada +cxx debug doc gpm minimal profile static-libs test tinfo trace"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/ncurses/ncurses-6.3_p20220423-r1.ebuild b/sys-libs/ncurses/ncurses-6.3_p20220423-r1.ebuild
new file mode 100644
index 000000000000..8ef705fe2b52
--- /dev/null
+++ b/sys-libs/ncurses/ncurses-6.3_p20220423-r1.ebuild
@@ -0,0 +1,395 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/thomasdickey.asc
+inherit toolchain-funcs multilib multilib-minimal preserve-libs usr-ldscript verify-sig
+
+MY_PV="${PV:0:3}"
+MY_P="${PN}-${MY_PV}"
+DESCRIPTION="Console display library"
+HOMEPAGE="https://www.gnu.org/software/ncurses/ https://invisible-island.net/ncurses/"
+SRC_URI="mirror://gnu/ncurses/${MY_P}.tar.gz
+ https://invisible-island.net/archives/${PN}/${MY_P}.tar.gz
+ verify-sig? ( mirror://gnu/ncurses/${MY_P}.tar.gz.sig )"
+
+if [[ ${PV} == *_p* ]] ; then
+ # Sometimes, after releases, there's no megapatch available yet.
+ #
+ # From upstream README at e.g. https://invisible-island.net/archives/ncurses/6.3/:
+ #
+ # "At times (generally to mark a relatively stable point), I create a rollup
+ # patch, which consists of all changes from the release through the current date."
+ #
+ # This array should contain a list of all the snapshots since the last
+ # release if there's no megapatch available yet.
+ PATCH_DATES=(
+ 20211026
+ 20211030
+ 20211106
+ 20211113
+ 20211115
+ 20211120
+ 20211127
+ 20211204
+ 20211211
+ 20211219
+ 20211225
+ 20220101
+ 20220115
+ 20220122
+ 20220129
+ 20220205
+ 20220212
+ 20220219
+ 20220226
+ 20220305
+ 20220312
+ 20220319
+ 20220326
+ 20220402
+ 20220409
+ 20220416
+
+ # Latest patch is just _pN = $(ver_cut 4)
+ $(ver_cut 4)
+ )
+
+ if [[ -z ${PATCH_DATES[@]} ]] ; then
+ SRC_URI+=" https://invisible-island.net/archives/${PN}/${PV/_p*}/${P/_p/-}.patch.sh.gz"
+ SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${PV/_p*}/${P/_p/-}.patch.sh.gz.asc"
+ else
+ patch_url=
+ my_patch_index=
+ for ((my_patch_index=0; my_patch_index < "${#PATCH_DATES[@]}"; my_patch_index++)); do
+ patch_url="$(printf "https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P}-%s" ${PATCH_DATES[${my_patch_index}]}.patch.gz)"
+ SRC_URI+=" ${patch_url}"
+ SRC_URI+=" verify-sig? ( ${patch_url}.asc )"
+ done
+ unset patch_url
+ unset my_patch_index
+ fi
+fi
+
+LICENSE="MIT"
+# The subslot reflects the SONAME.
+SLOT="0/6"
+#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~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="ada +cxx debug doc gpm minimal profile static-libs test tinfo trace"
+RESTRICT="!test? ( test )"
+
+DEPEND="gpm? ( sys-libs/gpm[${MULTILIB_USEDEP}] )"
+# Block the older ncurses that installed all files w/SLOT=5, bug #557472
+RDEPEND="${DEPEND}
+ !<=sys-libs/ncurses-5.9-r4:5
+ !<sys-libs/slang-2.3.2_pre23
+ !<x11-terms/rxvt-unicode-9.06-r3
+ !<x11-terms/st-0.6-r1"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomasdickey )"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.7-nongnu.patch"
+ "${FILESDIR}/${PN}-6.0-rxvt-unicode-9.15.patch" # bug #192083, bug #383871
+ "${FILESDIR}/${PN}-6.0-pkg-config.patch"
+ "${FILESDIR}/${PN}-6.0-ticlib.patch" # bug #557360
+ "${FILESDIR}/${PN}-6.2_p20210123-cppflags-cross.patch" # bug #601426
+)
+
+src_prepare() {
+ if [[ ${PV} == *_p* ]] ; then
+ if [[ -z ${PATCH_DATES[@]} ]] ; then
+ # If we have a rollup patch, use that instead of the individual ones.
+ eapply "${WORKDIR}"/${P/_p/-}-patch.sh
+ else
+ eapply "${WORKDIR}"/
+ fi
+ fi
+
+ default
+}
+
+src_configure() {
+ # bug #115036
+ unset TERMINFO
+
+ tc-export_build_env BUILD_{CC,CPP}
+
+ # bug #214642
+ BUILD_CPPFLAGS+=" -D_GNU_SOURCE"
+
+ # Build the various variants of ncurses -- narrow, wide, and threaded. #510440
+ # Order matters here -- we want unicode/thread versions to come last so that the
+ # binaries in /usr/bin support both wide and narrow.
+ # The naming is also important as we use these directly with filenames and when
+ # checking configure flags.
+ NCURSES_TARGETS=(
+ ncurses
+ ncursesw
+ ncursest
+ ncursestw
+ )
+
+ # When installing ncurses, we have to use a compatible version of tic.
+ # This comes up when cross-compiling, doing multilib builds, upgrading,
+ # or installing for the first time. Build a local copy of tic whenever
+ # the host version isn't available. bug #249363, bug #557598
+ if ! has_version -b "~sys-libs/${P}:0" ; then
+ local lbuildflags="-static"
+
+ # some toolchains don't quite support static linking
+ local dbuildflags="-Wl,-rpath,${WORKDIR}/lib"
+ case ${CHOST} in
+ *-darwin*) dbuildflags= ;;
+ *-solaris*) dbuildflags="-Wl,-R,${WORKDIR}/lib" ;;
+ esac
+ echo "int main() {}" | \
+ $(tc-getCC) -o x -x c - ${lbuildflags} -pipe >& /dev/null \
+ || lbuildflags="${dbuildflags}"
+
+ # We can't re-use the multilib BUILD_DIR because we run outside of it.
+ BUILD_DIR="${WORKDIR}" \
+ CC=${BUILD_CC} \
+ CHOST=${CBUILD} \
+ CFLAGS=${BUILD_CFLAGS} \
+ CXXFLAGS=${BUILD_CXXFLAGS} \
+ CPPFLAGS=${BUILD_CPPFLAGS} \
+ LDFLAGS="${BUILD_LDFLAGS} ${lbuildflags}" \
+ do_configure cross --without-shared --with-normal --with-progs
+ fi
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local t
+ for t in "${NCURSES_TARGETS[@]}" ; do
+ do_configure "${t}"
+ done
+}
+
+do_configure() {
+ local target=$1
+ shift
+
+ mkdir "${BUILD_DIR}/${target}" || die
+ cd "${BUILD_DIR}/${target}" || die
+
+ local conf=(
+ # We need the basic terminfo files in /etc, bug #37026. We will
+ # add '--with-terminfo-dirs' and then populate /etc/terminfo in
+ # src_install() ...
+ --with-terminfo-dirs="${EPREFIX}/etc/terminfo:${EPREFIX}/usr/share/terminfo"
+
+ # Enable installation of .pc files.
+ --enable-pc-files
+ # This path is used to control where the .pc files are installed.
+ --with-pkg-config-libdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
+
+ # Now the rest of the various standard flags.
+ --with-shared
+ # (Originally disabled until bug #245417 is sorted out, but now
+ # just keeping it off for good, given nobody needed it until now
+ # (2022) and we're trying to phase out bdb.)
+ --without-hashed-db
+ $(use_with ada)
+ $(use_with cxx)
+ $(use_with cxx cxx-binding)
+ --with-cxx-shared
+ $(use_with debug)
+ $(use_with profile)
+ # The configure script uses ldd to parse the linked output which
+ # is flaky for cross-compiling/multilib/ldd versions/etc...
+ $(use_with gpm gpm libgpm.so.1)
+ # Required for building on mingw-w64, and possibly other windows
+ # platforms, bug #639670
+ $(use_enable kernel_Winnt term-driver)
+ --disable-termcap
+ --enable-symlinks
+ --with-rcs-ids
+ --with-manpage-format=normal
+ --enable-const
+ --enable-colorfgbg
+ --enable-hard-tabs
+ --enable-echo
+ $(use_enable !ada warnings)
+ $(use_with debug assertions)
+ $(use_enable !debug leaks)
+ $(use_with debug expanded)
+ $(use_with !debug macros)
+ $(multilib_native_with progs)
+ $(use_with test tests)
+ $(use_with trace)
+ $(use_with tinfo termlib)
+ --disable-stripping
+ --disable-pkg-ldflags
+ )
+
+ if [[ ${target} == ncurses*w ]] ; then
+ conf+=( --enable-widec )
+ else
+ conf+=( --disable-widec )
+ fi
+ if [[ ${target} == ncursest* ]] ; then
+ conf+=( --with-{pthread,reentrant} )
+ else
+ conf+=( --without-{pthread,reentrant} )
+ fi
+
+ # Make sure each variant goes in a unique location.
+ if [[ ${target} == "ncurses" ]] ; then
+ # "ncurses" variant goes into "${EPREFIX}"/usr/include
+ # It is needed on Prefix because the configure script appends
+ # "ncurses" to "${prefix}/include" if "${prefix}" is not /usr.
+ conf+=( --enable-overwrite )
+ else
+ conf+=( --includedir="${EPREFIX}"/usr/include/${target} )
+ fi
+ # See comments in src_configure.
+ if [[ ${target} != "cross" ]] ; then
+ local cross_path="${WORKDIR}/cross"
+ [[ -d ${cross_path} ]] && export TIC_PATH="${cross_path}/progs/tic"
+ fi
+
+ # Force bash until upstream rebuilds the configure script with a newer
+ # version of autotools. bug #545532
+ #CONFIG_SHELL=${EPREFIX}/bin/bash \
+ ECONF_SOURCE="${S}" \
+ econf "${conf[@]}" "$@"
+}
+
+src_compile() {
+ # See comments in src_configure.
+ if ! has_version -b "~sys-libs/${P}:0" ; then
+ # We could possibly merge these two branches but opting to be
+ # conservative when merging some of the Prefix changes.
+
+ if [[ ${CHOST} == *-cygwin* ]] && ! multilib_is_native_abi ; then
+ # We make 'tic$(x)' here, for Cygwin having x=".exe".
+ BUILD_DIR="${WORKDIR}" \
+ do_compile cross -C progs all PROGS='tic$(x)'
+ else
+ BUILD_DIR="${WORKDIR}" \
+ do_compile cross -C progs tic
+ fi
+ fi
+
+ multilib-minimal_src_compile
+}
+
+multilib_src_compile() {
+ local t
+ for t in "${NCURSES_TARGETS[@]}" ; do
+ do_compile "${t}"
+ done
+}
+
+do_compile() {
+ local target=$1
+ shift
+
+ cd "${BUILD_DIR}/${target}" || die
+
+ # A little hack to fix parallel builds ... they break when
+ # generating sources so if we generate the sources first (in
+ # non-parallel), we can then build the rest of the package
+ # in parallel. This is not really a perf hit since the source
+ # generation is quite small.
+ emake -j1 sources
+
+ # For some reason, sources depends on pc-files which depends on
+ # compiled libraries which depends on sources which ...
+ # Manually delete the pc-files file so the install step will
+ # create the .pc files we want.
+ rm -f misc/pc-files || die
+ emake "$@"
+}
+
+multilib_src_install() {
+ local target
+ for target in "${NCURSES_TARGETS[@]}" ; do
+ emake -C "${BUILD_DIR}/${target}" DESTDIR="${D}" install
+ done
+
+ # Move main libraries into /.
+ if multilib_is_native_abi ; then
+ gen_usr_ldscript -a \
+ "${NCURSES_TARGETS[@]}" \
+ $(usex tinfo 'tinfow tinfo' '')
+ fi
+
+ # Don't delete '*.dll.a', needed for linking, bug #631468
+ if ! use static-libs; then
+ find "${ED}"/usr/ -name '*.a' ! -name '*.dll.a' -delete || die
+ fi
+
+ # Build fails to create this ...
+ # -FIXME-
+ # Ugly hackaround for riscv having two parts libdir (bug #689240)
+ # Replace this hack with an official solution once we have one...
+ # -FIXME-
+ dosym $(sed 's@[^/]\+@..@g' <<< $(get_libdir))/share/terminfo \
+ /usr/$(get_libdir)/terminfo
+
+ # Remove obsolete libcurses symlink that is created by the build
+ # system. Technically, this could be also achieved
+ # via --disable-overwrite but it also moves headers implicitly,
+ # and we do not want to do this yet.
+ # bug #836696
+ rm "${ED}"/usr/$(get_libdir)/libcurses* || die
+}
+
+multilib_src_install_all() {
+ # We need the basic terminfo files in /etc for embedded/recovery, bug #37026
+ einfo "Installing basic terminfo files in /etc..."
+ local terms=(
+ # Dumb/simple values that show up when using the in-kernel VT.
+ ansi console dumb linux
+ vt{52,100,102,200,220}
+ # [u]rxvt users used to be pretty common. Probably should drop this
+ # since upstream is dead and people are moving away from it.
+ rxvt{,-unicode}{,-256color}
+ # xterm users are common, as is terminals re-using/spoofing it.
+ xterm xterm-{,256}color
+ # screen is common (and reused by tmux).
+ screen{,-256color}
+ screen.xterm-256color
+ )
+ local x
+ for x in "${terms[@]}"; do
+ local termfile=$(find "${ED}"/usr/share/terminfo/ -name "${x}" 2>/dev/null)
+ local basedir=$(basename "$(dirname "${termfile}")")
+
+ if [[ -n ${termfile} ]] ; then
+ dodir "/etc/terminfo/${basedir}"
+ mv "${termfile}" "${ED}/etc/terminfo/${basedir}/" || die
+ dosym "../../../../etc/terminfo/${basedir}/${x}" \
+ "/usr/share/terminfo/${basedir}/${x}"
+ fi
+ done
+
+ echo "CONFIG_PROTECT_MASK=\"/etc/terminfo\"" | newenvd - 50ncurses
+
+ use minimal && rm -r "${ED}"/usr/share/terminfo*
+ # Because ncurses5-config --terminfo returns the directory we keep it
+ # bug #245374
+ keepdir /usr/share/terminfo
+
+ cd "${S}" || die
+ dodoc ANNOUNCE MANIFEST NEWS README* TO-DO doc/*.doc
+ if use doc ; then
+ docinto html
+ dodoc -r doc/html/
+ fi
+}
+
+pkg_preinst() {
+ preserve_old_lib /$(get_libdir)/libncurses.so.5
+ preserve_old_lib /$(get_libdir)/libncursesw.so.5
+}
+
+pkg_postinst() {
+ preserve_old_lib_notify /$(get_libdir)/libncurses.so.5
+ preserve_old_lib_notify /$(get_libdir)/libncursesw.so.5
+}
diff --git a/sys-libs/ncurses/ncurses-6.3_p20220423.ebuild b/sys-libs/ncurses/ncurses-6.3_p20220423.ebuild
new file mode 100644
index 000000000000..d8a998fbddf9
--- /dev/null
+++ b/sys-libs/ncurses/ncurses-6.3_p20220423.ebuild
@@ -0,0 +1,393 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/thomasdickey.asc
+inherit toolchain-funcs multilib multilib-minimal preserve-libs usr-ldscript verify-sig
+
+MY_PV="${PV:0:3}"
+MY_P="${PN}-${MY_PV}"
+DESCRIPTION="Console display library"
+HOMEPAGE="https://www.gnu.org/software/ncurses/ https://invisible-island.net/ncurses/"
+SRC_URI="mirror://gnu/ncurses/${MY_P}.tar.gz
+ https://invisible-island.net/archives/${PN}/${MY_P}.tar.gz
+ verify-sig? ( mirror://gnu/ncurses/${MY_P}.tar.gz.sig )"
+
+if [[ ${PV} == *_p* ]] ; then
+ # Sometimes, after releases, there's no megapatch available yet.
+ #
+ # From upstream README at e.g. https://invisible-island.net/archives/ncurses/6.3/:
+ #
+ # "At times (generally to mark a relatively stable point), I create a rollup
+ # patch, which consists of all changes from the release through the current date."
+ #
+ # This array should contain a list of all the snapshots since the last
+ # release if there's no megapatch available yet.
+ PATCH_DATES=(
+ 20211026
+ 20211030
+ 20211106
+ 20211113
+ 20211115
+ 20211120
+ 20211127
+ 20211204
+ 20211211
+ 20211219
+ 20211225
+ 20220101
+ 20220115
+ 20220122
+ 20220129
+ 20220205
+ 20220212
+ 20220219
+ 20220226
+ 20220305
+ 20220312
+ 20220319
+ 20220326
+ 20220402
+ 20220409
+ 20220416
+
+ # Latest patch is just _pN = $(ver_cut 4)
+ $(ver_cut 4)
+ )
+
+ if [[ -z ${PATCH_DATES[@]} ]] ; then
+ SRC_URI+=" https://invisible-island.net/archives/${PN}/${PV/_p*}/${P/_p/-}.patch.sh.gz"
+ SRC_URI+=" verify-sig? ( https://invisible-island.net/archives/${PN}/${PV/_p*}/${P/_p/-}.patch.sh.gz.asc"
+ else
+ patch_url=
+ my_patch_index=
+ for ((my_patch_index=0; my_patch_index < "${#PATCH_DATES[@]}"; my_patch_index++)); do
+ patch_url="$(printf "https://invisible-island.net/archives/${PN}/${PV/_p*}/${MY_P}-%s" ${PATCH_DATES[${my_patch_index}]}.patch.gz)"
+ SRC_URI+=" ${patch_url}"
+ SRC_URI+=" verify-sig? ( ${patch_url}.asc )"
+ done
+ unset patch_url
+ unset my_patch_index
+ fi
+fi
+
+LICENSE="MIT"
+# The subslot reflects the SONAME.
+SLOT="0/6"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~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="ada +cxx debug doc gpm minimal profile static-libs test tinfo trace"
+RESTRICT="!test? ( test )"
+
+DEPEND="gpm? ( sys-libs/gpm[${MULTILIB_USEDEP}] )"
+# Block the older ncurses that installed all files w/SLOT=5, bug #557472
+RDEPEND="${DEPEND}
+ !<=sys-libs/ncurses-5.9-r4:5
+ !<sys-libs/slang-2.3.2_pre23
+ !<x11-terms/rxvt-unicode-9.06-r3
+ !<x11-terms/st-0.6-r1"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-thomasdickey )"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.7-nongnu.patch"
+ "${FILESDIR}/${PN}-6.0-rxvt-unicode-9.15.patch" # bug #192083, bug #383871
+ "${FILESDIR}/${PN}-6.0-pkg-config.patch"
+ "${FILESDIR}/${PN}-6.0-ticlib.patch" # bug #557360
+ "${FILESDIR}/${PN}-6.2_p20210123-cppflags-cross.patch" # bug #601426
+)
+
+src_prepare() {
+ if [[ ${PV} == *_p* ]] ; then
+ if [[ -z ${PATCH_DATES[@]} ]] ; then
+ # If we have a rollup patch, use that instead of the individual ones.
+ eapply "${WORKDIR}"/${P/_p/-}-patch.sh
+ else
+ eapply "${WORKDIR}"/
+ fi
+ fi
+
+ default
+}
+
+src_configure() {
+ # bug #115036
+ unset TERMINFO
+
+ tc-export_build_env BUILD_{CC,CPP}
+
+ # bug #214642
+ BUILD_CPPFLAGS+=" -D_GNU_SOURCE"
+
+ # Build the various variants of ncurses -- narrow, wide, and threaded. #510440
+ # Order matters here -- we want unicode/thread versions to come last so that the
+ # binaries in /usr/bin support both wide and narrow.
+ # The naming is also important as we use these directly with filenames and when
+ # checking configure flags.
+ NCURSES_TARGETS=(
+ ncurses
+ ncursesw
+ ncursest
+ ncursestw
+ )
+
+ # When installing ncurses, we have to use a compatible version of tic.
+ # This comes up when cross-compiling, doing multilib builds, upgrading,
+ # or installing for the first time. Build a local copy of tic whenever
+ # the host version isn't available. bug #249363, bug #557598
+ if ! has_version -b "~sys-libs/${P}:0" ; then
+ local lbuildflags="-static"
+
+ # some toolchains don't quite support static linking
+ local dbuildflags="-Wl,-rpath,${WORKDIR}/lib"
+ case ${CHOST} in
+ *-darwin*) dbuildflags= ;;
+ *-solaris*) dbuildflags="-Wl,-R,${WORKDIR}/lib" ;;
+ esac
+ echo "int main() {}" | \
+ $(tc-getCC) -o x -x c - ${lbuildflags} -pipe >& /dev/null \
+ || lbuildflags="${dbuildflags}"
+
+ # We can't re-use the multilib BUILD_DIR because we run outside of it.
+ BUILD_DIR="${WORKDIR}" \
+ CC=${BUILD_CC} \
+ CHOST=${CBUILD} \
+ CFLAGS=${BUILD_CFLAGS} \
+ CXXFLAGS=${BUILD_CXXFLAGS} \
+ CPPFLAGS=${BUILD_CPPFLAGS} \
+ LDFLAGS="${BUILD_LDFLAGS} ${lbuildflags}" \
+ do_configure cross --without-shared --with-normal --with-progs
+ fi
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local t
+ for t in "${NCURSES_TARGETS[@]}" ; do
+ do_configure "${t}"
+ done
+}
+
+do_configure() {
+ local target=$1
+ shift
+
+ mkdir "${BUILD_DIR}/${target}" || die
+ cd "${BUILD_DIR}/${target}" || die
+
+ local conf=(
+ # We need the basic terminfo files in /etc, bug #37026. We will
+ # add '--with-terminfo-dirs' and then populate /etc/terminfo in
+ # src_install() ...
+ --with-terminfo-dirs="${EPREFIX}/etc/terminfo:${EPREFIX}/usr/share/terminfo"
+
+ # Enable installation of .pc files.
+ --enable-pc-files
+ # This path is used to control where the .pc files are installed.
+ --with-pkg-config-libdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
+
+ # Now the rest of the various standard flags.
+ --with-shared
+ # (Originally disabled until bug #245417 is sorted out, but now
+ # just keeping it off for good, given nobody needed it until now
+ # (2022) and we're trying to phase out bdb.)
+ --without-hashed-db
+ $(use_with ada)
+ $(use_with cxx)
+ $(use_with cxx cxx-binding)
+ --with-cxx-shared
+ $(use_with debug)
+ $(use_with profile)
+ # The configure script uses ldd to parse the linked output which
+ # is flaky for cross-compiling/multilib/ldd versions/etc...
+ $(use_with gpm gpm libgpm.so.1)
+ # Required for building on mingw-w64, and possibly other windows
+ # platforms, bug #639670
+ $(use_enable kernel_Winnt term-driver)
+ --disable-termcap
+ --enable-symlinks
+ --with-rcs-ids
+ --with-manpage-format=normal
+ --enable-const
+ --enable-colorfgbg
+ --enable-hard-tabs
+ --enable-echo
+ $(use_enable !ada warnings)
+ $(use_with debug assertions)
+ $(use_enable !debug leaks)
+ $(use_with debug expanded)
+ $(use_with !debug macros)
+ $(multilib_native_with progs)
+ $(use_with test tests)
+ $(use_with trace)
+ $(use_with tinfo termlib)
+ --disable-stripping
+ --disable-pkg-ldflags
+ )
+
+ if [[ ${target} == ncurses*w ]] ; then
+ conf+=( --enable-widec )
+ else
+ conf+=( --disable-widec )
+ fi
+ if [[ ${target} == ncursest* ]] ; then
+ conf+=( --with-{pthread,reentrant} )
+ else
+ conf+=( --without-{pthread,reentrant} )
+ fi
+
+ # Make sure each variant goes in a unique location.
+ if [[ ${target} == "ncurses" ]] ; then
+ # "ncurses" variant goes into "${EPREFIX}"/usr/include
+ # It is needed on Prefix because the configure script appends
+ # "ncurses" to "${prefix}/include" if "${prefix}" is not /usr.
+ conf+=( --enable-overwrite )
+ else
+ conf+=( --includedir="${EPREFIX}"/usr/include/${target} )
+ fi
+ # See comments in src_configure.
+ if [[ ${target} != "cross" ]] ; then
+ local cross_path="${WORKDIR}/cross"
+ [[ -d ${cross_path} ]] && export TIC_PATH="${cross_path}/progs/tic"
+ fi
+
+ # Force bash until upstream rebuilds the configure script with a newer
+ # version of autotools. bug #545532
+ #CONFIG_SHELL=${EPREFIX}/bin/bash \
+ ECONF_SOURCE="${S}" \
+ econf "${conf[@]}" "$@"
+}
+
+src_compile() {
+ # See comments in src_configure.
+ if ! has_version -b "~sys-libs/${P}:0" ; then
+ # We could possibly merge these two branches but opting to be
+ # conservative when merging some of the Prefix changes.
+
+ if [[ ${CHOST} == *-cygwin* ]] && ! multilib_is_native_abi ; then
+ # We make 'tic$(x)' here, for Cygwin having x=".exe".
+ BUILD_DIR="${WORKDIR}" \
+ do_compile cross -C progs all PROGS='tic$(x)'
+ else
+ BUILD_DIR="${WORKDIR}" \
+ do_compile cross -C progs tic
+ fi
+ fi
+
+ multilib-minimal_src_compile
+}
+
+multilib_src_compile() {
+ local t
+ for t in "${NCURSES_TARGETS[@]}" ; do
+ do_compile "${t}"
+ done
+}
+
+do_compile() {
+ local target=$1
+ shift
+
+ cd "${BUILD_DIR}/${target}" || die
+
+ # A little hack to fix parallel builds ... they break when
+ # generating sources so if we generate the sources first (in
+ # non-parallel), we can then build the rest of the package
+ # in parallel. This is not really a perf hit since the source
+ # generation is quite small.
+ emake -j1 sources
+
+ # For some reason, sources depends on pc-files which depends on
+ # compiled libraries which depends on sources which ...
+ # Manually delete the pc-files file so the install step will
+ # create the .pc files we want.
+ rm -f misc/pc-files || die
+ emake "$@"
+}
+
+multilib_src_install() {
+ local target
+ for target in "${NCURSES_TARGETS[@]}" ; do
+ emake -C "${BUILD_DIR}/${target}" DESTDIR="${D}" install
+ done
+
+ # Move main libraries into /.
+ if multilib_is_native_abi ; then
+ gen_usr_ldscript -a \
+ "${NCURSES_TARGETS[@]}" \
+ $(usex tinfo 'tinfow tinfo' '')
+ fi
+
+ if ! tc-is-static-only ; then
+ # Provide a link for -lcurses.
+ ln -sf libncurses$(get_libname) "${ED}"/usr/$(get_libdir)/libcurses$(get_libname) || die
+ fi
+
+ # Don't delete '*.dll.a', needed for linking, bug #631468
+ if ! use static-libs; then
+ find "${ED}"/usr/ -name '*.a' ! -name '*.dll.a' -delete || die
+ fi
+
+ # Build fails to create this ...
+ # -FIXME-
+ # Ugly hackaround for riscv having two parts libdir (bug #689240)
+ # Replace this hack with an official solution once we have one...
+ # -FIXME-
+ dosym $(sed 's@[^/]\+@..@g' <<< $(get_libdir))/share/terminfo \
+ /usr/$(get_libdir)/terminfo
+}
+
+multilib_src_install_all() {
+ # We need the basic terminfo files in /etc for embedded/recovery, bug #37026
+ einfo "Installing basic terminfo files in /etc..."
+ local terms=(
+ # Dumb/simple values that show up when using the in-kernel VT.
+ ansi console dumb linux
+ vt{52,100,102,200,220}
+ # [u]rxvt users used to be pretty common. Probably should drop this
+ # since upstream is dead and people are moving away from it.
+ rxvt{,-unicode}{,-256color}
+ # xterm users are common, as is terminals re-using/spoofing it.
+ xterm xterm-{,256}color
+ # screen is common (and reused by tmux).
+ screen{,-256color}
+ screen.xterm-256color
+ )
+ local x
+ for x in "${terms[@]}"; do
+ local termfile=$(find "${ED}"/usr/share/terminfo/ -name "${x}" 2>/dev/null)
+ local basedir=$(basename "$(dirname "${termfile}")")
+
+ if [[ -n ${termfile} ]] ; then
+ dodir "/etc/terminfo/${basedir}"
+ mv "${termfile}" "${ED}/etc/terminfo/${basedir}/" || die
+ dosym "../../../../etc/terminfo/${basedir}/${x}" \
+ "/usr/share/terminfo/${basedir}/${x}"
+ fi
+ done
+
+ echo "CONFIG_PROTECT_MASK=\"/etc/terminfo\"" | newenvd - 50ncurses
+
+ use minimal && rm -r "${ED}"/usr/share/terminfo*
+ # Because ncurses5-config --terminfo returns the directory we keep it
+ # bug #245374
+ keepdir /usr/share/terminfo
+
+ cd "${S}" || die
+ dodoc ANNOUNCE MANIFEST NEWS README* TO-DO doc/*.doc
+ if use doc ; then
+ docinto html
+ dodoc -r doc/html/
+ fi
+}
+
+pkg_preinst() {
+ preserve_old_lib /$(get_libdir)/libncurses.so.5
+ preserve_old_lib /$(get_libdir)/libncursesw.so.5
+}
+
+pkg_postinst() {
+ preserve_old_lib_notify /$(get_libdir)/libncurses.so.5
+ preserve_old_lib_notify /$(get_libdir)/libncursesw.so.5
+}
diff --git a/sys-libs/obstack-standalone/Manifest b/sys-libs/obstack-standalone/Manifest
index ec75f1d30ed6..b8ef5093899d 100644
--- a/sys-libs/obstack-standalone/Manifest
+++ b/sys-libs/obstack-standalone/Manifest
@@ -1,3 +1,5 @@
DIST obstack-standalone-1.1.tar.gz 11561 BLAKE2B c6eba8ed7e235dcdefcfa7244d6318c6ac4d4b6d12a8f4778753bbc762ec98439724e1e8bbba4b1a04fbbafe56a1634bbb1c604c4d5f30574da39c82d52ca1c1 SHA512 e3a9956133d72a00663cf8d9720e62002142e113e7d67e2338a2bce1bdfac9eefd4290db8add15eabafdf01065f7fe9bb6754faa36b88df819c53d44fa140757
+DIST obstack-standalone-1.2.3.tar.gz 11483 BLAKE2B fa8322c680fed9f876c90e3182271ec0cf45319ae46c5139613ed1c2f1f268c3361654b55a7a28c2043a7365ea89cefcf3eab2190dadbc1f36c20c203fe97945 SHA512 b2bbed19c4ab2714ca794bdcb1a84fad1af964e884d4f3bbe91c9937ca089d92b8472cb05ebe998a9f5c85cb922b9b458db91eff29077bd099942e1ce18e16cc
EBUILD obstack-standalone-1.1.ebuild 755 BLAKE2B 2829d3715a8bbd68076e49b602a95d372d6f776db496d4b5c0266ff926edd5debc1bec8d16493537eff311577c3dedde295249d7202399a28eca3f18f836817d SHA512 402294f0f49d9d57ec9e1c0e43445843ed7f66a557d5825a92d94b9ff007e7669e5bf286f75be558ebcf73eb88d5d827e2c8e852e51d002e57e54c8ca6128a7b
+EBUILD obstack-standalone-1.2.3.ebuild 789 BLAKE2B 5b45a95c93724cf1a3d1f7945af316a14c4a7290d03b00cbf7a968c87060f4431ea3ce37e0a7cf621368028683019a08e79580a1c373ae732e6f767c4e4e0e3d SHA512 ee71929b63374e5fd8310c069036b344539897c140044787c8aaea18156e555a0b389218f1de8cca4d5a35556969f8123ec376958fa3f6e025e44b58963925bb
MISC metadata.xml 339 BLAKE2B c0445ede4840838b57a628ef630bd048863c0e3be6c35587c2e4588d89c972adad634d16db774aff79d01d3f633a8d2831d15a2e32fe8f0d91622250720a98ee SHA512 ed6999db981738a7bd3801e063d403a7149deb67fc09fd7e84c9f126510df7c4c2e2eaa1a237515dca1bd618c773b510ba2f3789c4e2a7415bb186f0c1e0b08a
diff --git a/sys-libs/obstack-standalone/obstack-standalone-1.2.3.ebuild b/sys-libs/obstack-standalone/obstack-standalone-1.2.3.ebuild
new file mode 100644
index 000000000000..25d82f7cdffc
--- /dev/null
+++ b/sys-libs/obstack-standalone/obstack-standalone-1.2.3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools
+
+DESCRIPTION="A standalone library to implement GNU libc's obstack"
+HOMEPAGE="https://github.com/void-linux/musl-obstack"
+SRC_URI="https://github.com/void-linux/musl-obstack/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/musl-obstack-${PV}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86"
+IUSE="static-libs"
+
+DEPEND="!sys-libs/glibc"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+
+ find "${ED}" -name '*.la' -delete || die
+ mv "${ED}"/usr/$(get_libdir)/pkgconfig/{musl-obstack,obstack-standalone}.pc || die
+}
diff --git a/sys-libs/pam/Manifest b/sys-libs/pam/Manifest
index 8bfb16be5f3c..fd5ab3bf459f 100644
--- a/sys-libs/pam/Manifest
+++ b/sys-libs/pam/Manifest
@@ -4,5 +4,5 @@ DIST Linux-PAM-1.5.2.tar.xz 988784 BLAKE2B a835034cd239bc9377419c13dda45276e8e64
DIST pam-1.5.1_p20210622.tar.gz 783068 BLAKE2B c8f13c2ccef73ad367d4fac9a7d1d0d3f3d0e4f1c8eea877d2ab467411cf17cc32c6c9c89e98d94090481d7d7746723175031ba8713a8fb0c3e1976e2854e58b SHA512 5b7a84b9de2d0b0c39cb33e9b8d24aeedca670b998536d74dc497eb7af31cb1f3157f196a01712c4ae273634b51ddad2062f207534b35b1d1a1e790816c8dc1b
DIST pam-doc-1.5.1_p20210610.tar.xz 62308 BLAKE2B b3311e704ddc840b7fd28ea7764e8a0d3fdf508e2e37405acbfa26462a188c480859b3b21bd4a4b4acea70928e68650c216e8fb2d2b6f11ba33f54c6692cf3a2 SHA512 89b88f8ebf0c46f6b25dc0c5f39383ecbef0b12d6ffab388d92026066ee986f9068819cdbf38baaa1e341cd6cc84b1e8d3ad02db121aaf0ddad27e4e6efe26e7
EBUILD pam-1.5.1_p20210622-r1.ebuild 3657 BLAKE2B 4d7a89405ec69b2d1fbf1adf7b53ed35ffe0b8dc5b596fe3cbe32105ed796a78889a52745cb63c452a4016498121dc8946f2e43f105de53e367fbdf0f78718e7 SHA512 51712d3efa358e5b95ce697093242b43b7a262164151d3625adebaae0bb68ec871930285bdfb9f8fabaa007f8b1e9a4ca8b22168259c0d3635d4db05d8bb946e
-EBUILD pam-1.5.2-r1.ebuild 3528 BLAKE2B d289b4b882a814fa43b632c0495a278508f33389c3f76e046ba0dcdabbaf83a857d97da59539589df35bade49cfad21b7f19990225856941a447e5b7c52304c9 SHA512 e59be7b16afd4ccf0ee5745921b3b8cbfc1be2f4fd2c7c032bea60c2dd60facf6b40a6bc26e202fe2d61b6a890b66788c7a21587248e69223232265d081c3d58
+EBUILD pam-1.5.2-r1.ebuild 3535 BLAKE2B 3ad71741e26c68aa88d4603186107bb2ea51a243351e1b9eeed2cd82b83e2c9bf6ec645f7ea046e4b5e6a733ef46403208f306f20006b9aafca9e26aa6d15156 SHA512 95c68bc34697df3f84a60ebbc3f8555f89201f9dc00fe54d2f51a6bf19cd0d440024df7f02f71c3305db732694ea9053d6ebfc6f921e51b5dc58963418c55c7d
MISC metadata.xml 754 BLAKE2B 366be10dfcad98d08ea3e307312b9a84804efa6f097f1505907e03fcb5fd0f4a6067d1d85d8dc5fec82c54c2e1fdf76d716d09a45571b0994d96130a2506e1f5 SHA512 b453a62fc3cdc6c0e7cd9c15d1bf72f8641a8eefc3971304ae5f0db3c93b69ca5f9c059e70b94ce799b15b640831c8832707fc1740f1361aca3a28c30ae8f366
diff --git a/sys-libs/pam/pam-1.5.2-r1.ebuild b/sys-libs/pam/pam-1.5.2-r1.ebuild
index 41f8b3081e5a..f9e430139fd8 100644
--- a/sys-libs/pam/pam-1.5.2-r1.ebuild
+++ b/sys-libs/pam/pam-1.5.2-r1.ebuild
@@ -19,7 +19,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"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="audit berkdb debug nis selinux"
BDEPEND="
diff --git a/sys-libs/pam_wrapper/Manifest b/sys-libs/pam_wrapper/Manifest
index 68512bd4f558..c67f180fbbe7 100644
--- a/sys-libs/pam_wrapper/Manifest
+++ b/sys-libs/pam_wrapper/Manifest
@@ -1,6 +1,6 @@
DIST pam_wrapper-1.1.3.tar.gz 118034 BLAKE2B 3c05e74959f3c6dfd35575cc5f9187f4a328bfd7ce002e327fc135c82a4ff1513add87678360992d2010c124f7fd95e4bdb3c0a4d63418d9711069cbc200e417 SHA512 3b7cbd25ae7dd73f4a0c64a7762cdeb38cc7ba6e8b4e18e79aceffea09241d520aa884de88e4105b5957b2b18ec682be6568a6bfccf82b9354a3510cd2cd98eb
DIST pam_wrapper-1.1.4.tar.gz 170882 BLAKE2B fa0a789f6fd6f809c7ef80e354e886b5f1f0b4212060dc0e388a44701e4a1f49635b8f47344156ad65cd273660e3b0a806480c37875a830e2f5d8e56c4ec0818 SHA512 3b68dc6d7815707d74d1340facd9c2de4dff3934402ac2c2632371b39c41a75744434744ed7308e157be03a03a941405638cadb6f34995de56fb1f5f45d37de2
-EBUILD pam_wrapper-1.1.3-r3.ebuild 1553 BLAKE2B a32635c0f16be69ee7dc64470175bae8ff793af6ce2a712e6d81b3d7d81d81ab0ec32eab24b0630b191c51d648fafa22db7e2758a15622d7652d203cf9b633b2 SHA512 7ac097214afb444942597508b80083d6e45f04efed76aa0fb7b36434cab6cf8e6347d61ece14ee3046c050942d81f3e0a3ec38371cc7e72819aaa008def4ee8a
+EBUILD pam_wrapper-1.1.3-r3.ebuild 1550 BLAKE2B ad42d928558d3d0a0cd8c55bc4cde8e61440f338b6d2de4156d9f17d8966fc0646f16ce2e3bb088fc2aa3fdb627aa05678f872761bca8d5c954b088331bf2bef SHA512 217fd515e1c8794e985d8c33a508267699daeccc687daafc7fea90b7e091d5c423b2f73eb846f9e6d433e59b15329224625e4514705dc2955c41fda2c2c56d13
EBUILD pam_wrapper-1.1.3.ebuild 1107 BLAKE2B c7c5c853f9a1afb50dbf13cb3ffbce7cf53e8c8dba0bcf18e58ea54357c8e4a34e464e6d920d4d86e28a76b345f350067f7a9392f20f4d07be2fc354a6fb9928 SHA512 565455f3861d0b67f6cf68962816f9059002b37bc66221903f4b5e5555db0d3351323b2de3e5bb372b92ba0c4095a4ab1daf1209234243d93b5c3e8905a8855a
EBUILD pam_wrapper-1.1.4-r1.ebuild 1622 BLAKE2B aa09ef9ccb37c088a82f99fb63830f79ae72ac3c4f6237e05e56213bbe2cfa2872ddb1002cf93e556205c81b70a601dfe4d2b5a2b8d812b9df18abcec184d7e7 SHA512 6116461461c5ff46323f712d54718129e466896476f91e5ef339a64294686366d9146b7fb16b5e0ae7d6126907c54e4997008c822d7bb703534acd973628c2fa
MISC metadata.xml 250 BLAKE2B e398673dd1a3522ccddb89a82a53fc2578d8e0777ec46f889d01d618609a22958d91699beef513c7912799e0e8ff985200f7c67bba941235da25c24cd4b48f09 SHA512 16834c3cbecd0dd5a9c8c311d2b8ebc63d8cd72c5891498f4f0048988993c104aadd4e24e632bf54071c11f810716432e89e4afab029555875f9f52794daa6e9
diff --git a/sys-libs/pam_wrapper/pam_wrapper-1.1.3-r3.ebuild b/sys-libs/pam_wrapper/pam_wrapper-1.1.3-r3.ebuild
index fe217064fb7f..027e3ad09a9b 100644
--- a/sys-libs/pam_wrapper/pam_wrapper-1.1.3-r3.ebuild
+++ b/sys-libs/pam_wrapper/pam_wrapper-1.1.3-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -17,7 +17,7 @@ SRC_URI="
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc x86"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ~ppc64 ~riscv sparc x86"
IUSE="test"
RESTRICT="!test? ( test )"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest
index 7cf033a65fac..2c8602e69ad3 100644
--- a/sys-libs/readline/Manifest
+++ b/sys-libs/readline/Manifest
@@ -13,6 +13,7 @@ DIST readline81-001.sig 95 BLAKE2B 7d523d0fc21772cb03aa4b5d66ea58c1a99a6c0e4a862
DIST readline81-002 1242 BLAKE2B 4ef0404561bd8fc5559e8e5f675ae3f12c467178a8954f54f3204c2d09b88ccec960e807c7af0ec3514b489b676e3be51f98351e377fb18e3d7a14d33d4da69d SHA512 e47c029b82cf3a4d44e85c4348f7e059c56726694c190d84186822e1c893e1c006e7ec75f33c36791112f81abd792a2e2fdae9a65cd128f3c89ff4ffd9a9a1ff
DIST readline81-002.sig 95 BLAKE2B f85d8a65a7326d6e18b32a603c8082952e4b81c53b6a1bd1668c7b0064ecce6ef04a41e2a042f100424dbf152e4db32c0e07ff166d528aa4ac4a9bd7daf4c7a9 SHA512 9ffb6cc697499f57df133f5ebaa5e43e24d33df5eb450d94a02144e94c833424218594c366f21101bc63331c1d532299c9327bd447d0a9849b0bbedce206a5b7
EBUILD readline-8.1_p1-r1.ebuild 5901 BLAKE2B 4819d05f4e9fd9d9b737eeabf14cedb8e9879f554b5bb3cf2d1635ca2f3e07382e16dec40693aa183d51cd2d362f77942614f5129392363ce5097fd401b59795 SHA512 54c1365e53e218e3a404fffe2343627218b4230db5be183ce7c79c417ae8c083ac00cf5f619c7344284635155ff2dbf6071ba631283c0f3c2ace8aa1cd7b2581
-EBUILD readline-8.1_p2.ebuild 6259 BLAKE2B 98f2c75e62d01f475e327824904d25ee5ae4c0c2641bd9d147198126eb5dd6622b762168a009e3e8030f42e36bcee48a0c5cf47c9a750b2c1d882e4dbe5ce72a SHA512 48d5b71c391211434283fd5dad5330f506464d22f2b3bb6e64a29e0ec63c9469a6e790e2e9e6c8fc0bedb1f9fcbedf99b961aa8f724dbbdae4d16f8ff5af9850
-EBUILD readline-8.2_beta.ebuild 6501 BLAKE2B 87e9dab1a27e47c589d4ff9bc861720fbc74c5f730f43ff4f06569e7d7745faf84cf09eec4251a774ab8cdcae937d2992a691612f10fa9452f961259c419bfd0 SHA512 e5ac37aebbdae6d1d652df580c8ebe2779e6f2da9f92e125e0d701154879567f4df18d905f6d9ebd7424a9a0c1de5228276fa616713fcce126652dbd06589c1e
+EBUILD readline-8.1_p2.ebuild 6266 BLAKE2B df1a758c63118e9f8b23bbc6831cc2d3fb975e332fd4212d5b94cb6b43885d4d3713a664d4b11729d6a447b5c57808b07d40a426d1738b85874da7c7d7880006 SHA512 e8a21619d26dd11d4fa0b2d8accb9ba89405a9ae66f6ef7c73a3122bb25b769f013691ff1688583a560911da303c15bd85f2a7863b41ec802607ec5f7df444ae
+EBUILD readline-8.2_beta.ebuild 6642 BLAKE2B 641918ea6d996069d0e6e4b88cfedf4e18d5163246933cbbefa0b4cdf175fa268b056d2a5929176894611fd5943a32669466073aad696a117bc7e7a70da691bc SHA512 e2a5aa925cb3d40015d69f501d27a37652752cf57c764a41be5d26193eacdba735be63cddf6701478105258ead8d9df989f43e5f4358082468c90002b230725e
+EBUILD readline-9999.ebuild 6642 BLAKE2B 641918ea6d996069d0e6e4b88cfedf4e18d5163246933cbbefa0b4cdf175fa268b056d2a5929176894611fd5943a32669466073aad696a117bc7e7a70da691bc SHA512 e2a5aa925cb3d40015d69f501d27a37652752cf57c764a41be5d26193eacdba735be63cddf6701478105258ead8d9df989f43e5f4358082468c90002b230725e
MISC metadata.xml 473 BLAKE2B 95401399d6edc2a1a28f9c0f42123b07568d5c517c49be38eff09e1f23a9b5df4d5b302495db8880c8ed65081ea2920f194e6b32402ab0d6049221e9ee6a4eed SHA512 e54e4ce57f3178aa8646acb6798f46074eb33173ab63d61f62bc9ab1d35ef823ce9ee3e173234f8866e2cb635519869c76a449f5073c3a5b7cfd29cd23c16462
diff --git a/sys-libs/readline/readline-8.1_p2.ebuild b/sys-libs/readline/readline-8.1_p2.ebuild
index b611b10b52ad..72ba36ee3ea8 100644
--- a/sys-libs/readline/readline-8.1_p2.ebuild
+++ b/sys-libs/readline/readline-8.1_p2.ebuild
@@ -46,7 +46,7 @@ esac
LICENSE="GPL-3"
SLOT="0/8" # subslot matches SONAME major
[[ "${PV}" == *_rc* ]] || \
-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 ~loong ~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="static-libs +unicode utils"
RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]"
diff --git a/sys-libs/readline/readline-8.2_beta.ebuild b/sys-libs/readline/readline-8.2_beta.ebuild
index 82ba899affea..90c2837bb864 100644
--- a/sys-libs/readline/readline-8.2_beta.ebuild
+++ b/sys-libs/readline/readline-8.2_beta.ebuild
@@ -12,6 +12,12 @@ PLEVEL="${PV##*_p}"
MY_PV="${PV/_p*}"
MY_PV="${MY_PV/_/-}"
MY_P="${PN}-${MY_PV}"
+is_release() {
+ case ${PV} in
+ 9999|*_alpha*|*_beta*|*_rc*) return 1 ;;
+ *) return 0 ;;
+ esac
+}
[[ ${PV} != *_p* ]] && PLEVEL=0
patches() {
[[ ${PLEVEL} -eq 0 ]] && return 1
@@ -32,23 +38,25 @@ patches() {
DESCRIPTION="Another cute console display library"
HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html"
-case ${PV} in
- *_alpha*|*_beta*|*_rc*)
- # TODO: check if needed on next alpha/beta
- inherit autotools
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git"
+ EGIT_BRANCH=devel
+ inherit git-r3
+elif is_release ; then
+ SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)"
+ SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )"
+else
+ SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
+ SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )"
+fi
- SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
- SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )"
- ;;
- *)
- SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)"
- SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )"
- ;;
-esac
+if ! is_release ; then
+ inherit autotools
+fi
LICENSE="GPL-3"
SLOT="0/8" # subslot matches SONAME major
-if [[ ${PV} != *_alpha* && ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
+if is_release ; then
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"
fi
IUSE="static-libs +unicode utils"
@@ -70,19 +78,22 @@ PATCHES=(
#"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch
)
-# Needed because we don't want the patches being unpacked
-# (which emits annoying and useless error messages)
src_unpack() {
- verify-sig_src_unpack
-
- unpack ${MY_P}.tar.gz
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ else
+ # Needed because we don't want the patches being unpacked
+ # (which emits annoying and useless error messages)
+ verify-sig_src_unpack
+ unpack ${MY_P}.tar.gz
+ fi
}
src_prepare() {
[[ ${PLEVEL} -gt 0 ]] && eapply -p0 $(patches -s)
default
- [[ ${PV} == *_alpha* || ${PV} == *_beta* || ${PV} == *_rc* ]] && eautoreconf
+ is_release || eautoreconf
if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then
# If we're bootstrapping, make a guess. We don't have pkg-config
diff --git a/sys-libs/readline/readline-9999.ebuild b/sys-libs/readline/readline-9999.ebuild
new file mode 100644
index 000000000000..90c2837bb864
--- /dev/null
+++ b/sys-libs/readline/readline-9999.ebuild
@@ -0,0 +1,224 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/chetramey.asc
+inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs usr-ldscript verify-sig
+
+# Official patches
+# See ftp://ftp.cwru.edu/pub/bash/readline-8.1-patches/
+PLEVEL="${PV##*_p}"
+MY_PV="${PV/_p*}"
+MY_PV="${MY_PV/_/-}"
+MY_P="${PN}-${MY_PV}"
+is_release() {
+ case ${PV} in
+ 9999|*_alpha*|*_beta*|*_rc*) return 1 ;;
+ *) return 0 ;;
+ esac
+}
+[[ ${PV} != *_p* ]] && PLEVEL=0
+patches() {
+ [[ ${PLEVEL} -eq 0 ]] && return 1
+ local opt=$1
+ eval set -- {1..${PLEVEL}}
+ set -- $(printf "${PN}${MY_PV/\.}-%03d " "$@")
+ if [[ ${opt} == -s ]] ; then
+ echo "${@/#/${DISTDIR}/}"
+ else
+ local u
+ for u in mirror://gnu/${PN} ftp://ftp.cwru.edu/pub/bash ; do
+ printf "${u}/${PN}-${MY_PV}-patches/%s " "$@"
+ printf "${u}/${PN}-${MY_PV}-patches/%s.sig " "$@"
+ done
+ fi
+}
+
+DESCRIPTION="Another cute console display library"
+HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git"
+ EGIT_BRANCH=devel
+ inherit git-r3
+elif is_release ; then
+ SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz $(patches)"
+ SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )"
+else
+ SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz"
+ SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )"
+fi
+
+if ! is_release ; then
+ inherit autotools
+fi
+
+LICENSE="GPL-3"
+SLOT="0/8" # subslot matches SONAME major
+if is_release ; then
+ 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"
+fi
+IUSE="static-libs +unicode utils"
+
+RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig
+ verify-sig? ( sec-keys/openpgp-keys-chetramey )"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.0-no_rpath.patch
+ "${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch #385091
+ "${FILESDIR}"/${PN}-7.0-headers.patch
+ "${FILESDIR}"/${PN}-8.0-headers.patch
+
+ # TODO: rebase
+ #"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch
+)
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ else
+ # Needed because we don't want the patches being unpacked
+ # (which emits annoying and useless error messages)
+ verify-sig_src_unpack
+ unpack ${MY_P}.tar.gz
+ fi
+}
+
+src_prepare() {
+ [[ ${PLEVEL} -gt 0 ]] && eapply -p0 $(patches -s)
+ default
+
+ is_release || eautoreconf
+
+ if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then
+ # If we're bootstrapping, make a guess. We don't have pkg-config
+ # around yet. bug #818103.
+ # Incorrectly populating this leads to underlinked libreadline.
+ local ncurses_libs
+ local ncurses_libs_suffix=$(usex unicode w '')
+
+ ncurses_libs="-lncurses${ncurses_libs_suffix}"
+
+ if has_version "sys-libs/ncurses[tinfo(+)]" ; then
+ ncurses_libs+=" -ltinfo${ncurses_libs_suffix}"
+ fi
+ else
+ # Force ncurses linking. #71420
+ # Use pkg-config to get the right values. #457558
+ local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs)
+ fi
+
+ sed -i \
+ -e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \
+ support/shobj-conf || die
+ sed -i \
+ -e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \
+ examples/rlfe/configure || die
+
+ # fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated
+ # objformat for years, so we don't want to rely on that.
+ sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die
+
+ ln -s ../.. examples/rlfe/readline || die # for local readline headers
+}
+
+src_configure() {
+ # fix implicit decls with widechar funcs
+ append-cppflags -D_GNU_SOURCE
+ # https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html
+ append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free
+
+ # Make sure configure picks a better ar than `ar`. #484866
+ export ac_cv_prog_AR=$(tc-getAR)
+
+ # Force the test since we used sed above to force it.
+ export bash_cv_termcap_lib=ncurses
+
+ # Control cross-compiling cases when we know the right answer.
+ # In cases where the C library doesn't support wide characters, readline
+ # itself won't work correctly, so forcing the answer below should be OK.
+ if tc-is-cross-compiler ; then
+ use kernel_Winnt || export bash_cv_func_sigsetjmp='present'
+ export bash_cv_func_ctype_nonascii='yes'
+ export bash_cv_wcwidth_broken='no' #503312
+ fi
+
+ # This is for rlfe, but we need to make sure LDFLAGS doesn't change
+ # so we can re-use the config cache file between the two.
+ append-ldflags -L.
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --cache-file="${BUILD_DIR}"/config.cache
+ --with-curses
+ $(use_enable static-libs static)
+ )
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+
+ if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
+ # code is full of AC_TRY_RUN()
+ mkdir -p examples/rlfe || die
+ cd examples/rlfe || die
+ ECONF_SOURCE="${S}"/examples/rlfe \
+ econf --cache-file="${BUILD_DIR}"/config.cache
+ fi
+}
+
+multilib_src_compile() {
+ emake
+
+ if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then
+ # code is full of AC_TRY_RUN()
+ cd examples/rlfe || die
+ local l
+ for l in readline history ; do
+ ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die
+ ln -s ../../lib${l}.a lib${l}.a || die
+ done
+ emake
+ fi
+}
+
+multilib_src_install() {
+ default
+
+ if multilib_is_native_abi ; then
+ gen_usr_ldscript -a readline history #4411
+
+ if use utils && ! tc-is-cross-compiler; then
+ dobin examples/rlfe/rlfe
+ fi
+ fi
+}
+
+multilib_src_install_all() {
+ HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs
+ dodoc USAGE
+ docinto ps
+ dodoc doc/*.ps
+}
+pkg_preinst() {
+ # bug #29865
+ # Reappeared in #595324 with paludis so keeping this for now...
+ preserve_old_lib \
+ /$(get_libdir)/lib{history,readline}$(get_libname 4) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 5) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 6) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 7)
+}
+
+pkg_postinst() {
+ preserve_old_lib_notify \
+ /$(get_libdir)/lib{history,readline}$(get_libname 4) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 5) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 6) \
+ /$(get_libdir)/lib{history,readline}$(get_libname 7)
+}
diff --git a/sys-libs/slang/Manifest b/sys-libs/slang/Manifest
index a2ca1704d6ed..c498da5322ab 100644
--- a/sys-libs/slang/Manifest
+++ b/sys-libs/slang/Manifest
@@ -1,4 +1,4 @@
AUX slang-2.3.1-slsh-libs.patch 761 BLAKE2B a0bc1a573fa1031e44c998bb75c80113ccd86be47f7d0b80da0ba53c7fa066d780ebb86b9cc5ff503e0d4c99b49fe75cb4c916088cc7b18a5a6c1670cbca4ba3 SHA512 77516f0b0373a08fbf61765e4eb83cbfa91b29a58a41e0006d1041672c6107dc5a2410056d65dd64fe68de40e01c211feb9f748a8238473cd5c98dfe2125f7b2
DIST slang-2.3.2.tar.bz2 1586720 BLAKE2B e923a431e6273f1783c40dc09b2e324ace22e41a163fd46dcb8ab16c9ef27f190651df8da24432edc75890b83cd95051a835d5e582385bb23e36cd8ae18e6d24 SHA512 35cdfe8af66dac62ee89cca60fa87ddbd02cae63b30d5c0e3786e77b1893c45697ace4ac7e82d9832b8a9ac342560bc35997674846c5022341481013e76f74b5
-EBUILD slang-2.3.2.ebuild 2238 BLAKE2B 5fca4f3c84f9a756f22021deb6607eaaec399573da56a0be746254fa852f5616fe804d5737573c26f4b061678106bbaf4843d8f35393b344ad75873ac82ae475 SHA512 e5a79e7165b72310c6fa26db3811d0622d06b2206df9387ba6e0f8ff315df120f49fc0cec0a6fb541956fb2960a092eb7bc2eb2718740910efbf690579b68ee9
+EBUILD slang-2.3.2.ebuild 2245 BLAKE2B ce75e58672dc3e44bf8bbc8e98293bf8903f4b7063f40cb08a7b38bfc17515b76826185ddb1e8e3bf56fcfc013e3da3f846ab700e437e6e420f752daca8304c4 SHA512 226e5e32b38e6328540853fbcf38f00540a7be72bf50353f0be635f3c3d39c845286794479226e565902b265013a473096835f6a92c9d4e146eef199abb6268c
MISC metadata.xml 235 BLAKE2B a3e5a3109b59e3f97ef14f8d55ba13b16dc5371a1b7d6f238230aa4494db32dd4a42e3ee012ec8b18fae394feb2b1b56882bc70504aa7c6b969c1b20140f0ece SHA512 7c4e5f5dea465e45c662f5f53513626088aff514e1326593426af227d77e63d8a00d8af05aa208881a399f83dd41e73cd2ef81c8b7f275a2fa891f295231d67c
diff --git a/sys-libs/slang/slang-2.3.2.ebuild b/sys-libs/slang/slang-2.3.2.ebuild
index 1d8efbe42904..7363d14e688b 100644
--- a/sys-libs/slang/slang-2.3.2.ebuild
+++ b/sys-libs/slang/slang-2.3.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -14,7 +14,7 @@ if [[ "${PV}" = *_pre* ]] ; then
else
SRC_URI="http://www.jedsoft.org/releases/${PN}/${P}.tar.bz2
http://www.jedsoft.org/releases/${PN}/old/${P}.tar.bz2"
- KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris"
fi
LICENSE="GPL-2"
SLOT="0"
diff --git a/sys-libs/tevent/Manifest b/sys-libs/tevent/Manifest
index 863c7a0eaa33..7a4111a83610 100644
--- a/sys-libs/tevent/Manifest
+++ b/sys-libs/tevent/Manifest
@@ -1,6 +1,8 @@
AUX tevent-0.11.0-missing-include.patch 310 BLAKE2B b6c54840d64cec798968e58ee7665a984a948bd0fe4842224229c0650a4a0cd798bda2ac30bb842fabf3e7a0d433ca39ae1209da88eb31f0074361f01daccfce SHA512 53941507bc7852f5b1f5133f10d64927d8ec3a5886f51701f191502bd08bcf16fec1950a7ae6446c67981e8d1dd2e5260d95acb6d44572486f28ec8379dd5fc6
DIST tevent-0.10.2.tar.gz 800731 BLAKE2B 5ea6b83378b04dbe1666432db0dbd4c0df2e6b0bf5ebcc8ec4ec9bdeb834efec75c87b2019dc78c691aba6c4f6467394101febd6010f106046a1fb8848e27405 SHA512 1da8f28898f35daab515892b880d1de601062cc3e2b2570cd62e6913df17b0195a05acb7b484c628cddc0eb8b0cde893105ede3feb32bc5764e7d25684f332ba
DIST tevent-0.11.0.tar.gz 866327 BLAKE2B 9e6e958597e21c0d228346aa102987f89bb6630a5661cef21b908735469a59e7b4f46bc4473e9c25fe636913a1eebc1f26234448c09739ad812cd3ce97bf5048 SHA512 740346b19bf290ff31b0c1b36e232021b8ad107c3ce27e0e8b1ec1a77485214b07a9b7837ba57f3650a50e4c04f530674e486b5fa4d118a1778259be63b49790
+DIST tevent-0.12.0.tar.gz 877767 BLAKE2B cbfb823f9a8ce8a9a88964c9daa15643c077163c03a792468836e5bbc7e7500c745e1fc1203063ed01f899cf598794764c6d465afc3ed31cd711f420ebc6ce55 SHA512 ae955b64a683bc6aaba66592ca5d205eb48f62a70bd2674b5b3a0e3b0f4de30c93f400bf183d3bef5993845a3281716584b24cf8a93c849ba4fa7d1fcfb9cc99
EBUILD tevent-0.10.2.ebuild 1591 BLAKE2B 63043bf0d721a46e303bc72f1166470068f57582ea529f8cdcf0dae3228b681c0649d20dab279f0e3a46c85c9ba755ba95bdf3944abd951899715f1c46a504ae SHA512 768d207948ac5a27d1ca62b108e3ee4d91f849b2f887596b469e5338e9e00050d34d518b8adc4e1283f1db9f88e519813dc7aced6df94449b784965fe72c5992
EBUILD tevent-0.11.0.ebuild 1672 BLAKE2B 876840924440fc319c04b0ff51d9cc50fedeaefea973d3117da5ea039e817f61a42f8f4fd1b986594b026ee485927375047c16bf53be0098f1b6133b43ecd7f3 SHA512 f01a7ccb816617fbdd4ea46ee7d99a40b02dadca8759c9c36985cdadce309adec81a1ae47b8cc019a58e661983ecaa179805941e637bc04262401e68fc15040b
+EBUILD tevent-0.12.0.ebuild 1650 BLAKE2B e97a67eb78b6ab05e6acf102b037c517abcaed134eb2d94101f0c5b32047ff26f282d998cec379176ab1b7269692c59afd24fb1516e176729e7d317a4eb3fd54 SHA512 460fd4d48232642732f1401dfd78a04517378f5809f596a4a5f34d3e8b5f28bfb833dd299a7522602b884c19accaa6a8e4a5ffb0a67eac1b2a44e34a49735f20
MISC metadata.xml 239 BLAKE2B 7127a2a67e79dc98a78fcaca706fd348389c7f08465112215855afe5978d2932ecbee93944efb1df528fbb6d09e884b277cb1d55a8b3926487b6ca07f9330b8a SHA512 4ea42efe4d083d013b85796ca25a132678bcefe6e3687fd6dd371814fd307118fbc8da8c15ce7f4d956e5f824cd0202f49d3469406c88008e84ff9f4d360f424
diff --git a/sys-libs/tevent/tevent-0.12.0.ebuild b/sys-libs/tevent/tevent-0.12.0.ebuild
new file mode 100644
index 000000000000..b56018d2eb11
--- /dev/null
+++ b/sys-libs/tevent/tevent-0.12.0.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_REQ_USE="threads(+)"
+inherit waf-utils multilib-minimal python-single-r1
+
+DESCRIPTION="Samba tevent library"
+HOMEPAGE="https://tevent.samba.org/"
+SRC_URI="https://samba.org/ftp/tevent/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x86-linux"
+IUSE="python"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+RESTRICT="test"
+
+RDEPEND="
+ dev-libs/libbsd[${MULTILIB_USEDEP}]
+ >=sys-libs/talloc-2.3.3[${MULTILIB_USEDEP}]
+ python? (
+ ${PYTHON_DEPS}
+ sys-libs/talloc[python,${PYTHON_SINGLE_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}
+ >=dev-util/cmocka-1.1.3
+ elibc_glibc? (
+ net-libs/libtirpc[${MULTILIB_USEDEP}]
+ || (
+ net-libs/rpcsvc-proto
+ <sys-libs/glibc-2.26[rpc(+)]
+ )
+ )
+"
+BDEPEND="${PYTHON_DEPS}
+ virtual/pkgconfig
+"
+
+WAF_BINARY="${S}/buildtools/bin/waf"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+ export PYTHONHASHSEED=1
+}
+
+src_prepare() {
+ default
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ waf-utils_src_configure \
+ --bundled-libraries=NONE \
+ --builtin-libraries=NONE \
+ $(multilib_native_usex python '' '--disable-python')
+}
+
+multilib_src_compile() {
+ # need to avoid parallel building, this looks like the sanest way with waf-utils/multiprocessing eclasses
+ unset MAKEOPTS
+ waf-utils_src_compile
+}
+
+multilib_src_install() {
+ waf-utils_src_install
+
+ multilib_is_native_abi && use python && python_domodule tevent.py
+}
+
+multilib_src_install_all() {
+ insinto /usr/include
+ doins tevent_internal.h
+}
diff --git a/sys-libs/timezone-data/Manifest b/sys-libs/timezone-data/Manifest
index 5882790a2032..40c375cd3b01 100644
--- a/sys-libs/timezone-data/Manifest
+++ b/sys-libs/timezone-data/Manifest
@@ -6,5 +6,5 @@ DIST tzdata2021e.tar.gz 422509 BLAKE2B e0e1189a1bbfb2ee641b9c4c8d00775372638d46d
DIST tzdata2022a.tar.gz 425833 BLAKE2B 0af5b785a6f5d871b017237ad58d3d9bedd0de38cf18ac51b32cd8df9811215af7af913d8cd3966de695ce65df3f49f52e239196e93b953094763814cc56ecd0 SHA512 542e4559beac8fd8c4af7d08d816fd12cfe7ffcb6f20bba4ff1c20eba717749ef96e5cf599b2fe03b5b8469c0467f8cb1c893008160da281055a123dd9e810d9
EBUILD timezone-data-2021a-r1.ebuild 5675 BLAKE2B ebb7b82895a58585f688b164655c2d52dbc54d5c2f7234167fa8bcbe87d1189b88e9449cfec7b80aa46edd8e7d2a29047409b81fbd6c8114546668914e49c362 SHA512 1cee878422e1f7939066b439a987883cfb3a3148ab7aa2218cf4c6b83ba5b7fc12301709862339be283dd2e0e4726ac295aaa19eb526c9fdaf0fc32eadf62434
EBUILD timezone-data-2021e.ebuild 5675 BLAKE2B ebb7b82895a58585f688b164655c2d52dbc54d5c2f7234167fa8bcbe87d1189b88e9449cfec7b80aa46edd8e7d2a29047409b81fbd6c8114546668914e49c362 SHA512 1cee878422e1f7939066b439a987883cfb3a3148ab7aa2218cf4c6b83ba5b7fc12301709862339be283dd2e0e4726ac295aaa19eb526c9fdaf0fc32eadf62434
-EBUILD timezone-data-2022a.ebuild 5683 BLAKE2B d0df561f3b77e8c8cd34e0da49c6ddb6bddf0c870d7505cd966f4637a3190b9d40a387db48a1b4a354279e82393c0e1c3a89722f9e5069869d0ed219012ca63d SHA512 2ae3f0089a8bd16d7d86cabd3ee5e3ec3f3edbccc7876e6c429e533b1bedcf9e2d9e9793faeb4f2df2f487892af98a8416fef0530d4ee332d6864a0c7d33c57d
+EBUILD timezone-data-2022a.ebuild 5690 BLAKE2B 802c5353b34a12920ba3a5b0e6a337a6cf7aae917f0535d41a6744c7800b0bb5ed7d2788240a631b6b6510d8d824600d0be901a93671cb8fe3cb7042ed69b53a SHA512 a2ee84a9dfa04aa74de2cff15778ee7629c1f3e76e2944ef69434ca426a50a18a8ad9f940f52b0e9be3342a5a5be04351260d42dc5f45d41dbc1858781c91f16
MISC metadata.xml 729 BLAKE2B 96a262bedf50590ed1325e4856ed58766e359cfba537252b51b172f868dbf6902fd03044bfd1bbbf0b8f5e1db72c2e4f52dbc63557cead2cc865e5fbeb171647 SHA512 1f20b48f5d4054f4f48c33a965992ceaeb43b9919f6b5698b0f6ccc2fa0b0eb677c6ad67cb88c599db4d5f5e3db1cecf87372dc72ff5541a799f0aaae2c2dac1
diff --git a/sys-libs/timezone-data/timezone-data-2022a.ebuild b/sys-libs/timezone-data/timezone-data-2022a.ebuild
index 656c7f532b86..c62a2f7c9744 100644
--- a/sys-libs/timezone-data/timezone-data-2022a.ebuild
+++ b/sys-libs/timezone-data/timezone-data-2022a.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 ~loong ~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 zic-slim"
DEPEND="nls? ( virtual/libintl )"
diff --git a/sys-libs/zlib/Manifest b/sys-libs/zlib/Manifest
index 1046c0aac3e8..4ee532660ab8 100644
--- a/sys-libs/zlib/Manifest
+++ b/sys-libs/zlib/Manifest
@@ -11,6 +11,5 @@ DIST zlib-1.2.12.tar.gz.asc 235 BLAKE2B bb1efc89b10b894ebc8e8008ee3e98104348f197
DIST zlib-1.2.7-cygwin-minizip.patch 2626 BLAKE2B 885f1fda877c0b783618b163702fb46126b7db572767cd4edb86bd92db1f432c887ef1724e70c8319c26886368dba3a962af5284ec0875c20ec8ad2245fd100a SHA512 e372f1e06311e843eca2092e182c41abb009b5e9880b60292d708e4bc0de5a9e4c43d49b25b0c09df4784bc46a1254472bc5cdbdd8d6c762a9f6a145a555bfe7
EBUILD zlib-1.2.11-r4.ebuild 4414 BLAKE2B 28fff60b4ea6e23298dd32bd782c7a174c0c8fac1395f010b3e93769c3de32e7b26cb2a1fdd631c5dafb86d5a2f4f1e87a1833032d2043b629515254eeaccc5f SHA512 eef5a1d3f41a60a672a8432d6ca514d712dbd227c4e74c461193e35482bb47953a905e513f8a67571621e3f68bf12cc201c3a28a6a418f5c8e2b9f3debdc6acb
EBUILD zlib-1.2.11-r5.ebuild 4501 BLAKE2B a1162467779ba8a5d0d3f23c95fd7afeddd427ab1c351472bcc6d0f40efab1ff989682f3963f3428fe28ca77f20cb5f19520c85a43025211dfd8de5a2917cf9f SHA512 7dd887d89dd54f6833d31e7de5095c36e9d312a2fed601b077119ee37da5ac53b69ae56755eaed578bb44f2026a34dfcf125d107e7dee311b842bdad0b9992ca
-EBUILD zlib-1.2.12-r1.ebuild 4713 BLAKE2B e83aae3a8cb7740767f9aeb5f9a3674be993b3221e1b7c378bf9a31117c065de9a87714caccbd685de4e05bd7c6b2ada0c56128f9d65db0c79d6444a089c6a1c SHA512 796fd9ac95620f09143f78a8f9718efda188020a2c077283cc9885b332578d93f800b39318918525f11ecaad128a69e7f0145f77ba238308361acce24d5b6a50
-EBUILD zlib-1.2.12-r2.ebuild 5152 BLAKE2B 40fdb3b4136568c9452f67a04e4571478d962d34b03ca84c912bc5dddee5d8e59570fa3ee21bb940a0045791c315692c29691af082cac83f9f448f68e31220b1 SHA512 0a8750556f9d96d5eafd79be8062c53a73706cd9bdebf1c9ff09cda22f4e2c47714f7f535c29307c286480d25f9eb99ef6b69a044d7f9b5a4c12a2babaddb608
+EBUILD zlib-1.2.12-r2.ebuild 5159 BLAKE2B fba167fe2108e2c3ff4e8c1ac57bb76da832fdbe8dcb04a662f711a711e59158d049a39118920116bd6c02cec97939e11c379eb640672157f190b7c3a022c4f6 SHA512 e5855acdfcaab403d13d0b2690dc9c2d86c7e49eef5adfd6313e91adfd5703658456a5701486375c91621291a75f09247af46b4e6ff1d7071af9e478c3ef0e31
MISC metadata.xml 494 BLAKE2B a4a57a4153aefc189e407bcb8ce84f7c94581cc66967f69097087da7e6ff48d2de683b919fb00445d095c47ef39d31e01590f8c989ce0e5e01474e73ee2a0565 SHA512 a7e0160c127b3c2a6afe99e95992d9dbd017061303759c299ec38800efd6a9e11a35ae850c23c77c09c8833cd9d61ac1267f6becadf9c22437ee35e4304400c9
diff --git a/sys-libs/zlib/zlib-1.2.12-r1.ebuild b/sys-libs/zlib/zlib-1.2.12-r1.ebuild
deleted file mode 100644
index 425c0f30bdb5..000000000000
--- a/sys-libs/zlib/zlib-1.2.12-r1.ebuild
+++ /dev/null
@@ -1,188 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-AUTOTOOLS_AUTO_DEPEND="no"
-VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/madler.asc
-inherit autotools multilib-minimal usr-ldscript verify-sig
-
-CYGWINPATCHES=(
- "https://github.com/cygwinports/zlib/raw/22a3462cae33a82ad966ea0a7d6cbe8fc1368fec/1.2.11-gzopen_w.patch -> ${PN}-1.2.11-cygwin-gzopen_w.patch"
- "https://github.com/cygwinports/zlib/raw/22a3462cae33a82ad966ea0a7d6cbe8fc1368fec/1.2.7-minizip-cygwin.patch -> ${PN}-1.2.7-cygwin-minizip.patch"
-)
-
-DESCRIPTION="Standard (de)compression library"
-HOMEPAGE="https://zlib.net/"
-SRC_URI="https://zlib.net/${P}.tar.gz
- https://zlib.net/fossils/${P}.tar.gz
- https://www.gzip.org/zlib/${P}.tar.gz
- https://www.zlib.net/current/beta/${P}.tar.gz
- verify-sig? ( https://zlib.net/${P}.tar.gz.asc )
- elibc_Cygwin? ( ${CYGWINPATCHES[*]} )"
-
-LICENSE="ZLIB"
-SLOT="0/1" # subslot = SONAME
-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 ~x86-winnt"
-IUSE="minizip static-libs"
-
-RDEPEND="!sys-libs/zlib-ng[compat]"
-DEPEND="${RDEPEND}"
-BDEPEND="minizip? ( ${AUTOTOOLS_DEPEND} )
- verify-sig? ( sec-keys/openpgp-keys-madler )"
-
-PATCHES=(
- # bug #658536
- "${FILESDIR}"/${PN}-1.2.11-minizip-drop-crypt-header.patch
-
- # bug #831628
- "${FILESDIR}"/${PN}-1.2.11-configure-fix-AR-RANLIB-NM-detection.patch
-
- # Fix broken CC logic
- "${FILESDIR}"/${PN}-1.2.12-fix-CC-logic-in-configure.patch
-)
-
-src_prepare() {
- default
-
- if use elibc_Cygwin ; then
- local p
- for p in "${CYGWINPATCHES[@]}" ; do
- # Strip out the "... -> " from the array
- eapply -p2 "${DISTDIR}/${p#*> }"
- done
- fi
-
- if use minizip ; then
- cd contrib/minizip || die
- eautoreconf
- fi
-
- case ${CHOST} in
- *-cygwin*)
- # Do not use _wopen, it's a mingw-only symbol
- sed -i -e '/define WIDECHAR/d' "${S}"/gzguts.h || die
-
- # zlib1.dll is the mingw name, need cygz.dll
- # cygz.dll is loaded by toolchain, put into subdir
- sed -i -e 's|zlib1.dll|win32/cygz.dll|' win32/Makefile.gcc || die
-
- ;;
- esac
-
- case ${CHOST} in
- *-mingw*|mingw*|*-cygwin*)
- # Uses preconfigured Makefile rather than configure script
- multilib_copy_sources
-
- ;;
- esac
-}
-
-echoit() { echo "$@"; "$@"; }
-
-multilib_src_configure() {
- case ${CHOST} in
- *-mingw*|mingw*|*-cygwin*)
- ;;
-
- *)
- # bug #347167
- local uname=$("${BROOT}"/usr/share/gnuconfig/config.sub "${CHOST}" | cut -d- -f3)
-
- local myconf=(
- --shared
- --prefix="${EPREFIX}/usr"
- --libdir="${EPREFIX}/usr/$(get_libdir)"
- ${uname:+--uname=${uname}}
- )
-
- # Not an autoconf script, so can't use econf
- echoit "${S}"/configure "${myconf[@]}" || 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*|*-cygwin*)
- emake -f win32/Makefile.gcc STRIP=true PREFIX=${CHOST}-
- sed \
- -e 's|@prefix@|'"${EPREFIX}"'/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, bug #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*|*-cygwin*)
- 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, bug #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
-
- if use minizip; then
- # This might not exist if slibtool is used.
- # bug #816756
- rm -f "${ED}"/usr/$(get_libdir)/libminizip.la || die
- fi
-
- if ! use static-libs ; then
- # bug #419645
- rm "${ED}"/usr/$(get_libdir)/libz.a || die
- fi
-}
-
-multilib_src_install_all() {
- dodoc FAQ README ChangeLog doc/*.txt
- use minizip && dodoc contrib/minizip/*.txt
-}
diff --git a/sys-libs/zlib/zlib-1.2.12-r2.ebuild b/sys-libs/zlib/zlib-1.2.12-r2.ebuild
index 166bfbad0465..403a4bf6074b 100644
--- a/sys-libs/zlib/zlib-1.2.12-r2.ebuild
+++ b/sys-libs/zlib/zlib-1.2.12-r2.ebuild
@@ -24,7 +24,7 @@ SRC_URI="https://zlib.net/${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 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~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 ~x86-winnt"
IUSE="minizip static-libs"
RDEPEND="!sys-libs/zlib-ng[compat]"