mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-15 08:56:58 +02:00
app-arch/xz-utils: Sync with Gentoo
It's from Gentoo commit bf17371a8fed1caaccab7c1be82ceb150d88eac6.
This commit is contained in:
parent
93508e0edf
commit
abc799ed29
@ -1,6 +1,6 @@
|
|||||||
DIST xz-5.4.2.tar.gz 2799022 BLAKE2B 3c622b0823f0cbb5fbc5eaa0372fc2f0fefe0950d131417f831bce47b6d9747d145429f0649de106819331f9ae6a289c497182c7b6d1e211513308dd083a9b72 SHA512 149f980338bea3d66de1ff5994b2b236ae1773135eda68b62b009df0c9dcdf5467f8cb2c06da95a71b6556d60bd3d21f475feced34d5dfdb80ee95416a2f9737
|
|
||||||
DIST xz-5.4.2.tar.gz.sig 566 BLAKE2B 95c9c70fdd25b92095dd9691e4d9d4306a3f982becfe7bd42ca6132a76f29be2c2bc66f4fc2bda547058c18e227292f4185799eb905084fc3ab415ae867b4b1b SHA512 30e965c228ed3a8ecb804db8eb11703a765b7ee934030ea69bb3940b630811eb71bf74fd20371ef7759761904ece4f0144a0b00be4d843cf98299fd016f161aa
|
|
||||||
DIST xz-5.4.7.tar.gz 2798247 BLAKE2B e02f3a62c81882c83254e1c94f002aadcd59479dbd031a4d5ea68ce3303c066c298c2709845f2d4ef436511b21d35ab66a080542ac70aaf6c0a0daf448a47d02 SHA512 82c3e5d39fbaa5dcd61b45d5db99d740d811323456a9af3b1acfccbe66b074d1650bc810ee8272a8ae0a1bcf116fc73fc09297b8acb4c6568cf912708306e8ea
|
DIST xz-5.4.7.tar.gz 2798247 BLAKE2B e02f3a62c81882c83254e1c94f002aadcd59479dbd031a4d5ea68ce3303c066c298c2709845f2d4ef436511b21d35ab66a080542ac70aaf6c0a0daf448a47d02 SHA512 82c3e5d39fbaa5dcd61b45d5db99d740d811323456a9af3b1acfccbe66b074d1650bc810ee8272a8ae0a1bcf116fc73fc09297b8acb4c6568cf912708306e8ea
|
||||||
DIST xz-5.4.7.tar.gz.sig 566 BLAKE2B 525eeeddb219c6e46ef2079af0cd28c8514969ce33b2ab61ccae59ae26289e7ddbd29dd492f88f4e4da9db750dd60ce1831a23a0275cdac39bd5b29c663d1a72 SHA512 00e9004739a168fd8a1ca4bb8b8a9de456bbef2576565722158140f341e94f461dab05c6e457f62a1613229419a978898e878007872571afdc1bb8a9582fa00a
|
DIST xz-5.4.7.tar.gz.sig 566 BLAKE2B 525eeeddb219c6e46ef2079af0cd28c8514969ce33b2ab61ccae59ae26289e7ddbd29dd492f88f4e4da9db750dd60ce1831a23a0275cdac39bd5b29c663d1a72 SHA512 00e9004739a168fd8a1ca4bb8b8a9de456bbef2576565722158140f341e94f461dab05c6e457f62a1613229419a978898e878007872571afdc1bb8a9582fa00a
|
||||||
DIST xz-5.6.2.tar.gz 2355785 BLAKE2B d2d5f9772714b5b5993ec26c313bd27dc10d88928d9d3a1c71b78f80797e376cf065dcdd0c2c7977a83b67cbe2558140c74c5df44a9408e5a72529212c2205ad SHA512 c32c32c95e3541b906e0284e66a953ace677e0ce6af2084e7b122600047bf7542c1b0fabb5909b19ff79fba6def530be674df1c675b22a47a8d57f3f0b736a82
|
DIST xz-5.6.2.tar.gz 2355785 BLAKE2B d2d5f9772714b5b5993ec26c313bd27dc10d88928d9d3a1c71b78f80797e376cf065dcdd0c2c7977a83b67cbe2558140c74c5df44a9408e5a72529212c2205ad SHA512 c32c32c95e3541b906e0284e66a953ace677e0ce6af2084e7b122600047bf7542c1b0fabb5909b19ff79fba6def530be674df1c675b22a47a8d57f3f0b736a82
|
||||||
DIST xz-5.6.2.tar.gz.sig 566 BLAKE2B 9b1f19d0449de18057eb5bd3cceaa073fc245e9a05fb19fabdac98b1d2e708b39c8070130c522b78ff75df724e207f978d8da65e2ccb1c6fa295aa892eda0d23 SHA512 f3d1055a2a6e96eec2fd5c0b733f2ab5e150bac9645f1fe9a7558ed6f34a241b4f57e17fd4504f311be26cf1e2b9b797f2e78b1b9d2db02e9cd0c1548cb6160b
|
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
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
EAPI=8
|
EAPI=8
|
||||||
|
|
||||||
inherit flag-o-matic libtool multilib multilib-minimal preserve-libs toolchain-funcs
|
inherit libtool multilib multilib-minimal preserve-libs toolchain-funcs
|
||||||
|
|
||||||
if [[ ${PV} == 9999 ]] ; then
|
if [[ ${PV} == 9999 ]] ; then
|
||||||
# Per tukaani.org, git.tukaani.org is a mirror of github and
|
# Per tukaani.org, git.tukaani.org is a mirror of github and
|
||||||
@ -35,7 +35,7 @@ else
|
|||||||
"
|
"
|
||||||
|
|
||||||
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
|
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
|
fi
|
||||||
|
|
||||||
S="${WORKDIR}/${MY_P}"
|
S="${WORKDIR}/${MY_P}"
|
||||||
@ -45,12 +45,12 @@ DESCRIPTION="Utils for managing LZMA compressed files"
|
|||||||
HOMEPAGE="https://tukaani.org/xz/"
|
HOMEPAGE="https://tukaani.org/xz/"
|
||||||
|
|
||||||
# See top-level COPYING file as it outlines the various pieces and their licenses.
|
# See top-level COPYING file as it outlines the various pieces and their licenses.
|
||||||
LICENSE="public-domain LGPL-2.1+ GPL-2+"
|
LICENSE="0BSD LGPL-2.1+ GPL-2+ doc? ( CC-BY-SA-4.0 )"
|
||||||
SLOT="0"
|
SLOT="0"
|
||||||
IUSE="doc +extra-filters pgo nls static-libs"
|
IUSE="cpu_flags_arm_crc32 doc +extra-filters pgo nls static-libs"
|
||||||
|
|
||||||
if [[ ${PV} != 9999 ]] ; then
|
if [[ ${PV} != 9999 ]] ; then
|
||||||
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
|
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20240529 )"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
src_prepare() {
|
src_prepare() {
|
||||||
@ -66,11 +66,16 @@ src_prepare() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
multilib_src_configure() {
|
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=(
|
local myconf=(
|
||||||
--enable-threads
|
--enable-threads
|
||||||
$(multilib_native_use_enable doc)
|
$(multilib_native_use_enable doc)
|
||||||
$(use_enable nls)
|
$(use_enable nls)
|
||||||
$(use_enable static-libs static)
|
$(use_enable static-libs static)
|
||||||
|
$(use_enable cpu_flags_arm_crc32 arm64-crc32)
|
||||||
)
|
)
|
||||||
|
|
||||||
if ! multilib_is_native_abi ; then
|
if ! multilib_is_native_abi ; then
|
||||||
@ -88,7 +93,9 @@ multilib_src_configure() {
|
|||||||
# those are used by default, depending on preset
|
# those are used by default, depending on preset
|
||||||
--enable-match-finders=hc3,hc4,bt4
|
--enable-match-finders=hc3,hc4,bt4
|
||||||
|
|
||||||
# CRC64 is used by default, though some (old?) files use CRC32
|
# 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
|
--enable-checks=crc32,crc64
|
||||||
)
|
)
|
||||||
fi
|
fi
|
||||||
@ -96,7 +103,7 @@ multilib_src_configure() {
|
|||||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||||
export gl_cv_posix_shell="${EPREFIX}"/bin/sh
|
export gl_cv_posix_shell="${EPREFIX}"/bin/sh
|
||||||
|
|
||||||
# Undo Solaris-based defaults pointing to /usr/xpg5/bin
|
# Undo Solaris-based defaults pointing to /usr/xpg4/bin
|
||||||
myconf+=( --disable-path-for-script )
|
myconf+=( --disable-path-for-script )
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -104,16 +111,61 @@ multilib_src_configure() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
multilib_src_compile() {
|
multilib_src_compile() {
|
||||||
# -fprofile-partial-training because upstream note the test suite isn't super comprehensive
|
local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/${ABI}-pgo -fprofile-generate=${T}/${ABI}-pgo")
|
||||||
# See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo
|
local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/${ABI}-pgo -fprofile-dir=${T}/${ABI}-pgo")
|
||||||
local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/${ABI}-pgo -fprofile-generate=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)")
|
|
||||||
local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/${ABI}-pgo -fprofile-dir=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)")
|
|
||||||
|
|
||||||
emake CFLAGS="${CFLAGS} ${pgo_generate_flags}"
|
emake CFLAGS="${CFLAGS} ${pgo_generate_flags}"
|
||||||
|
|
||||||
if use pgo ; then
|
if use pgo ; then
|
||||||
emake CFLAGS="${CFLAGS} ${pgo_generate_flags}" -k check
|
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
|
if tc-is-clang; then
|
||||||
llvm-profdata merge "${T}"/${ABI}-pgo --output="${T}"/${ABI}-pgo/default.profdata || die
|
llvm-profdata merge "${T}"/${ABI}-pgo --output="${T}"/${ABI}-pgo/default.profdata || die
|
||||||
fi
|
fi
|
||||||
@ -123,6 +175,17 @@ multilib_src_compile() {
|
|||||||
fi
|
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() {
|
multilib_src_install_all() {
|
||||||
find "${ED}" -type f -name '*.la' -delete || die
|
find "${ED}" -type f -name '*.la' -delete || die
|
||||||
|
|
Loading…
Reference in New Issue
Block a user