dev-libs/libxslt: Sync with Gentoo

It's from Gentoo commit 085795cd3b440d918a7f55ced3d0edf53a1b5c73.

Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org>
This commit is contained in:
Flatcar Buildbot 2025-11-03 07:07:18 +00:00 committed by Krzesimir Nowak
parent 1b1b64e000
commit 0d2ceaed09
2 changed files with 131 additions and 0 deletions

View File

@ -1 +1,2 @@
DIST libxslt-1.1.43-patches.tar.xz 8296 BLAKE2B 198c01ad6848bda4ce210750a8a8dfb617b5f6b1f74a38d90873a72ecbef77a771de88cbf31c552a7ef73cf90823ecc5859c3846298a50cea065e51cd0995afc SHA512 625d3b99a04bbe653e5a6140d7837b1029ff5b09883258c5075e1298402112af9b9272a7863c32a0751f16fc71e84142cfb5ac134ffbef0731fe0a1ddf4ec0b7
DIST libxslt-1.1.43.tar.xz 1518364 BLAKE2B 84d1cff32c78c4eeff4db614214ee1808bcf958d55711b08e7e2191a4343fb61d38d6b3d9b43f6f12be2dc909fced0a5b5905fa2c5ec7761c83125007e1ce265 SHA512 96110b0397a8f5791f489127574e2143845feb61bea0581d7b7e3c1101fd0718483bae81a7ce417b971bd678293bfd95daddad0dadd3e256c87d41a69faed85a

View File

@ -0,0 +1,130 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Note: Please bump this in sync with dev-libs/libxml2.
PYTHON_COMPAT=( python3_{11..14} )
inherit python-r1 multilib-minimal
DESCRIPTION="XSLT libraries and tools"
HOMEPAGE="https://gitlab.gnome.org/GNOME/libxslt"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxslt"
inherit autotools git-r3
else
inherit libtool gnome.org
SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-patches.tar.xz"
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
LICENSE="MIT"
SLOT="0"
IUSE="crypt debug debugger examples python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
BDEPEND=">=virtual/pkgconfig-1"
RDEPEND="
>=dev-libs/libxml2-2.13:2=[${MULTILIB_USEDEP}]
crypt? ( >=dev-libs/libgcrypt-1.5.3:=[${MULTILIB_USEDEP}] )
python? (
${PYTHON_DEPS}
>=dev-libs/libxml2-2.13:2=[${MULTILIB_USEDEP},python,${PYTHON_USEDEP}]
)
"
DEPEND="${RDEPEND}"
MULTILIB_CHOST_TOOLS=(
/usr/bin/xslt-config
)
MULTILIB_WRAPPED_HEADERS=(
/usr/include/libxslt/xsltconfig.h
)
PATCHES=(
"${WORKDIR}"/${P}-patches/
)
src_prepare() {
default
if [[ ${PV} == 9999 ]] ; then
eautoreconf
else
# Prefix always needs elibtoolize if not eautoreconf'd.
elibtoolize
fi
}
multilib_src_configure() {
libxslt_configure() {
ECONF_SOURCE="${S}" econf \
--without-python \
$(use_with crypt crypto) \
$(use_with debug) \
$(use_with debugger) \
$(use_enable static-libs static) \
"$@"
}
# Build Python bindings separately
libxslt_configure --without-python
if multilib_is_native_abi && use python ; then
NATIVE_BUILD_DIR="${BUILD_DIR}"
python_foreach_impl run_in_build_dir libxslt_configure --with-python
fi
}
libxslt_py_emake() {
pushd "${BUILD_DIR}"/python >/dev/null || die
emake top_builddir="${NATIVE_BUILD_DIR}" "$@"
popd >/dev/null || die
}
multilib_src_compile() {
default
if multilib_is_native_abi && use python ; then
python_foreach_impl run_in_build_dir libxslt_py_emake all
fi
}
multilib_src_test() {
default
if multilib_is_native_abi && use python ; then
python_foreach_impl run_in_build_dir libxslt_py_emake check
fi
}
multilib_src_install() {
# "default" does not work here - docs are installed by multilib_src_install_all
emake DESTDIR="${D}" install
if multilib_is_native_abi && use python; then
python_foreach_impl run_in_build_dir libxslt_py_emake \
DESTDIR="${D}" \
install
# Hack until automake release is made for the optimise fix
# https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097
python_foreach_impl python_optimize
fi
}
multilib_src_install_all() {
einstalldocs
if ! use examples ; then
rm -rf "${ED}"/usr/share/doc/${PF}/tutorial{,2} || die
rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die
fi
find "${ED}" -type f -name "*.la" -delete || die
}