summaryrefslogtreecommitdiff
path: root/app-arch
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-01-25 06:47:12 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-01-25 06:47:12 +0000
commit4dec849539ecb0ceab14d66af84960f01b9a284c (patch)
tree70e3b3443839fd480586c6a3bc5f95ac0087603d /app-arch
parentf1e6490ffadd8d677960342b348f2b08492dd5f6 (diff)
gentoo auto-resync : 25:01:2025 - 06:47:11
Diffstat (limited to 'app-arch')
-rw-r--r--app-arch/Manifest.gzbin18271 -> 18269 bytes
-rw-r--r--app-arch/xz-utils/Manifest8
-rw-r--r--app-arch/xz-utils/xz-utils-5.6.3.ebuild4
-rw-r--r--app-arch/xz-utils/xz-utils-5.6.4.ebuild203
-rw-r--r--app-arch/xz-utils/xz-utils-5.7.1_alpha.ebuild203
5 files changed, 415 insertions, 3 deletions
diff --git a/app-arch/Manifest.gz b/app-arch/Manifest.gz
index 509eb76e62e0..56f9f43a75b8 100644
--- a/app-arch/Manifest.gz
+++ b/app-arch/Manifest.gz
Binary files differ
diff --git a/app-arch/xz-utils/Manifest b/app-arch/xz-utils/Manifest
index 16000fe04330..b126a4eb5e1d 100644
--- a/app-arch/xz-utils/Manifest
+++ b/app-arch/xz-utils/Manifest
@@ -4,8 +4,14 @@ DIST xz-5.6.2.tar.gz 2355785 BLAKE2B d2d5f9772714b5b5993ec26c313bd27dc10d88928d9
DIST xz-5.6.2.tar.gz.sig 566 BLAKE2B 9b1f19d0449de18057eb5bd3cceaa073fc245e9a05fb19fabdac98b1d2e708b39c8070130c522b78ff75df724e207f978d8da65e2ccb1c6fa295aa892eda0d23 SHA512 f3d1055a2a6e96eec2fd5c0b733f2ab5e150bac9645f1fe9a7558ed6f34a241b4f57e17fd4504f311be26cf1e2b9b797f2e78b1b9d2db02e9cd0c1548cb6160b
DIST xz-5.6.3.tar.gz 2279396 BLAKE2B 9f09926f1ec7d72e6564f5816101512717bcb37610b551616117818d4e6a3b6c00b4ac74bf13a06cd299ff199a0561f2c05a3884a6f6b7e94951de2c1c2e6dc3 SHA512 b07b45e18615d1946e9d12157af99b54700d757832a638fccab70549574dcd7f28e69e71cc4c0b9c808959f818e79b668a5ccf108429ea0f40b6125bfd55d274
DIST xz-5.6.3.tar.gz.sig 566 BLAKE2B b59899d9ddc3325bd0de084dac420440ccdeb5f57f3656300f235fdae997a8943c2dc44edc3b83150b78717a7bf761152f09b41035d245fa536c45b8c06dd00d SHA512 65a0eb674b804309417d736b3ec9edb9c9bf39485593d81f352ee847662f5a95b3d5084fab21451e3510d74e4e2ee8f9cf4e8615d1128b6e16d5c211481481db
+DIST xz-5.6.4.tar.gz 2280985 BLAKE2B 3d27c143f4856589d501bc47ff5c86c1c49b1d0b8c8fd2143bcbfe86b860ca93f6a103f628e06ce5c2839ce1941cecc7552d91b1aac5c11def40fd9182d93eee SHA512 b966950eb9206e31f284c9dc3bb0a79f2fabbaf515e88c89da53d3da41ddfeebd2fc6d3d3f8fcd150c70caaaefa43dec0bce84aa183e08bf339d1aebbe041751
+DIST xz-5.6.4.tar.gz.sig 566 BLAKE2B 475b576431f573b9ce390ae2c43fc4f307f00ef523a741ec6795f182f5ff2c30f2049b1b4d2a3a7e61769bb7dc568de0f5af89661cb09341a58bbcdcdda3c877 SHA512 1ece59b7a540f6d215206ced14759aa971f192433705f8803b6ad8db0857e246145300c853cb571d8750b8152483d13736c478a7c0abb40d7ed25305d80a841c
+DIST xz-5.7.1alpha.tar.gz 2334409 BLAKE2B 98e98ebde9175fe8b135fa59f8e8acff1b8c6278f75a3ea997ebbe9aac25cb1a6a1f1bde163af4788ca0532bc270fe5baaf6cd89ba4c81ed3e3f7a6f08e741eb SHA512 40349652f3903e1d37e1cdc0b0b6f5479db0bc5bcbdc371f34b7cf7de730b1781748e1a6cad3dcc9e721243a0bd6f1c062a5ae54e966d23ff80ae0f0c9371246
+DIST xz-5.7.1alpha.tar.gz.sig 566 BLAKE2B 33c23b3aace6856f67b927d2f5b46f60f1e96eedde6a7e2cf5085e44b96da6503a8c38d5977a1dd7b068d9cb9ae652d457e9344eb40b482979d810afeb38f888 SHA512 f3fce937be1753b94110f2cf8ea1da52905133f8a62f9b2f91f6b5c91d2400ae63e000b392a0b992cd16495227077c0f26f1e36349b048e84a6bb8d3e618fd28
EBUILD xz-utils-5.4.7-r1.ebuild 4421 BLAKE2B 1815a71ccbdda839d2659735fe14084274425e571f9de4b617c5d977fd2b54f420cc0f0bbb3604660fd9e2af4074e20bb23095ce694157025f03886e861d407e SHA512 17c066a72cb79c1e558bebdd37bafa04b2b34be1249dc24568d4c8622013ebdfcfd922542d171e2ac09276bac2eb97e8a19d7b9a577c7f5aafc815ebef692f3f
EBUILD xz-utils-5.6.2-r1.ebuild 5843 BLAKE2B 4d0f1c5bd9e20d77523902b1c31b3bfea0c46e58a01b3d80c467d0898dc2b5302294c13d180a5bf26c9f52278014895a11496b8d11fe6ddba6187d352d200e16 SHA512 6b98fc14326aab5526b0dd6e812fe97e31bef5cd6c8e5f712eecee5bc3635b9c11ef303a119a9bfe6d605bbdf7045e70b758b9915a357d4f653531c436bf1faa
-EBUILD xz-utils-5.6.3.ebuild 5653 BLAKE2B 86e3659a94728d0878c0e605b51f589e22f12dec115f0f83bb0a44b09d7f765a4e0347bf0135d6879643ea1d752e204bcf9156e3dfbbfe7d8cff367147be6b6f SHA512 31a3f6b195bc186d8eb7fb9c15543caa0e7813258f7bdc77df5a0a2b1cb4958524bd923f7200fa5c9f800d9795c33e642123928f4935bb30e454926842901450
+EBUILD xz-utils-5.6.3.ebuild 5652 BLAKE2B 9f7575f9b8c79cb3c98a3d29351d8441edef4d100d828a534be7141bbebfabe4976a333d412588503199dd272749e14a11543f412d683617d25b87da0ac17770 SHA512 dd4846591d25f47becb33ab215a1210a6d0a35ecc6ac6286b2a9ca33f31dd9d107a221d377229cebbcd1d43f2263e6d67a49b2d6b870fa02f1d30c841918d9f0
+EBUILD xz-utils-5.6.4.ebuild 5660 BLAKE2B 4e62028da13820e4174602db6004ef711e8d3b33fd6fea66d79045ceed91b76b5e5fb57ba661b034ac3406312b03ca2ed23f0fe07a088eba29c0bd8962eda9b3 SHA512 9a6d02248f2a9c1a853a3bc33f608732cc33c20376a9e1d37cbd656f5e86d199e74cb2b369ea847d46deabb77c8ac543d3012f9c7e698242527beb598d8ba709
+EBUILD xz-utils-5.7.1_alpha.ebuild 5660 BLAKE2B 4e62028da13820e4174602db6004ef711e8d3b33fd6fea66d79045ceed91b76b5e5fb57ba661b034ac3406312b03ca2ed23f0fe07a088eba29c0bd8962eda9b3 SHA512 9a6d02248f2a9c1a853a3bc33f608732cc33c20376a9e1d37cbd656f5e86d199e74cb2b369ea847d46deabb77c8ac543d3012f9c7e698242527beb598d8ba709
EBUILD xz-utils-9999.ebuild 5660 BLAKE2B 261a1ae99fb87285ffa034fc4e737806a784b46316753820e438a40dcbd8e37d469e3dea82cf6dbf8d185caba6e0c2149212776259509d7057f298c1e2af5baf SHA512 934121468e1e1d1b0a2ddbaa8db03745546d4b244e138cd480dddd5bc4c95a0694ac4e76a859759d77ce3f0ea11a43abbaeb3506704b6d46707ee3cf2f189743
MISC metadata.xml 748 BLAKE2B fe48d0e6b5aac2c843670597f0daa0202af709c27fe81889da8e4ef6877e35b30009b72831bc737b1078954b6494b508fa1b59305fdaf795db8801d20d9a0638 SHA512 6e64f0053489389818430808acb32cc1d3b33013978adf4952fbf57ab555e0710a106623ac1eb67405f1dd91c33397c5c70bddc9c5015878f280266b29b4e189
diff --git a/app-arch/xz-utils/xz-utils-5.6.3.ebuild b/app-arch/xz-utils/xz-utils-5.6.3.ebuild
index eaceaea0ff59..cd83095c3e8b 100644
--- a/app-arch/xz-utils/xz-utils-5.6.3.ebuild
+++ b/app-arch/xz-utils/xz-utils-5.6.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Remember: we cannot leverage autotools in this ebuild in order
@@ -35,7 +35,7 @@ else
"
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
S="${WORKDIR}/${MY_P}"
diff --git a/app-arch/xz-utils/xz-utils-5.6.4.ebuild b/app-arch/xz-utils/xz-utils-5.6.4.ebuild
new file mode 100644
index 000000000000..c27c74e7eeef
--- /dev/null
+++ b/app-arch/xz-utils/xz-utils-5.6.4.ebuild
@@ -0,0 +1,203 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Remember: we cannot leverage autotools in this ebuild in order
+# to avoid circular deps with autotools
+
+EAPI=8
+
+inherit libtool multilib multilib-minimal preserve-libs toolchain-funcs
+
+if [[ ${PV} == 9999 ]] ; then
+ # Per tukaani.org, git.tukaani.org is a mirror of github and
+ # may be behind.
+ EGIT_REPO_URI="
+ https://github.com/tukaani-project/xz
+ https://git.tukaani.org/xz.git
+ "
+ inherit git-r3 autotools
+
+ # bug #272880 and bug #286068
+ BDEPEND="sys-devel/gettext >=dev-build/libtool-2"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/lassecollin.asc
+ inherit verify-sig
+
+ MY_P="${PN/-utils}-${PV/_}"
+ SRC_URI="
+ https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz
+ https://downloads.sourceforge.net/lzmautils/${MY_P}.tar.gz
+ https://tukaani.org/xz/${MY_P}.tar.gz
+ verify-sig? (
+ https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz.sig
+ https://tukaani.org/xz/${MY_P}.tar.gz.sig
+ )
+ "
+
+ if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ fi
+
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Utils for managing LZMA compressed files"
+HOMEPAGE="https://tukaani.org/xz/"
+
+# See top-level COPYING file as it outlines the various pieces and their licenses.
+LICENSE="0BSD LGPL-2.1+ GPL-2+ doc? ( CC-BY-SA-4.0 )"
+SLOT="0"
+IUSE="cpu_flags_arm_crc32 doc +extra-filters pgo nls static-libs"
+
+if [[ ${PV} != 9999 ]] ; then
+ BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20240529 )"
+fi
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ eautopoint
+ eautoreconf
+ else
+ # Allow building shared libs on Solaris/x64
+ elibtoolize
+ fi
+}
+
+multilib_src_configure() {
+ # Workaround for bug #934370 (libtool-2.5.0), drop when dist tarball
+ # uses newer libtool with the fix.
+ export ac_cv_prog_ac_ct_FILECMD='file' FILECMD='file'
+
+ local myconf=(
+ --enable-threads
+ $(multilib_native_use_enable doc)
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ $(use_enable cpu_flags_arm_crc32 arm64-crc32)
+ )
+
+ if ! multilib_is_native_abi ; then
+ myconf+=(
+ --disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts}
+ )
+ fi
+
+ if ! use extra-filters ; then
+ myconf+=(
+ # LZMA1 + LZMA2 for standard .lzma & .xz files
+ --enable-encoders=lzma1,lzma2
+ --enable-decoders=lzma1,lzma2
+
+ # those are used by default, depending on preset
+ --enable-match-finders=hc3,hc4,bt4
+
+ # CRC64 is used by default, though 7-Zip uses CRC32 by default.
+ # Also, XZ Embedded in Linux doesn't support CRC64, so
+ # kernel modules and friends are CRC32.
+ --enable-checks=crc32,crc64
+ )
+ fi
+
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ export gl_cv_posix_shell="${EPREFIX}"/bin/sh
+
+ # Undo Solaris-based defaults pointing to /usr/xpg4/bin
+ myconf+=( --disable-path-for-script )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/${ABI}-pgo -fprofile-generate=${T}/${ABI}-pgo")
+ local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/${ABI}-pgo -fprofile-dir=${T}/${ABI}-pgo")
+
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags}"
+
+ if use pgo ; then
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags}" -k check
+
+ local tar_pgo_args=()
+
+ if has_version -b "app-alternatives/tar[gnu]" ; then
+ tar_pgo_args+=(
+ --mtime=@2718281828
+ --sort=name
+ )
+ fi
+
+ if multilib_is_native_abi ; then
+ (
+ shopt -s globstar
+
+ tar \
+ "${tar_pgo_args[@]}" \
+ -cf xz-pgo-test-01.tar \
+ {"${S}","${BUILD_DIR}"}/**/*.[cho] \
+ {"${S}","${BUILD_DIR}"}/**/.libs/* \
+ {"${S}","${BUILD_DIR}"}/**/**.txt \
+ {"${S}","${BUILD_DIR}"}/tests/files
+
+ stat --printf="xz-pgo-test-01.tar.tar size: %s\n" xz-pgo-test-01.tar || die
+ md5sum xz-pgo-test-01.tar || die
+ )
+
+ local test_variants=(
+ # Borrowed from ALT Linux
+ # https://packages.altlinux.org/en/sisyphus/srpms/xz/specfiles/#line-80
+ '-0 -C none'
+ '-2 -C crc32'
+ "$(usev extra-filters '-6 --arm --lzma2 -C crc64')"
+ "$(usev extra-filters '-6 --x86 --lzma2=lc=4 -C sha256')"
+ '-7e --format=lzma'
+
+ # Our own variants
+ ''
+ '-e'
+ "$(usev extra-filters '--x86 --lzma2=preset=6e')"
+ )
+ local test_variant
+ for test_variant in "${test_variants[@]}" ; do
+ einfo "Testing '${test_variant}' variant"
+ "${BUILD_DIR}"/src/xz/xz -c ${test_variant} xz-pgo-test-01.tar | "${BUILD_DIR}"/src/xz/xz -c -d - > /dev/null
+ assert "Testing '${test_variant}' variant failed"
+ done
+ fi
+
+ if tc-is-clang; then
+ llvm-profdata merge "${T}"/${ABI}-pgo --output="${T}"/${ABI}-pgo/default.profdata || die
+ fi
+
+ emake clean
+ emake CFLAGS="${CFLAGS} ${pgo_use_flags}"
+ fi
+}
+
+multilib_src_install() {
+ default
+
+ # bug #934370 and bug #450436 (and bug #934515)
+ if ! tc-is-static-only && [[ ! -f "${ED}/usr/$(get_libdir)/liblzma$(get_libname)" ]] ; then
+ eerror "Sanity check for liblzma$(get_libname) failed."
+ eerror "Shared library wasn't built, possible libtool bug"
+ [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && die "liblzma$(get_libname) not found in build, aborting"
+ fi
+}
+
+multilib_src_install_all() {
+ find "${ED}" -type f -name '*.la' -delete || die
+
+ if use doc ; then
+ rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
+ fi
+}
+
+pkg_preinst() {
+ preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0)
+}
+
+pkg_postinst() {
+ preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0)
+}
diff --git a/app-arch/xz-utils/xz-utils-5.7.1_alpha.ebuild b/app-arch/xz-utils/xz-utils-5.7.1_alpha.ebuild
new file mode 100644
index 000000000000..c27c74e7eeef
--- /dev/null
+++ b/app-arch/xz-utils/xz-utils-5.7.1_alpha.ebuild
@@ -0,0 +1,203 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Remember: we cannot leverage autotools in this ebuild in order
+# to avoid circular deps with autotools
+
+EAPI=8
+
+inherit libtool multilib multilib-minimal preserve-libs toolchain-funcs
+
+if [[ ${PV} == 9999 ]] ; then
+ # Per tukaani.org, git.tukaani.org is a mirror of github and
+ # may be behind.
+ EGIT_REPO_URI="
+ https://github.com/tukaani-project/xz
+ https://git.tukaani.org/xz.git
+ "
+ inherit git-r3 autotools
+
+ # bug #272880 and bug #286068
+ BDEPEND="sys-devel/gettext >=dev-build/libtool-2"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/lassecollin.asc
+ inherit verify-sig
+
+ MY_P="${PN/-utils}-${PV/_}"
+ SRC_URI="
+ https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz
+ https://downloads.sourceforge.net/lzmautils/${MY_P}.tar.gz
+ https://tukaani.org/xz/${MY_P}.tar.gz
+ verify-sig? (
+ https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz.sig
+ https://tukaani.org/xz/${MY_P}.tar.gz.sig
+ )
+ "
+
+ if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ fi
+
+ S="${WORKDIR}/${MY_P}"
+fi
+
+DESCRIPTION="Utils for managing LZMA compressed files"
+HOMEPAGE="https://tukaani.org/xz/"
+
+# See top-level COPYING file as it outlines the various pieces and their licenses.
+LICENSE="0BSD LGPL-2.1+ GPL-2+ doc? ( CC-BY-SA-4.0 )"
+SLOT="0"
+IUSE="cpu_flags_arm_crc32 doc +extra-filters pgo nls static-libs"
+
+if [[ ${PV} != 9999 ]] ; then
+ BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20240529 )"
+fi
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ eautopoint
+ eautoreconf
+ else
+ # Allow building shared libs on Solaris/x64
+ elibtoolize
+ fi
+}
+
+multilib_src_configure() {
+ # Workaround for bug #934370 (libtool-2.5.0), drop when dist tarball
+ # uses newer libtool with the fix.
+ export ac_cv_prog_ac_ct_FILECMD='file' FILECMD='file'
+
+ local myconf=(
+ --enable-threads
+ $(multilib_native_use_enable doc)
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ $(use_enable cpu_flags_arm_crc32 arm64-crc32)
+ )
+
+ if ! multilib_is_native_abi ; then
+ myconf+=(
+ --disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts}
+ )
+ fi
+
+ if ! use extra-filters ; then
+ myconf+=(
+ # LZMA1 + LZMA2 for standard .lzma & .xz files
+ --enable-encoders=lzma1,lzma2
+ --enable-decoders=lzma1,lzma2
+
+ # those are used by default, depending on preset
+ --enable-match-finders=hc3,hc4,bt4
+
+ # CRC64 is used by default, though 7-Zip uses CRC32 by default.
+ # Also, XZ Embedded in Linux doesn't support CRC64, so
+ # kernel modules and friends are CRC32.
+ --enable-checks=crc32,crc64
+ )
+ fi
+
+ if [[ ${CHOST} == *-solaris* ]] ; then
+ export gl_cv_posix_shell="${EPREFIX}"/bin/sh
+
+ # Undo Solaris-based defaults pointing to /usr/xpg4/bin
+ myconf+=( --disable-path-for-script )
+ fi
+
+ ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/${ABI}-pgo -fprofile-generate=${T}/${ABI}-pgo")
+ local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/${ABI}-pgo -fprofile-dir=${T}/${ABI}-pgo")
+
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags}"
+
+ if use pgo ; then
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags}" -k check
+
+ local tar_pgo_args=()
+
+ if has_version -b "app-alternatives/tar[gnu]" ; then
+ tar_pgo_args+=(
+ --mtime=@2718281828
+ --sort=name
+ )
+ fi
+
+ if multilib_is_native_abi ; then
+ (
+ shopt -s globstar
+
+ tar \
+ "${tar_pgo_args[@]}" \
+ -cf xz-pgo-test-01.tar \
+ {"${S}","${BUILD_DIR}"}/**/*.[cho] \
+ {"${S}","${BUILD_DIR}"}/**/.libs/* \
+ {"${S}","${BUILD_DIR}"}/**/**.txt \
+ {"${S}","${BUILD_DIR}"}/tests/files
+
+ stat --printf="xz-pgo-test-01.tar.tar size: %s\n" xz-pgo-test-01.tar || die
+ md5sum xz-pgo-test-01.tar || die
+ )
+
+ local test_variants=(
+ # Borrowed from ALT Linux
+ # https://packages.altlinux.org/en/sisyphus/srpms/xz/specfiles/#line-80
+ '-0 -C none'
+ '-2 -C crc32'
+ "$(usev extra-filters '-6 --arm --lzma2 -C crc64')"
+ "$(usev extra-filters '-6 --x86 --lzma2=lc=4 -C sha256')"
+ '-7e --format=lzma'
+
+ # Our own variants
+ ''
+ '-e'
+ "$(usev extra-filters '--x86 --lzma2=preset=6e')"
+ )
+ local test_variant
+ for test_variant in "${test_variants[@]}" ; do
+ einfo "Testing '${test_variant}' variant"
+ "${BUILD_DIR}"/src/xz/xz -c ${test_variant} xz-pgo-test-01.tar | "${BUILD_DIR}"/src/xz/xz -c -d - > /dev/null
+ assert "Testing '${test_variant}' variant failed"
+ done
+ fi
+
+ if tc-is-clang; then
+ llvm-profdata merge "${T}"/${ABI}-pgo --output="${T}"/${ABI}-pgo/default.profdata || die
+ fi
+
+ emake clean
+ emake CFLAGS="${CFLAGS} ${pgo_use_flags}"
+ fi
+}
+
+multilib_src_install() {
+ default
+
+ # bug #934370 and bug #450436 (and bug #934515)
+ if ! tc-is-static-only && [[ ! -f "${ED}/usr/$(get_libdir)/liblzma$(get_libname)" ]] ; then
+ eerror "Sanity check for liblzma$(get_libname) failed."
+ eerror "Shared library wasn't built, possible libtool bug"
+ [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && die "liblzma$(get_libname) not found in build, aborting"
+ fi
+}
+
+multilib_src_install_all() {
+ find "${ED}" -type f -name '*.la' -delete || die
+
+ if use doc ; then
+ rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
+ fi
+}
+
+pkg_preinst() {
+ preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0)
+}
+
+pkg_postinst() {
+ preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0)
+}