summaryrefslogtreecommitdiff
path: root/sys-libs
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-08-07 12:37:21 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-08-07 12:37:21 +0100
commitb8c7370a682e4e29cda623222d17a790c01c3642 (patch)
treef6caa14689bd00a5760eadaa381ff41e50ef3c1b /sys-libs
parent8a4997a7e2d1e36c089d4d76935b5a902d98d3d0 (diff)
gentoo auto-resync : 07:08:2024 - 12:37:20
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/Manifest.gzbin14406 -> 14413 bytes
-rw-r--r--sys-libs/binutils-libs/Manifest3
-rw-r--r--sys-libs/binutils-libs/binutils-libs-2.43.ebuild172
-rw-r--r--sys-libs/compiler-rt-sanitizers/Manifest20
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.8.ebuild3
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.1.0_rc1.ebuild (renamed from sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240712.ebuild)1
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.1.0_rc2.ebuild (renamed from sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0.9999.ebuild)0
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-20.0.0.9999.ebuild (renamed from sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240706.ebuild)0
-rw-r--r--sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-20.0.0_pre20240801.ebuild (renamed from sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240720.ebuild)5
-rw-r--r--sys-libs/compiler-rt/Manifest20
-rw-r--r--sys-libs/compiler-rt/compiler-rt-16.0.6-r4.ebuild2
-rw-r--r--sys-libs/compiler-rt/compiler-rt-18.1.8.ebuild2
-rw-r--r--sys-libs/compiler-rt/compiler-rt-19.1.0_rc1.ebuild (renamed from sys-libs/compiler-rt/compiler-rt-19.0.0.9999.ebuild)0
-rw-r--r--sys-libs/compiler-rt/compiler-rt-19.1.0_rc2.ebuild (renamed from sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240706.ebuild)0
-rw-r--r--sys-libs/compiler-rt/compiler-rt-20.0.0.9999.ebuild (renamed from sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240712.ebuild)0
-rw-r--r--sys-libs/compiler-rt/compiler-rt-20.0.0_pre20240801.ebuild (renamed from sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240720.ebuild)0
-rw-r--r--sys-libs/efivar/Manifest4
-rw-r--r--sys-libs/efivar/efivar-39.ebuild70
-rw-r--r--sys-libs/efivar/metadata.xml2
-rw-r--r--sys-libs/glibc/Manifest7
-rw-r--r--sys-libs/glibc/glibc-2.39-r9.ebuild5
-rw-r--r--sys-libs/glibc/glibc-2.40.ebuild1744
-rw-r--r--sys-libs/glibc/glibc-9999.ebuild3
-rw-r--r--sys-libs/kpmcore/Manifest4
-rw-r--r--sys-libs/kpmcore/kpmcore-23.08.5.ebuild1
-rw-r--r--sys-libs/kpmcore/kpmcore-24.05.2.ebuild3
-rw-r--r--sys-libs/libcxx/Manifest18
-rw-r--r--sys-libs/libcxx/libcxx-18.1.8.ebuild2
-rw-r--r--sys-libs/libcxx/libcxx-19.1.0_rc1.ebuild (renamed from sys-libs/libcxx/libcxx-19.0.0.9999.ebuild)0
-rw-r--r--sys-libs/libcxx/libcxx-19.1.0_rc2.ebuild (renamed from sys-libs/libcxx/libcxx-19.0.0_pre20240706.ebuild)0
-rw-r--r--sys-libs/libcxx/libcxx-20.0.0.9999.ebuild (renamed from sys-libs/libcxx/libcxx-19.0.0_pre20240712.ebuild)0
-rw-r--r--sys-libs/libcxx/libcxx-20.0.0_pre20240801.ebuild (renamed from sys-libs/libcxx/libcxx-19.0.0_pre20240720.ebuild)0
-rw-r--r--sys-libs/libcxxabi/Manifest18
-rw-r--r--sys-libs/libcxxabi/libcxxabi-18.1.8.ebuild2
-rw-r--r--sys-libs/libcxxabi/libcxxabi-19.1.0_rc1.ebuild (renamed from sys-libs/libcxxabi/libcxxabi-19.0.0.9999.ebuild)0
-rw-r--r--sys-libs/libcxxabi/libcxxabi-19.1.0_rc2.ebuild (renamed from sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240706.ebuild)0
-rw-r--r--sys-libs/libcxxabi/libcxxabi-20.0.0.9999.ebuild (renamed from sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240712.ebuild)0
-rw-r--r--sys-libs/libcxxabi/libcxxabi-20.0.0_pre20240801.ebuild (renamed from sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240720.ebuild)0
-rw-r--r--sys-libs/libhx/Manifest9
-rw-r--r--sys-libs/libhx/files/libhx-3.22-no-lyx.patch12
-rw-r--r--sys-libs/libhx/libhx-3.24-r1.ebuild39
-rw-r--r--sys-libs/libhx/libhx-3.25.ebuild39
-rw-r--r--sys-libs/libhx/libhx-4.24.ebuild (renamed from sys-libs/libhx/libhx-4.21.ebuild)3
-rw-r--r--sys-libs/libnvme/Manifest2
-rw-r--r--sys-libs/libnvme/libnvme-1.10.ebuild76
-rw-r--r--sys-libs/libomp/Manifest18
-rw-r--r--sys-libs/libomp/libomp-18.1.8.ebuild2
-rw-r--r--sys-libs/libomp/libomp-19.1.0_rc1.ebuild (renamed from sys-libs/libomp/libomp-19.0.0.9999.ebuild)0
-rw-r--r--sys-libs/libomp/libomp-19.1.0_rc2.ebuild (renamed from sys-libs/libomp/libomp-19.0.0_pre20240706.ebuild)0
-rw-r--r--sys-libs/libomp/libomp-20.0.0.9999.ebuild (renamed from sys-libs/libomp/libomp-19.0.0_pre20240712.ebuild)0
-rw-r--r--sys-libs/libomp/libomp-20.0.0_pre20240801.ebuild (renamed from sys-libs/libomp/libomp-19.0.0_pre20240720.ebuild)0
-rw-r--r--sys-libs/libudev-compat/Manifest2
-rw-r--r--sys-libs/libudev-compat/libudev-compat-186-r1.ebuild4
-rw-r--r--sys-libs/llvm-libunwind/Manifest18
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-18.1.8.ebuild2
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-19.1.0_rc1.ebuild (renamed from sys-libs/llvm-libunwind/llvm-libunwind-19.0.0.9999.ebuild)0
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-19.1.0_rc2.ebuild (renamed from sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240706.ebuild)0
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-20.0.0.9999.ebuild (renamed from sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240712.ebuild)0
-rw-r--r--sys-libs/llvm-libunwind/llvm-libunwind-20.0.0_pre20240801.ebuild (renamed from sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240720.ebuild)0
-rw-r--r--sys-libs/readline/Manifest7
-rw-r--r--sys-libs/readline/readline-8.2_p13.ebuild263
61 files changed, 2438 insertions, 169 deletions
diff --git a/sys-libs/Manifest.gz b/sys-libs/Manifest.gz
index 992bc506acf4..13b9f73821af 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 4890294b8dcd..8e00f3d03758 100644
--- a/sys-libs/binutils-libs/Manifest
+++ b/sys-libs/binutils-libs/Manifest
@@ -18,6 +18,8 @@ DIST binutils-2.41.tar.xz 26765692 BLAKE2B 3bccec2b52f7e82a727121bf2a2e51a6249ba
DIST binutils-2.42-patches-3.tar.xz 34768 BLAKE2B e4bfaf3b42147408a8a3dcb00f50378a6b49aef8e939731a92598680cfbf42dfdf842c3f5bf3458867f79c534eb92385bc64f34f7b1d6462ec4182b5f424fbe5 SHA512 3d75e0684bbfa2cc3fc6dfcb5488ac571db58f1a5833fcc754f231664137001ccb0f2ec750947b8021fa12daf614eb2cd21b598bd962d71a34bb8ea38805850d
DIST binutils-2.42-patches-6.tar.xz 50664 BLAKE2B f13b65a761cfba80caf2e4740c6383b40305558365b950fba22aca95a104e799e8bd476082f36fb9288de4f224b09f317792c1444e549c40d15a4b64cdf61989 SHA512 1203eca0a9e622411eac377509de8fd0db3ffcb282ac38ab7a0369b166cc1091197daad85b51b145b34a4832f1a1a4d573c8254e8d67aeb22f35adb1ab3ece1f
DIST binutils-2.42.tar.xz 27567160 BLAKE2B e67a5c028fba70e70088fd11b38ec8c9c4ed5a019badefda25abeb6275997b16f0891e7ff3424c4b82bbfae92e8992669826920dd53df61cd48469d8f7cd5bd1 SHA512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6
+DIST binutils-2.43-patches-1.tar.xz 11644 BLAKE2B 578ee67c3c5e67f9191a31a5c83ffcc781f757f8aaee3eea14d052db427cdd2bc769977dba16e9a8c653dcc4a94f11c149898683945d5035d0beeac128045b1a SHA512 e6db4eaf4fbea366e607a7e9a56e20851fcc34664532fd6aa1f0818271c3e2687eada3daca482e211a2b3e36be85e7e0b23158caaa0fdf9785d13a9156e8c734
+DIST binutils-2.43.tar.xz 28175768 BLAKE2B 28b0a04a28273b76eab2d00e00160be889f155f77f5a9d8759ef8dce505c97e97641bf7ec70b92b731b520570a02b06e04e8215b068fcb1bb2573e9ef24732d9 SHA512 93e063163e54d6a6ee2bd48dc754270bf757a3635b49a702ed6b310e929e94063958512d191e66beaf44275f7ea60865dbde138b624626739679fcc306b133bb
EBUILD binutils-libs-2.34-r2.ebuild 3659 BLAKE2B d3e8be6e6c01b326a581d27114156992844c17469737362b591c3eaa34cf7b39add758958e47495d86a3dba8e9522a636ae4c5ddb0d8a88eea4bec4d28e18a69 SHA512 bcd69ed536af7e9aed217a33775fb18811243f78c343dc6c93089aa3a6d635e09332eefe66e10eedb9780ba2a88b229fa2e23b4f0ab0210e616255c554adb435
EBUILD binutils-libs-2.35.2.ebuild 4081 BLAKE2B 8ee0c24af580893e14d6d9d08a472549bd3672e6465c02c1e9340df0e674ba0f1398637a4679aafbd26f885bd7f66c6961e71939c79b8bca2ca8fcabb7b837d5 SHA512 e74b8669b7d6ff08f95a6e94e0aa3a5d545aee4f83ae2f968e92293c27b32fe01f2b271e608e6a801ebecc4f7cad3eec50fefd8028b760103c271bde33491c2a
EBUILD binutils-libs-2.36.1-r2.ebuild 4034 BLAKE2B 73f30ce764dc69438ae101908b5d09013f0f9db53741183c21f4e27bdb3bb3236807adaa0c1acadc7f239f539762cb98d138cd6d08a5a68b73eece1f6c05c5d8 SHA512 c57d84f43279c965c39457d9f98e16b8d3c2e30caa8cdc9e4a7ddfa960e91dedef13438e27ec03143e8005a842c8031726e399156cfdb371769075e4543cc06d
@@ -28,4 +30,5 @@ EBUILD binutils-libs-2.40-r7.ebuild 5030 BLAKE2B 3d4d3e70abf61164fe100d7e6d51feb
EBUILD binutils-libs-2.41-r5.ebuild 5212 BLAKE2B a32307783cf1db07a2f70b8400f968c5122f6bda2bf9dd14ef2ed2af17bae1ea895ea3c55733cdaf3c6a1c3bc087e369556df39de28234ae2210e2d142e1621f SHA512 76992ea90e534b80d502638227b315af07af32e2150413a89690b8936477452d8622993de7a1fb87fc971fefd9708b55969a1d207a6931981123d66f518cb924
EBUILD binutils-libs-2.42-r1.ebuild 5361 BLAKE2B a147b5fbeafcfa375e45b3c1054b8aafb3d36775491b1781fa613cd8bf54dcea82365a026cefc8f0a68fc4b7ef3ea12e0d8f6fbb3483529e631f8341c3e921fa SHA512 9398f13b87a291cd442f2bcad2774f1d1e4a6cbfda17bb87e93dd39a6b53b61d4ab6bab3b54b4d30536b2653c1762bd3c5d42d23c4d270455a4da40a7c67cb92
EBUILD binutils-libs-2.42-r2.ebuild 5369 BLAKE2B 0af7396a8481f12342721b85eff1078805b3fdcb145d7fcbddf9dd5071790ce5638c72a09de71831f17819ad80e2b6039c93dc539dca4bef5913d72721385f0b SHA512 45c6c26e342b3493f22088c3ab1d2f2790d8a7b90edb65a4a647038c3882fd02ffe1fd076d4075428c0cd2cba58aaf0b13fece322de46104a566213bdc64bf82
+EBUILD binutils-libs-2.43.ebuild 5362 BLAKE2B c10fca4f08ed9d0db4b0368f135066f1c8be9248da7e95daf1549b6c3ec19500cc2885d2dc637224d7992a9ad376231bae0bfca1a61b1f0ef2bbd1a8595aa043 SHA512 2aa65973e37e37570a76ceca5445f1ae9308a6c089bfbeed0492d3eb747cbc9e0d70523e3d0e7cd0ae9666198c38d534b509aca9f3976bd8e64c71c80c5cdbc7
MISC metadata.xml 612 BLAKE2B ceaafd9fd1421e9f3993e003d0029c92a78054c7a2b90bd78afc05370ad19c931c6a7c150545cfb7d57165168e0fdaf3a00dde1905b328826a91cbc70d9548a8 SHA512 c8d33bb8d1c62c7e95758624ed0febbc9d40e9f141bfd280837b3207bcd771412158d71c0cb5548d60be0b236f6fe103621daf7efa8875191982859b566ffa8d
diff --git a/sys-libs/binutils-libs/binutils-libs-2.43.ebuild b/sys-libs/binutils-libs/binutils-libs-2.43.ebuild
new file mode 100644
index 000000000000..5a95c53b9f89
--- /dev/null
+++ b/sys-libs/binutils-libs/binutils-libs-2.43.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PATCH_VER=1
+PATCH_DEV=dilfridge
+
+inherit flag-o-matic 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?}.0"
+
+IUSE="64-bit-bfd cet multitarget nls static-libs test"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ nls? ( sys-devel/gettext )
+ test? ( dev-util/dejagnu )
+"
+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
+
+ # See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html
+ # Avoid really confusing logs from subconfigure spam, makes logs far
+ # more legible.
+ export MAKEOPTS="--output-sync=line ${MAKEOPTS}"
+
+ default
+}
+
+pkgversion() {
+ printf "Gentoo ${PVR}"
+ [[ -n ${PATCHVER} ]] && printf " p${PATCHVER}"
+}
+
+multilib_src_configure() {
+ filter-lto
+
+ # Workaround for lld-17 (bug #914640)
+ # Should be able to drop this w/ >=binutils-2.43
+ append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
+
+ local myconf=(
+ # portage's econf() does not detect presence of --d-d-t
+ # because it greps only top-level ./configure. But not
+ # libiberty's or bfd's configure.
+ --disable-dependency-tracking
+ --disable-silent-rules
+ --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,gprofng}
+ # 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
+
+ # Revisit if it's useful, we do have binutils[zstd] though
+ --without-zstd
+
+ # 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() {
+ emake DESTDIR="${D}" install
+
+ # Provided by dev-debug/gdb instead
+ rm "${ED}"/usr/share/info/sframe-spec.info || die
+
+ # 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 510e1ad85ba2..ebaedaee21ff 100644
--- a/sys-libs/compiler-rt-sanitizers/Manifest
+++ b/sys-libs/compiler-rt-sanitizers/Manifest
@@ -1,5 +1,7 @@
DIST llvm-gentoo-patchset-15.0.7.tar.xz 19300 BLAKE2B b70e81d744c2eba5cd851e7b690ce8979b3064973f522be7c93bfb541860000a4bc8b17219f8788dfc8a527217dd13946cf7836640698ddd3d4b3fde493dfbf8 SHA512 daffff6ae4a0874aff1a423b4bb36701ecb5a35a36ae91d4ed7fda58b83e50ffcdc30498c84be4711fd3e1f227bf312dbe930019203e0a131944439af2aa94f7
-DIST llvm-project-0b9f2847da79298ed09c29493245113f02b32d9f.tar.gz 216399453 BLAKE2B ed13e6639d40bdda6dbd09eba0cc8e4f82f4f53ce3cff9742e902af1c306c60dcb6d5fb008057829d46bbbde391697726cba2096c52cf1592c00faf1e37430e4 SHA512 a5b0bf59fa228a41f0c904a42b4b96740fc5e5caa63248c546eb4a810e86d5d8d1d8df663051ed4444cc0389ffa6ec12ee5dbf7d94d6211a253319550d7fac1c
+DIST llvm-gentoo-patchset-18.1.8-r4.tar.xz 15912 BLAKE2B 7300128244aafe42fcf5863e3aad2beb0c96c3df527e6d35fe571369bad520ba4aa397a329287da17eb33dca902057da5cd5193ec560ea7f5767ba2d00a45818 SHA512 b32633db387d4adb3bb2d067f824ae4e8e8a24a25aaa4888520f6e61a4bb1f8f70ad5f44057fbc0892c6f93c803e360612b0fc02c4ec068470b546a55f246cba
+DIST llvm-gentoo-patchset-19.1.0-rc1.tar.xz 3396 BLAKE2B 5715b1689d9806d499e9b0facb07894b0dfebe19b9c41f3ddfbbcc99cf20fc632effed48acedfe4d4184867c4d4d531f491b8495cd81c60318e9e17ed0547c42 SHA512 a1a0c1b7908898ef3921ab145265a51f80359a06305abf1ecfd2288ceb93d80b63524a6519333120f9c5c8b6a7fdc68f961e819e21dbdca1c47b21f742fd6362
+DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d
DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52
DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
@@ -8,14 +10,16 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db
DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
-DIST llvm-project-1bad7024561bc64ed4bfda0772b16376b475eba5.tar.gz 216657623 BLAKE2B 99c48a95c427e8fae5568e5f59ab9bec8b2d8bec0c5d3cf453c261a738fe1c295b34e2e10e6b08d2b02cae43e3b0cd4c8eb025d19a83ee51f47a49afadd56d3f SHA512 08fc904122ab346edbfc3903cafae4f50ba57e146b2d821a568f8378c0f3ab4d413e07c5df2bf061374f9db4634b5f6b27f204fc4f2f68984303ceec9c963c0c
-DIST llvm-project-72d8c2737bb557af9d0c735b9fa30b1b03485627.tar.gz 217324958 BLAKE2B d43c161ac98860e2ce03e7e2474c55766e7496200b090ebb1cb6dcf0c2ad3a32bae76249feca53cd8b56c63806a740c280e6306890cd28429c4a7e84cae5eada SHA512 af3b44ec3f96d636d919906cf20547eb91d0a83d07731c9db38f28311a52011d8ec66833422fad9bb89ca9ac546e308b02015a7b365086341bee1f3de1b6c5e2
+DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8
+DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92
+DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c
+DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826
EBUILD compiler-rt-sanitizers-15.0.7.ebuild 6648 BLAKE2B 89d90e750bc9c3c35e8a42a259fd84bc147ed9b7ed66168435f0010ef8adaf35e04e2cd43c1acc144668e04f5c229ca3cfd99aeb01b4ba2e46f10dd4615e131d SHA512 4f290993d65b7a17280c5ea9a9d19e13cefdde3aebc2236271e02bb1517655895e8eb3adc2047a849ce11dbacf8d7eddec715ab14523122089d856c21ae123a0
EBUILD compiler-rt-sanitizers-16.0.6.ebuild 6615 BLAKE2B 3ca63eefd87ce02510afa912e809895da7356a8e248f402f3fca1583048feebf80cba20f076e1b28fa4ad7f7c06781910948fc49d980b03276a900dc75114e06 SHA512 7f34e0416b520c75457f8267f28630f7a665f05e22d3f5c2d96ea631fcda79a584b6c0e75cba8b7fba7bf28b87a6b19b49be3b4b8770393caabc5ebc83831ebe
EBUILD compiler-rt-sanitizers-17.0.6.ebuild 6447 BLAKE2B 553a762d6dd06dafca05953f4d60e5e3dd215d813da29053d5c4c44750554e3ed90c187390196eeee3bc85bb1e3fbdac7aa2e100b623271898478003792a1302 SHA512 6beaa92bf1ba5213dc9c73395ecdae737f1a84119da6e3f8f008f9f21cf7d7b08b3634ad8768af6b19992fd49d964344c7d37e19b7c7bfec02af644bdc730bbd
-EBUILD compiler-rt-sanitizers-18.1.8.ebuild 6358 BLAKE2B 1a191c1e493b3a596a68314c4c930d12e900869bbd2a7488d9edfef723ad2f154e577758cd523465a65c3aa64da3ac79c0582eb812f45079442557837d988c8d SHA512 923d388eb43f27a0bd28bda7b405cf74bbd6810faa17272ee0889b89e2f832be71fb32e7b721cdedb7e7d4717af1eca69c9054bfcabf7d56fd2375cb7458d4cb
-EBUILD compiler-rt-sanitizers-19.0.0.9999.ebuild 6366 BLAKE2B 4e6459ee51444413b05b661deedbe0f3543f71f6e05349a3a7f4a6352897ee7ea8a62a8ec4a26c5c31a4ba21e68b045b3e37d9e2530ad51519a9f7d2a455342c SHA512 c7ec9377a079c30b3460a7201482b5183ab35755824a7d1c81d90dc2c519a6e2410c0f51fdb4719b8239ee841c162b20ad1cf191068a27a8f13664cad4aa1ca9
-EBUILD compiler-rt-sanitizers-19.0.0_pre20240706.ebuild 6366 BLAKE2B 4e6459ee51444413b05b661deedbe0f3543f71f6e05349a3a7f4a6352897ee7ea8a62a8ec4a26c5c31a4ba21e68b045b3e37d9e2530ad51519a9f7d2a455342c SHA512 c7ec9377a079c30b3460a7201482b5183ab35755824a7d1c81d90dc2c519a6e2410c0f51fdb4719b8239ee841c162b20ad1cf191068a27a8f13664cad4aa1ca9
-EBUILD compiler-rt-sanitizers-19.0.0_pre20240712.ebuild 6366 BLAKE2B 4e6459ee51444413b05b661deedbe0f3543f71f6e05349a3a7f4a6352897ee7ea8a62a8ec4a26c5c31a4ba21e68b045b3e37d9e2530ad51519a9f7d2a455342c SHA512 c7ec9377a079c30b3460a7201482b5183ab35755824a7d1c81d90dc2c519a6e2410c0f51fdb4719b8239ee841c162b20ad1cf191068a27a8f13664cad4aa1ca9
-EBUILD compiler-rt-sanitizers-19.0.0_pre20240720.ebuild 6366 BLAKE2B 4e6459ee51444413b05b661deedbe0f3543f71f6e05349a3a7f4a6352897ee7ea8a62a8ec4a26c5c31a4ba21e68b045b3e37d9e2530ad51519a9f7d2a455342c SHA512 c7ec9377a079c30b3460a7201482b5183ab35755824a7d1c81d90dc2c519a6e2410c0f51fdb4719b8239ee841c162b20ad1cf191068a27a8f13664cad4aa1ca9
+EBUILD compiler-rt-sanitizers-18.1.8.ebuild 6376 BLAKE2B b2b92f586c507f0a5570d4d05e3b35e99b5da325b0a4bbdab694609a4020fced093de5a756e2fb4d07a2d22a349bf84b9da820bc9394f3002397db51c468833e SHA512 815083e5aea9ab93db3ebb45df3bc58bf88d8f76684e28ae893381b8253ed0dd8366956da1879d832918016b68b38579fbc47a20f91360a823aea707ed2fd781
+EBUILD compiler-rt-sanitizers-19.1.0_rc1.ebuild 6390 BLAKE2B d66db01b70fb7e5a27f4b3c4c49248c7a663db5b7fd40fd3c187d4cf196d488f0334818fdd321558809e401d3386ec8790558064e2c1a3ad606b4e1fb4da3413 SHA512 666314b5e0992a0536ab16d6965386b28eaa579f19dd5ffa840457d7422a7bb1fec7f8528ee4996b6e5fe353666476f81c393c761b8512c9ba9f48dab6d90564
+EBUILD compiler-rt-sanitizers-19.1.0_rc2.ebuild 6366 BLAKE2B 4e6459ee51444413b05b661deedbe0f3543f71f6e05349a3a7f4a6352897ee7ea8a62a8ec4a26c5c31a4ba21e68b045b3e37d9e2530ad51519a9f7d2a455342c SHA512 c7ec9377a079c30b3460a7201482b5183ab35755824a7d1c81d90dc2c519a6e2410c0f51fdb4719b8239ee841c162b20ad1cf191068a27a8f13664cad4aa1ca9
+EBUILD compiler-rt-sanitizers-20.0.0.9999.ebuild 6366 BLAKE2B 4e6459ee51444413b05b661deedbe0f3543f71f6e05349a3a7f4a6352897ee7ea8a62a8ec4a26c5c31a4ba21e68b045b3e37d9e2530ad51519a9f7d2a455342c SHA512 c7ec9377a079c30b3460a7201482b5183ab35755824a7d1c81d90dc2c519a6e2410c0f51fdb4719b8239ee841c162b20ad1cf191068a27a8f13664cad4aa1ca9
+EBUILD compiler-rt-sanitizers-20.0.0_pre20240801.ebuild 6529 BLAKE2B 9f656e7b7c7fbffd0372235a2330601746669a42c38f931e88eb7db1c5d48132a9b26a64e375e4c87f193c7a1fe3e332d7edc1417eb933dc32611965c5497325 SHA512 ceef4bd21ef3a943321dc6b617d61ee2f4f1ccd8cf56522a5f3cfb0e1a9a067d3defa70901327e1c41096d7026be29af480bb0942da35f5bb1bc32297ed20b56
MISC metadata.xml 1475 BLAKE2B f7ea99e3103e42a2c79fe6c86ad174297e56bcffa7b164ac3ab0a239ba5adf2265b7fc458ce8b22c9c3bd647bb03d674abf842443cb32bf8d88c683746650a19 SHA512 8e52479d3b040718a3fdaa811030bc45ef33ce74daae3e365281074cdf6d586ba11ae5f14d87dbb456f00fe4b9ae6057f3bf30eb0973cc16cbdcc3eba01ff9f8
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.8.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.8.ebuild
index 6fb017c151f5..2a2ab9a44cd1 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.8.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-18.1.8.ebuild
@@ -11,7 +11,7 @@ HOMEPAGE="https://llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="${LLVM_MAJOR}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~loong 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"
@@ -52,6 +52,7 @@ BDEPEND="
"
LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
+LLVM_PATCHSET=${PV}-r4
LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support third-party )
llvm.org_set_globals
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240712.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.1.0_rc1.ebuild
index d395b7fd5a11..3d189cb63520 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240712.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.1.0_rc1.ebuild
@@ -51,6 +51,7 @@ BDEPEND="
"
LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
+LLVM_PATCHSET=${PV/_/-}
LLVM_TEST_COMPONENTS=(
llvm/include/llvm/ProfileData llvm/lib/Testing/Support third-party
)
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0.9999.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.1.0_rc2.ebuild
index d395b7fd5a11..d395b7fd5a11 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0.9999.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.1.0_rc2.ebuild
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240706.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-20.0.0.9999.ebuild
index d395b7fd5a11..d395b7fd5a11 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240706.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-20.0.0.9999.ebuild
diff --git a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240720.ebuild b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-20.0.0_pre20240801.ebuild
index d395b7fd5a11..82bc26ea8ad5 100644
--- a/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-19.0.0_pre20240720.ebuild
+++ b/sys-libs/compiler-rt-sanitizers/compiler-rt-sanitizers-20.0.0_pre20240801.ebuild
@@ -99,6 +99,11 @@ src_prepare() {
# hangs, sigh
rm test/tsan/getline_nohang.cpp || die
+ if has_version ">=sys-libs/glibc-2.40"; then
+ # https://github.com/llvm/llvm-project/issues/100877
+ rm test/asan/TestCases/Linux/printf-fortify-5.c || die
+ fi
+
llvm.org_src_prepare
}
diff --git a/sys-libs/compiler-rt/Manifest b/sys-libs/compiler-rt/Manifest
index 9a7e6f47fcbb..33de550add82 100644
--- a/sys-libs/compiler-rt/Manifest
+++ b/sys-libs/compiler-rt/Manifest
@@ -1,7 +1,7 @@
DIST llvm-gentoo-patchset-15.0.7.tar.xz 19300 BLAKE2B b70e81d744c2eba5cd851e7b690ce8979b3064973f522be7c93bfb541860000a4bc8b17219f8788dfc8a527217dd13946cf7836640698ddd3d4b3fde493dfbf8 SHA512 daffff6ae4a0874aff1a423b4bb36701ecb5a35a36ae91d4ed7fda58b83e50ffcdc30498c84be4711fd3e1f227bf312dbe930019203e0a131944439af2aa94f7
DIST llvm-gentoo-patchset-16.0.6-r4.tar.xz 18732 BLAKE2B 2f00135700b5e4f0d0e049e13c1da06fd37017b7f455419157ac441bb7d4de12e3e25f4d8480431c1074cfa6a5d66a38ae63d95faefaa4e9c8cd5810c082a596 SHA512 f61c82a195307dc6cb42e09b3c82af2b37827583884ff2de0ef300290fb8f92e90a08895d12e5dec9b29a232c2e942a2d5951dab431e02722fcafbcd1e2b7976
DIST llvm-gentoo-patchset-17.0.6.tar.xz 1792 BLAKE2B 21b34b436333c0b37522d4340cccc84a572701f6e267cf7c6adfa9be419913f5a6c9ee40a6be5c62d12fbd868912801d30381573c4459c05676e05785cccaefe SHA512 2d90b5e7fcbb950249ef7133fac1ed3dcb758a4d92732119049526cea0b291bd4e9738c4c0d806d70e7d769e1906f8ef3930066c206c00b6ec7d3509ed0fed19
-DIST llvm-project-0b9f2847da79298ed09c29493245113f02b32d9f.tar.gz 216399453 BLAKE2B ed13e6639d40bdda6dbd09eba0cc8e4f82f4f53ce3cff9742e902af1c306c60dcb6d5fb008057829d46bbbde391697726cba2096c52cf1592c00faf1e37430e4 SHA512 a5b0bf59fa228a41f0c904a42b4b96740fc5e5caa63248c546eb4a810e86d5d8d1d8df663051ed4444cc0389ffa6ec12ee5dbf7d94d6211a253319550d7fac1c
+DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d
DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52
DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
@@ -10,15 +10,17 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db
DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
-DIST llvm-project-1bad7024561bc64ed4bfda0772b16376b475eba5.tar.gz 216657623 BLAKE2B 99c48a95c427e8fae5568e5f59ab9bec8b2d8bec0c5d3cf453c261a738fe1c295b34e2e10e6b08d2b02cae43e3b0cd4c8eb025d19a83ee51f47a49afadd56d3f SHA512 08fc904122ab346edbfc3903cafae4f50ba57e146b2d821a568f8378c0f3ab4d413e07c5df2bf061374f9db4634b5f6b27f204fc4f2f68984303ceec9c963c0c
-DIST llvm-project-72d8c2737bb557af9d0c735b9fa30b1b03485627.tar.gz 217324958 BLAKE2B d43c161ac98860e2ce03e7e2474c55766e7496200b090ebb1cb6dcf0c2ad3a32bae76249feca53cd8b56c63806a740c280e6306890cd28429c4a7e84cae5eada SHA512 af3b44ec3f96d636d919906cf20547eb91d0a83d07731c9db38f28311a52011d8ec66833422fad9bb89ca9ac546e308b02015a7b365086341bee1f3de1b6c5e2
+DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8
+DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92
+DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c
+DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826
EBUILD compiler-rt-15.0.7.ebuild 4238 BLAKE2B 22d56dbe24c92400bf58942390b06af70fddba89d8fecc9b85162dd7a41c6ee592eaaf883f5ad483f65f74fabccc28f94528688410ee36e2d5279efcc6066de0 SHA512 ca49d23def580d4dcfc4058768eeb9deb6e59ea44575da272d1c142fffe0bf4e3d3c7c9fa6182ab348a3aab11879af116a549cb1a3a03b27b4bf4151cf892aaa
-EBUILD compiler-rt-16.0.6-r4.ebuild 5226 BLAKE2B 7d2d76d79ce49f3d175de87fa982439ceade80787a4f4f96cbda9a0e7c161e89fc49646908e32fd35ed3629956ed0ff79ff2f74754a705264f2d6e2f02f831cb SHA512 14ba6b2644e4b0bcab31e686d395b859eab9ee8ba7adb2242e4fd80d07290cff1243cd644ee8fec53f536dd13d150a16761255ff938ed0c6e717f26165e93945
+EBUILD compiler-rt-16.0.6-r4.ebuild 5222 BLAKE2B 169966029e8632266ab1f1ace407d846e58386044da218fa343e9fb4ac3b3e2703cf42d3d6361bbb2abffbe5ebc0508c2064cbef7f93c66771aec96dbcda71c6 SHA512 ff5c52e2483e6c5ce1c370905700a5d0e458597b503cb9201724712cf3280a51e0af8ac2ff68bb9a30cd4481a76d0dbdae4d5e52b2f9318a9b4586f11fe4f188
EBUILD compiler-rt-16.0.6.ebuild 5198 BLAKE2B 2fe2310703d44d330d97b1fa1b407d99898070604037be31ca762fe65043e1d3d1e046298dc74f3d0cbb3493f985661e362b217170cbe1bf74a47dddfe8987ca SHA512 cc9aabc22f689bfc677ceb74793441674aeca2586a28ff96b812af4822d1b8b5a4147484e41f0bf95ae995488d3e8ee77684fd684b9dab8ade4f1fa57e80c709
EBUILD compiler-rt-17.0.6.ebuild 5218 BLAKE2B 3f488320228fd2a3d1caed790e8e21c7c363769c4d8b912fd5a964b4e802e1b58b297336c527b451edb74ff42c4bdd236795210c4f225ca98a6980fed95d6771 SHA512 abbe2f679a1af7c012ecae32b57b244f7ad84a5d44151a4b7ad799524061f8b65504bd6aa169a91d1a16b878845f40b47e4a1f0253a3ff9ccbe8dbb736db1fb1
-EBUILD compiler-rt-18.1.8.ebuild 4972 BLAKE2B 3bd56ca93ddb3f21007b16c794140281e9fd27cd6fb80e5f00f49ec5e8c46dff56b1a94ba467f6b89c359c8638d9f2d8b9ba67a88268454e0accd79d0a36d768 SHA512 3072e5cc1e5dbea1ca3af15e6ffe29d1f2f664654a493eb509f4fa7b615d7f9e286ffff49dddc9835e928d7895e39239559a65768c6678e8344a73a136070704
-EBUILD compiler-rt-19.0.0.9999.ebuild 4963 BLAKE2B dc2eab2b95233dc791544f2cfcedf6f812ccfde2f31ce14525f60fa4d4df91ca2f93ab702156c0acdbb07fd03face456a521b7e92572b7997a2358a6e1290c95 SHA512 a0299d32d9e7539ec36740899b697f6afa69ca91528fdebe35ffa39c592a6dace90b080cca233a65ce932d17ce76292e7920fa569a3aa3e37424c9f0112c9b2f
-EBUILD compiler-rt-19.0.0_pre20240706.ebuild 4963 BLAKE2B dc2eab2b95233dc791544f2cfcedf6f812ccfde2f31ce14525f60fa4d4df91ca2f93ab702156c0acdbb07fd03face456a521b7e92572b7997a2358a6e1290c95 SHA512 a0299d32d9e7539ec36740899b697f6afa69ca91528fdebe35ffa39c592a6dace90b080cca233a65ce932d17ce76292e7920fa569a3aa3e37424c9f0112c9b2f
-EBUILD compiler-rt-19.0.0_pre20240712.ebuild 4963 BLAKE2B dc2eab2b95233dc791544f2cfcedf6f812ccfde2f31ce14525f60fa4d4df91ca2f93ab702156c0acdbb07fd03face456a521b7e92572b7997a2358a6e1290c95 SHA512 a0299d32d9e7539ec36740899b697f6afa69ca91528fdebe35ffa39c592a6dace90b080cca233a65ce932d17ce76292e7920fa569a3aa3e37424c9f0112c9b2f
-EBUILD compiler-rt-19.0.0_pre20240720.ebuild 4963 BLAKE2B dc2eab2b95233dc791544f2cfcedf6f812ccfde2f31ce14525f60fa4d4df91ca2f93ab702156c0acdbb07fd03face456a521b7e92572b7997a2358a6e1290c95 SHA512 a0299d32d9e7539ec36740899b697f6afa69ca91528fdebe35ffa39c592a6dace90b080cca233a65ce932d17ce76292e7920fa569a3aa3e37424c9f0112c9b2f
+EBUILD compiler-rt-18.1.8.ebuild 4967 BLAKE2B 7b1751e6d13b24464ca21e32e10edd7ec6202248ae33e21ab98123489835bc6567fc6c0630b8683ad4388a1e6b5ba5e223a887b6ba6261a2d68d55f17adcd459 SHA512 c9da46bbd97d6d746ce2c703bc12e1ac24471aaf653ea5a3ab6d92202b9dea5b1bf9f660689c07f41e8bb62554229069142b085b2d263e07399e2e26895dfe84
+EBUILD compiler-rt-19.1.0_rc1.ebuild 4963 BLAKE2B dc2eab2b95233dc791544f2cfcedf6f812ccfde2f31ce14525f60fa4d4df91ca2f93ab702156c0acdbb07fd03face456a521b7e92572b7997a2358a6e1290c95 SHA512 a0299d32d9e7539ec36740899b697f6afa69ca91528fdebe35ffa39c592a6dace90b080cca233a65ce932d17ce76292e7920fa569a3aa3e37424c9f0112c9b2f
+EBUILD compiler-rt-19.1.0_rc2.ebuild 4963 BLAKE2B dc2eab2b95233dc791544f2cfcedf6f812ccfde2f31ce14525f60fa4d4df91ca2f93ab702156c0acdbb07fd03face456a521b7e92572b7997a2358a6e1290c95 SHA512 a0299d32d9e7539ec36740899b697f6afa69ca91528fdebe35ffa39c592a6dace90b080cca233a65ce932d17ce76292e7920fa569a3aa3e37424c9f0112c9b2f
+EBUILD compiler-rt-20.0.0.9999.ebuild 4963 BLAKE2B dc2eab2b95233dc791544f2cfcedf6f812ccfde2f31ce14525f60fa4d4df91ca2f93ab702156c0acdbb07fd03face456a521b7e92572b7997a2358a6e1290c95 SHA512 a0299d32d9e7539ec36740899b697f6afa69ca91528fdebe35ffa39c592a6dace90b080cca233a65ce932d17ce76292e7920fa569a3aa3e37424c9f0112c9b2f
+EBUILD compiler-rt-20.0.0_pre20240801.ebuild 4963 BLAKE2B dc2eab2b95233dc791544f2cfcedf6f812ccfde2f31ce14525f60fa4d4df91ca2f93ab702156c0acdbb07fd03face456a521b7e92572b7997a2358a6e1290c95 SHA512 a0299d32d9e7539ec36740899b697f6afa69ca91528fdebe35ffa39c592a6dace90b080cca233a65ce932d17ce76292e7920fa569a3aa3e37424c9f0112c9b2f
MISC metadata.xml 416 BLAKE2B 79a58249c94b605ba57f346c4e05b43853cf6cfb8bb65a4f4e3c44039cccfdb83dd31bfaaaf398bcbdc393efabdfc7ed186fe775976c46227e74decf2c8f4fb2 SHA512 ce30c79a575e5933effb1fec36f9a4ef02d9f97f312feb39c55a88cbda9a1bae1d7af2ec4ad5f66212cbb2cdbfb26f1a436689f16f410153c9d65eb010264c48
diff --git a/sys-libs/compiler-rt/compiler-rt-16.0.6-r4.ebuild b/sys-libs/compiler-rt/compiler-rt-16.0.6-r4.ebuild
index 6ac04f68fce4..979dfd306f91 100644
--- a/sys-libs/compiler-rt/compiler-rt-16.0.6-r4.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-16.0.6-r4.ebuild
@@ -11,7 +11,7 @@ HOMEPAGE="https://llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="${LLVM_MAJOR}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~loong ~ppc64 ~riscv x86 ~amd64-linux ~arm64-macos ~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-18.1.8.ebuild b/sys-libs/compiler-rt/compiler-rt-18.1.8.ebuild
index d2473ff8d59c..9d2f46c9a2ee 100644
--- a/sys-libs/compiler-rt/compiler-rt-18.1.8.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-18.1.8.ebuild
@@ -12,7 +12,7 @@ HOMEPAGE="https://llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="${LLVM_MAJOR}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86 ~amd64-linux ~arm64-macos ~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-19.0.0.9999.ebuild b/sys-libs/compiler-rt/compiler-rt-19.1.0_rc1.ebuild
index ca99f4442636..ca99f4442636 100644
--- a/sys-libs/compiler-rt/compiler-rt-19.0.0.9999.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-19.1.0_rc1.ebuild
diff --git a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240706.ebuild b/sys-libs/compiler-rt/compiler-rt-19.1.0_rc2.ebuild
index ca99f4442636..ca99f4442636 100644
--- a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240706.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-19.1.0_rc2.ebuild
diff --git a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240712.ebuild b/sys-libs/compiler-rt/compiler-rt-20.0.0.9999.ebuild
index ca99f4442636..ca99f4442636 100644
--- a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240712.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-20.0.0.9999.ebuild
diff --git a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240720.ebuild b/sys-libs/compiler-rt/compiler-rt-20.0.0_pre20240801.ebuild
index ca99f4442636..ca99f4442636 100644
--- a/sys-libs/compiler-rt/compiler-rt-19.0.0_pre20240720.ebuild
+++ b/sys-libs/compiler-rt/compiler-rt-20.0.0_pre20240801.ebuild
diff --git a/sys-libs/efivar/Manifest b/sys-libs/efivar/Manifest
index 1234dd123524..a43aff118005 100644
--- a/sys-libs/efivar/Manifest
+++ b/sys-libs/efivar/Manifest
@@ -9,5 +9,7 @@ AUX efivar-38-ld-locale.patch 1203 BLAKE2B b5814d3708999288d35d3d972f854087b8c07
AUX efivar-38-lld-fixes.patch 12397 BLAKE2B 0aed2f3bed5584f97f38e7d61bc6883e9c3020cadbba2cb37cec3e5b876c6a535f721817a46068d47413551f823489fb048201b81c1e3894eae4d65e3493129c SHA512 008931110a7d9ae7bfd70fae60a2feb01482f4d14ac81c107bdb612d8079546c748905a10a4f1cffee0385cdcee3e7a9c9606bfd24c005ba2333cef2fc444b4b
AUX efivar-38-march-native.patch 1203 BLAKE2B 950a72a5ae4872894379a6688e80c796dd43db67667dd0b30515e2911a981339af6069405e3058ef49be159e37fa6000dbf26db1378b665f3acf6204feaee906 SHA512 fbe34223677a80c5b4e98db7a0171d48a6b56a8d2fd6793299200a64e81c1415913b1b098b5bca8183cbd0f6dada9802aa1967607217a7398f189f58370bb44a
DIST efivar-38.tar.bz2 320221 BLAKE2B 0b96f3d71ddc2246e6a11a5cd32af3d007823c4a283186a428c3f145cd74425a31bd22c4671ad1ab252a3c572991bb1698381cb8bdf51efcbebd62befdc6c070 SHA512 c2f17297c863ece134a9dd758d237fd2df8c8d072f87af1d0bf2bcf9acfc7a53c25597f03fd4fb8cc664b205743d4ffa0ef1b068d0f73c58fa573d40993f3155
+DIST efivar-39.tar.gz 463349 BLAKE2B 73ea4b3293cd708923bcd4332a8c7a5a8bbf539d81300c502a764a2ac205ba7cdf1e30b3432c42a101f56c0b6e31af2907a6a38ada69ace3b0d60e90515094cd SHA512 04493c30efbfc2773abac9a3dd93aa13403c05e29e3bfc72877d2054930811fae99119aadcb1729b6ca85abf5a24db786ea0c27c16d5458ef1b19e74696f5ff7
EBUILD efivar-38.ebuild 1645 BLAKE2B 9504ec6b5480c7ead283356c827709683fc0d048adb52fa9ee2a8128f325fda2f426bf1caf29b16b96c3b41c675582f52a57f052b64ed81a5002db5deba4cf95 SHA512 b8edce0e9fb6269e5274feaca14bb02b0c1ef0c8534fc5adcef51f83d7fe54ef6c44bb748cb01af298149df877f81ab3c8192aab55d1d0e97bad90030040bc67
-MISC metadata.xml 330 BLAKE2B 0f894cb3c99d8540d6548f06f146360e20fcff309d867c1da96a15d07e5f1ebb2f03114de8527ddd28c26f4b42a7fa9903dd925015b962b4d4094dda86f76d65 SHA512 c03a2d22f945fd9e4a19143da20b884759e0aa88f73f42a70d47d5b1aeeb43201d9452919779d9c3e020371c3d1519a7068d59c0904043572ae0dd09633989e8
+EBUILD efivar-39.ebuild 1331 BLAKE2B a165e165e1f285459a81cb4f9c0b6a7d900c891de253bc17e42996ef978e28ac91706db350b9908a571743d76a98d99526b416dfb0433dc19fb92324b4e148eb SHA512 2b2d800f9523e231df3faa6026fd3abc05376a415ee6ba50d64d3f0ecf5567533ffa434f97f30bf8030ad62a9442717a951e0b30f73d3ab33900e2c289a1e395
+MISC metadata.xml 325 BLAKE2B 9cab1cda08c7ca71c0f15baed5011f8d2cd5fa292da287100ddf25d788e5f34cfed94c1543952f445614fd161fbdfbea7fd8f63aec1c912878a973b78ad8ee34 SHA512 b0985f3403b6aa9c806899fe9ca31d3a76c61f62f427ea1aa3b0fb5ecf380e3fef7e8bc1ccfc02c6c04ee1a6a0d370c2cbb7e1bf27cd67f6156758cb53f2319c
diff --git a/sys-libs/efivar/efivar-39.ebuild b/sys-libs/efivar/efivar-39.ebuild
new file mode 100644
index 000000000000..a88ff714f25d
--- /dev/null
+++ b/sys-libs/efivar/efivar-39.ebuild
@@ -0,0 +1,70 @@
+# Copyright 2014-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Tools and library to manipulate EFI variables"
+HOMEPAGE="https://github.com/rhboot/efivar"
+SRC_URI="https://github.com/rhboot/efivar/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0/1"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ app-text/mandoc
+ test? ( sys-boot/grub:2 )
+"
+RDEPEND="
+ dev-libs/popt
+"
+DEPEND="${RDEPEND}
+ >=sys-kernel/linux-headers-3.18
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ local PATCHES=(
+ # Rejected upstream, keep this for ia64 support
+ "${FILESDIR}"/efivar-38-ia64-relro.patch
+ )
+ default
+}
+
+src_configure() {
+ unset CROSS_COMPILE
+ export COMPILER=$(tc-getCC)
+ export HOSTCC=$(tc-getBUILD_CC)
+
+ tc-ld-disable-gold
+
+ export libdir="/usr/$(get_libdir)"
+
+ # https://bugs.gentoo.org/562004
+ unset LIBS
+
+ # Avoid -Werror
+ export ERRORS=
+
+ if [[ -n ${GCC_SPECS} ]]; then
+ # The environment overrides the command line.
+ GCC_SPECS+=":${S}/src/include/gcc.specs"
+ fi
+
+ # Used by tests/Makefile
+ export GRUB_PREFIX=grub
+}
+
+src_compile() {
+ # HOST_MARCH: https://bugs.gentoo.org/831334
+ emake HOST_MARCH=
+}
+
+src_test() {
+ # https://bugs.gentoo.org/924370
+ emake -j1 test
+}
diff --git a/sys-libs/efivar/metadata.xml b/sys-libs/efivar/metadata.xml
index 0a27d363fed2..09743f0f8998 100644
--- a/sys-libs/efivar/metadata.xml
+++ b/sys-libs/efivar/metadata.xml
@@ -6,6 +6,6 @@
<name>Mike Gilbert</name>
</maintainer>
<upstream>
- <remote-id type="github">rhinstaller/efivar</remote-id>
+ <remote-id type="github">rhboot/efivar</remote-id>
</upstream>
</pkgmetadata>
diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest
index 319395c53711..b18afc2a1149 100644
--- a/sys-libs/glibc/Manifest
+++ b/sys-libs/glibc/Manifest
@@ -36,6 +36,8 @@ DIST glibc-2.39-patches-6.tar.xz 87600 BLAKE2B 7bb24a16fb64ed07a7477dad075dfedd5
DIST glibc-2.39-patches-7.tar.xz 104640 BLAKE2B 9dba666c20aa4f4dde29fcc7173e53f08037102d0e53634533ac900f90d99a76f0f26064f6f71c72c75fa788f501e562a9f9548ebb44ded26ec55a5344e99d1e SHA512 214bf3256177141e059531775ed74d813a01a1e4f15892c40f7e70d8b26ce79216501d1cee5e6e980fbb5c2966ce427edf3136283486ae50acb88cb8e647ee0a
DIST glibc-2.39-patches-9.tar.xz 110948 BLAKE2B b958561bbc0fefa5982f0aa16dd02cc9cbd015d30d203c02d9ee72605aa51c3e25fac39759487c0deb382a793e3e0274e5585c5a4bd0036bcfaa30fc7dad9021 SHA512 d954a846c4308d4e16d3e878f1ed9ec62f3d78328043289a38cb15148ccf6b431e4a0f185e138300c141ba7e63247922f916ecbab2c8eeaa99d31c54b1ebd0fb
DIST glibc-2.39.tar.xz 18520988 BLAKE2B 9d98459a2d58401e07c081e0d841935b23998da75a7eb5a7ebd23a1f9ebab99dee623fe166397c1b6c926960c570f62dbca5cb3b5ce84a918adff6b7a15e16bb SHA512 818f58172a52815b4338ea9f2a69ecaa3335492b9f8f64cbf8afb24c0d737982341968ecd79631cae3d3074ab0ae4bc6056fc4ba3ffe790849dc374835cd57e2
+DIST glibc-2.40-patches-1.tar.xz 17316 BLAKE2B 7c44b9a6f1b34aa5240a1d68721acf399e488c2e9f6e838d16344f4e87737e516c975547fa23baba386263ccfdd26832df2e78040c95d0faa53b32e2343c9831 SHA512 5b922cb4a9150fc2380be834e2c6cf62340c23476e9e1ec6a7954e1f01686e8b6d65108a9a07a96d580b863376e0dfc829b6b4d3ac2a6f99de2fb87a51125d78
+DIST glibc-2.40.tar.xz 18752204 BLAKE2B 8593cab5b2549b77159b6866fbb40b917e491fd5bc0814f7f85b6529166d78d4583436450c479b86cdfe468304fc4d2a9ba8294230a55dbc4c15e89c3ab6c000 SHA512 33caf91dbfddde6480b7cdf7a68b36aff8c522bfee56160af26af297f1b768668edb08bc4e1a7ff61c64721e3c1d49c347a5dd01c5edd3b914ee6479c8b27885
DIST glibc-systemd-20210729.tar.gz 1480 BLAKE2B 37722c7579df782d890e44dbab99c3de52ab466eb9de80d82405e9bb5620bf39ffc8c5f466a435bdb86ef6d36dd7019c0736573916bda6c67d02a2581e0ec979 SHA512 efd75af58b50522c28cdac7abd1fc56555bc1bb042512c90d8340c1ec09c5791b3872a305bf83723252bbde5855b75d958c041083457765c4cfd170732d09238
DIST glibc-systemd-20210814.tar.gz 1469 BLAKE2B 10fa7bcb46d4fdce9c0ab353cbd30871e9b09a347a13a9c9a3b5777f931aa3c826c158d2e49532c604d4a834f2fab4089b67495fb88d0398945dc50d45ad9ef1 SHA512 5346a9ea459a1e6ccf665389f2a294de1e16f1e3e05cdf07e3dd99ed0e4f6f8b52cc333d4bff3c75ac90ab6ce70cd4ab2b3e126f920ce7979abd6dda56315efc
DIST locale-gen-2.00.tar.gz 7738 BLAKE2B cde6de5ba3400aea24d0d5f1b79471f89f09fb747c8e371e38316c7ada92f967e0865f573f23cb353d82419c234724143c0aeca9eb70eb945dfc581cc7491eb1 SHA512 b609fddb9ec5e567c008841fef3390eddb5d6e7699a8271b3b8c0ade1b44b0ac2e5d1daa8b9acabf3432e3b88110b538a96f209b1ad0f9e988b7efce66606dff
@@ -53,6 +55,7 @@ EBUILD glibc-2.37-r10.ebuild 53069 BLAKE2B c6cdba8fd225be0d3d235124f51c97a019a68
EBUILD glibc-2.38-r13.ebuild 54775 BLAKE2B c3291ddd788036be52f941eab728f344a91c8c7df16ccc9586cf809f1290ac8c4b670e7b75676d12e089ebb455a2692fdf9b075f25793398a676d821deb98968 SHA512 574fe46f49a81ecfdc06518d32d09565f02c0a6eb24b5ba950bfbbf0d513116715a68178afe7fc9f6802e9b70e27ff7f9aecbfe6e662e545be22e4967529b222
EBUILD glibc-2.39-r6.ebuild 54759 BLAKE2B 5e0fee4d058e73a3d675e389d302adb2097afdcd8661191285e95088250d05d2eecf5d98b551db5e65f3ad48c671470df3ea7e9069074961f4821c753e16b89f SHA512 27b5194381e17be94b1a42eda1081adad443fec51c2dc36ae0ad75e6b730680a181ff8deb4800ae4aba63afc7332f45286a843475373bbef7bb927386c2e0ca4
EBUILD glibc-2.39-r7.ebuild 54767 BLAKE2B 6626c0110d6ff3eeca21ecb5f0a5c40b29f84827c7bf5fb93a928b959a780d7f5b6eb3de6c3c643e7209c0b81981f464935395a4523cd727a8d3a17a2a2734e5 SHA512 19b1ab909458aafee204aa2b5c24c4438b7ea1f51d69f65968b23ff8f7db2c572467f67ea2c50cdd125725c83c520a813f02c675bc28fcf3e6df7c2d9b6c8c4b
-EBUILD glibc-2.39-r9.ebuild 54361 BLAKE2B 19d389f3b8cee21dcc330cb6b6fb7a3c152a805ce7e89508461cd935d5393b5d7a29237ee6e09f78d5065e13753ab55b4c7f015f6a944a3cec11aed32add3bf0 SHA512 8e4667fb9890f3e9b83283a044ddf35a392ac2a0c2e4d2f2a2a42a65b3cba485a4f77a889538dbf83984179356f7693a790946a10a26d4e194da3438d9ac35b1
-EBUILD glibc-9999.ebuild 54364 BLAKE2B 770b39bdd40a18b9abee1fa1ba025dc3c17f72ffce4481986cddd636e6ccdbb0dd4ead07e576b6d85b2075e006a46cf601181729554daecc61924bd4a20ae3d2 SHA512 cecb09dfb348a412a6e707062a597dd728e8fa2d0c6e6b834656f4fe5ec7269d2969982c0e0f09f3d4f0161f9016b2b4b4d71d68373de8e5148a11f4c2248e9c
+EBUILD glibc-2.39-r9.ebuild 54416 BLAKE2B 78c3f4959e6da9086e67021ce90f44e96581fc0ea44951b2f26869be6ce3c62ecdabd7b642bbdc5ef7a3400353899904ecbf09016eea10d721736badca31e2d1 SHA512 bc274e741e26f8ceab793467b813e2722bfabd7c63295711d957d8c8806adb9d8a2a2a6e33d392af918c3af7a87a8f726b093d1aa8432d733c1cc17145fb441e
+EBUILD glibc-2.40.ebuild 54417 BLAKE2B a99f576141195a92f27ce98ff2f0023900b85b1168dc7e5e1e509ee1a5539bd7cdbaf5ee45eb2eb0e59deb80c31e932c04e059411dde1078e79fb01b8ca05f82 SHA512 193c5d4925a0ca7d697667f083ebd8e57b998402cf5f74a33f62cdf85630e0bdc5bcd5a7de43c07c79c7d229853f9f79bb2209438fa5acdfb94be5ad320c2f39
+EBUILD glibc-9999.ebuild 54418 BLAKE2B dfb32246f7219c91ee961fa2a11e8b505a18243fc7ad670560b1b5939e7721d5a74faf8dfdd8c0aacf7aece56bd18de96f1f1398d99f347547c5e0428ea0289a SHA512 a3e007e945b56ce07c72762529be5165bb6b52e2c7851ef1c341c4037e11accaaf985d63f928510a24a5c2e7b562dc010ab191f0fd39d65d2b170dcb72798d14
MISC metadata.xml 2142 BLAKE2B 765ba540eb10afccd1bade4de56f0c13ce269225500a62d1d17328194de69e7fa15d359a14eac6bfa8a36df45344db3d52f5e1811b174cf1fa2bfb95ad7760a7 SHA512 2f4a148c076a0967663d14e76b85a698ddae7093ff299b0dc95a6c3b00957c9bf73443f2bace9670eb62a45465efbcca892bb52b6aac8577acb2bc5f74a7397c
diff --git a/sys-libs/glibc/glibc-2.39-r9.ebuild b/sys-libs/glibc/glibc-2.39-r9.ebuild
index d15adef9b01f..b73cd8b325eb 100644
--- a/sys-libs/glibc/glibc-2.39-r9.ebuild
+++ b/sys-libs/glibc/glibc-2.39-r9.ebuild
@@ -477,6 +477,9 @@ setup_flags() {
# #898098
filter-flags -fno-builtin
+ # #798774
+ filter-flags -fno-semantic-interposition
+
# #829583
filter-lfs-flags
@@ -1001,7 +1004,7 @@ glibc_do_configure() {
# worth protecting from stack smashes.
myconf+=( --enable-stack-protector=$(usex ssp strong no) )
- # Keep a whitelist of targets supporing IFUNC. glibc's ./configure
+ # Keep a whitelist of targets supporting IFUNC. glibc's ./configure
# is not robust enough to detect proper support:
# https://bugs.gentoo.org/641216
# https://sourceware.org/PR22634#c0
diff --git a/sys-libs/glibc/glibc-2.40.ebuild b/sys-libs/glibc/glibc-2.40.ebuild
new file mode 100644
index 000000000000..1e2debc4ab65
--- /dev/null
+++ b/sys-libs/glibc/glibc-2.40.ebuild
@@ -0,0 +1,1744 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Bumping notes: https://wiki.gentoo.org/wiki/Project:Toolchain/sys-libs/glibc
+# Please read & adapt the page as necessary if obsolete.
+
+PYTHON_COMPAT=( python3_{10..12} )
+TMPFILES_OPTIONAL=1
+
+EMULTILIB_PKG="true"
+
+# Gentoo patchset (ignored for live ebuilds)
+PATCH_VER=1
+PATCH_DEV=dilfridge
+
+# gcc mulitilib bootstrap files version
+GCC_BOOTSTRAP_VER=20201208
+
+# systemd integration version
+GLIBC_SYSTEMD_VER=20210729
+
+# 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"
+
+# Minimum systemd version needed (which contains any new syscall changes for
+# its seccomp filter!). Please double check this!
+MIN_SYSTEMD_VER="254.9-r1"
+
+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/"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+else
+ 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"
+fi
+
+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 )"
+
+LICENSE="LGPL-2.1+ BSD HPND ISC inner-net rc PCRE"
+SLOT="2.2"
+IUSE="audit caps cet compile-locales custom-cflags doc gd hash-sysv-compat headers-only +multiarch multilib multilib-bootstrap nscd perl profile selinux +ssp stack-realign +static-libs suid systemd systemtap test vanilla"
+
+# 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.
+# - similarly, valgrind requires knowledge about symbols in ld.so:
+# bug #920753
+# 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.
+
+IDEPEND="
+ !compile-locales? ( sys-apps/locale-gen )
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=app-misc/pax-utils-${MIN_PAX_UTILS_VER}
+ sys-devel/bison
+ compile-locales? ( sys-apps/locale-gen )
+ doc? (
+ dev-lang/perl
+ sys-apps/texinfo
+ )
+ test? (
+ dev-lang/perl
+ >=net-dns/libidn2-2.3.0
+ )
+"
+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-debug/systemtap )
+"
+DEPEND="${COMMON_DEPEND}
+"
+RDEPEND="${COMMON_DEPEND}
+ !<app-misc/pax-utils-${MIN_PAX_UTILS_VER}
+ !<sys-apps/systemd-${MIN_SYSTEMD_VER}
+ perl? ( dev-lang/perl )
+"
+
+RESTRICT="!test? ( test )"
+
+if [[ ${CATEGORY} == cross-* ]] ; then
+ BDEPEND+=" !headers-only? (
+ >=${CATEGORY}/binutils-2.27
+ >=${CATEGORY}/gcc-6.2
+ )"
+ [[ ${CATEGORY} == *-linux* ]] && DEPEND+=" ${CATEGORY}/linux-headers"
+else
+ BDEPEND+="
+ >=sys-devel/binutils-2.27
+ >=sys-devel/gcc-6.2
+ "
+ 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
+
+ # Fails with certain PORTAGE_NICENESS/PORTAGE_SCHEDULING_POLICY
+ tst-sched1
+
+ # Fails regularly, unreliable
+ tst-valgrind-smoke
+
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=31877 (bug #927973)
+ tst-shstk-legacy-1g
+)
+
+XFAIL_NSPAWN_TEST_LIST=(
+ # These tests need to be adapted to handle EPERM/ENOSYS(?) properly
+ # upstream, as systemd-nspawn's default seccomp whitelist is too strict.
+ # https://sourceware.org/PR30603
+ test-errno-linux
+ tst-bz21269
+ tst-mlock2
+ tst-ntp_gettime
+ tst-ntp_gettime-time64
+ tst-ntp_gettimex
+ tst-ntp_gettimex-time64
+ tst-pkey
+ tst-process_mrelease
+ tst-adjtime
+ tst-adjtime-time64
+ tst-clock2
+ tst-clock2-time64
+
+ # These fail if --suppress-sync and/or low priority is set
+ tst-sync_file_range
+ test-errno
+)
+
+#
+# Small helper functions
+#
+
+dump_build_environment() {
+ einfo ==== glibc build environment ========================================================
+ local v
+ for v in ABI CBUILD CHOST CTARGET CBUILD_OPT CTARGET_OPT CC CXX CPP LD \
+ {AS,C,CPP,CXX,LD}FLAGS MAKEINFO NM AR AS STRIP RANLIB OBJCOPY \
+ STRINGS OBJDUMP READELF; do
+ einfo " $(printf '%15s' ${v}:) ${!v}"
+ done
+ einfo =====================================================================================
+}
+
+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
+
+ # We assume CC is already set up.
+ nonfatal emake glibc-test
+ ret=$?
+
+ popd >/dev/null
+
+ CFLAGS=${save_cflags}
+ return ${ret}
+}
+
+do_run_test() {
+ local ret
+
+ if [[ ${MERGE_TYPE} == "binary" ]] ; then
+ # ignore build failures when installing a binary package #324685
+ do_compile_test "" "$@" 2>/dev/null || return 0
+ else
+ if ! do_compile_test "" "$@" ; then
+ ewarn "Simple build failed ... assuming this is desired #324685"
+ return 0
+ fi
+ fi
+
+ pushd "${T}" >/dev/null
+
+ ./glibc-test
+ ret=$?
+ rm -f glibc-test*
+
+ popd >/dev/null
+
+ return ${ret}
+}
+
+setup_target_flags() {
+ # This largely mucks with compiler flags. None of which should matter
+ # when building up just the headers.
+ just_headers && return 0
+
+ case $(tc-arch) in
+ x86)
+ # -march needed for #185404 #199334
+ # TODO: When creating the first glibc cross-compile, this test will
+ # always fail as it does a full link which in turn requires glibc.
+ # Probably also applies when changing multilib profile settings (e.g.
+ # enabling x86 when the profile was amd64-only previously).
+ # We could change main to _start and pass -nostdlib here so that we
+ # only test the gcc code compilation. Or we could do a compile and
+ # then look for the symbol via scanelf.
+ if ! do_compile_test "" 'void f(int i, void *p) {if (__sync_fetch_and_add(&i, 1)) f(i, p);}\nint main(){return 0;}\n'; 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
+ # For compatibility with older binaries at slight performance cost.
+ use stack-realign && export CFLAGS+=" -mstackrealign"
+ ;;
+ amd64)
+ # -march needed for #185404 #199334
+ # TODO: See cross-compile issues listed above for x86.
+ if [[ ${ABI} == x86 ]]; then
+ 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
+ # For compatibility with older binaries at slight performance cost.
+ use stack-realign && export CFLAGS_x86+=" -mstackrealign"
+ 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
+
+ # Allow -O2 and -O3, but nothing else for now.
+ # TODO: Test -Os, -Oz.
+ if ! is-flagq '-O@(2|3)' ; then
+ # Lock glibc at -O2. We want to be conservative here.
+ filter-flags '-O?'
+ append-flags -O2
+ fi
+ fi
+
+ strip-unsupported-flags
+ filter-lto
+ 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'
+
+ # Flag added for cross-prefix, but causes ldconfig to segfault. Not needed
+ # anyway because glibc already handles this by itself.
+ filter-ldflags '-Wl,--dynamic-linker=*'
+
+ # some weird software relies on sysv hashes in glibc, bug 863863, bug 864100
+ # we have to do that here already so mips can filter it out again :P
+ if use hash-sysv-compat ; then
+ append-ldflags '-Wl,--hash-style=both'
+ fi
+
+ # #492892
+ filter-flags -frecord-gcc-switches
+
+ # #898098
+ filter-flags -fno-builtin
+
+ # #798774
+ filter-flags -fno-semantic-interposition
+
+ # #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"
+ # https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F
+ replace-flags -O0 -O1
+
+ # glibc handles this internally already where it's appropriate;
+ # can't always have SSP when we're the ones setting it up, etc
+ filter-flags '-fstack-protector*'
+
+ # Similar issues as with SSP. Can't inject yourself that early.
+ filter-flags '-fsanitize=*'
+
+ # See end of bug #830454; we handle this via USE=cet
+ filter-flags '-fcf-protection=*'
+
+ # When bootstrapping, we may have a situation where
+ # CET-enabled gcc from seed is used to build CET-disabled
+ # glibc. As such, gcc implicitly enables CET if no
+ # -fcf-protection flag is passed. For a typical package it
+ # should not be a problem, but for glibc it matters as it is
+ # dealing with CET in ld.so. So if CET is supposed to be
+ # disabled for glibc, be explicit about it.
+ if ! use cet; then
+ case ${ABI}-${CTARGET} in
+ amd64-x86_64-*|x32-x86_64-*-*-gnux32)
+ append-flags '-fcf-protection=none'
+ ;;
+ arm64-aarch64*)
+ append-flags '-mbranch-protection=none'
+ ;;
+ esac
+ fi
+}
+
+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=${glibc__ORIG_CC:-${CC:-$(tc-getCC ${CTARGET})}}
+ export CXX=${glibc__ORIG_CXX:-${CXX:-$(tc-getCXX ${CTARGET})}}
+ export CPP=${glibc__ORIG_CPP:-${CPP:-$(tc-getCPP ${CTARGET})}}
+
+ # and make sure glibc__ORIG_CC and glibc__ORIG_CXX is defined now.
+ export glibc__ORIG_CC=${CC}
+ export glibc__ORIG_CXX=${CXX}
+ export glibc__ORIG_CPP=${CPP}
+
+ if tc-is-clang && ! use custom-cflags && ! is_crosscompile ; then
+ export glibc__force_gcc=yes
+ # once this is toggled on, it needs to stay on, since with CPP manipulated
+ # tc-is-clang does not work correctly anymore...
+ fi
+
+ if [[ ${glibc__force_gcc} == "yes" ]] ; 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 CPP="${current_gcc_path}/cpp"
+ 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})"
+ export CPP="$(tc-getCPP ${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__GLIBC_CC=${CC}
+ export glibc__GLIBC_CXX=${CXX}
+ export glibc__GLIBC_CPP=${CPP}
+
+ export glibc__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__GLIBC_CC} ${glibc__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__GLIBC_CXX} ${glibc__abi_CFLAGS} ${CFLAGS}"
+
+ export CPP="${glibc__GLIBC_CPP} ${glibc__abi_CFLAGS} ${CFLAGS}"
+
+ if is_crosscompile; then
+ # Assume worst-case bootstrap: glibc is built for the first time
+ # with ${CTARGET}-g++ 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+=" (patchset ${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
+
+ 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 if the system can execute 32-bit binaries"
+ 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
+ if [[ $STAT -ne 0 ]]; then
+ eerror "Ensure that CONFIG_IA32_EMULATION is enabled in the kernel."
+ eerror "Seek support otherwise."
+ die "Unable to execute 32-bit binaries"
+ fi
+ 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
+
+ # Do not run this check for pkg_pretend, just pkg_setup and friends (if we ever get used there).
+ # It's plausible (seen it in the wild) that Portage will (correctly) schedule a linux-headers
+ # upgrade before glibc, but because pkg_pretend gets run before any packages are merged at all (not
+ # just glibc), the whole emerge gets aborted without a good reason. We probably don't
+ # need to run this check at all given we have a dependency on the right headers,
+ # but let's leave it as-is for now.
+ if [[ ${EBUILD_PHASE_FUNC} != pkg_pretend ]] ; then
+ 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
+ fi
+}
+
+upgrade_warning() {
+ is_crosscompile && return
+
+ 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() {
+ upgrade_warning
+}
+
+# pkg_setup
+
+pkg_setup() {
+ # see bug 682570
+ [[ -z ${BOOTSTRAP_RAP} ]] && python-any-r1_pkg_setup
+}
+
+# src_unpack
+
+src_unpack() {
+ setup_env
+
+ einfo "Checking general environment sanity."
+ sanity_prechecks
+
+ use multilib-bootstrap && unpack gcc-multilib-bootstrap-${GCC_BOOTSTRAP_VER}.tar.xz
+
+ 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-${PV}-patches-${PATCH_VER}.tar.xz
+ fi
+
+ cd "${WORKDIR}" || die
+ use systemd && unpack glibc-systemd-${GLIBC_SYSTEMD_VER}.tar.gz
+}
+
+# src_prepare
+
+src_prepare() {
+ local patchsetname
+ if ! use vanilla ; then
+ if [[ ${PV} == 9999* ]] ; then
+ patchsetname="from git master"
+ else
+ patchsetname="${PV}-${PATCH_VER}"
+ fi
+ einfo "Applying Gentoo Glibc patchset ${patchsetname}"
+ eapply "${WORKDIR}"/patches
+ einfo "Done."
+ fi
+
+ default
+
+ gnuconfig_update
+
+ cd "${WORKDIR}" || die
+ find . -name configure -exec touch {} +
+
+ # Fix permissions on some of the scripts.
+ chmod u+x "${S}"/scripts/*.sh
+
+ cd "${S}" || die
+}
+
+# src_configure
+
+glibc_do_configure() {
+ dump_build_environment
+
+ local myconf=()
+
+ # Use '=strong' instead of '=all' to protect only functions
+ # worth protecting from stack smashes.
+ myconf+=( --enable-stack-protector=$(usex ssp strong no) )
+
+ # Keep a whitelist of targets supporting 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|riscv|loong) ;;
+ # Blacklist everywhere else
+ *) myconf+=( libc_cv_ld_gnu_indirect_function=no ) ;;
+ esac
+
+ case ${ABI}-${CTARGET} in
+ amd64-x86_64-*|x32-x86_64-*-*-gnux32) 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+=(
+ --disable-werror
+ --enable-bind-now
+ --enable-fortify-source
+ --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_multiarch || echo --disable-multi-arch)
+ $(use_enable systemtap)
+ $(use_enable nscd)
+
+ # /usr/bin/mtrace has a Perl shebang. Gentoo Prefix QA checks fail if
+ # Perl hasn't been installed inside the prefix yet and configure picks
+ # up a Perl from outside the prefix instead. configure will fail to
+ # execute Perl during configure if we're cross-compiling a prefix, but
+ # it will just disable mtrace in that case.
+ # Note: mtrace is needed by the test suite.
+ ac_cv_path_PERL="$(usex perl "${EPREFIX}"/usr/bin/perl $(usex test "${EPREFIX}"/usr/bin/perl $(usex doc "${EPREFIX}"/usr/bin/perl no)))"
+
+ # locale data is arch-independent
+ # https://bugs.gentoo.org/753740
+ libc_cv_complocaledir='${exec_prefix}/lib/locale'
+
+ # On aarch64 there is no way to override -mcpu=native, and if
+ # the current cpu does not support SVE configure fails.
+ # Let's boldly assume our toolchain can always build SVE instructions.
+ libc_cv_aarch64_sve_asm=yes
+
+ ${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"
+
+ # 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 'int main(void){}' > "${T}"/test.c || die
+ 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,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
+
+ local myconf=()
+
+ case ${CTARGET} in
+ aarch64*)
+ # The configure checks fail during cross-build, so disable here
+ # for headers-only
+ myconf+=(
+ --disable-mathvec
+ ) ;;
+ 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
+
+ myconf+=(
+ --disable-sanity-checks
+ --enable-hacker-mode
+ --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
+}
+
+# src_compile
+
+do_src_compile() {
+ emake -C "$(builddir nptl)"
+}
+
+src_compile() {
+ if just_headers ; then
+ return
+ fi
+
+ foreach_abi do_src_compile
+}
+
+# src_test
+
+glibc_src_test() {
+ cd "$(builddir nptl)"
+
+ local myxfailparams=""
+ if [[ "${GENTOO_GLIBC_XFAIL_TESTS}" == "yes" ]] ; then
+ local virt=$(systemd-detect-virt 2>/dev/null)
+ if [[ ${virt} == systemd-nspawn ]] ; then
+ ewarn "Skipping extra tests because in systemd-nspawn container"
+ XFAIL_TEST_LIST+=( "${XFAIL_NSPAWN_TEST_LIST[@]}" )
+ fi
+ if [[ "$(nice)" == "19" ]] ; then
+ # Expects to be able to increase niceness, which it can't do if
+ # already at the highest nice value
+ XFAIL_TEST_LIST+=( "tst-nice" )
+ fi
+
+ 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
+
+ # we give the tests a bit more time to avoid spurious
+ # bug reports on slow arches
+
+ SANDBOX_ON=0 LD_PRELOAD= TIMEOUTFACTOR=16 emake ${myxfailparams} check
+}
+
+src_test() {
+ if just_headers ; then
+ return
+ fi
+
+ foreach_abi glibc_src_test || die "tests failed"
+}
+
+# src_install
+
+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
+
+ # bug 736794: we need to be careful with the parallelization... the number of
+ # processors saved in the environment of a binary package may differ strongly
+ # from the number of processes available during postinst
+ local mygenjobs="$(makeopts_jobs)"
+ if [[ "${EMERGE_FROM}" == "binary" ]] ; then
+ mygenjobs="$(nproc)"
+ fi
+
+ set -- locale-gen ${inplace} --jobs "${mygenjobs}" --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 libpthreads symbols. stripping breaks it
+ # See Note [Disable automatic stripping]
+ dostrip -x $(alt_libdir)/libpthread-${upstream_pv}.so
+ # valgrind requires knowledge about ld.so symbols.
+ dostrip -x $(alt_libdir)/ld-*.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 configure toolchains for standalone prefix systems with a sysroot,
+ # which is prepended to paths in ld scripts, so strip the prefix from these.
+ # Before: GROUP ( /foo/lib64/libc.so.6 /foo/usr/lib64/libc_nonshared.a AS_NEEDED ( /foo/lib64/ld-linux-x86-64.so.2 ) )
+ # After: GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib64/ld-linux-x86-64.so.2 ) )
+ if [[ -n $(host_eprefix) ]] ; then
+ local file
+ grep -lZIF "ld script" "${ED}/$(alt_usrlibdir)"/lib*.{a,so} 2>/dev/null | while read -rd '' file ; do
+ sed -i "s|$(host_eprefix)/|/|g" "${file}" || die
+ done
+ 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 "${S}" || die
+
+ # 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}/"
+ 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
+
+ einfo "Checking general environment sanity."
+ sanity_prechecks
+
+ # 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 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
+}
+
+glibc_refresh_ldconfig() {
+ if [[ ${MERGE_TYPE} == buildonly ]]; then
+ return
+ fi
+
+ # Version check could be added to avoid unnecessary work, but ldconfig
+ # should finish quickly enough to not matter.
+ ebegin "Refreshing ld.so.cache"
+ ldconfig -i
+ if ! eend $?; then
+ ewarn "Failed to refresh the ld.so.cache for you. Some programs may be broken"
+ ewarn "before you manually do so (ldconfig -i)."
+ 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
+ # glibc-2.38+ on loong has ldconfig support added, but the ELF e_flags
+ # handling has changed as well, which means stale ldconfig auxiliary
+ # cache entries and failure to lookup libgcc_s / libstdc++ (breaking
+ # every C++ application) / libgomp etc., among other breakages.
+ #
+ # To fix this, simply refresh the ld.so.cache without using the
+ # auxiliary cache if we're natively installing on loong. This should
+ # be done relatively soon because we want to minimize the breakage
+ # window for the affected programs.
+ use loong && glibc_refresh_ldconfig
+
+ 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 grep -E -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-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild
index f6b2e565a6a6..a509c476c930 100644
--- a/sys-libs/glibc/glibc-9999.ebuild
+++ b/sys-libs/glibc/glibc-9999.ebuild
@@ -477,6 +477,9 @@ setup_flags() {
# #898098
filter-flags -fno-builtin
+ # #798774
+ filter-flags -fno-semantic-interposition
+
# #829583
filter-lfs-flags
diff --git a/sys-libs/kpmcore/Manifest b/sys-libs/kpmcore/Manifest
index 0e0e6246cf44..067efc5ba503 100644
--- a/sys-libs/kpmcore/Manifest
+++ b/sys-libs/kpmcore/Manifest
@@ -1,5 +1,5 @@
DIST kpmcore-23.08.5.tar.xz 630396 BLAKE2B f5a470c9b54663b9f52467519046646de9ea20b83c8afaf199e3877ecc3f9de47139c9d44e8b23a2d49bfb00ae624b9117cf1adf83092f141a8e46d02adfaf8f SHA512 30ddbe62412df5645e034b745159b7c8db7801340225653d05856032083181d482379415a56d4e6f703c4f6c4a1a79c252a3b549beba227ab70dfc673cc59acd
DIST kpmcore-24.05.2.tar.xz 638036 BLAKE2B cc75d61d38a12f5fae2b2f20d6594c8609031309484c6b6c871d7eb56cad16abccfe304412e3d7af5a7707a9422f62500726389cacf34a529373c72dc35ad9c4 SHA512 b3da86b2876701276d951de44e29b2e52645650d87efd9be34a98d3e45c606d209326f46c97c1fbc60719de400a5b42b50970fd502ed4acf3db923dab6429d37
-EBUILD kpmcore-23.08.5.ebuild 751 BLAKE2B 213a0bcdd1fe60de05ef4759d4a2e750ed3bfdc19d7c20ea3981243efefa36248592b9699972749e117d415326b29846bb5c59e2643e2ec7c4a6dcada5f4d1a6 SHA512 a0085e7c8e3ad6aace56fa13d0032433b2fa21bc43ff4fe3b76e2f1bf4f08b13b31c63ab3e5a645bfc5fd9f527076bc03ad9739a6b220b1ecd905f267694cd13
-EBUILD kpmcore-24.05.2.ebuild 684 BLAKE2B 0b67adb80de2eb22145cc2ef581fc2d2c433e2daceb2b6eaef0263ffb187cec17888d2c7a56f41f852544e3fb98c344a18fe3608d1e39954e2940f360bde923e SHA512 55a68e608bc5856f274b80575635ef6c342b21bc15d04e3485deba4dbfd1a7aea7eb01803d35aaf60e40df4fd0e305cb7f8350b71988621f8744046394a5c49c
+EBUILD kpmcore-23.08.5.ebuild 743 BLAKE2B 070cbc8ee445446ad57504f930d233b85eccb15f580985c643f2dd8ee2a58cab1701b5263e5a5c0474c178e376643a1c85e1b604661b85db187b59946eb01473 SHA512 15b1af85381a3664f5d9090566e98cc367b59652d4c388408a74668cedb95c3e0891154be2b7007c28abe9b54af9d63979e0ae9defe2a3e77ebed5a88a0beb1c
+EBUILD kpmcore-24.05.2.ebuild 681 BLAKE2B 19a9d8daf692f45df0b2868bd5a851c357bd88385c7104f16322f2bfa0e6d6e91f4424005bad28b731d769f6019d218618b08b837c62e3afa1712d61093cc138 SHA512 2494a5ad173a05f99296d8dfb5924d5ff5e1bafe323e5b3ba67b0da4ed6cf44141df0b800155fb030606c6a7dfb45f7933f5aa57c393b9c687e1bcd8eb2a082c
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
diff --git a/sys-libs/kpmcore/kpmcore-23.08.5.ebuild b/sys-libs/kpmcore/kpmcore-23.08.5.ebuild
index 8548d6d3112d..99c98265b8dc 100644
--- a/sys-libs/kpmcore/kpmcore-23.08.5.ebuild
+++ b/sys-libs/kpmcore/kpmcore-23.08.5.ebuild
@@ -14,7 +14,6 @@ HOMEPAGE="https://apps.kde.org/partitionmanager/"
LICENSE="GPL-3"
SLOT="5/10"
KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 x86"
-IUSE=""
# bug 689468, tests need polkit etc.
RESTRICT="test"
diff --git a/sys-libs/kpmcore/kpmcore-24.05.2.ebuild b/sys-libs/kpmcore/kpmcore-24.05.2.ebuild
index 145e0e25caf7..b71af6e164c1 100644
--- a/sys-libs/kpmcore/kpmcore-24.05.2.ebuild
+++ b/sys-libs/kpmcore/kpmcore-24.05.2.ebuild
@@ -13,8 +13,7 @@ HOMEPAGE="https://apps.kde.org/partitionmanager/"
LICENSE="GPL-3"
SLOT="6/10"
-KEYWORDS="~amd64 ~arm64"
-IUSE=""
+KEYWORDS="~amd64 ~arm64 ~x86"
# bug 689468, tests need polkit etc.
RESTRICT="test"
diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest
index 29e436be6178..db08569767cc 100644
--- a/sys-libs/libcxx/Manifest
+++ b/sys-libs/libcxx/Manifest
@@ -1,6 +1,6 @@
DIST llvm-gentoo-patchset-15.0.7-r1.tar.xz 21400 BLAKE2B 6b149cb721ac476b728bf9b0197f630d3db40622b85e3d099cdbc1d85ec14872d4e1eb0c94be6edc20fc6187da29b42f934dfb765f2077425a5b919900bb97c0 SHA512 d84d48caa3781633c7c6147e0b786417e93e4b5c9d1393809164e6d355a56673013ed0ea9bc3309488d7cfb794c1b336c888adc52dcd95e70c16d9208c36bd15
DIST llvm-gentoo-patchset-16.0.6.tar.xz 17340 BLAKE2B 37cdf4b38367b4256d4f7a25d1b4f41758e5f81be8e20a1c94a10d6c5e36642e9672121b455e73a0bac2eb40467ef2db4b43789b2912a6790593d97b8b5c27e3 SHA512 2c02b9d8a4c5af9fddcd26c95dc66fffae32cb5b7f85c65a1aa4ed00dd8cd5b01cc1975a711aee63c0b8b11e9dc20f2bc05ea753904eb516892b820f02aff825
-DIST llvm-project-0b9f2847da79298ed09c29493245113f02b32d9f.tar.gz 216399453 BLAKE2B ed13e6639d40bdda6dbd09eba0cc8e4f82f4f53ce3cff9742e902af1c306c60dcb6d5fb008057829d46bbbde391697726cba2096c52cf1592c00faf1e37430e4 SHA512 a5b0bf59fa228a41f0c904a42b4b96740fc5e5caa63248c546eb4a810e86d5d8d1d8df663051ed4444cc0389ffa6ec12ee5dbf7d94d6211a253319550d7fac1c
+DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d
DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52
DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
@@ -9,14 +9,16 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db
DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
-DIST llvm-project-1bad7024561bc64ed4bfda0772b16376b475eba5.tar.gz 216657623 BLAKE2B 99c48a95c427e8fae5568e5f59ab9bec8b2d8bec0c5d3cf453c261a738fe1c295b34e2e10e6b08d2b02cae43e3b0cd4c8eb025d19a83ee51f47a49afadd56d3f SHA512 08fc904122ab346edbfc3903cafae4f50ba57e146b2d821a568f8378c0f3ab4d413e07c5df2bf061374f9db4634b5f6b27f204fc4f2f68984303ceec9c963c0c
-DIST llvm-project-72d8c2737bb557af9d0c735b9fa30b1b03485627.tar.gz 217324958 BLAKE2B d43c161ac98860e2ce03e7e2474c55766e7496200b090ebb1cb6dcf0c2ad3a32bae76249feca53cd8b56c63806a740c280e6306890cd28429c4a7e84cae5eada SHA512 af3b44ec3f96d636d919906cf20547eb91d0a83d07731c9db38f28311a52011d8ec66833422fad9bb89ca9ac546e308b02015a7b365086341bee1f3de1b6c5e2
+DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8
+DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92
+DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c
+DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826
EBUILD libcxx-15.0.7-r1.ebuild 5283 BLAKE2B 4380fc5b851054a5ec226ee4c92a2b79511d73ac9b3f8bccc977211601eca36113fc0ae605854da53898507021f24a8b319197605c556244d84253bede7b84f4 SHA512 0a5859269422e794deb43ed960651a1dea830af28b5e395f32e28de8e67a1f399507340230af1c84248853f554e751709a60a9a78aeb0eb42804cb41907dbfce
EBUILD libcxx-16.0.6.ebuild 5300 BLAKE2B 4714e22ad2fdcb07c62ead4cfa47fb4734e45dc055700b63a0f24cd6e93dde960c638fa16f55f4c04c6130fc2a7fa5729814c4aee12e9953f603ea5ccb706cc1 SHA512 3eab779107b5c737d971abe29b7bd9f44a73570957bd7d54d6aaa98ec78a6045d7d69272d611f7f09c60e1aa30bbad46b4bd1358b0b2c69e5bc686ab21444857
EBUILD libcxx-17.0.6.ebuild 5280 BLAKE2B a882313471af07942a0772efa642800ba85545227f7dfe281cd7fcdc686ecda82692d273550b28cca2de47b1b9fda87717c98c52ffafdf1155d5269a3733f48a SHA512 d9a2932d7b9e26dea0e62dfd3aeac08ad0206a242d3d42d83e55b93cc767195a67bc0eb3da38cb8d51930175f94bac6496184d6d4be516014e0208c3f852d427
-EBUILD libcxx-18.1.8.ebuild 5447 BLAKE2B 262f4dd0ccb046dcdf7f6970350381a9a48530f7db546f1b6cef5493b5e2a657a403bb0b5fda0d2d100420c6f8f1bac82f635efa8ad6c70d4476ad101c35eb13 SHA512 74ddb2227a2c8cd3d106861dc8155720f757011933835a36b8a5c133de68db80c14d93ad0cd8c3fa62232ce1e0871889b6db15c4bd53d2c1ea34762d93addc0c
-EBUILD libcxx-19.0.0.9999.ebuild 5101 BLAKE2B 4fb27fae1b4b3230de9b645416cba17ceb584260faf4c640d743b482cf333116ee00138ce206a62fbdb2811cd6e59dba2d8463949a17545a74f50837c274f355 SHA512 b88b738fad3d0f2aba6736ef9361250165a25a9f6011c8a8f61f035475d84f7bc8d9f3da95ab549d3eebeee338301dd734eed3c85365015134765ef003daa341
-EBUILD libcxx-19.0.0_pre20240706.ebuild 5101 BLAKE2B 4fb27fae1b4b3230de9b645416cba17ceb584260faf4c640d743b482cf333116ee00138ce206a62fbdb2811cd6e59dba2d8463949a17545a74f50837c274f355 SHA512 b88b738fad3d0f2aba6736ef9361250165a25a9f6011c8a8f61f035475d84f7bc8d9f3da95ab549d3eebeee338301dd734eed3c85365015134765ef003daa341
-EBUILD libcxx-19.0.0_pre20240712.ebuild 5101 BLAKE2B 4fb27fae1b4b3230de9b645416cba17ceb584260faf4c640d743b482cf333116ee00138ce206a62fbdb2811cd6e59dba2d8463949a17545a74f50837c274f355 SHA512 b88b738fad3d0f2aba6736ef9361250165a25a9f6011c8a8f61f035475d84f7bc8d9f3da95ab549d3eebeee338301dd734eed3c85365015134765ef003daa341
-EBUILD libcxx-19.0.0_pre20240720.ebuild 5101 BLAKE2B 4fb27fae1b4b3230de9b645416cba17ceb584260faf4c640d743b482cf333116ee00138ce206a62fbdb2811cd6e59dba2d8463949a17545a74f50837c274f355 SHA512 b88b738fad3d0f2aba6736ef9361250165a25a9f6011c8a8f61f035475d84f7bc8d9f3da95ab549d3eebeee338301dd734eed3c85365015134765ef003daa341
+EBUILD libcxx-18.1.8.ebuild 5442 BLAKE2B 0bafe813a25b0bf38606bc5def482fa9e354005273762cdb29564d0dea93a575a7a95b1b8435ba959da4e47a26aec788e10c15509eb66937830b227679a2fbf7 SHA512 e12a3002d860023ef1f302ac1656ea4ec5556f41ef2b2f247a3eedebeddd7fb51a1e4f2c5a4e75770e15cffd1bdb830a82d081d2505a2196b494a490cc516f17
+EBUILD libcxx-19.1.0_rc1.ebuild 5101 BLAKE2B 4fb27fae1b4b3230de9b645416cba17ceb584260faf4c640d743b482cf333116ee00138ce206a62fbdb2811cd6e59dba2d8463949a17545a74f50837c274f355 SHA512 b88b738fad3d0f2aba6736ef9361250165a25a9f6011c8a8f61f035475d84f7bc8d9f3da95ab549d3eebeee338301dd734eed3c85365015134765ef003daa341
+EBUILD libcxx-19.1.0_rc2.ebuild 5101 BLAKE2B 4fb27fae1b4b3230de9b645416cba17ceb584260faf4c640d743b482cf333116ee00138ce206a62fbdb2811cd6e59dba2d8463949a17545a74f50837c274f355 SHA512 b88b738fad3d0f2aba6736ef9361250165a25a9f6011c8a8f61f035475d84f7bc8d9f3da95ab549d3eebeee338301dd734eed3c85365015134765ef003daa341
+EBUILD libcxx-20.0.0.9999.ebuild 5101 BLAKE2B 4fb27fae1b4b3230de9b645416cba17ceb584260faf4c640d743b482cf333116ee00138ce206a62fbdb2811cd6e59dba2d8463949a17545a74f50837c274f355 SHA512 b88b738fad3d0f2aba6736ef9361250165a25a9f6011c8a8f61f035475d84f7bc8d9f3da95ab549d3eebeee338301dd734eed3c85365015134765ef003daa341
+EBUILD libcxx-20.0.0_pre20240801.ebuild 5101 BLAKE2B 4fb27fae1b4b3230de9b645416cba17ceb584260faf4c640d743b482cf333116ee00138ce206a62fbdb2811cd6e59dba2d8463949a17545a74f50837c274f355 SHA512 b88b738fad3d0f2aba6736ef9361250165a25a9f6011c8a8f61f035475d84f7bc8d9f3da95ab549d3eebeee338301dd734eed3c85365015134765ef003daa341
MISC metadata.xml 598 BLAKE2B b7a60449e0d8e4e7605ec203dfaa45b17a265b024e21a3bcfe05a3aeb6c3d19a1d2a218cb1f9ac9ed52296f0d6e723fed251f364341fb70cbd91b747962db580 SHA512 a23f912efff52c4687767023da826ace8c6e5dcd5e69ece86aabbea99da89e48ba81cdc292f03193e2e8a05743e62ebf4d4735d038e0cc4b42714fa277569335
diff --git a/sys-libs/libcxx/libcxx-18.1.8.ebuild b/sys-libs/libcxx/libcxx-18.1.8.ebuild
index a6fca47e6c29..372665da52df 100644
--- a/sys-libs/libcxx/libcxx-18.1.8.ebuild
+++ b/sys-libs/libcxx/libcxx-18.1.8.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 ~loong ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~loong ~riscv sparc x86 ~arm64-macos ~x64-macos"
IUSE="+clang +libcxxabi +static-libs test"
REQUIRED_USE="test? ( clang )"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/libcxx/libcxx-19.0.0.9999.ebuild b/sys-libs/libcxx/libcxx-19.1.0_rc1.ebuild
index a0d07e1507f4..a0d07e1507f4 100644
--- a/sys-libs/libcxx/libcxx-19.0.0.9999.ebuild
+++ b/sys-libs/libcxx/libcxx-19.1.0_rc1.ebuild
diff --git a/sys-libs/libcxx/libcxx-19.0.0_pre20240706.ebuild b/sys-libs/libcxx/libcxx-19.1.0_rc2.ebuild
index a0d07e1507f4..a0d07e1507f4 100644
--- a/sys-libs/libcxx/libcxx-19.0.0_pre20240706.ebuild
+++ b/sys-libs/libcxx/libcxx-19.1.0_rc2.ebuild
diff --git a/sys-libs/libcxx/libcxx-19.0.0_pre20240712.ebuild b/sys-libs/libcxx/libcxx-20.0.0.9999.ebuild
index a0d07e1507f4..a0d07e1507f4 100644
--- a/sys-libs/libcxx/libcxx-19.0.0_pre20240712.ebuild
+++ b/sys-libs/libcxx/libcxx-20.0.0.9999.ebuild
diff --git a/sys-libs/libcxx/libcxx-19.0.0_pre20240720.ebuild b/sys-libs/libcxx/libcxx-20.0.0_pre20240801.ebuild
index a0d07e1507f4..a0d07e1507f4 100644
--- a/sys-libs/libcxx/libcxx-19.0.0_pre20240720.ebuild
+++ b/sys-libs/libcxx/libcxx-20.0.0_pre20240801.ebuild
diff --git a/sys-libs/libcxxabi/Manifest b/sys-libs/libcxxabi/Manifest
index ccac885811cb..29f8049ad427 100644
--- a/sys-libs/libcxxabi/Manifest
+++ b/sys-libs/libcxxabi/Manifest
@@ -1,4 +1,4 @@
-DIST llvm-project-0b9f2847da79298ed09c29493245113f02b32d9f.tar.gz 216399453 BLAKE2B ed13e6639d40bdda6dbd09eba0cc8e4f82f4f53ce3cff9742e902af1c306c60dcb6d5fb008057829d46bbbde391697726cba2096c52cf1592c00faf1e37430e4 SHA512 a5b0bf59fa228a41f0c904a42b4b96740fc5e5caa63248c546eb4a810e86d5d8d1d8df663051ed4444cc0389ffa6ec12ee5dbf7d94d6211a253319550d7fac1c
+DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d
DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52
DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
@@ -7,14 +7,16 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db
DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
-DIST llvm-project-1bad7024561bc64ed4bfda0772b16376b475eba5.tar.gz 216657623 BLAKE2B 99c48a95c427e8fae5568e5f59ab9bec8b2d8bec0c5d3cf453c261a738fe1c295b34e2e10e6b08d2b02cae43e3b0cd4c8eb025d19a83ee51f47a49afadd56d3f SHA512 08fc904122ab346edbfc3903cafae4f50ba57e146b2d821a568f8378c0f3ab4d413e07c5df2bf061374f9db4634b5f6b27f204fc4f2f68984303ceec9c963c0c
-DIST llvm-project-72d8c2737bb557af9d0c735b9fa30b1b03485627.tar.gz 217324958 BLAKE2B d43c161ac98860e2ce03e7e2474c55766e7496200b090ebb1cb6dcf0c2ad3a32bae76249feca53cd8b56c63806a740c280e6306890cd28429c4a7e84cae5eada SHA512 af3b44ec3f96d636d919906cf20547eb91d0a83d07731c9db38f28311a52011d8ec66833422fad9bb89ca9ac546e308b02015a7b365086341bee1f3de1b6c5e2
+DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8
+DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92
+DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c
+DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826
EBUILD libcxxabi-15.0.7.ebuild 2911 BLAKE2B 5f2004d2f68fe4eddb0b22be82d28fcca7954d0e3ad9a5510744adc4d0dfd7a1ab9fd928404adcd3eeecc58703f51117d0a80e5895b53e0ae7b71621ad5a435c SHA512 5b8e2c6abdec785649aa41b7f05ab86ecab30ff0631d6078c9b1052b406c320c5847b8f16ffa6d9e62ba4a6bca5959b18770810924d6e6da264fb08d6ff738d0
EBUILD libcxxabi-16.0.6.ebuild 2932 BLAKE2B 837ab88ee88d5497b8bddb9f001d4b4ddd44ed982ef47114c965174135ed136abd0e3a6f3848a4aba53d0ca3748c54674cb28de8d46fda3bb7a90f326d41c7c6 SHA512 e4ebf7f35d2cad3bf3ba02754c85fee1cd1c4e52887770698ebaa3ef2fe66873f468677d307ea2d6956c2f6d3ac9b61943461193a5315f1e8a2846f2463b0581
EBUILD libcxxabi-17.0.6.ebuild 2932 BLAKE2B 837ab88ee88d5497b8bddb9f001d4b4ddd44ed982ef47114c965174135ed136abd0e3a6f3848a4aba53d0ca3748c54674cb28de8d46fda3bb7a90f326d41c7c6 SHA512 e4ebf7f35d2cad3bf3ba02754c85fee1cd1c4e52887770698ebaa3ef2fe66873f468677d307ea2d6956c2f6d3ac9b61943461193a5315f1e8a2846f2463b0581
-EBUILD libcxxabi-18.1.8.ebuild 2764 BLAKE2B 1d716983ec2cf1f3ad73b9a3947feb5deddd91750495d7fe5eb9d3ecea9545c7dd4bde00a348272e92aec46845286f9a844077ece2b91a80222bae44c22a514b SHA512 7d94d2fe04acbbc8651c1b7588f9b94603de10aaefc949aaa408d7e7f8d53ccca9b411a2a7f3af7edc2a4f05008977dddd039c7ac1cf17968ba59c7484b3bb68
-EBUILD libcxxabi-19.0.0.9999.ebuild 2684 BLAKE2B db3cdfc7962bc9b9a40f6783b813bb64a26a2d9cff7bcab99fb2b8ff6221789a8799c077837492280b543cd32bf6853638e0a9b3f07b36d0f9683e7b41601c8b SHA512 b0eb6cbd9ff0ccb5f08fefeb7c00e2eb08574137a0f38b52e4df9ea462b2c1c521d4fa8628f407bcbb26aedb77406b4eabbe1ef9c7939fed2b9be5fc0ce1ca34
-EBUILD libcxxabi-19.0.0_pre20240706.ebuild 2684 BLAKE2B db3cdfc7962bc9b9a40f6783b813bb64a26a2d9cff7bcab99fb2b8ff6221789a8799c077837492280b543cd32bf6853638e0a9b3f07b36d0f9683e7b41601c8b SHA512 b0eb6cbd9ff0ccb5f08fefeb7c00e2eb08574137a0f38b52e4df9ea462b2c1c521d4fa8628f407bcbb26aedb77406b4eabbe1ef9c7939fed2b9be5fc0ce1ca34
-EBUILD libcxxabi-19.0.0_pre20240712.ebuild 2684 BLAKE2B db3cdfc7962bc9b9a40f6783b813bb64a26a2d9cff7bcab99fb2b8ff6221789a8799c077837492280b543cd32bf6853638e0a9b3f07b36d0f9683e7b41601c8b SHA512 b0eb6cbd9ff0ccb5f08fefeb7c00e2eb08574137a0f38b52e4df9ea462b2c1c521d4fa8628f407bcbb26aedb77406b4eabbe1ef9c7939fed2b9be5fc0ce1ca34
-EBUILD libcxxabi-19.0.0_pre20240720.ebuild 2684 BLAKE2B db3cdfc7962bc9b9a40f6783b813bb64a26a2d9cff7bcab99fb2b8ff6221789a8799c077837492280b543cd32bf6853638e0a9b3f07b36d0f9683e7b41601c8b SHA512 b0eb6cbd9ff0ccb5f08fefeb7c00e2eb08574137a0f38b52e4df9ea462b2c1c521d4fa8628f407bcbb26aedb77406b4eabbe1ef9c7939fed2b9be5fc0ce1ca34
+EBUILD libcxxabi-18.1.8.ebuild 2759 BLAKE2B 1d4ac3db2b24ed4c598f2e5c4021e68a95b3652b0ee4a7b9a8976bb253b921d428dd30a5da26dfb82b350c05ec8840f38887ae02a766a22861e0638434a7a4a6 SHA512 8fe5ca2d5c605406b102abd013f05b5662a5d643ec22b1a83a8bf8ec1b6a940fcdc448f1bb81f877741406874e126747148e295f5492f6b76c0e17ad093ad07a
+EBUILD libcxxabi-19.1.0_rc1.ebuild 2684 BLAKE2B db3cdfc7962bc9b9a40f6783b813bb64a26a2d9cff7bcab99fb2b8ff6221789a8799c077837492280b543cd32bf6853638e0a9b3f07b36d0f9683e7b41601c8b SHA512 b0eb6cbd9ff0ccb5f08fefeb7c00e2eb08574137a0f38b52e4df9ea462b2c1c521d4fa8628f407bcbb26aedb77406b4eabbe1ef9c7939fed2b9be5fc0ce1ca34
+EBUILD libcxxabi-19.1.0_rc2.ebuild 2684 BLAKE2B db3cdfc7962bc9b9a40f6783b813bb64a26a2d9cff7bcab99fb2b8ff6221789a8799c077837492280b543cd32bf6853638e0a9b3f07b36d0f9683e7b41601c8b SHA512 b0eb6cbd9ff0ccb5f08fefeb7c00e2eb08574137a0f38b52e4df9ea462b2c1c521d4fa8628f407bcbb26aedb77406b4eabbe1ef9c7939fed2b9be5fc0ce1ca34
+EBUILD libcxxabi-20.0.0.9999.ebuild 2684 BLAKE2B db3cdfc7962bc9b9a40f6783b813bb64a26a2d9cff7bcab99fb2b8ff6221789a8799c077837492280b543cd32bf6853638e0a9b3f07b36d0f9683e7b41601c8b SHA512 b0eb6cbd9ff0ccb5f08fefeb7c00e2eb08574137a0f38b52e4df9ea462b2c1c521d4fa8628f407bcbb26aedb77406b4eabbe1ef9c7939fed2b9be5fc0ce1ca34
+EBUILD libcxxabi-20.0.0_pre20240801.ebuild 2684 BLAKE2B db3cdfc7962bc9b9a40f6783b813bb64a26a2d9cff7bcab99fb2b8ff6221789a8799c077837492280b543cd32bf6853638e0a9b3f07b36d0f9683e7b41601c8b SHA512 b0eb6cbd9ff0ccb5f08fefeb7c00e2eb08574137a0f38b52e4df9ea462b2c1c521d4fa8628f407bcbb26aedb77406b4eabbe1ef9c7939fed2b9be5fc0ce1ca34
MISC metadata.xml 438 BLAKE2B 0a830a06a53a6cdaf138ad7620fe366fae05c1c1451267d6a58caf7da5ce8f5a26d302fab53b9460920074ab5a65991d3bd24fde087809e8dc12188dd94c7676 SHA512 d53e13c497569636fb453a159c5ca5ddfabf8e5debd5f92e5149c52d54c876753842ab73293d6d08e2d9b279363b4f0c743eed3a5027a61246c6b60496be8e87
diff --git a/sys-libs/libcxxabi/libcxxabi-18.1.8.ebuild b/sys-libs/libcxxabi/libcxxabi-18.1.8.ebuild
index 8865a2ce4c2c..122f3476e8da 100644
--- a/sys-libs/libcxxabi/libcxxabi-18.1.8.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-18.1.8.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 ~loong ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~loong ~riscv sparc x86 ~arm64-macos ~x64-macos"
IUSE="+clang +static-libs test"
REQUIRED_USE="test? ( clang )"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/libcxxabi/libcxxabi-19.0.0.9999.ebuild b/sys-libs/libcxxabi/libcxxabi-19.1.0_rc1.ebuild
index 903f8e866cb6..903f8e866cb6 100644
--- a/sys-libs/libcxxabi/libcxxabi-19.0.0.9999.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-19.1.0_rc1.ebuild
diff --git a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240706.ebuild b/sys-libs/libcxxabi/libcxxabi-19.1.0_rc2.ebuild
index 903f8e866cb6..903f8e866cb6 100644
--- a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240706.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-19.1.0_rc2.ebuild
diff --git a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240712.ebuild b/sys-libs/libcxxabi/libcxxabi-20.0.0.9999.ebuild
index 903f8e866cb6..903f8e866cb6 100644
--- a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240712.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-20.0.0.9999.ebuild
diff --git a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240720.ebuild b/sys-libs/libcxxabi/libcxxabi-20.0.0_pre20240801.ebuild
index 903f8e866cb6..903f8e866cb6 100644
--- a/sys-libs/libcxxabi/libcxxabi-19.0.0_pre20240720.ebuild
+++ b/sys-libs/libcxxabi/libcxxabi-20.0.0_pre20240801.ebuild
diff --git a/sys-libs/libhx/Manifest b/sys-libs/libhx/Manifest
index 39a0c9673505..b205b2773444 100644
--- a/sys-libs/libhx/Manifest
+++ b/sys-libs/libhx/Manifest
@@ -1,10 +1,5 @@
-AUX libhx-3.22-no-lyx.patch 495 BLAKE2B ae31b2ada8230a223413e4f7470b7743592191e829800b05124781660888bca1f153e287af5e79e106cd590539a64880e6d111054fb0ee31e9cd02cf65d59f01 SHA512 f4299755b65c7e3b64937df81feed58851bfe7e4938c4b47cd94f818bb7d5c80eecac34b7e80b1c051b07490b3730cc74d6f38cd47a7c4321882a8715ff4b802
-DIST libHX-3.24.tar.xz 876992 BLAKE2B 518b99e78acc0cb412f444c0dacaae830a853294a0ee549facfbe65a423a9f32d0388e30e255c87c3f5325102bea45e5e9d72d3fce5b89139b689fddcb299f93 SHA512 faf7af53b628efe1531568ccb2b7e9910db833b14583ab1487eb6a554b407a7546bc75348f7d2344c29ab53fd2df061f6f8de8db634bbd62c3672dc4347d27e4
-DIST libHX-3.25.tar.xz 890576 BLAKE2B d8e13a7fb0ea2cd033edc6b179ef3d4b30c37f522b1e90aea0de96d225655b654d1a7cb133834ef2f10044ccbe60e7559b2280ecbc136a458fd3a2237b8f83ab SHA512 221000fddd1316b6c452babbcb7e234683e3bad559a4b1a608936a086143ad8f17cec489606f8d50ea66775b9f8305ec52c7401d568f01b33372388f75bdea94
-DIST libHX-4.21.tar.xz 359760 BLAKE2B cda2c5e29ede3e0d7ab575983b8443326f9e5aa49ccc3e64826e306c80a86fd7dd7a120d9c6ac82f790c1a9690666d1a54039240669abd1a88c0189d1af7bc80 SHA512 cf3c5fd7b1137c9f56b56abe52886a47ec21256cfa393bd31339f1f9f4683cfeca2107f46ac0fc5571962f5daeb9c5c060c6db442667cc99380f6e55183a6ab5
DIST libHX-4.23.tar.xz 359608 BLAKE2B f14d7be69d3bedb78758e5705b196c0179a00f77e768802a3e19fd5b1bbbdc1d117c907718eb6d63e1aba33d2bc872b64a6dd550c9bf29c6ba47b09682829d69 SHA512 c19a2e8a2f84a81552258a58f47a55fd3f5c81a19d12cf7511c12a3a97bef051977f18cd82a004a825c20d4fd3b2c48f23ddbf9364a46b24faabcb94aa0167ff
-EBUILD libhx-3.24-r1.ebuild 721 BLAKE2B b039057bd06d7f7fda970b551f66a7822d38bde37911bc3ca5ed2771cdcace90aa1606309db55b0456e27b11fac3bd6f40d1668b32d3c933fbb3128606c07a94 SHA512 6c41a72ed0c47a4c7a80d55ca750da686f0970d77cdc20954659865bea24ae90fbced7d2c1a7c24d8dea77eff647d9685e024a3d538362c6c1e6e5bd771a9d38
-EBUILD libhx-3.25.ebuild 729 BLAKE2B 729b113a5b455a53fb66773d4ead5a0689420427059bbba9f91629b14037b0d4f35e5eaf0c410f0034fecfdaea230aab117a3ee3f615dce760b285ab9a29e97b SHA512 75cbda30c6b583d641dc9ee68cdbb8173ce1c2ee913500c86b9f42e7cb6d1c97a93232c8c7b2d992a183052cc07669d20dd8e428cc182cdc0b0d900b0380bf0d
-EBUILD libhx-4.21.ebuild 553 BLAKE2B 8d7e9e207560a8f241c1d1fa52cd54f7fe8e528532a6fcfddfdd6e8949862675291550d3067d19b17c7bfd5cbf113a1c4c1dbbcceefd08d9aa9155ecdaf75074 SHA512 5c6be406debb974854f5bf5d8e3f4cd16d64af2df9780f2f5d13662e174de785a11968e9be4abb17b8f96030a48b421cc6e45c2b6a7a9b871ecb5575e1a39f17
+DIST libHX-4.24.tar.xz 360816 BLAKE2B 9bde513041d33708dce34295cdc1d3a1f723178f5a6589c73fc6c2ed9399e3aebff5a3dc1df62691f56267c4769c16ebba88763d11cbece13204108641288aec SHA512 a8e87b7cb1f49bb119b2b7e3088045e1245390170b6e672ed5d3bbc1fd48bf2630b8b481e7589adb25e24b76ac8a0053ccdb6ba7d5b3cf945ccef5ab678ef521
EBUILD libhx-4.23.ebuild 550 BLAKE2B 081ed303fb26795c0de36b110298bb1e25c83fa221ce2eb1d234d864ef3550f28fc487a38d002e0905e619096fafcd89cbaae42ebe94c2474e438b2f6d963d72 SHA512 6f418df5f917c7cf8d4fe72428176013a77d1121cbafce3ab36edd2295c1ae356662aebb8577e27401f5ec6e8b3e175ea336c314191769f8096354b66b88bd79
+EBUILD libhx-4.24.ebuild 552 BLAKE2B 341cd887f1c5e7b9f6a3a21738e3ee3c422aaf24c10a675ac3a004e05a7d3e9d3d71f40e038bdf2539948048c843b0e10da581cf2649c8a0d45a934dcc3cd7d6 SHA512 2aae3112631920ba869cfa2fe4179fd85e5cac0d921c245e47ef82f689b021d8980c72cea27a4ac22b249f2483252be8662275e0aa28802c8521c6dbd7303c9f
MISC metadata.xml 292 BLAKE2B 80ae162496d1307717df1a2ac26eaea506ad800a7ea11281775d3d21ceca425392dc3ded3a0712cb260170a1f125ae0dfc0a73ad2771b0d90fae6b1e2623f9a1 SHA512 6e235fcc8087a7db7bf9d6e0b1c47a56a731796ba3e4e85d39eb277f518b23ba5d187603a5b2c3b36880b6f48e4222f72d9ca1debe141c1a2d12b68d997e34ca
diff --git a/sys-libs/libhx/files/libhx-3.22-no-lyx.patch b/sys-libs/libhx/files/libhx-3.22-no-lyx.patch
deleted file mode 100644
index 1c63d2596aae..000000000000
--- a/sys-libs/libhx/files/libhx-3.22-no-lyx.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- libHX-3.22/configure.ac.orig 2014-08-25 19:16:37.000000000 +0400
-+++ libHX-3.22/configure.ac 2016-06-01 11:09:42.287438190 +0300
-@@ -107,8 +107,7 @@
- AC_CHECK_FUNCS([getegid geteuid getpid getppid])
- AM_CONDITIONAL([B_PROC], [test "$b_proc" = 1])
-
--AC_CHECK_PROGS([LYX], [lyx])
--AM_CONDITIONAL([BUILD_DOCS], [test -n "$LYX"])
-+AM_CONDITIONAL([BUILD_DOCS], [false])
-
- regular_CPPFLAGS="-D_FILE_OFFSET_BITS=64 -D_REENTRANT"
- regular_CFLAGS="-Wall -Waggregate-return -Wmissing-declarations \
diff --git a/sys-libs/libhx/libhx-3.24-r1.ebuild b/sys-libs/libhx/libhx-3.24-r1.ebuild
deleted file mode 100644
index bc0940cba43b..000000000000
--- a/sys-libs/libhx/libhx-3.24-r1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-DESCRIPTION="Platform independent library providing basic system functions"
-HOMEPAGE="http://libhx.sourceforge.net"
-SRC_URI="https://downloads.sourceforge.net/${PN}/libHX-${PV}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0/28"
-KEYWORDS="amd64 ppc x86"
-IUSE="doc"
-
-BDEPEND="app-arch/xz-utils"
-
-S="${WORKDIR}/libHX-${PV}"
-
-PATCHES=( "${FILESDIR}/${PN}-3.22-no-lyx.patch" )
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_install() {
- default
-
- if use doc; then
- dodoc doc/*.txt
- else
- dodoc doc/changelog.txt
- rm "${ED}/usr/share/doc/${PF}/"*.pdf || die
- fi
-
- find "${ED}" -name "*.la" -delete || die
-}
diff --git a/sys-libs/libhx/libhx-3.25.ebuild b/sys-libs/libhx/libhx-3.25.ebuild
deleted file mode 100644
index 398b3d8c5869..000000000000
--- a/sys-libs/libhx/libhx-3.25.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-DESCRIPTION="Platform independent library providing basic system functions"
-HOMEPAGE="https://inai.de/projects/libhx/"
-SRC_URI="https://inai.de/files/${PN}/libHX-${PV}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0/32" # soname version
-KEYWORDS="amd64 ppc x86"
-IUSE="doc"
-
-BDEPEND="app-arch/xz-utils"
-
-S="${WORKDIR}/libHX-${PV}"
-
-PATCHES=( "${FILESDIR}/${PN}-3.22-no-lyx.patch" )
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_install() {
- default
-
- if use doc; then
- dodoc doc/*.txt
- else
- dodoc doc/changelog.txt
- rm "${ED}/usr/share/doc/${PF}/"*.pdf || die
- fi
-
- find "${ED}" -name "*.la" -delete || die
-}
diff --git a/sys-libs/libhx/libhx-4.21.ebuild b/sys-libs/libhx/libhx-4.24.ebuild
index 9126c9cafb8e..c58c9feb1cca 100644
--- a/sys-libs/libhx/libhx-4.21.ebuild
+++ b/sys-libs/libhx/libhx-4.24.ebuild
@@ -7,6 +7,7 @@ DESCRIPTION="Platform independent library providing basic system functions"
HOMEPAGE="https://inai.de/projects/libhx/"
SRC_URI="https://inai.de/files/${PN}/libHX-${PV}.tar.xz"
+S="${WORKDIR}/libHX-${PV}"
LICENSE="GPL-3"
SLOT="0/32" # soname version
KEYWORDS="~amd64 ~ppc ~x86"
@@ -14,8 +15,6 @@ IUSE="doc"
BDEPEND="app-arch/xz-utils"
-S="${WORKDIR}/libHX-${PV}"
-
src_install() {
default
diff --git a/sys-libs/libnvme/Manifest b/sys-libs/libnvme/Manifest
index 9bf3bc8138dd..627eb7bbf3b5 100644
--- a/sys-libs/libnvme/Manifest
+++ b/sys-libs/libnvme/Manifest
@@ -1,7 +1,9 @@
AUX libnvme-1.9-musl-stdint.patch 1873 BLAKE2B 44be4e9068286f32c8f4e9fc32f02fae7c70df4043db1418b1f889cccaa57d66769d3aa41b30e824a988e5635179be7a2a02676ce385b33dca877b0ff472c29b SHA512 5eb38bae6c38a97f108dff7be8a8c914392b1f3d4a2e26debd00fb62551101061824220b64c3aa791bb980185decf0a0fbc6d228b16c9cdcce6199d121764789
+DIST libnvme-1.10.gh.tar.gz 720737 BLAKE2B eb5941cbdec1ccf5782c3e438b55dd09ddd2c3b9ac1079d5642896d0d80d75ece3149ebe9d965c2783a5ae2ddfad64ae0051f9c63822a739108d53eb44a583db SHA512 44e8a407c9fda8c296163832c14ba167caab53eab315bd2dee94275458532429f12a35e0adef1356420d83127e658a354ce65ac946acaa53bef2d46a8189054c
DIST libnvme-1.7.1.tar.gz 604220 BLAKE2B b02bf0914be73f5877f418bebdbed31dfb019484fb9f6e169c3474d90306706b8e787003a472f13bedb72e90eff39a30ba35df252a3cdf4ea08a362c3f9e221b SHA512 aea986ae35eafa17482e07015228d5a7d529d41148f4cee9e4619adc2460abb5460d60cd91177462cbcaf2e94e5870026ff9e45548f91d9f90b65a6268eb3abb
DIST libnvme-1.8.tar.gz 629032 BLAKE2B cba5215983fa14e485156cf68613a7acca07b7e0fdac41663ebf2246c9f6fd6d1bfcebc7c1457ab4217705769ebea382e85726eb302fd9af6f6b85cec7b2e14d SHA512 ba0cec72fd6c9bb29b29c4342be7b25aec1f31157a094ad387a1105cbd1961ab600e1448a2462d8be2af91d5251b2970d6d06d4871ce96604c5be204d6096bcb
DIST libnvme-1.9.tar.gz 657952 BLAKE2B e9d655709770f7c1d9c916cc9539b8ea096b0d5bf6b12079c2db494f070c98b6c388e2a79ed27a4932994a00d44da93fa3119ee224c48d40347a483548397349 SHA512 39a3346805143f93a17d00cfcb6fb75f82154658db6079134c09dfa989995ac5de79b1ce1ac091b4e997523d3216829ce9eac44110c9f59f9fd21636529c8b25
+EBUILD libnvme-1.10.ebuild 1502 BLAKE2B ab9bde1a08183712b3d9acfcd3dae7b8f072f52f15710adf4fc0af4d719915836f7b54aaebd9a7249ecaaebfba3bdab15675dd2fcaf3112ec8d701801f89a7e1 SHA512 fe4120260d23378d59701ffe9bfd0d2e7aecc3911a163f7d92dac18ad4c9a92ce2c365bb0ae86dd132f3ef42a5e8612aba95a3099a5a99c2c7dd4369d2a668c4
EBUILD libnvme-1.7.1-r1.ebuild 1494 BLAKE2B c23a1718224b17dfe7cbabc3fe63c1595dfee5748895dcc24ed58127a558fb98afe6198ac2381736da998c840f5b691781ab90730162344d210e04df5c105b3c SHA512 5c16f0b68e731480b6786c6cfb9f98c6125847da2e8f70aeb051c7706cd1d65f04a53077272019f14ed61ecb754ee514d1ee2b399a0d52cf52a265549c6e9bc7
EBUILD libnvme-1.8.ebuild 1496 BLAKE2B 1286711f1afbf75136640143cf56fc41d94380c23f815e2eade0066d151121da6b7fc3b45a660888fc27763adbc23f32bd65625e4e5f042387231ccf75a45254 SHA512 a7df1f80d82fe69fe7ac3be9c9871a92a6c80d774de0e9c379f88eedd4596859f27adb2e71f009089426a786f48cd4418bb8d0e8106f1aa621a0e7712a852780
EBUILD libnvme-1.9.ebuild 1550 BLAKE2B e7b3d6e6cb386a64974d2adc1ac54fb53f2e412e26fa81a6d3e36e2a01ce61d4604060527a7d52ca7b7322b30e00730b078726045e2860e1c80f83c4c256fabd SHA512 7d5c171af6102b1e2972ccb510c1424917ad585f3e59cf4c47b9e2dff7550a34198503f4b9dc896791e08be9b6564e2600f419de58055085edcefc1be5bd6f11
diff --git a/sys-libs/libnvme/libnvme-1.10.ebuild b/sys-libs/libnvme/libnvme-1.10.ebuild
new file mode 100644
index 000000000000..1120def01056
--- /dev/null
+++ b/sys-libs/libnvme/libnvme-1.10.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit python-r1 meson
+
+DESCRIPTION="C Library for NVM Express on Linux"
+HOMEPAGE="https://github.com/linux-nvme/libnvme"
+SRC_URI="https://github.com/linux-nvme/libnvme/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0/1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="dbus +json keyutils python ssl test +uuid"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+DEPEND="
+ json? ( dev-libs/json-c:= )
+ keyutils? ( sys-apps/keyutils:= )
+ dbus? ( sys-apps/dbus:= )
+ python? ( ${PYTHON_DEPS} )
+ ssl? ( >=dev-libs/openssl-1.1:= )
+ uuid? ( sys-apps/util-linux:= )
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ dev-lang/swig
+"
+
+src_configure() {
+ local emesonargs=(
+ -Dpython=disabled
+ $(meson_use test tests)
+ $(meson_feature json json-c)
+ $(meson_feature dbus libdbus)
+ $(meson_feature keyutils)
+ $(meson_feature ssl openssl)
+ )
+ meson_src_configure
+}
+
+python_compile() {
+ local emesonargs=(
+ -Dpython=enabled
+ )
+ meson_src_configure --reconfigure
+ meson_src_compile
+}
+
+src_compile() {
+ meson_src_compile
+
+ if use python; then
+ python_copy_sources
+ python_foreach_impl python_compile
+ fi
+}
+
+python_install() {
+ meson_src_install
+ use python && python_optimize
+}
+
+src_install() {
+ use python && python_foreach_impl python_install
+
+ meson_src_install
+}
diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest
index f54c967547c3..2f428e16f59a 100644
--- a/sys-libs/libomp/Manifest
+++ b/sys-libs/libomp/Manifest
@@ -1,5 +1,5 @@
DIST llvm-gentoo-patchset-15.0.7-r6.tar.xz 25208 BLAKE2B c9fca31a053ee059c3060a94dcf675d472fc1a59b5f927648de58fb4ff20bfc229890f789ed47b3d053bd466b860a0c60a53b4b024a8fe18c776e9a72434d6de SHA512 601cd923711839dca7cb5bfea53ded644777c6340265a797939a53409fd2ca27059a015fd6ca6832e60314699ade27919a9a59dab395cc27f8fdc479a0f3c034
-DIST llvm-project-0b9f2847da79298ed09c29493245113f02b32d9f.tar.gz 216399453 BLAKE2B ed13e6639d40bdda6dbd09eba0cc8e4f82f4f53ce3cff9742e902af1c306c60dcb6d5fb008057829d46bbbde391697726cba2096c52cf1592c00faf1e37430e4 SHA512 a5b0bf59fa228a41f0c904a42b4b96740fc5e5caa63248c546eb4a810e86d5d8d1d8df663051ed4444cc0389ffa6ec12ee5dbf7d94d6211a253319550d7fac1c
+DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d
DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52
DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
@@ -8,14 +8,16 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db
DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
-DIST llvm-project-1bad7024561bc64ed4bfda0772b16376b475eba5.tar.gz 216657623 BLAKE2B 99c48a95c427e8fae5568e5f59ab9bec8b2d8bec0c5d3cf453c261a738fe1c295b34e2e10e6b08d2b02cae43e3b0cd4c8eb025d19a83ee51f47a49afadd56d3f SHA512 08fc904122ab346edbfc3903cafae4f50ba57e146b2d821a568f8378c0f3ab4d413e07c5df2bf061374f9db4634b5f6b27f204fc4f2f68984303ceec9c963c0c
-DIST llvm-project-72d8c2737bb557af9d0c735b9fa30b1b03485627.tar.gz 217324958 BLAKE2B d43c161ac98860e2ce03e7e2474c55766e7496200b090ebb1cb6dcf0c2ad3a32bae76249feca53cd8b56c63806a740c280e6306890cd28429c4a7e84cae5eada SHA512 af3b44ec3f96d636d919906cf20547eb91d0a83d07731c9db38f28311a52011d8ec66833422fad9bb89ca9ac546e308b02015a7b365086341bee1f3de1b6c5e2
+DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8
+DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92
+DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c
+DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826
EBUILD libomp-15.0.7-r6.ebuild 3470 BLAKE2B 9f76ca5b080ccf01617d7dcbfe3eb424c525adbcf72f2b5f09dc7bead1e28df1a0ffdf5ef47bcc7f8cac130f1d22e804e29938cda6df0ee58359ac5ff88aea86 SHA512 1a0a4b10f9a67634ea265e6df3c3f9993ed5ee3818eba2cbb6b65d8f5c3a0d2d266134f3e276985e87eca18b47a44d6de61e4c9c3496fd36c6c338dcf79b9850
EBUILD libomp-16.0.6.ebuild 3984 BLAKE2B 8302d2776c0d8c50dcc7cac2dde8523f1abdf391d48594fdd26ebe17a089efdfee93825bdec07569878d06873b571e469411f108564df6c7eb50dc425615c255 SHA512 714da170fba4b62f3267e2530a82c583d299e8dc6c6f4037417c216c1239cc0fadc1aebf823608df37a932a7722144e67a148b58079e50560450b94c93f3e415
EBUILD libomp-17.0.6.ebuild 4052 BLAKE2B 8a05a46719120eac5495417fb6ea54b7a6a3d93aa7cc0917ca9e8f3cb2238f23348ecaefebd4c2064eac4adfbd4ef7f86b70c051cbcc009692ec790159d8883d SHA512 80b48f5a3af351ee14296aa76ba28b964eb85d84a1827af8acd35076895342a5dd743362c988e042c57f11dc9e8bbca1a9003a6752562758249062e460c73247
-EBUILD libomp-18.1.8.ebuild 4287 BLAKE2B 65c6e04062bbf04d9655f226a97ecb10af4f2496295a770112059ab5ad3c74738e356c93a531abf20a171e8c89e8d8fdbcbdf6f8d15d6da5bfabce0147e1cbd3 SHA512 6abaa6531de18562248222d6393f48f88bde950a84051747a66b9c2f9c907315e403b050437d7263f227d564ca550f54db5ae5605a738fb8cd63bc2557814137
-EBUILD libomp-19.0.0.9999.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
-EBUILD libomp-19.0.0_pre20240706.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
-EBUILD libomp-19.0.0_pre20240712.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
-EBUILD libomp-19.0.0_pre20240720.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
+EBUILD libomp-18.1.8.ebuild 4282 BLAKE2B c3f5e8965cffb2a59cbc757e2570fa21b4b2ab4ec884386daaf56f66acbf41c0472a37263577af9754e585d1ac8c165f374f88f2db02fdf4b3247e5329517487 SHA512 a9514294cbca8c382e4789da203df39675bb7e2d2e83405cd3b8578de1d5a931517681a0d4146cf75b0d84921ea46d40b0d9e54e4b3d6307de58150ab10952ad
+EBUILD libomp-19.1.0_rc1.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
+EBUILD libomp-19.1.0_rc2.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
+EBUILD libomp-20.0.0.9999.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
+EBUILD libomp-20.0.0_pre20240801.ebuild 2163 BLAKE2B 522f4f9099cf7ca69f3bd2d93f1bfa0f80fd1937d8147b0464d3bcb143b161cf5b17b8e2fc80a981188a1962a3dc1396979dd726028f546ccb10b56265405415 SHA512 5ae5744e3addc95f790c15e1d89d3da4080ea0216518ece8097ac21a71432892d920722618ea3589f7bf4f70c505b5be37fa9b8c49683fd2307988b4425e7bea
MISC metadata.xml 883 BLAKE2B 127e896b82a49633a6866b33ca776ebe2dd149a5d04da4484a53186f219a85db0ab9d826bc1cc61d4df9fa54c9bcc546be070a0b28985174925fd947aa09cca2 SHA512 dc32cae01401feb93eede6506b3955c766ff19b44976fcc67277559b23ac151993377daeed9ba83b2dd71dbdeea330cd1208dcb0c9c5f56be270883b31f9b15f
diff --git a/sys-libs/libomp/libomp-18.1.8.ebuild b/sys-libs/libomp/libomp-18.1.8.ebuild
index b3b6281fa7d0..a6d7145053db 100644
--- a/sys-libs/libomp/libomp-18.1.8.ebuild
+++ b/sys-libs/libomp/libomp-18.1.8.ebuild
@@ -12,7 +12,7 @@ HOMEPAGE="https://openmp.llvm.org"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0/${LLVM_SOABI}"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86 ~amd64-linux ~x64-macos"
IUSE="
debug gdb-plugin hwloc offload ompt test
llvm_targets_AMDGPU llvm_targets_NVPTX
diff --git a/sys-libs/libomp/libomp-19.0.0.9999.ebuild b/sys-libs/libomp/libomp-19.1.0_rc1.ebuild
index 32b91b3699c4..32b91b3699c4 100644
--- a/sys-libs/libomp/libomp-19.0.0.9999.ebuild
+++ b/sys-libs/libomp/libomp-19.1.0_rc1.ebuild
diff --git a/sys-libs/libomp/libomp-19.0.0_pre20240706.ebuild b/sys-libs/libomp/libomp-19.1.0_rc2.ebuild
index 32b91b3699c4..32b91b3699c4 100644
--- a/sys-libs/libomp/libomp-19.0.0_pre20240706.ebuild
+++ b/sys-libs/libomp/libomp-19.1.0_rc2.ebuild
diff --git a/sys-libs/libomp/libomp-19.0.0_pre20240712.ebuild b/sys-libs/libomp/libomp-20.0.0.9999.ebuild
index 32b91b3699c4..32b91b3699c4 100644
--- a/sys-libs/libomp/libomp-19.0.0_pre20240712.ebuild
+++ b/sys-libs/libomp/libomp-20.0.0.9999.ebuild
diff --git a/sys-libs/libomp/libomp-19.0.0_pre20240720.ebuild b/sys-libs/libomp/libomp-20.0.0_pre20240801.ebuild
index 32b91b3699c4..32b91b3699c4 100644
--- a/sys-libs/libomp/libomp-19.0.0_pre20240720.ebuild
+++ b/sys-libs/libomp/libomp-20.0.0_pre20240801.ebuild
diff --git a/sys-libs/libudev-compat/Manifest b/sys-libs/libudev-compat/Manifest
index 8e22749be5b2..6415ae21ba14 100644
--- a/sys-libs/libudev-compat/Manifest
+++ b/sys-libs/libudev-compat/Manifest
@@ -1,3 +1,3 @@
AUX udev_old.c 895 BLAKE2B ccc45a3820556764fe16303c92e7e8d91cd79e9ba3cf488b05f505c867fdac43e9c40d26f263a63484ca14bf0e1eccaccb4618a5794f79babde97b22c211c9ba SHA512 4eafd908621857d0f4b415b7349d8ab992f40e5c2297270973462bd022b1b3e34cb365d4969e2f7801ad41c303f55649ea7bcfe9d8a32c997dd681bdc41a0237
-EBUILD libudev-compat-186-r1.ebuild 1005 BLAKE2B 5a3e9b67cdd247b566e4ab0459d3cb482a7f08495534eff7933f72a566418cdc7533dbfa5f12d622fcc6ee00ade4c06b799d886180010f5d0e11d2d8125bc3a4 SHA512 709fd3a9116fb4579a83f18726f48afb1f9ec3a52932729f26684badf3a8bea74b507b2b44c9b43e58c68decd63243cb14abaa599af77a4edc35c952f11b8101
+EBUILD libudev-compat-186-r1.ebuild 986 BLAKE2B 452ce6bb1e4edac04325be11d518b623c38a3240f8eddabfaad24559a955b090113b7e0640a8374456a180acbe03a1149755b2670ddeff447fbf22c5cf696ee8 SHA512 ec574c87cddba95e7a86019155a748e8cb1c76cfc1fc0defa51dd34ec143ea4572da1a6bbde42c6f0d7ad1615c6eeb2c8c71941a452395b44072ee0290c07f3a
MISC metadata.xml 248 BLAKE2B 97ed0d2320e1aa2d1cca6b63b0cf9cb07669ea73ac0dad7a8f7db4f510d3b2dc28cbf5a7c019f15ac87c25c5e51e619386694b49d21fc19f4092047c8e382287 SHA512 23bb29604f7cc644073025158d751004189a85fe6be88a7817afebad685c3b73f21cdb3e5d05f16699baa5d6b52f1e3a1f365b1ad7ea09bfcd204182e646f203
diff --git a/sys-libs/libudev-compat/libudev-compat-186-r1.ebuild b/sys-libs/libudev-compat/libudev-compat-186-r1.ebuild
index 34e6337d008a..1ffc9eead847 100644
--- a/sys-libs/libudev-compat/libudev-compat-186-r1.ebuild
+++ b/sys-libs/libudev-compat/libudev-compat-186-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -7,12 +7,10 @@ inherit multilib-minimal toolchain-funcs
DESCRIPTION="Wrapper around libudev.so.1 for packages needing the old libudev.so.0"
HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-SRC_URI=""
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
DEPEND="virtual/libudev:0/1[${MULTILIB_USEDEP}]"
RDEPEND="${DEPEND}"
diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest
index deb998add589..52fafc580413 100644
--- a/sys-libs/llvm-libunwind/Manifest
+++ b/sys-libs/llvm-libunwind/Manifest
@@ -1,4 +1,4 @@
-DIST llvm-project-0b9f2847da79298ed09c29493245113f02b32d9f.tar.gz 216399453 BLAKE2B ed13e6639d40bdda6dbd09eba0cc8e4f82f4f53ce3cff9742e902af1c306c60dcb6d5fb008057829d46bbbde391697726cba2096c52cf1592c00faf1e37430e4 SHA512 a5b0bf59fa228a41f0c904a42b4b96740fc5e5caa63248c546eb4a810e86d5d8d1d8df663051ed4444cc0389ffa6ec12ee5dbf7d94d6211a253319550d7fac1c
+DIST llvm-project-130c135689ec12ab78c53645808524a8d28f7cae.tar.gz 217788932 BLAKE2B 9ba8ad82597780f24e750272f9439d1e8d464813a607efec4920a13473103975bc181506dcc15c76a6e4ca83622284b77a7903e36aff6145719529630121cf0b SHA512 d9c67155f462e53968ec448e325b35a80c0d207039dd7155568fa366aa1894bc8dfaa2d5c03a67320bdefb1934720a1d23bc4b972c9fae3ff09c7a79d885c53d
DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78af36b0826a1dfd9a337992499bf701e33149665bfc47d5e14978e38f342559629a559f8b2ce328705ba34fdf6830f5ae9721a5 SHA512 4836d3603f32e8e54434cbfa8ef33d9d473ac5dc20ebf9c67132653c73f4524931abd1084655eaee5f20bcfcb91bcc4bbc5c4a0b603ad0c9029c556e14dc4c52
DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
@@ -7,14 +7,16 @@ DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e06541
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db
DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
-DIST llvm-project-1bad7024561bc64ed4bfda0772b16376b475eba5.tar.gz 216657623 BLAKE2B 99c48a95c427e8fae5568e5f59ab9bec8b2d8bec0c5d3cf453c261a738fe1c295b34e2e10e6b08d2b02cae43e3b0cd4c8eb025d19a83ee51f47a49afadd56d3f SHA512 08fc904122ab346edbfc3903cafae4f50ba57e146b2d821a568f8378c0f3ab4d413e07c5df2bf061374f9db4634b5f6b27f204fc4f2f68984303ceec9c963c0c
-DIST llvm-project-72d8c2737bb557af9d0c735b9fa30b1b03485627.tar.gz 217324958 BLAKE2B d43c161ac98860e2ce03e7e2474c55766e7496200b090ebb1cb6dcf0c2ad3a32bae76249feca53cd8b56c63806a740c280e6306890cd28429c4a7e84cae5eada SHA512 af3b44ec3f96d636d919906cf20547eb91d0a83d07731c9db38f28311a52011d8ec66833422fad9bb89ca9ac546e308b02015a7b365086341bee1f3de1b6c5e2
+DIST llvm-project-19.1.0-rc1.src.tar.xz 141259912 BLAKE2B e882ff54a96900b4948e572cf073c897df6b4ce159869a42c56a4c830187d83b8d9d9b3940dad22346f142f9674575191cc9d079312f0d9aa1105390c07f504f SHA512 9f43dbe8d5f1322f73fb1c638ce4fc7a8179c9ca33fdbfbb6d72632a3d6bf4bc4993f8f5ec827510af55f4f013fba8fe3d7d9e45f262eec16ecf9ab39296b4b8
+DIST llvm-project-19.1.0-rc1.src.tar.xz.sig 438 BLAKE2B cc1acbd33440bb14f78c19cc3061a5c0cb3d9dbcd6f0d1516fe118ac02c500ba4df129f870ddf3fe1a52519feab4b631866413fce9c726272d52c3865a9eea27 SHA512 a3361992b55be13aeff5d91bb90a15e3a2ab89e486328fa4d9abc9efa3925aee70bea48449b003ae1926909d389bf71afcf6dc56d800ed2e0e3dbc65da6e4e92
+DIST llvm-project-19.1.0-rc2.src.tar.xz 141264388 BLAKE2B 690b4912d9e4a8019b7990934dd6486362337ccb303dca119c0e75aa1063ad452222be1ee965e43b160dfcea20e491a20c289344152666b618712a1d76dc4780 SHA512 508a401e8433b1ac9a399246eb1a3c18faed7c3d41d8c118e77cefbb64cc6d6e171bd41a3e5584f6c84df141ba6819f1a1cce75b5c1ef33e3d2ac239e662d07c
+DIST llvm-project-19.1.0-rc2.src.tar.xz.sig 438 BLAKE2B 1eaf10a1419ecf009c033a8f6ecb6eec86107d81621d5b4665c8d929b05f4845ce0c432017343d7b06f33e6ff6384df9e1d8fc7b9c6efe7f10ef69798891b7e5 SHA512 b46e9a1d40f891c5f3544d8cc6295900bff5dda9a4a526b8db55a42a37ae90deb216b316d2117984e82f4e918d15343e75b3b9e6d6c773866707c3398e032826
EBUILD llvm-libunwind-15.0.7.ebuild 3032 BLAKE2B 9b47e894db1a764f3eca3135f4caba68261953f4433af017b7bb53181e345ad26c570733f997022c53c9ef49a0a3b823188d92cfcc16a2113825d767b1ffab2a SHA512 0b68480fb2a8e5a351574e81fbcff824cd324754ed40378f06fec12fedbba94a921043d72db6ecc37f8b0680b7f518bbbd8d63f69ce8d84f86ca522653d293fb
EBUILD llvm-libunwind-16.0.6-r1.ebuild 3440 BLAKE2B eafe21a3de172043ca0039ba27c80c64d32b02cc86bdb5a6d108ded35770e0352216337cbf24ee4fde43b699a68a85c8145be2d17510d525452bfd5a02674998 SHA512 164fdc1c62405e02c035af7997b8522b51f5b9337d2bb66d7fc9b1f45df74ec70d31b26dc5324c59792d32c543fe18abf74ed3b07a64c131e3c1bb4f9f733c5d
EBUILD llvm-libunwind-17.0.6.ebuild 3440 BLAKE2B eafe21a3de172043ca0039ba27c80c64d32b02cc86bdb5a6d108ded35770e0352216337cbf24ee4fde43b699a68a85c8145be2d17510d525452bfd5a02674998 SHA512 164fdc1c62405e02c035af7997b8522b51f5b9337d2bb66d7fc9b1f45df74ec70d31b26dc5324c59792d32c543fe18abf74ed3b07a64c131e3c1bb4f9f733c5d
-EBUILD llvm-libunwind-18.1.8.ebuild 3413 BLAKE2B 9a59c656e7ee118568d2c81e4af2e2cbf8b668c7e9b4d65c65ec0f0e49f31aad9d20b8780dbaf78f9bf57b7e2943a8b1284bdf9a2c6b75b4f8cc1cfa18e15a59 SHA512 b597048d6be09a9151a7dcbc00e8348c738072d156500d5f63e2d1ba7df488ad4b7e4847a634310569da1ec04b6e1bbb9e88ba004618f58266448d44c4cbf451
-EBUILD llvm-libunwind-19.0.0.9999.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a
-EBUILD llvm-libunwind-19.0.0_pre20240706.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a
-EBUILD llvm-libunwind-19.0.0_pre20240712.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a
-EBUILD llvm-libunwind-19.0.0_pre20240720.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a
+EBUILD llvm-libunwind-18.1.8.ebuild 3407 BLAKE2B 1f0f6be6cd671b42d97bfa5ffc5fbf0c837f1d97a034db9c88fa15ba381651c6f669aef7e8e6f46091f33950f6fc8dad7a7e45ded1711b8dea2e562ec7174cb9 SHA512 e4db23d628e8d82c48f5dd1f2c29a90acceaabdcdb049d38310cdfe82c3d59b4cb5d80df8b9f5663ab3c86fbf304bffc35fd01d61f9b7dc99cbef879e9157a61
+EBUILD llvm-libunwind-19.1.0_rc1.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a
+EBUILD llvm-libunwind-19.1.0_rc2.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a
+EBUILD llvm-libunwind-20.0.0.9999.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a
+EBUILD llvm-libunwind-20.0.0_pre20240801.ebuild 3316 BLAKE2B bd35bebb24f85df1df172da2753279735077353c2a2b06df35700ad58b32fecdb29f6045be9d3c51316e764bda2a75295fb879fd635da71747ad0ab11dc5649d SHA512 8211878d4fde53625702b27cce8bf7a09cf97238c52e1078f6895b58675f76c78aa60f8a886a2f25d0cf71becdcefd94e8666b9c8915fecbe5b47accdc9b988a
MISC metadata.xml 438 BLAKE2B 2a36fbbc59e137056029c62aef6d167d9c82531c2582d7bad5cb13cc36e5c4c9518ffe8c56d06bbcfd97ad22eda71a8b776f3984195f53d06cf45659b438dc00 SHA512 4f18b054072d00e5440faa31a59f9ef587d035b5f25e30913f0b1449debee967fa794fae2548e87db3fb2177ce853ab075e1f11f3cc763f5d7fdf06147108845
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-18.1.8.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-18.1.8.ebuild
index b6a7c9822310..aaa6c07084dc 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-18.1.8.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-18.1.8.ebuild
@@ -12,7 +12,7 @@ HOMEPAGE="https://llvm.org/docs/ExceptionHandling.html"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~arm64-macos ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~loong ~mips ~ppc ppc64 ~riscv sparc x86 ~arm64-macos ~x64-macos"
IUSE="+clang debug static-libs test"
REQUIRED_USE="test? ( clang )"
RESTRICT="!test? ( test )"
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0.9999.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-19.1.0_rc1.ebuild
index e4c76c15ebc8..e4c76c15ebc8 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0.9999.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-19.1.0_rc1.ebuild
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240706.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-19.1.0_rc2.ebuild
index e4c76c15ebc8..e4c76c15ebc8 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240706.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-19.1.0_rc2.ebuild
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240712.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-20.0.0.9999.ebuild
index e4c76c15ebc8..e4c76c15ebc8 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240712.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-20.0.0.9999.ebuild
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240720.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-20.0.0_pre20240801.ebuild
index e4c76c15ebc8..e4c76c15ebc8 100644
--- a/sys-libs/llvm-libunwind/llvm-libunwind-19.0.0_pre20240720.ebuild
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-20.0.0_pre20240801.ebuild
diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest
index cf05678794a6..d1eec832d732 100644
--- a/sys-libs/readline/Manifest
+++ b/sys-libs/readline/Manifest
@@ -34,8 +34,15 @@ DIST readline82-009 2270 BLAKE2B ecfa4f3f445b0c90d4ba1cf4116c9a773a3e5ee737966d9
DIST readline82-009.sig 95 BLAKE2B 5484f3df25e550a717915ecf70e8410f747ff6d192a873e5449a4fb664bd3557d21a3cf40c5c9e0097dfaf2cee205243cd1cf6af34200f89e79f9d73626c49c1 SHA512 383cc954f8324588c699968d7cdf9a4f3c0e461917c8a16f5599cd0ffb59ff9539207478195a7d77c1842c11bd912cc17d3b3b56e6a9463db1991fb5c24d5409
DIST readline82-010 2653 BLAKE2B 44ebbf93b6449d848b2dda49716b494596d207bef08cdea0d01808b5291d68714e01ef914e97652bb73e81808a91fff829c8035a097db5b3649be1e0735e3eab SHA512 b611b42e31601ea5fcd7de59e6c1cdd3fece7cc8287e0e495ddfc4d5e8f765b3c6567b728fe0a317d6cb00240b772fa4c26f374c8bf361355a9d262bc5133874
DIST readline82-010.sig 95 BLAKE2B a5a6ccaace88a79c4e28f3c9d3a9ffad186ab772ada7668653b729190d5a598cbe46c769861a72acd08b5fb36f84537bd2018a98fbd0602565660411810447f7 SHA512 0c781417f0cf63daa8532f54b71c9fda69bb2206ca41f7f75fceb7f44781ec949f932881d82fd55d69038208aed45692e30a1e6013d698c7d13f8c9984e331bc
+DIST readline82-011 1865 BLAKE2B c0c083021ef8d3b482013846719ddbbee8e0d0dcdb694e138d193937ec1ccbf26b10cf55c84646db1b63c1ba9f6e7e47b815ab11a49a2466fa1907389e61ba4f SHA512 13694129f388364bea8009e1d2156c2a27e4b63bf780be2bc18129134e9f0454cad82106b6aeed03fab5ffe1f1fa630b80b77d1bc8b824a3d2280a71bf5d2ea6
+DIST readline82-011.sig 95 BLAKE2B f391e3f83b8f574a6ccb28e1064e5b2451e4342b8b64d09f19e61ec6b380fc2d6a1ae7d384ef43c4291c1cd4cbe370de30f436abaedd0437c997fa2bbbb77ce6 SHA512 5c013a02edca92963bd2bc08b8b897cdf92c4e27d763bc3702f0f405d8409bb30a1d096a84e61c35c3bd1a7678a34f815939a0fd12d30103996ac544d8a325a4
+DIST readline82-012 2824 BLAKE2B 02f5351cdeaf818d809a3d40596ef7c7d83ab397e28486aa3ec1f25b1efe8c6ca1569d0c7e7a85170d38a37a5681cf53eb8a3b435b7c010e70ebd3d346bc25ca SHA512 8921328ed899702a4e0f5c924efee7955d70909cc6ccd2722c87127891e0639376ef5a642ca4b27f92e0ee06d4fad7297fe5f2d2db425e1b6a9b1eaf5c1e4b63
+DIST readline82-012.sig 95 BLAKE2B c9d69070ebff6b1996cfb5d1559dfdaa56d2e34770f142f9771cf8b99a68dfd55933cbcbadf589f490db4c7bdc57e43cd657d43ce72c185a46b802e61175470e SHA512 d9c0cedd012fe5a1e2236f072aefca3b1c9c66c6eedef1842f22d80c860d1e48a4f0a10711f52316e6c57d221ee32e00172002f53a3931574a03891873c0ed1e
+DIST readline82-013 5757 BLAKE2B 5af309dc331cdc2fc9c47f8a53c78731885cf70ba22c135929a30c3ab0c6c0a786d1a58b607a7aca9a6522e70aa0e9dc182ad21854d87299e48bf207ee9b02e2 SHA512 9a768946c91e4af31e872fb856b017662cdd5a12ed432d84ba13013fbac327673b655a034dbcfab52da2ff9e45eb1fdb562c3e26c224a5f4e86bff23df25175e
+DIST readline82-013.sig 95 BLAKE2B 388b707e863c6047fdc92bb29e2c172292b497f53926f6e2534016e5cdb621fd7feb9418c6edd4a693869ea61c16cb64815bf2159d6af0bb3eec5d5dc666e525 SHA512 85bd30dc816d62a2e339c95bf9f243a60a960264e14bc396b34f586afdded2cc43ecc307a7f1a2c03c7eba2d11d2f3a0028107a59c4b2bc8d6dbe77fe9fb81cd
EBUILD readline-8.1_p2-r2.ebuild 6981 BLAKE2B 1319d23bff9c63e8c53f87f5767dc24d479a70bedc1cf82d21cba0b508b052eb3cc334ae491cde913fdfb264ae6570a5f160bb7d16ae906d48f38debe9d466d5 SHA512 067c55be2dc6cb4c3e627ebefff753301e2ad1bd9c86cc5165d8dda78b6363d24d92d8001a164a1b1f1fd94a7702e8d90c9891a5e3b8e40d32e91ee3f9863d5c
EBUILD readline-8.2_p10.ebuild 7560 BLAKE2B 3dd23f93b3dc03909a81dbe3836efc7d010f1711465007569cc0f2d118f5498db418c307e952a1296585a9651c8e9abee00244eb36ce66bc17d266337383bda8 SHA512 32c78ea2851a83f3e7ef6b4b46ae03033379701acd3c344cd08f8bafbc5eec97680e41cb082113ad6605e99ece6682b6039e19839b8bd6acda6942184e72e5cc
+EBUILD readline-8.2_p13.ebuild 7567 BLAKE2B 2838875de046727fe3f1a8872f2babfca9e86d9d246420d1587acaa7f3c71f3db743e656238432de133dcf733f2be322bb626c4d81a3a24d285b66462d69eeeb SHA512 4c2a539ab5837478120641180dbe949494ea41bdef652966dac9441ec946dc3188496d0bc718982a820ce56d9b12183ebf74152cda57171922a0395a895ea95c
EBUILD readline-8.3_alpha.ebuild 7670 BLAKE2B 1c3fc1be062ccd1cf22e08b02b13e6554c519796d73159fe3edc5b0292fb995bfb91f57d42565abf0811ede55498e37f9c214e1422016fdb0ebbf637af96bc04 SHA512 68c2e6de889899f691fcca1cc4e6160d6c4d7e1eff5d3987eb5d63516ee8aa601de0197fbf8a74cdd5a5cb0db60980e85423ce8b526fa2c20de78d56454224fd
EBUILD readline-9999.ebuild 7391 BLAKE2B 76655c11c0145a954ed33867afad49c0fc294f3e86465147f497f380692ba21c7e161206c8446e8388c4d89885b858365512c68d9dd5874ed61684b829cabdf1 SHA512 2f13c81903a92966ae816ff55299189c15631775cc51dea9680d6138c7c195c61610e2d4dc3d8ba13b19416b0cf78808db640135fe7198dd1232a880d64f5449
MISC metadata.xml 533 BLAKE2B 2324b38d79697509a98d761cb8f91e08934b419f71bfd65cf09149773e3f44e8ff153d173cb1af80ccc4c10c7c65103bba5ca797f3b18b96c13132ffd777049e SHA512 5d66a8a464db16ea8afebeca7102632629486ccd4d348821ef693abde571c8a70a6aa38e9b563ddcfe93950afc38f63d2cb4239c645d97e92138a0c1e5c67f00
diff --git a/sys-libs/readline/readline-8.2_p13.ebuild b/sys-libs/readline/readline-8.2_p13.ebuild
new file mode 100644
index 000000000000..8445ab394a11
--- /dev/null
+++ b/sys-libs/readline/readline-8.2_p13.ebuild
@@ -0,0 +1,263 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# There's no standard way of versioning the point releases upstream
+# make anyway, so while this was added for RC versions, it's fine
+# in general.
+QA_PKGCONFIG_VERSION=$(ver_cut 1-2)
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc
+inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs 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}"
+MY_PATCHES=()
+
+is_release() {
+ case ${PV} in
+ 9999|*_alpha*|*_beta*|*_rc*)
+ return 1
+ ;;
+ *)
+ return 0
+ ;;
+ esac
+}
+
+[[ ${PV} != *_p* ]] && PLEVEL=0
+
+DESCRIPTION="Another cute console display library"
+HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html https://git.savannah.gnu.org/cgit/readline.git"
+
+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"
+ SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/readline-8.1-rlfe-c99.patch.xz"
+ SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )"
+
+ if [[ ${PLEVEL} -gt 0 ]] ; then
+ # bash-5.1 -> bash51
+ my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2))
+
+ patch_url=
+ my_patch_index=
+
+ upstream_url_base="mirror://gnu/readline"
+ mirror_url_base="ftp://ftp.cwru.edu/pub/readline"
+
+ for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do
+ printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index}
+ patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}"
+
+ SRC_URI+=" ${patch_url}"
+ SRC_URI+=" verify-sig? ( ${patch_url}.sig )"
+
+ # Add in the mirror URL too.
+ SRC_URI+=" ${patch_url/${upstream_url_base}/${mirror_url_base}}"
+ SRC_URI+=" verify-sig? ( ${patch_url/${upstream_url_base}/${mirror_url_base}}.sig )"
+
+ MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} )
+ done
+
+ unset my_p patch_url my_patch_index upstream_url_base mirror_url_base
+ fi
+else
+ SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/readline/${MY_P}.tar.gz"
+ SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/readline/${MY_P}.tar.gz.sig )"
+fi
+
+S="${WORKDIR}/${MY_P}"
+
+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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-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 )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.0-no_rpath.patch
+ "${FILESDIR}"/${PN}-7.0-headers.patch
+ "${FILESDIR}"/${PN}-8.0-headers.patch
+ "${WORKDIR}"/${PN}-8.1-rlfe-c99.patch
+
+ # TODO: rebase
+ #"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch
+)
+
+src_unpack() {
+ local patch
+
+ if [[ ${PV} == 9999 ]]; then
+ git-r3_src_unpack
+ else
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
+
+ for patch in "${MY_PATCHES[@]}"; do
+ verify-sig_verify_detached "${patch}"{,.sig}
+ done
+ fi
+
+ unpack "${MY_P}.tar.gz"
+ unpack readline-8.1-rlfe-c99.patch.xz
+
+ #if [[ ${GENTOO_PATCH_VER} ]]; then
+ # unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
+ #fi
+ fi
+}
+
+src_prepare() {
+ [[ ${PLEVEL} -gt 0 ]] && eapply -p0 "${MY_PATCHES[@]}"
+
+ 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, bug #71420.
+ # Use pkg-config to get the right values, bug #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
+
+ # For local readline headers
+ ln -s ../.. examples/rlfe/readline || die
+}
+
+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`, bug #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
+ export bash_cv_func_sigsetjmp="present"
+ export bash_cv_func_ctype_nonascii="yes"
+ # bug #503312
+ export bash_cv_wcwidth_broken="no"
+ 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
+ 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 bug #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)
+}