aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharlie Li <vishwin@FreeBSD.org>2026-01-27 02:07:42 +0000
committerCharlie Li <vishwin@FreeBSD.org>2026-01-27 02:34:37 +0000
commit5137742117b09d8dc550eb7b67dde5ab902fcdbf (patch)
treec2da09f06c9a69e9f9910a2b19ffcbadc0d716d6
parentab3c22de0d8108a7cb0b0c6cb7d9aa74250ce13b (diff)
Revert "textproc/libxml2*: update to 2.15.1, split -core"
The design of this update was repeatedly rejected in the linked PR with a prescribed different design. This commit is therefore unauthorised. This reverts commit 099bd713e09ebdd02d73fde770c50706f980404f. With hat: desktop (textproc/libxml2), gnome (USES=gnome) PR: 291316
-rw-r--r--Mk/Uses/gnome.mk6
-rw-r--r--UPDATING12
-rw-r--r--textproc/Makefile1
-rw-r--r--textproc/libxml2-core/Makefile67
-rw-r--r--textproc/libxml2-core/distinfo3
-rw-r--r--textproc/libxml2-core/files/patch-xpath.c130
-rw-r--r--textproc/libxml2-core/pkg-descr4
-rw-r--r--textproc/libxml2-core/pkg-plist55
-rw-r--r--textproc/libxml2-python/Makefile39
-rw-r--r--textproc/libxml2/Makefile92
-rw-r--r--textproc/libxml2/distinfo3
-rw-r--r--textproc/libxml2/pkg-descr5
-rw-r--r--textproc/libxml2/pkg-plist117
13 files changed, 186 insertions, 348 deletions
diff --git a/Mk/Uses/gnome.mk b/Mk/Uses/gnome.mk
index f162916c47e1..59d070c747f8 100644
--- a/Mk/Uses/gnome.mk
+++ b/Mk/Uses/gnome.mk
@@ -204,9 +204,9 @@ libidl_USE_GNOME_IMPL= glib20
libglade2_LIB_DEPENDS= libglade-2.0.so:devel/libglade2
libglade2_USE_GNOME_IMPL=libxml2 gtk20
-libxml2_BUILD_DEPENDS= xml2-config:textproc/libxml2-core
-libxml2_LIB_DEPENDS= libxml2.so:textproc/libxml2-core
-libxml2_RUN_DEPENDS= libxml2>=0:textproc/libxml2
+libxml2_BUILD_DEPENDS= xml2-config:textproc/libxml2
+libxml2_LIB_DEPENDS= libxml2.so:textproc/libxml2
+libxml2_RUN_DEPENDS= xml2-config:textproc/libxml2
libxslt_BUILD_DEPENDS= xsltproc:textproc/libxslt
libxslt_LIB_DEPENDS= libxslt.so:textproc/libxslt
diff --git a/UPDATING b/UPDATING
index bbc032854c7d..5436434bf7a8 100644
--- a/UPDATING
+++ b/UPDATING
@@ -5,18 +5,6 @@ they are unavoidable.
You should get into the habit of checking this file for changes each time
you update your ports collection, before attempting any port upgrades.
-20260126:
- AFFECTS: users of textproc/libxml2
- AUTHOR: mandree@FreeBSD.org
-
- The libxml2 port has been split in two, to avoid a new circular dependency
- through libxslt when building the documentation. The libxml2-core port
- now contains the library and libxml2 the documentation.
- This should be mostly automatically handled by the framework;
- if installing libxml2-core now causes trouble in ports,
- build libxml2-core, then pkg delete -f libxml2, then install
- libxml2-core, and then proceed with your updates.
-
20260125:
AFFECTS: users of dns/ddclient
AUTHOR: mjl@luckie.org.nz
diff --git a/textproc/Makefile b/textproc/Makefile
index 71d589134798..aa0076e919f3 100644
--- a/textproc/Makefile
+++ b/textproc/Makefile
@@ -431,7 +431,6 @@
SUBDIR += libxml++26
SUBDIR += libxml++30
SUBDIR += libxml2
- SUBDIR += libxml2-core
SUBDIR += libxml2-python
SUBDIR += libxmlb
SUBDIR += libxmlbird
diff --git a/textproc/libxml2-core/Makefile b/textproc/libxml2-core/Makefile
deleted file mode 100644
index fa92ce1c6945..000000000000
--- a/textproc/libxml2-core/Makefile
+++ /dev/null
@@ -1,67 +0,0 @@
-PORTNAME?= libxml2
-DISTVERSION= 2.15.1
-CATEGORIES?= textproc gnome
-MASTER_SITES= GNOME
-PKGNAMESUFFIX?= -core
-DISTNAME= libxml2-${DISTVERSION}
-DIST_SUBDIR= gnome
-
-MAINTAINER= desktop@FreeBSD.org
-COMMENT?= XML parser library for GNOME
-WWW= http://xmlsoft.org/
-
-LICENSE= MIT
-
-# Upstream recommends autotools on Unix-like systems
-USES+= cpe gmake iconv libtool localbase pathfix pkgconfig \
- tar:xz
-CPE_VENDOR= xmlsoft
-USE_LDCONFIG= yes
-GNU_CONFIGURE= yes
-# Don't build with Python support unless requested
-CONFIGURE_ARGS+= --sysconfdir=${PREFIX}/share/
-
-PATCH_STRIP= -p1
-
-INSTALL_TARGET= install-strip
-TEST_TARGET= check
-
-OPTIONS_DEFINE= DOCS ICU PYTHON READLINE STATIC THREAD_ALLOC
-OPTIONS_GROUP= LEGACY
-OPTIONS_GROUP_LEGACY= HTTP ZLIB
-OPTIONS_DEFAULT= HTTP READLINE STATIC ZLIB
-OPTIONS_SUB= yes
-# note: no DOCS - built by ../libxml2 instead, to
-# avoid a circular dependency. libxml2 2.15.0 requires
-# xsltproc (provided by libxslt, which depends on libxml2)
-OPTIONS_EXCLUDE?= DOCS PYTHON
-
-HTTP_DESC= HTTP support
-LEGACY_DESC= Enable legacy API compatibility
-READLINE_DESC= History for xmllint
-THREAD_ALLOC_DESC= Per-thread memory (DEVELOPERS ONLY!)
-
-DOCS_BUILD_DEPENDS= doxygen:devel/doxygen
-DOCS_CONFIGURE_WITH= docs
-HTTP_CONFIGURE_WITH= http
-ICU_LIB_DEPENDS= libicuuc.so:devel/icu
-ICU_CONFIGURE_WITH= icu
-PYTHON_CONFIGURE_WITH= python=${PYTHON_CMD}
-PYTHON_BUILD_DEPENDS= doxygen:devel/doxygen
-READLINE_LIB_DEPENDS= libreadline.so:devel/readline
-READLINE_CONFIGURE_WITH= history readline
-STATIC_CONFIGURE_ENABLE= static
-THREAD_ALLOC_CONFIGURE_WITH= thread-alloc
-ZLIB_CONFIGURE_WITH= zlib
-
-.include <bsd.port.options.mk>
-
-.if empty(PORT_OPTIONS:MDOCS)
-CONFIGURE_ARGS+= --without-docs
-.endif
-
-.if empty(PORT_OPTIONS:MPYTHON)
-CONFIGURE_ARGS+= --without-python
-.endif
-
-.include <bsd.port.mk>
diff --git a/textproc/libxml2-core/distinfo b/textproc/libxml2-core/distinfo
deleted file mode 100644
index 95248fd9047b..000000000000
--- a/textproc/libxml2-core/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-TIMESTAMP = 1767355197
-SHA256 (gnome/libxml2-2.15.1.tar.xz) = c008bac08fd5c7b4a87f7b8a71f283fa581d80d80ff8d2efd3b26224c39bc54c
-SIZE (gnome/libxml2-2.15.1.tar.xz) = 2004588
diff --git a/textproc/libxml2-core/files/patch-xpath.c b/textproc/libxml2-core/files/patch-xpath.c
deleted file mode 100644
index fbc161d8d1d2..000000000000
--- a/textproc/libxml2-core/files/patch-xpath.c
+++ /dev/null
@@ -1,130 +0,0 @@
-From 0e50b31902cdb1eb242eb361c123e9e033b2af87 Mon Sep 17 00:00:00 2001
-From: Daniel Garcia Moreno <daniel.garcia@suse.com>
-Date: Wed, 8 Oct 2025 09:18:51 +0200
-Subject: [PATCH] Ignore next/prev of documents when traversing XPath
-
-See https://gitlab.gnome.org/GNOME/libxml2/-/issues/996
----
- xpath.c | 66 ++++++++++++++++++++++++++++++++++++++++++---------------
- 1 file changed, 49 insertions(+), 17 deletions(-)
-
-diff --git a/xpath.c b/xpath.c
-index b8e197cc9..442ce02f8 100644
---- a/xpath.c
-+++ b/xpath.c
-@@ -6558,12 +6558,18 @@ xmlNode *
- xmlXPathNextFollowingSibling(xmlXPathParserContext *ctxt, xmlNode *cur) {
- if ((ctxt == NULL) || (ctxt->context == NULL)) return(NULL);
- if ((ctxt->context->node->type == XML_ATTRIBUTE_NODE) ||
-- (ctxt->context->node->type == XML_NAMESPACE_DECL))
-- return(NULL);
-+ (ctxt->context->node->type == XML_NAMESPACE_DECL))
-+ return(NULL);
-+
- if (cur == (xmlNodePtr) ctxt->context->doc)
- return(NULL);
-+
- if (cur == NULL)
-- return(ctxt->context->node->next);
-+ cur = ctxt->context->node;
-+
-+ if (cur->type == XML_DOCUMENT_NODE)
-+ return(NULL);
-+
- return(cur->next);
- }
-
-@@ -6581,17 +6587,23 @@ xmlNode *
- xmlXPathNextPrecedingSibling(xmlXPathParserContext *ctxt, xmlNode *cur) {
- if ((ctxt == NULL) || (ctxt->context == NULL)) return(NULL);
- if ((ctxt->context->node->type == XML_ATTRIBUTE_NODE) ||
-- (ctxt->context->node->type == XML_NAMESPACE_DECL))
-- return(NULL);
-+ (ctxt->context->node->type == XML_NAMESPACE_DECL))
-+ return(NULL);
-+
- if (cur == (xmlNodePtr) ctxt->context->doc)
- return(NULL);
-- if (cur == NULL)
-- return(ctxt->context->node->prev);
-- if ((cur->prev != NULL) && (cur->prev->type == XML_DTD_NODE)) {
-- cur = cur->prev;
-- if (cur == NULL)
-- return(ctxt->context->node->prev);
-+
-+ if (cur == NULL) {
-+ cur = ctxt->context->node;
-+ } else if ((cur->prev != NULL) && (cur->prev->type == XML_DTD_NODE)) {
-+ cur = cur->prev;
-+ if (cur == NULL)
-+ cur = ctxt->context->node;
- }
-+
-+ if (cur->type == XML_DOCUMENT_NODE)
-+ return(NULL);
-+
- return(cur->prev);
- }
-
-@@ -6626,14 +6638,27 @@ xmlXPathNextFollowing(xmlXPathParserContext *ctxt, xmlNode *cur) {
- cur = (xmlNodePtr) ns->next;
- }
- }
-- if (cur == NULL) return(NULL) ; /* ERROR */
-- if (cur->next != NULL) return(cur->next) ;
-+
-+ /* ERROR */
-+ if (cur == NULL)
-+ return(NULL);
-+
-+ if (cur->type == XML_DOCUMENT_NODE)
-+ return(NULL);
-+
-+ if (cur->next != NULL)
-+ return(cur->next);
-+
- do {
- cur = cur->parent;
-- if (cur == NULL) break;
-- if (cur == (xmlNodePtr) ctxt->context->doc) return(NULL);
-- if (cur->next != NULL) return(cur->next);
-+ if (cur == NULL)
-+ break;
-+ if (cur == (xmlNodePtr) ctxt->context->doc)
-+ return(NULL);
-+ if (cur->next != NULL && cur->type != XML_DOCUMENT_NODE)
-+ return(cur->next);
- } while (cur != NULL);
-+
- return(cur);
- }
-
-@@ -6746,10 +6771,13 @@ xmlXPathNextPrecedingInternal(xmlXPathParserContextPtr ctxt,
- }
- ctxt->ancestor = cur->parent;
- }
-- if (cur->type == XML_NAMESPACE_DECL)
-+
-+ if (cur->type == XML_NAMESPACE_DECL || cur->type == XML_DOCUMENT_NODE)
- return(NULL);
-+
- if ((cur->prev != NULL) && (cur->prev->type == XML_DTD_NODE))
- cur = cur->prev;
-+
- while (cur->prev == NULL) {
- cur = cur->parent;
- if (cur == NULL)
-@@ -6760,6 +6788,10 @@ xmlXPathNextPrecedingInternal(xmlXPathParserContextPtr ctxt,
- return (cur);
- ctxt->ancestor = cur->parent;
- }
-+
-+ if (cur->type == XML_DOCUMENT_NODE)
-+ return(NULL);
-+
- cur = cur->prev;
- while (cur->last != NULL)
- cur = cur->last;
---
-GitLab
-
diff --git a/textproc/libxml2-core/pkg-descr b/textproc/libxml2-core/pkg-descr
deleted file mode 100644
index 1c027bb7aa2c..000000000000
--- a/textproc/libxml2-core/pkg-descr
+++ /dev/null
@@ -1,4 +0,0 @@
-Libxml2 is the XML C parser and toolkit developed for the Gnome project (but
-usable outside of the Gnome platform). XML itself is a metalanguage to design
-markup languages, i.e. text language where semantic and structure are added to
-the content using extra "markup" information enclosed between angle brackets.
diff --git a/textproc/libxml2-core/pkg-plist b/textproc/libxml2-core/pkg-plist
deleted file mode 100644
index 4cc3400bdb51..000000000000
--- a/textproc/libxml2-core/pkg-plist
+++ /dev/null
@@ -1,55 +0,0 @@
-bin/xml2-config
-bin/xmlcatalog
-bin/xmllint
-include/libxml2/libxml/HTMLparser.h
-include/libxml2/libxml/HTMLtree.h
-include/libxml2/libxml/SAX.h
-include/libxml2/libxml/SAX2.h
-include/libxml2/libxml/c14n.h
-include/libxml2/libxml/catalog.h
-include/libxml2/libxml/chvalid.h
-include/libxml2/libxml/debugXML.h
-include/libxml2/libxml/dict.h
-include/libxml2/libxml/encoding.h
-include/libxml2/libxml/entities.h
-include/libxml2/libxml/globals.h
-include/libxml2/libxml/hash.h
-include/libxml2/libxml/list.h
-include/libxml2/libxml/nanoftp.h
-include/libxml2/libxml/nanohttp.h
-include/libxml2/libxml/parser.h
-include/libxml2/libxml/parserInternals.h
-include/libxml2/libxml/pattern.h
-include/libxml2/libxml/relaxng.h
-include/libxml2/libxml/schemasInternals.h
-include/libxml2/libxml/schematron.h
-include/libxml2/libxml/threads.h
-include/libxml2/libxml/tree.h
-include/libxml2/libxml/uri.h
-include/libxml2/libxml/valid.h
-include/libxml2/libxml/xinclude.h
-include/libxml2/libxml/xlink.h
-include/libxml2/libxml/xmlIO.h
-include/libxml2/libxml/xmlautomata.h
-include/libxml2/libxml/xmlerror.h
-include/libxml2/libxml/xmlexports.h
-include/libxml2/libxml/xmlmemory.h
-include/libxml2/libxml/xmlmodule.h
-include/libxml2/libxml/xmlreader.h
-include/libxml2/libxml/xmlregexp.h
-include/libxml2/libxml/xmlsave.h
-include/libxml2/libxml/xmlschemas.h
-include/libxml2/libxml/xmlschemastypes.h
-include/libxml2/libxml/xmlstring.h
-include/libxml2/libxml/xmlunicode.h
-include/libxml2/libxml/xmlversion.h
-include/libxml2/libxml/xmlwriter.h
-include/libxml2/libxml/xpath.h
-include/libxml2/libxml/xpathInternals.h
-include/libxml2/libxml/xpointer.h
-lib/cmake/libxml2/libxml2-config.cmake
-%%STATIC%%lib/libxml2.a
-lib/libxml2.so
-lib/libxml2.so.16
-lib/libxml2.so.16.1.1
-libdata/pkgconfig/libxml-2.0.pc
diff --git a/textproc/libxml2-python/Makefile b/textproc/libxml2-python/Makefile
index 822014e32f08..9a6133ac7414 100644
--- a/textproc/libxml2-python/Makefile
+++ b/textproc/libxml2-python/Makefile
@@ -2,50 +2,31 @@ PORTNAME= libxml2-python
PORTREVISION= 0
CATEGORIES= textproc gnome python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
-PKGNAMESUFFIX= # blank, to override the one in the master port
COMMENT= Python interface for XML parser library for GNOME
+MASTERDIR= ${.CURDIR}/../libxml2
-DEPRECATED= Using these bindings is discouraged by upstream, see https://gitlab.gnome.org/GNOME/libxml2/-/issues/891 and https://gitlab.gnome.org/GNOME/libxml2/-/issues/924
-EXPIRATION_DATE=2026-03-31
-
-# doxygen already listed in libxml2-core/Makefile
BUILD_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}setuptools>0:devel/py-setuptools@${PY_FLAVOR}
-RUN_DEPENDS= libxml2=${PORTVERSION}:textproc/libxml2 # docs
-USES+= gnome localbase python shebangfix
-USE_GNOME= libxml2 # pulls in libxml2-core
+USES+= gettext-runtime gnome python shebangfix
+USE_GNOME= libxml2
USE_PYTHON= autoplist distutils # generator.py not found in PEP-517 environment
SHEBANG_GLOB= *.py*
-# work around Makefile not reliably defining doxygen --without-docs but --with-python
-MAKE_ARGS+= DOXYGEN=${LOCALBASE}/bin/doxygen
-
-# CPPFLAGS addition required so that this port can build with an older libxml2 installed
-CPPFLAGS+= -I${WRKSRC}/include
+OPTIONS_EXCLUDE= ${OPTIONS_DEFINE} ${OPTIONS_GROUP_LEGACY}
-DOCSDIR= ${PREFIX}/share/doc/libxml2-python
-EXAMPLESDIR= ${PREFIX}/share/examples/libxml2-python
-MASTERDIR= ${.CURDIR}/../libxml2-core
+# Tell master port we're a slave port
+LIBXML2_SLAVE= python
+# Grab pkg-descr from slave port
+DESCR= ${.CURDIR}/pkg-descr
BUILD_WRKSRC= ${WRKSRC}/python
INSTALL_WRKSRC= ${BUILD_WRKSRC}
-TEST_WRKSRC= ${BUILD_WRKSRC}
-
-# Grab pkg-descr from slave port
-DESCR= ${.CURDIR}/pkg-descr
# Don't append pkg-plist from master port
PLIST=
-OPTIONS_EXCLUDE= ${OPTIONS_DEFINE:NPYTHON} ${OPTIONS_GROUP_LEGACY}
-OPTIONS_SLAVE= PYTHON
-
-pre-build:
- ( cd ${WRKSRC} && ${DO_MAKE_BUILD} libxml2.la && \
- cd ${WRKSRC}/doc && ${DO_MAKE_BUILD} )
-
-post-install:
- ${STRIP_CMD} ${STAGEDIR}${PYTHON_LIBDIR}/site-packages/libxml2mod${PYTHON_SOABI}.so
+DOCSDIR= ${PREFIX}/share/doc/libxml2-python
+EXAMPLESDIR= ${PREFIX}/share/examples/libxml2-python
.include "${MASTERDIR}/Makefile"
diff --git a/textproc/libxml2/Makefile b/textproc/libxml2/Makefile
index dda5d8e6cdca..7273d2fce028 100644
--- a/textproc/libxml2/Makefile
+++ b/textproc/libxml2/Makefile
@@ -1,55 +1,67 @@
-PORTNAME= libxml2
-PORTREVISION= 0
-CATEGORIES= textproc gnome python
-PKGNAMESUFFIX=
+PORTNAME?= libxml2
+DISTVERSION= 2.14.6
+CATEGORIES?= textproc gnome
+MASTER_SITES= GNOME
+DISTNAME= libxml2-${DISTVERSION}
+DIST_SUBDIR= gnome
-COMMENT= Documentation package for XML parser library for GNOME
+MAINTAINER= desktop@FreeBSD.org
+COMMENT?= XML parser library for GNOME
+WWW= http://xmlsoft.org/
-BUILD_DEPENDS= docbook-xsl>=0:textproc/docbook-xsl \
- libxml2-core=${PORTVERSION}:textproc/libxml2-core \
- xsltproc:textproc/libxslt
-# not an actual dependency but required to keep the many
-# other ports that declare a depends on textproc/libxml2 building
-LIB_DEPENDS= libxml2.so:textproc/libxml2-core
+LICENSE= MIT
-USES= shebangfix
+# Upstream recommends autotools on Unix-like systems
+USES+= cpe gmake iconv libtool localbase pathfix pkgconfig tar:xz
+CPE_VENDOR= xmlsoft
+USE_LDCONFIG= yes
+GNU_CONFIGURE= yes
+# Don't build with Python support unless requested
+CONFIGURE_ARGS+= --sysconfdir=${PREFIX}/share/ \
+ --with-lzma=/usr \
+ --${LIBXML2_SLAVE:Dwith:Uwithout}-python${LIBXML2_SLAVE:D=${PYTHON_CMD}:U}
-DOCSDIR= ${PREFIX}/share/doc/libxml2-docs
-EXAMPLESDIR= ${PREFIX}/share/examples/libxml2-docs
-FILESDIR= ${.CURDIR}/files
-MASTERDIR= ${.CURDIR}/../libxml2-core
+INSTALL_TARGET= install-strip
+TEST_TARGET= check
-NO_ARCH= yes
+OPTIONS_DEFINE= DOCS ICU READLINE STATIC THREAD_ALLOC
+OPTIONS_GROUP= LEGACY
+OPTIONS_GROUP_LEGACY= HTTP LZMA ZLIB
+OPTIONS_DEFAULT= HTTP LZMA READLINE STATIC ZLIB
+OPTIONS_SUB= yes
-BUILD_WRKSRC= ${WRKSRC}/doc
-INSTALL_WRKSRC= ${BUILD_WRKSRC}
-TEST_WRKSRC= ${BUILD_WRKSRC}
+HTTP_DESC= HTTP support
+LEGACY_DESC= Enable legacy API compatibility
+READLINE_DESC= History for xmllint
+THREAD_ALLOC_DESC= Per-thread memory (DEVELOPERS ONLY!)
-DESCR= ${.CURDIR}/pkg-descr
-PLIST= ${.CURDIR}/pkg-plist
-PORTDOCS= *
+HTTP_CONFIGURE_WITH= http
+ICU_LIB_DEPENDS= libicuuc.so:devel/icu
+ICU_CONFIGURE_WITH= icu
+LZMA_CONFIGURE_WITH= lzma
+READLINE_LIB_DEPENDS= libreadline.so:devel/readline
+READLINE_CONFIGURE_WITH= history \
+ readline
+STATIC_CONFIGURE_ENABLE= static
+THREAD_ALLOC_CONFIGURE_WITH= thread-alloc
+ZLIB_CONFIGURE_WITH= zlib
-OPTIONS_EXCLUDE= ${OPTIONS_DEFINE:NDOCS} ${OPTIONS_GROUP_LEGACY}
-OPTIONS_SLAVE= DOCS
-
-pre-everything::
- @if ${PKG_INFO} -e ${PORTNAME} && \
- test "<" = $$(${PKG_VERSION} -t $$(${PKG_QUERY} %v $$(${PKG_INFO} -q -O ${PORTNAME})) 2.15) ; then \
- ${ECHO_CMD} "=== libxml2 < 2.15 detected, you must deinstall first ===" ; \
- ${ECHO_CMD} "=== because you cannot install libxml2-core otherwise ===" ; \
- ${ECHO_CMD} "=== In case of more trouble, try make clean-depends. ===" ; \
- exit 1; \
- fi
+post-patch:
+ @${REINPLACE_CMD} -e \
+ 's|/etc/xml/catalog|${LOCALBASE}/share/xml/catalog|g; \
+ s|/etc/sgml/catalog|${LOCALBASE}/share/sgml/catalog|g' \
+ ${WRKSRC}/doc/xmllint.1
post-install:
+.if !defined(LIBXML2_SLAVE)
# Documentation should be in DOCSDIR
- ${MKDIR} ${STAGEDIR}${DOCSDIR}/devhelp
- ${MV} ${STAGEDIR}${PREFIX}/share/doc/libxml2/html/ \
+ @${MV} ${STAGEDIR}${PREFIX}/share/gtk-doc/html/libxml2 \
${STAGEDIR}${DOCSDIR}/devhelp
- ${RM} -rv ${STAGEDIR}${PREFIX}/share/gtk-doc
- ${MV} ${STAGEDIR}${PREFIX}/share/doc/libxml2 \
- ${STAGEDIR}${DOCSDIR}
+ @${RM} -r ${STAGEDIR}${PREFIX}/share/gtk-doc
# Install remaining documentation that's not connected to autotools
${INSTALL_MAN} ${WRKSRC}/doc/*.html ${STAGEDIR}${DOCSDIR}
+.else
+ ${STRIP_CMD} ${STAGEDIR}${PYTHON_LIBDIR}/site-packages/libxml2mod${PYTHON_SOABI}.so
+.endif
-.include "${MASTERDIR}/Makefile"
+.include <bsd.port.mk>
diff --git a/textproc/libxml2/distinfo b/textproc/libxml2/distinfo
new file mode 100644
index 000000000000..59444a4c3340
--- /dev/null
+++ b/textproc/libxml2/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1759693474
+SHA256 (gnome/libxml2-2.14.6.tar.xz) = 7ce458a0affeb83f0b55f1f4f9e0e55735dbfc1a9de124ee86fb4a66b597203a
+SIZE (gnome/libxml2-2.14.6.tar.xz) = 2327580
diff --git a/textproc/libxml2/pkg-descr b/textproc/libxml2/pkg-descr
index fe83bd8e42d7..1c027bb7aa2c 100644
--- a/textproc/libxml2/pkg-descr
+++ b/textproc/libxml2/pkg-descr
@@ -1 +1,4 @@
-Documentation package for XML parser library for GNOME
+Libxml2 is the XML C parser and toolkit developed for the Gnome project (but
+usable outside of the Gnome platform). XML itself is a metalanguage to design
+markup languages, i.e. text language where semantic and structure are added to
+the content using extra "markup" information enclosed between angle brackets.
diff --git a/textproc/libxml2/pkg-plist b/textproc/libxml2/pkg-plist
index 8b50b6b9a3f8..81916b7a2cf3 100644
--- a/textproc/libxml2/pkg-plist
+++ b/textproc/libxml2/pkg-plist
@@ -1,3 +1,114 @@
-%%PORTDOCS%%share/man/man1/xml2-config.1.gz
-%%PORTDOCS%%share/man/man1/xmlcatalog.1.gz
-%%PORTDOCS%%share/man/man1/xmllint.1.gz
+bin/xml2-config
+bin/xmlcatalog
+bin/xmllint
+include/libxml2/libxml/HTMLparser.h
+include/libxml2/libxml/HTMLtree.h
+include/libxml2/libxml/SAX.h
+include/libxml2/libxml/SAX2.h
+include/libxml2/libxml/c14n.h
+include/libxml2/libxml/catalog.h
+include/libxml2/libxml/chvalid.h
+include/libxml2/libxml/debugXML.h
+include/libxml2/libxml/dict.h
+include/libxml2/libxml/encoding.h
+include/libxml2/libxml/entities.h
+include/libxml2/libxml/globals.h
+include/libxml2/libxml/hash.h
+include/libxml2/libxml/list.h
+include/libxml2/libxml/nanoftp.h
+include/libxml2/libxml/nanohttp.h
+include/libxml2/libxml/parser.h
+include/libxml2/libxml/parserInternals.h
+include/libxml2/libxml/pattern.h
+include/libxml2/libxml/relaxng.h
+include/libxml2/libxml/schemasInternals.h
+include/libxml2/libxml/schematron.h
+include/libxml2/libxml/threads.h
+include/libxml2/libxml/tree.h
+include/libxml2/libxml/uri.h
+include/libxml2/libxml/valid.h
+include/libxml2/libxml/xinclude.h
+include/libxml2/libxml/xlink.h
+include/libxml2/libxml/xmlIO.h
+include/libxml2/libxml/xmlautomata.h
+include/libxml2/libxml/xmlerror.h
+include/libxml2/libxml/xmlexports.h
+include/libxml2/libxml/xmlmemory.h
+include/libxml2/libxml/xmlmodule.h
+include/libxml2/libxml/xmlreader.h
+include/libxml2/libxml/xmlregexp.h
+include/libxml2/libxml/xmlsave.h
+include/libxml2/libxml/xmlschemas.h
+include/libxml2/libxml/xmlschemastypes.h
+include/libxml2/libxml/xmlstring.h
+include/libxml2/libxml/xmlunicode.h
+include/libxml2/libxml/xmlversion.h
+include/libxml2/libxml/xmlwriter.h
+include/libxml2/libxml/xpath.h
+include/libxml2/libxml/xpathInternals.h
+include/libxml2/libxml/xpointer.h
+lib/cmake/libxml2/libxml2-config.cmake
+%%STATIC%%lib/libxml2.a
+lib/libxml2.so
+lib/libxml2.so.16
+lib/libxml2.so.16.0.6
+libdata/pkgconfig/libxml-2.0.pc
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/general.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/home.png
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/index.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/left.png
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-HTMLparser.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-HTMLtree.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-SAX.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-SAX2.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-c14n.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-catalog.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-chvalid.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-debugXML.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-dict.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-encoding.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-entities.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-globals.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-hash.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-list.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-nanoftp.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-nanohttp.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-parser.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-parserInternals.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-pattern.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-relaxng.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-schemasInternals.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-schematron.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-threads.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-tree.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-uri.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-valid.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xinclude.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xlink.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlIO.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlautomata.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlerror.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlexports.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlmemory.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlmodule.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlreader.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlregexp.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlsave.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlschemas.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlschemastypes.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlstring.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlunicode.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlversion.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xmlwriter.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xpath.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xpathInternals.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-xpointer.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2.devhelp2
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/right.png
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/style.css
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/up.png
+%%PORTDOCS%%%%DOCSDIR%%/xmlcatalog.html
+%%PORTDOCS%%%%DOCSDIR%%/xmllint.html
+share/man/man1/xml2-config.1.gz
+share/man/man1/xmlcatalog.1.gz
+share/man/man1/xmllint.1.gz