commit:     9473a0092ebcca833bc8fed4125cc023ac31d8dc
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 16 18:53:37 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Oct 16 18:53:37 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9473a009

dev-libs/libxml2: add 2.15.1

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/libxml2/Manifest              |   1 +
 dev-libs/libxml2/libxml2-2.15.1.ebuild | 165 +++++++++++++++++++++++++++++++++
 2 files changed, 166 insertions(+)

diff --git a/dev-libs/libxml2/Manifest b/dev-libs/libxml2/Manifest
index 24082c5677fa..58463ab20060 100644
--- a/dev-libs/libxml2/Manifest
+++ b/dev-libs/libxml2/Manifest
@@ -1,6 +1,7 @@
 DIST libxml2-2.13.9.tar.xz 2426164 BLAKE2B 
b14cb6953983ee83b5de39b8d80f623edae6198541e996fbda3c88ea7c3f5b354f8e064b378231bd60e88e0ea143f44be860252007eaafd7290f6f781fc6e8aa
 SHA512 
62d4813860124c969f204aaf33b497105dbc32a6c5655f5a86168743660e10987d687d7e5e7ee49fdfdeb8f6ad9fa4503f81fcce2e4d459094895f02436d1b13
 DIST libxml2-2.14.6.tar.xz 2327580 BLAKE2B 
ad5d7cb64f8081559a671e9d79b3ebcd7313dada39d7f0c2854994153a9dff2ef85bc81336437f5881abe637bae51b62e9104b3a099113f4ee2252b604325291
 SHA512 
9a62230487255af7cdaf135cc8a0978dc82ff2ee8826f6b21cc8b39c8e0a6b9efeea1c12e6cb7ae3f869730fb4ed628158e2848dd512558fc5bf177c56862774
 DIST libxml2-2.15.0.tar.xz 2004476 BLAKE2B 
07a570cd38528eb253d67f1eb88d375c5b3e32dfb23e97662c6243b8af2c4087f2cc931015cc183ff9bc231be88b6099fda42104d77d6fb0126f7804f277a088
 SHA512 
26fdf2c4c7bba90f0ad9cb74debc94e2ba7db2d8461d2bb40764d479f1735d78e85e6835f0c7ae292d827d387ac74ba889915456d5f3f646de5e0b96a070fddb
+DIST libxml2-2.15.1.tar.xz 2004588 BLAKE2B 
73c4d17adacda67d71c5a120c7de2324df1db35963cadbe18166dafe122e1f10dcab9d4fed0e128c077a5ca31432bfaf72f742c42680251660d397ab8bc3538b
 SHA512 
429c7d0dc3cbcb8de1bf6eb588fb8025fee009c9b25e87c96ecc5de57cc12b558b0ab8141f333d73ca687109335f297c9f9776abbb9da9afc9d8e79041c86b7f
 DIST xmlts20130923.tar.gz 641522 BLAKE2B 
63a47bc69278ef510cd0b3779aed729e1b309e30efa0015d28ed051cc03f9dfddb447ab57b07b3393e8f47393d15473b0e199c34cb1f5f746b15ddfaa55670be
 SHA512 
d5c4d26b324ed21f4e0641cd7f8b76dbf9de80df8b519982e44d41c960df29fd03618e02e9693b2d11ad06d19c4a965274c95a048ec3b9653eacb919a7f8b733
 DIST xsts-2002-01-16.tar.gz 6894439 BLAKE2B 
1e9ec63d2c104655e64249e07440a04d862fcbcd4d4e19745d81b34994319b510a531c9d6df1491fae1e90b5d0764f0f1a827251ca8df5d613178b0eab01ef25
 SHA512 
43300af6d39c1e2221b0ed7318fe14c7464eeb6eb030ed1e22eb29b4ab17f014e2a4c8887c3a46ae5d243e3072da27f00f4e285498ae6f1288177d38d1108288
 DIST xsts-2004-01-14.tar.gz 2761085 BLAKE2B 
41545995fb3a65d053257c376c07d45ffd1041a433bfbdb46d4dd87a5afb60c18c8629a3d988323f9e7a1d709775b5a7e5930276a7121c0725a22705c0976e36
 SHA512 
32854388d7e720ad67156baf50bf2bae7bd878ca3e35fd7e44e57cad3f434f69d56bbbedd61509f8a1faf01c9eae74a078df8fe130780b182c05c05cb1c39ebe

