dev-libs/libxslt: Sync with Gentoo

It's from Gentoo commit 4469ddd9cd4a190495fa455a40f14817993d6d5c.
This commit is contained in:
Flatcar Buildbot 2024-01-01 07:11:20 +00:00 committed by Krzesimir Nowak
parent 13493432ea
commit d9e7ae0fc3
5 changed files with 29 additions and 255 deletions

View File

@ -1,3 +1 @@
DIST libxslt-1.1.37.tar.xz 1588572 BLAKE2B 096d93dd7178bf4483207514b1435f5bf426eea4952ffab7cc00c3e85aa736534c4acb5377af9647aa77a0cd793205194509d997a7bb5cae692f65e326566cd8 SHA512 a4e477d2bb918b7d01945e2c7491c3a4aae799dc1602bbd13de55c8a5052e210a20bc45115347eae44473c8b1d03dbc5e4a2aa18c2218f1fdfd376d87cd501ca
DIST libxslt-1.1.38.tar.xz 1576676 BLAKE2B 9397be8b223bd68b326b954fe6a749a269e969b4669747678715728f553916c23475232fc2894a5e4230e15b031981423adeb8f83407f4db8075a784c7e6a55b SHA512 2836bd2990b95680db0960ac4c465d0c6c28a293ad095a224c05021a1c8d2576a45e41da8947a31f4ef3e6ef368cbda65243661e311c9886c19694be5a7c9a8e
DIST libxslt-1.1.39.tar.xz 1578216 BLAKE2B 7c87b769d345fc99a966bea6b4e94533fa211dc3a987ce013a03eefb05dde73ef75526bdecf7d32d8c77112232096fb22d8ec4f0a781b9f59d0422a2db75df01 SHA512 c0c99dc63f8b2acb6cc3ad7ad684ffa2a427ee8d1740495cbf8a7c9b9c8679f96351b4b676c73ccc191014db4cb4ab42b9a0070f6295565f39dbc665c5c16f89 DIST libxslt-1.1.39.tar.xz 1578216 BLAKE2B 7c87b769d345fc99a966bea6b4e94533fa211dc3a987ce013a03eefb05dde73ef75526bdecf7d32d8c77112232096fb22d8ec4f0a781b9f59d0422a2db75df01 SHA512 c0c99dc63f8b2acb6cc3ad7ad684ffa2a427ee8d1740495cbf8a7c9b9c8679f96351b4b676c73ccc191014db4cb4ab42b9a0070f6295565f39dbc665c5c16f89

View File

@ -0,0 +1,24 @@
https://bugs.gentoo.org/918973
https://gitlab.gnome.org/GNOME/libxslt/-/issues/99
https://gitlab.gnome.org/GNOME/libxslt/-/commit/86ec392efd75ce24b79f4baa9822a1b088f3e47f
From 86ec392efd75ce24b79f4baa9822a1b088f3e47f Mon Sep 17 00:00:00 2001
From: Nick Wellnhofer <wellnhofer@aevum.de>
Date: Fri, 1 Dec 2023 21:05:19 +0100
Subject: [PATCH] tests: Fix build with older libxml2
Fixes #99.
--- a/tests/runtest.c
+++ b/tests/runtest.c
@@ -456,7 +456,8 @@ initializeLibxml2(void) {
xmlSetExternalEntityLoader(xmlNoNetExternalEntityLoader);
xmlSetGenericErrorFunc(NULL, testErrorHandler);
xsltSetGenericErrorFunc(NULL, testErrorHandler);
- xmlSetStructuredErrorFunc(NULL, testStructuredErrorHandler);
+ xmlSetStructuredErrorFunc(NULL,
+ (xmlStructuredErrorFunc) testStructuredErrorHandler);
exsltRegisterAll();
xsltRegisterTestModule();
xsltMaxDepth = 200;
--
GitLab

View File

@ -1,127 +0,0 @@
# Copyright 1999-2023 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_{9..11} )
inherit flag-o-matic 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
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
LICENSE="MIT"
SLOT="0"
IUSE="crypt debug examples python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
BDEPEND=">=virtual/pkgconfig-1"
RDEPEND="
>=dev-libs/libxml2-2.9.11:2[${MULTILIB_USEDEP}]
crypt? ( >=dev-libs/libgcrypt-1.5.3:0=[${MULTILIB_USEDEP}] )
python? ( ${PYTHON_DEPS} )
"
DEPEND="${RDEPEND}"
MULTILIB_CHOST_TOOLS=(
/usr/bin/xslt-config
)
MULTILIB_WRAPPED_HEADERS=(
/usr/include/libxslt/xsltconfig.h
)
DOCS=( AUTHORS FEATURES NEWS README TODO )
src_prepare() {
default
if [[ ${PV} == 9999 ]] ; then
eautoreconf
else
# Prefix always needs elibtoolize if not eautoreconf'd.
elibtoolize
fi
}
multilib_src_configure() {
# Remove this after upstream merge request to add AC_SYS_LARGEFILE lands:
# https://gitlab.gnome.org/GNOME/libxslt/-/merge_requests/55
append-lfs-flags
libxslt_configure() {
ECONF_SOURCE="${S}" econf \
--without-python \
$(use_with crypt crypto) \
$(use_with debug) \
$(use_with debug mem-debug) \
$(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 test
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
}

View File

@ -1,125 +0,0 @@
# Copyright 1999-2023 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_{10..12} )
inherit flag-o-matic 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
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
LICENSE="MIT"
SLOT="0"
IUSE="crypt debug examples python static-libs"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
BDEPEND=">=virtual/pkgconfig-1"
RDEPEND="
>=dev-libs/libxml2-2.9.11:2[${MULTILIB_USEDEP}]
crypt? ( >=dev-libs/libgcrypt-1.5.3:0=[${MULTILIB_USEDEP}] )
python? ( ${PYTHON_DEPS} )
"
DEPEND="${RDEPEND}"
MULTILIB_CHOST_TOOLS=(
/usr/bin/xslt-config
)
MULTILIB_WRAPPED_HEADERS=(
/usr/include/libxslt/xsltconfig.h
)
src_prepare() {
default
if [[ ${PV} == 9999 ]] ; then
eautoreconf
else
# Prefix always needs elibtoolize if not eautoreconf'd.
elibtoolize
fi
}
multilib_src_configure() {
# Remove this after upstream merge request to add AC_SYS_LARGEFILE lands:
# https://gitlab.gnome.org/GNOME/libxslt/-/merge_requests/55
append-lfs-flags
libxslt_configure() {
ECONF_SOURCE="${S}" econf \
--without-python \
$(use_with crypt crypto) \
$(use_with debug) \
$(use_with debug mem-debug) \
$(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
}

View File

@ -15,7 +15,7 @@ if [[ ${PV} == 9999 ]] ; then
inherit autotools git-r3 inherit autotools git-r3
else else
inherit libtool gnome.org inherit libtool gnome.org
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" 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 fi
LICENSE="MIT" LICENSE="MIT"
@ -39,6 +39,10 @@ MULTILIB_WRAPPED_HEADERS=(
/usr/include/libxslt/xsltconfig.h /usr/include/libxslt/xsltconfig.h
) )
PATCHES=(
"${FILESDIR}"/${P}-libxml2-2.11-tests.patch
)
src_prepare() { src_prepare() {
default default