app-arch/xz-utils: Sync with Gentoo

It's from Gentoo commit f71d64562a603ad98cea1b73410a4d75aea49e78.
This commit is contained in:
Flatcar Buildbot 2025-06-16 07:06:48 +00:00 committed by Krzesimir Nowak
parent a47bb235b4
commit 2d61d9b8f3
3 changed files with 45 additions and 10 deletions

View File

@ -6,7 +6,7 @@
EAPI=8
inherit libtool multilib multilib-minimal preserve-libs toolchain-funcs
inherit dot-a flag-o-matic libtool multilib multilib-minimal preserve-libs toolchain-funcs
if [[ ${PV} == 9999 ]] ; then
# Per tukaani.org, git.tukaani.org is a mirror of github and
@ -71,6 +71,11 @@ src_prepare() {
fi
}
src_configure() {
use static-libs && lto-guarantee-fat
multilib-minimal_src_configure
}
multilib_src_configure() {
local myconf=(
--enable-threads
@ -113,8 +118,11 @@ multilib_src_configure() {
}
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")
# -fprofile-partial-training because upstream note the test suite isn't super comprehensive
# TODO: revisit that now we have the tar/xz loop below?
# See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-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}"
@ -189,6 +197,8 @@ multilib_src_install() {
}
multilib_src_install_all() {
strip-lto-bytecode
find "${ED}" -type f -name '*.la' -delete || die
if use doc ; then

View File

@ -6,7 +6,7 @@
EAPI=8
inherit libtool multilib multilib-minimal preserve-libs toolchain-funcs
inherit dot-a flag-o-matic libtool multilib multilib-minimal preserve-libs toolchain-funcs
if [[ ${PV} == 9999 ]] ; then
# Per tukaani.org, git.tukaani.org is a mirror of github and
@ -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}"
@ -65,6 +65,16 @@ src_prepare() {
fi
}
src_configure() {
use static-libs && lto-guarantee-fat
if tc-ld-is-lld ; then
export LDFLAGS="${LDFLAGS} -Wl,--undefined-version"
fi
multilib-minimal_src_configure
}
multilib_src_configure() {
local myconf=(
--enable-threads
@ -107,8 +117,11 @@ multilib_src_configure() {
}
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")
# -fprofile-partial-training because upstream note the test suite isn't super comprehensive
# TODO: revisit that now we have the tar/xz loop below?
# See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-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}"
@ -183,6 +196,8 @@ multilib_src_install() {
}
multilib_src_install_all() {
strip-lto-bytecode
find "${ED}" -type f -name '*.la' -delete || die
if use doc ; then

View File

@ -6,7 +6,7 @@
EAPI=8
inherit libtool multilib multilib-minimal preserve-libs toolchain-funcs
inherit dot-a flag-o-matic libtool multilib multilib-minimal preserve-libs toolchain-funcs
if [[ ${PV} == 9999 ]] ; then
# Per tukaani.org, git.tukaani.org is a mirror of github and
@ -65,6 +65,11 @@ src_prepare() {
fi
}
src_configure() {
use static-libs && lto-guarantee-fat
multilib-minimal_src_configure
}
multilib_src_configure() {
local myconf=(
--enable-threads
@ -107,8 +112,11 @@ multilib_src_configure() {
}
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")
# -fprofile-partial-training because upstream note the test suite isn't super comprehensive
# TODO: revisit that now we have the tar/xz loop below?
# See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-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}"
@ -183,6 +191,8 @@ multilib_src_install() {
}
multilib_src_install_all() {
strip-lto-bytecode
find "${ED}" -type f -name '*.la' -delete || die
if use doc ; then