diff --git a/dev-libs/libxml2/libxml2-2.15.1.ebuild 
b/dev-libs/libxml2/libxml2-2.15.1.ebuild
new file mode 100644
index 000000000000..408073c25d46
--- /dev/null
+++ b/dev-libs/libxml2/libxml2-2.15.1.ebuild
@@ -0,0 +1,165 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Note: Please bump in sync with dev-libs/libxslt
+
+PYTHON_COMPAT=( python3_{11..14} )
+PYTHON_REQ_USE="xml(+)"
+inherit python-r1 meson-multilib
+
+DESCRIPTION="XML C parser and toolkit"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home";
+if [[ ${PV} == 9999 ]] ; then
+       EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2";
+       inherit git-r3
+else
+       inherit gnome.org
+       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}/${PN}-${PV%_rc*}"
+
+LICENSE="MIT"
+# see so_version = v_maj + v_min_compat for subslot
+SLOT="2/16"
+IUSE="doc icu python readline static-libs test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+       virtual/libiconv
+       >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}]
+       icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] )
+       python? ( ${PYTHON_DEPS} )
+       readline? ( sys-libs/readline:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       virtual/pkgconfig
+       doc? (
+               app-text/docbook-xsl-stylesheets
+               app-text/doxygen
+               dev-libs/libxslt
+       )
+       python? ( app-text/doxygen )
+"
+
+MULTILIB_CHOST_TOOLS=(
+       /usr/bin/xml2-config
+)
+
+PATCHES=(
+       "${FILESDIR}"/libxml2-2.14.2-no-git.patch
+)
+
+src_unpack() {
+       if [[ ${PV} == 9999 ]] ; then
+               git-r3_src_unpack
+       else
+               default
+       fi
+
+       cd "${S}" || die
+}
+
+src_prepare() {
+       default
+
+       sed -e "/^dir_doc/ s/meson.project_name()$/\'${PF}\'/" -i meson.build 
|| die
+}
+
+python_configure() {
+       local emesonargs=(
+               $(meson_feature icu)
+               $(meson_native_use_feature readline)
+               $(meson_native_use_feature readline history)
+               -Ddocs=disabled
+               -Dpython=enabled
+               -Dschematron=enabled
+       )
+       mkdir "${BUILD_DIR}" || die
+       pushd "${BUILD_DIR}" >/dev/null || die
+       meson_src_configure
+       popd >/dev/null || die
+}
+
+multilib_src_configure() {
+       local emesonargs=(
+               -Ddefault_library=$(multilib_native_usex static-libs both 
shared)
+               $(meson_feature icu)
+               $(meson_native_use_feature doc docs)
+               $(meson_native_use_feature readline)
+               $(meson_native_use_feature readline history)
+               -Dpython=disabled
+               -Dschematron=enabled
+
+               # There has been a clean break with a soname bump.
+               # It's time to deal with the breakage.
+               # bug #935452
+               -Dlegacy=disabled
+       )
+       meson_src_configure
+
+       if multilib_is_native_abi && use python ; then
+               python_foreach_impl python_configure
+       fi
+}
+
+python_compile() {
+       pushd "${BUILD_DIR}" >/dev/null || die
+       meson_src_compile
+       popd >/dev/null || die
+}
+
+multilib_src_compile() {
+       meson_src_compile
+
+       if multilib_is_native_abi && use python ; then
+               python_foreach_impl python_compile
+       fi
+}
+
+multilib_src_test() {
+       meson_src_test
+
+       if multilib_is_native_abi && use python ; then
+               python_foreach_impl meson_src_test
+       fi
+}
+
+python_install() {
+       pushd "${BUILD_DIR}" >/dev/null || die
+       meson_src_install
+       python_optimize
+       popd >/dev/null || die
+}
+
+multilib_src_install() {
+       if multilib_is_native_abi && use python ; then
+               python_foreach_impl python_install
+       fi
+
+       meson_src_install
+}
+
+pkg_postinst() {
+       # We don't want to do the xmlcatalog during stage1, as xmlcatalog will 
not
+       # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug 
#208887.
+       if [[ -n "${ROOT}" ]]; then
+               elog "Skipping XML catalog creation for stage building (bug 
#208887)."
+       else
+               # Need an XML catalog, so no-one writes to a non-existent one
+               CATALOG="${EROOT}/etc/xml/catalog"
+
+               # We don't want to clobber an existing catalog though,
+               # only ensure that one is there
+               # <[email protected]>
+               if [[ ! -e "${CATALOG}" ]]; then
+                       [[ -d "${EROOT}/etc/xml" ]] || mkdir -p 
"${EROOT}/etc/xml"
+                       "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}"
+                       einfo "Created XML catalog in ${CATALOG}"
+               fi
+       fi
+}

Reply via email to