aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Engberg <diizzy@FreeBSD.org>2022-03-25 16:51:30 +0000
committerDaniel Engberg <diizzy@FreeBSD.org>2022-03-25 17:14:39 +0000
commita13ec21cd733f67a9fc0dc00ab45268bdc236246 (patch)
treefe360ea54d1db8b085f918e44e04f79271dff395
parent30bb70e94e1bed9b4c2953b7be0e56ba7adc902b (diff)
downloadports-a13ec21cd733f67a9fc0dc00ab45268bdc236246.tar.gz
ports-a13ec21cd733f67a9fc0dc00ab45268bdc236246.zip
textproc/libxml2: Update to 2.9.13 and migrate to CMake
Depend on ICU and (lib)readline to follow other distros Changelog: https://gitlab.gnome.org/GNOME/libxml2/-/tags/v2.9.13 I'd like to thank both tcberner and mandree for reviewing, suggesting improvements and helping out in general. I'd also like thank antoine for doing exp-runs. PR: 262288 Reviewed by: tcberner, mandree Approved by: desktop (tcberner) Differential Revision: https://reviews.freebsd.org/D34338 Exp-run by: antoine
-rw-r--r--textproc/libxml2/Makefile83
-rw-r--r--textproc/libxml2/distinfo6
-rw-r--r--textproc/libxml2/files/LICENSE.TRIO12
-rw-r--r--textproc/libxml2/files/extra-patch-docs11
-rw-r--r--textproc/libxml2/files/patch-CMakeLists.txt29
-rw-r--r--textproc/libxml2/files/patch-Makefile.in47
-rw-r--r--textproc/libxml2/files/patch-config.h.in11
-rw-r--r--textproc/libxml2/files/patch-configure11
-rw-r--r--textproc/libxml2/files/patch-git-01-85b1792e37b131e7a51af98a37f92472e8de5f3f211
-rw-r--r--textproc/libxml2/files/patch-git-01-b66ce0bba83febe2f4d119097a0391f5d886c3b486
-rw-r--r--textproc/libxml2/files/patch-git-02-13ad8736d294536da4cbcd70a96b0a2fbf47070c46
-rw-r--r--textproc/libxml2/files/patch-git-03-3e1aad4fe584747fd7d17cc7b2863a78e2d21a7731
-rw-r--r--textproc/libxml2/files/patch-git-04-92d9ab4c28842a09ca2b76d3ff2f933e01b6cd6f43
-rw-r--r--textproc/libxml2/files/patch-libxml-2.0-uninstalled.pc.in9
-rw-r--r--textproc/libxml2/files/patch-libxml-2.0.pc.in10
-rw-r--r--textproc/libxml2/files/patch-python_Makefile.in20
-rw-r--r--textproc/libxml2/files/patch-python_tests_Makefile.in11
-rw-r--r--textproc/libxml2/files/patch-xml2Conf.sh.in15
-rw-r--r--textproc/libxml2/pkg-plist296
-rw-r--r--textproc/py-libxml2/Makefile42
20 files changed, 482 insertions, 548 deletions
diff --git a/textproc/libxml2/Makefile b/textproc/libxml2/Makefile
index 98b4e29344f4..4c35a6fa4eb7 100644
--- a/textproc/libxml2/Makefile
+++ b/textproc/libxml2/Makefile
@@ -1,81 +1,60 @@
# Created by: Yukihiro Nakai <Nakai@technologist.com>
PORTNAME= libxml2
-DISTVERSION= 2.9.12
+DISTVERSION= 2.9.13
PORTREVISION?= 0
CATEGORIES?= textproc gnome
-MASTER_SITES= http://xmlsoft.org/sources/
+MASTER_SITES= GNOME/sources/${PORTNAME}/${DISTVERSION:R}/
DIST_SUBDIR= gnome2
-MAINTAINER?= desktop@FreeBSD.org
+MAINTAINER= desktop@FreeBSD.org
COMMENT?= XML parser library for GNOME
-LICENSE= MIT TRIO
-LICENSE_COMB= multi
-LICENSE_NAME_TRIO= Trio License
-LICENSE_FILE_MIT= ${WRKSRC}/COPYING
-LICENSE_FILE_TRIO= ${FILESDIR}/LICENSE.TRIO
-LICENSE_PERMS_TRIO= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
+LICENSE= MIT
+
+USES+= cmake cpe iconv localbase:ldflags pkgconfig tar:xz
-USES+= compiler cpe iconv libtool pathfix pkgconfig shebangfix
-GNU_CONFIGURE= yes
CPE_VENDOR= xmlsoft
-SHEBANG_FILES= *.py */*.py */*/*.py
USE_LDCONFIG= yes
-INSTALL_TARGET= install-strip
-TEST_TARGET= check
-
-CONFIGURE_ARGS?=--with-iconv=${ICONV_PREFIX} \
- --with-html-dir=${PREFIX}/share/doc \
- --with-html-subdir=${PORTNAME} \
- --without-icu \
- --with-lzma=/usr \
- --without-python
-
PLIST_SUB+= LIBVERSION=${DISTVERSION}
-.if !defined(MASTERDIR)
+# Don't build with Python support unless requested
+CMAKE_${LIBXML2_SLAVE:DON:UOFF}=LIBXML2_WITH_PYTHON
-OPTIONS_DEFINE= MEM_DEBUG SCHEMA THREAD_ALLOC THREADS VALIDATION \
- XMLLINT_HIST
-OPTIONS_DEFAULT= SCHEMA VALIDATION THREADS
+OPTIONS_DEFINE= DOCS ICU MEM_DEBUG READLINE TEST THREAD_ALLOC
+OPTIONS_DEFAULT= ICU READLINE
+OPTIONS_SUB= yes
MEM_DEBUG_DESC= Memory debugging (DEVELOPERS ONLY!)
-SCHEMA_DESC= XML schema support
THREAD_ALLOC_DESC= Per-thread memory (DEVELOPERS ONLY!)
-VALIDATION_DESC= Validation support
-XMLLINT_HIST_DESC= History for xmllint
-
-MEM_DEBUG_CONFIGURE_WITH= mem-debug
-SCHEMA_CONFIGURE_WITH= schemas
-THREAD_ALLOC_CONFIGURE_WITH= thread-alloc
-THREADS_CONFIGURE_WITH= threads
-VALIDATION_CONFIGURE_OFF= --without-valid
-XMLLINT_HIST_CONFIGURE_WITH= history
-
-.endif # !defined(MASTERDIR)
-
-.if !defined(MASTERDIR)
-post-install:
- @${RM} -r ${STAGEDIR}${PREFIX}/share/gtk-doc
-.endif
-
-.include <bsd.port.pre.mk>
+READLINE_DESC= History for xmllint
+
+DOCS_EXTRA_PATCHES_OFF= ${PATCHDIR}/extra-patch-docs
+ICU_LIB_DEPENDS= libicudata.so:devel/icu
+ICU_CMAKE_BOOL= LIBXML2_WITH_ICU
+MEM_DEBUG_CAKE_BOOL= LIBXML2_WITH_MEM_DEBUG
+READLINE_LIB_DEPENDS= libreadline.so:devel/readline
+READLINE_CMAKE_OFF= -DHAVE_LIBHISTORY=false -DHAVE_LIBREADLINE=false
+THREAD_ALLOC_CMAKE_BOOL=LIBXML2_WITH_THREAD_ALLOC
+TEST_CMAKE_BOOL= LIBXML2_WITH_TESTS
+TEST_TEST_TARGET= test
post-patch:
-.for d in . doc doc/devhelp doc/examples
- @${REINPLACE_CMD} -e '/^install-data-am:/ s|install-data-local||' \
- ${WRKSRC}/${d}/Makefile.in
-.endfor
.for f in catalog.c xmlcatalog.c xmllint.c doc/xmllint.1
@${REINPLACE_CMD} -e \
's|/etc/xml/catalog|${LOCALBASE}/share/xml/catalog|g; \
s|/etc/sgml/catalog|${LOCALBASE}/share/sgml/catalog|g' \
${WRKSRC}/${f}
.endfor
-.if ${CHOSEN_COMPILER_TYPE} == gcc
- @${REINPLACE_CMD} -e 's/ -Wno-array-bounds//' ${WRKSRC}/configure
+
+.if !defined(LIBXML2_SLAVE)
+post-install:
+ ${RM} ${STAGEDIR}${DOCSDIR}/xmlcatalog.1
+ ${RM} ${STAGEDIR}${DOCSDIR}/xmllint.1.bak
+ ${RM} ${STAGEDIR}${DOCSDIR}/xmllint.1
+ ${RLN} ${STAGEDIR}${PREFIX}/lib/libxml2.so.${DISTVERSION} ${STAGEDIR}${PREFIX}/lib/libxml2.so.2
+ ${INSTALL_DATA} ${WRKSRC}/libxml.m4 ${STAGEDIR}${PREFIX}/share/aclocal/libxml.m4
.endif
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/textproc/libxml2/distinfo b/textproc/libxml2/distinfo
index 8f7c73e85f0f..110a410ff9e7 100644
--- a/textproc/libxml2/distinfo
+++ b/textproc/libxml2/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1622963062
-SHA256 (gnome2/libxml2-2.9.12.tar.gz) = c8d6681e38c56f172892c85ddc0852e1fd4b53b4209e7f4ebf17f7e2eae71d92
-SIZE (gnome2/libxml2-2.9.12.tar.gz) = 5681632
+TIMESTAMP = 1645459375
+SHA256 (gnome2/libxml2-2.9.13.tar.xz) = 276130602d12fe484ecc03447ee5e759d0465558fbc9d6bd144e3745306ebf0e
+SIZE (gnome2/libxml2-2.9.13.tar.xz) = 3243336
diff --git a/textproc/libxml2/files/LICENSE.TRIO b/textproc/libxml2/files/LICENSE.TRIO
deleted file mode 100644
index 0b8fd55609dd..000000000000
--- a/textproc/libxml2/files/LICENSE.TRIO
+++ /dev/null
@@ -1,12 +0,0 @@
-(Following sentences are from trio.c of libxml2-2.9.4.tar.gz.)
-
-Copyright (C) 1998 Bjorn Reese and Daniel Stenberg.
-
-Permission to use, copy, modify, and distribute this software for any
-purpose with or without fee is hereby granted, provided that the above
-copyright notice and this permission notice appear in all copies.
-
-THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
-WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
-MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS AND
-CONTRIBUTORS ACCEPT NO RESPONSIBILITY IN ANY CONCEIVABLE MANNER.
diff --git a/textproc/libxml2/files/extra-patch-docs b/textproc/libxml2/files/extra-patch-docs
new file mode 100644
index 000000000000..c571d9b8184e
--- /dev/null
+++ b/textproc/libxml2/files/extra-patch-docs
@@ -0,0 +1,11 @@
+--- CMakeLists.txt.orig 2022-02-22 00:19:24 UTC
++++ CMakeLists.txt
+@@ -650,7 +650,7 @@ endif()
+ install(FILES libxml.3 DESTINATION ${CMAKE_INSTALL_MANDIR}/man3 COMPONENT documentation)
+ install(FILES doc/xmlcatalog.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1 COMPONENT documentation)
+ install(FILES doc/xmllint.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1 COMPONENT documentation)
+-install(DIRECTORY doc/ DESTINATION ${CMAKE_INSTALL_DATADIR}/doc/libxml2 COMPONENT documentation PATTERN Makefile.* EXCLUDE)
++#install(DIRECTORY doc/ DESTINATION ${CMAKE_INSTALL_DATADIR}/doc/libxml2 COMPONENT documentation PATTERN Makefile.* EXCLUDE)
+
+ configure_package_config_file(
+ libxml2-config.cmake.cmake.in libxml2-config.cmake
diff --git a/textproc/libxml2/files/patch-CMakeLists.txt b/textproc/libxml2/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..3f45b65b7331
--- /dev/null
+++ b/textproc/libxml2/files/patch-CMakeLists.txt
@@ -0,0 +1,29 @@
+--- CMakeLists.txt.orig 2022-02-19 16:23:47 UTC
++++ CMakeLists.txt
+@@ -691,7 +691,7 @@ if(LIBXML2_WITH_PYTHON)
+ configure_file(python/setup.py.in setup.py @ONLY)
+ endif()
+
+-set(XML_INCLUDEDIR "-I\${includedir}/libxml2")
++set(XML_INCLUDEDIR "-I\${includedir}/libxml2 -I\${includedir}")
+ set(XML_LIBDIR "-L\${libdir}")
+ set(XML_LIBS "-lxml2")
+ set(XML_PRIVATE_LIBS "${Z_LIBS} ${LZMA_LIBS} ${THREAD_LIBS} ${ICONV_LIBS} ${ICU_LIBS} ${M_LIBS}")
+@@ -699,14 +699,14 @@ set(XML_PRIVATE_LIBS "${Z_LIBS} ${LZMA_LIBS} ${THREAD_
+ file(RELATIVE_PATH PACKAGE_RELATIVE_PATH "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig" "${CMAKE_INSTALL_PREFIX}")
+ string(REGEX REPLACE "/$" "" PACKAGE_RELATIVE_PATH "${PACKAGE_RELATIVE_PATH}")
+
+-set(prefix "\${pcfiledir}/${PACKAGE_RELATIVE_PATH}")
++set(prefix ${CMAKE_INSTALL_PREFIX})
+ set(exec_prefix "\${prefix}")
+ set(libdir "\${prefix}/${CMAKE_INSTALL_LIBDIR}")
+ set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
+ configure_file(libxml-2.0.pc.in libxml-2.0.pc @ONLY)
+-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libxml-2.0.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig COMPONENT development)
++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libxml-2.0.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}data/pkgconfig COMPONENT development)
+
+-set(prefix "\$(cd \"\$(dirname \"\$0\")\"; pwd -P)/..")
++set(prefix ${CMAKE_INSTALL_PREFIX})
+ configure_file(xml2-config.in xml2-config @ONLY)
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/xml2-config DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT development)
+
diff --git a/textproc/libxml2/files/patch-Makefile.in b/textproc/libxml2/files/patch-Makefile.in
deleted file mode 100644
index ad6ff8409168..000000000000
--- a/textproc/libxml2/files/patch-Makefile.in
+++ /dev/null
@@ -1,47 +0,0 @@
---- Makefile.in.orig 2021-06-09 19:53:33 UTC
-+++ Makefile.in
-@@ -760,7 +760,7 @@ man_MANS = xml2-config.1 libxml.3
- m4datadir = $(datadir)/aclocal
- m4data_DATA = libxml.m4
- runtest_SOURCES = runtest.c
--runtest_LDFLAGS =
-+runtest_LDFLAGS = -pthread
- runtest_DEPENDENCIES = $(DEPS)
- runtest_LDADD = $(BASE_THREAD_LIBS) $(RDL_LIBS) $(LDADDS)
- testrecurse_SOURCES = testrecurse.c
-@@ -808,7 +808,7 @@ testC14N_LDFLAGS =
- testC14N_DEPENDENCIES = $(DEPS)
- testC14N_LDADD = $(LDADDS)
- testThreads_SOURCES = testThreads.c
--testThreads_LDFLAGS =
-+testThreads_LDFLAGS = -pthread
- testThreads_DEPENDENCIES = $(DEPS)
- testThreads_LDADD = $(BASE_THREAD_LIBS) $(LDADDS)
- testURI_SOURCES = testURI.c
-@@ -1285,7 +1285,7 @@ am--depfiles: $(am__depfiles_remade)
- @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
-
- .c.lo:
--@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -fPIC -DPIC -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
- @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
- @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@@ -1774,7 +1774,7 @@ check-am: all-am
- $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
- check: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) check-recursive
--all-am: Makefile $(PROGRAMS) $(LTLIBRARIES) $(SCRIPTS) $(MANS) $(DATA) \
-+all-am: Makefile $(LTLIBRARIES) $(SCRIPTS) $(MANS) $(DATA) \
- config.h
- install-binPROGRAMS: install-libLTLIBRARIES
-
-@@ -1911,7 +1911,7 @@ info: info-recursive
-
- info-am:
-
--install-data-am: install-cmakeDATA install-data-local \
-+install-data-am: install-cmakeDATA \
- install-m4dataDATA install-man install-pkgconfigDATA
-
- install-dvi: install-dvi-recursive
diff --git a/textproc/libxml2/files/patch-config.h.in b/textproc/libxml2/files/patch-config.h.in
deleted file mode 100644
index 326dbd57c71e..000000000000
--- a/textproc/libxml2/files/patch-config.h.in
+++ /dev/null
@@ -1,11 +0,0 @@
---- config.h.in.orig 2018-03-05 15:54:17 UTC
-+++ config.h.in
-@@ -1,5 +1,8 @@
- /* config.h.in. Generated from configure.ac by autoheader. */
-
-+/* XXX */
-+#define HAVE_VFSCANF
-+
- /* Type cast for the gethostbyname() argument */
- #undef GETHOSTBYNAME_ARG_CAST
-
diff --git a/textproc/libxml2/files/patch-configure b/textproc/libxml2/files/patch-configure
deleted file mode 100644
index 59a6d53a2ef6..000000000000
--- a/textproc/libxml2/files/patch-configure
+++ /dev/null
@@ -1,11 +0,0 @@
---- configure.orig 2019-10-30 19:14:22 UTC
-+++ configure
-@@ -15525,6 +15525,8 @@ fi
- fi
- fi
- ;;
-+ *freebsd*) THREAD_LIBS=""
-+ ;;
- esac
- if test "$WITH_THREADS" = "1" ; then
- THREAD_CFLAGS="$THREAD_CFLAGS -D_REENTRANT"
diff --git a/textproc/libxml2/files/patch-git-01-85b1792e37b131e7a51af98a37f92472e8de5f3f b/textproc/libxml2/files/patch-git-01-85b1792e37b131e7a51af98a37f92472e8de5f3f
deleted file mode 100644
index 3686454cbd24..000000000000
--- a/textproc/libxml2/files/patch-git-01-85b1792e37b131e7a51af98a37f92472e8de5f3f
+++ /dev/null
@@ -1,211 +0,0 @@
-From 85b1792e37b131e7a51af98a37f92472e8de5f3f Mon Sep 17 00:00:00 2001
-From: Nick Wellnhofer <wellnhofer@aevum.de>
-Date: Tue, 18 May 2021 20:08:28 +0200
-Subject: [PATCH] Work around lxml API abuse
-
-Make xmlNodeDumpOutput and htmlNodeDumpFormatOutput work with corrupted
-parent pointers. This used to work with the old recursive code but the
-non-recursive rewrite required parent pointers to be set correctly.
-
-Unfortunately, lxml relies on the old behavior and passes subtrees with
-a corrupted structure. Fall back to a recursive function call if an
-invalid parent pointer is detected.
-
-Fixes #255.
----
- HTMLtree.c | 46 ++++++++++++++++++++++++++++------------------
- xmlsave.c | 31 +++++++++++++++++++++----------
- 2 files changed, 49 insertions(+), 28 deletions(-)
-
-diff --git a/HTMLtree.c b/HTMLtree.c
-index 24434d45..bdd639c7 100644
---- HTMLtree.c
-+++ HTMLtree.c
-@@ -744,7 +744,7 @@ void
- htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, xmlDocPtr doc,
- xmlNodePtr cur, const char *encoding ATTRIBUTE_UNUSED,
- int format) {
-- xmlNodePtr root;
-+ xmlNodePtr root, parent;
- xmlAttrPtr attr;
- const htmlElemDesc * info;
-
-@@ -755,6 +755,7 @@ htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, xmlDocPtr doc,
- }
-
- root = cur;
-+ parent = cur->parent;
- while (1) {
- switch (cur->type) {
- case XML_HTML_DOCUMENT_NODE:
-@@ -762,13 +763,25 @@ htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, xmlDocPtr doc,
- if (((xmlDocPtr) cur)->intSubset != NULL) {
- htmlDtdDumpOutput(buf, (xmlDocPtr) cur, NULL);
- }
-- if (cur->children != NULL) {
-+ /* Always validate cur->parent when descending. */
-+ if ((cur->parent == parent) && (cur->children != NULL)) {
-+ parent = cur;
- cur = cur->children;
- continue;
- }
- break;
-
- case XML_ELEMENT_NODE:
-+ /*
-+ * Some users like lxml are known to pass nodes with a corrupted
-+ * tree structure. Fall back to a recursive call to handle this
-+ * case.
-+ */
-+ if ((cur->parent != parent) && (cur->children != NULL)) {
-+ htmlNodeDumpFormatOutput(buf, doc, cur, encoding, format);
-+ break;
-+ }
-+
- /*
- * Get specific HTML info for that node.
- */
-@@ -817,6 +830,7 @@ htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, xmlDocPtr doc,
- (cur->name != NULL) &&
- (cur->name[0] != 'p')) /* p, pre, param */
- xmlOutputBufferWriteString(buf, "\n");
-+ parent = cur;
- cur = cur->children;
- continue;
- }
-@@ -825,9 +839,9 @@ htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, xmlDocPtr doc,
- (info != NULL) && (!info->isinline)) {
- if ((cur->next->type != HTML_TEXT_NODE) &&
- (cur->next->type != HTML_ENTITY_REF_NODE) &&
-- (cur->parent != NULL) &&
-- (cur->parent->name != NULL) &&
-- (cur->parent->name[0] != 'p')) /* p, pre, param */
-+ (parent != NULL) &&
-+ (parent->name != NULL) &&
-+ (parent->name[0] != 'p')) /* p, pre, param */
- xmlOutputBufferWriteString(buf, "\n");
- }
-
-@@ -842,9 +856,9 @@ htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, xmlDocPtr doc,
- break;
- if (((cur->name == (const xmlChar *)xmlStringText) ||
- (cur->name != (const xmlChar *)xmlStringTextNoenc)) &&
-- ((cur->parent == NULL) ||
-- ((xmlStrcasecmp(cur->parent->name, BAD_CAST "script")) &&
-- (xmlStrcasecmp(cur->parent->name, BAD_CAST "style"))))) {
-+ ((parent == NULL) ||
-+ ((xmlStrcasecmp(parent->name, BAD_CAST "script")) &&
-+ (xmlStrcasecmp(parent->name, BAD_CAST "style"))))) {
- xmlChar *buffer;
-
- buffer = xmlEncodeEntitiesReentrant(doc, cur->content);
-@@ -902,13 +916,9 @@ htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, xmlDocPtr doc,
- break;
- }
-
-- /*
-- * The parent should never be NULL here but we want to handle
-- * corrupted documents gracefully.
-- */
-- if (cur->parent == NULL)
-- return;
-- cur = cur->parent;
-+ cur = parent;
-+ /* cur->parent was validated when descending. */
-+ parent = cur->parent;
-
- if ((cur->type == XML_HTML_DOCUMENT_NODE) ||
- (cur->type == XML_DOCUMENT_NODE)) {
-@@ -939,9 +949,9 @@ htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, xmlDocPtr doc,
- (cur->next != NULL)) {
- if ((cur->next->type != HTML_TEXT_NODE) &&
- (cur->next->type != HTML_ENTITY_REF_NODE) &&
-- (cur->parent != NULL) &&
-- (cur->parent->name != NULL) &&
-- (cur->parent->name[0] != 'p')) /* p, pre, param */
-+ (parent != NULL) &&
-+ (parent->name != NULL) &&
-+ (parent->name[0] != 'p')) /* p, pre, param */
- xmlOutputBufferWriteString(buf, "\n");
- }
- }
-diff --git a/xmlsave.c b/xmlsave.c
-index 61a40459..aedbd5e7 100644
---- xmlsave.c
-+++ xmlsave.c
-@@ -847,7 +847,7 @@ htmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur) {
- static void
- xmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur) {
- int format = ctxt->format;
-- xmlNodePtr tmp, root, unformattedNode = NULL;
-+ xmlNodePtr tmp, root, unformattedNode = NULL, parent;
- xmlAttrPtr attr;
- xmlChar *start, *end;
- xmlOutputBufferPtr buf;
-@@ -856,6 +856,7 @@ xmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur) {
- buf = ctxt->buf;
-
- root = cur;
-+ parent = cur->parent;
- while (1) {
- switch (cur->type) {
- case XML_DOCUMENT_NODE:
-@@ -868,7 +869,9 @@ xmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur) {
- break;
-
- case XML_DOCUMENT_FRAG_NODE:
-- if (cur->children != NULL) {
-+ /* Always validate cur->parent when descending. */
-+ if ((cur->parent == parent) && (cur->children != NULL)) {
-+ parent = cur;
- cur = cur->children;
- continue;
- }
-@@ -887,7 +890,18 @@ xmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur) {
- break;
-
- case XML_ELEMENT_NODE:
-- if ((cur != root) && (ctxt->format == 1) && (xmlIndentTreeOutput))
-+ /*
-+ * Some users like lxml are known to pass nodes with a corrupted
-+ * tree structure. Fall back to a recursive call to handle this
-+ * case.
-+ */
-+ if ((cur->parent != parent) && (cur->children != NULL)) {
-+ xmlNodeDumpOutputInternal(ctxt, cur);
-+ break;
-+ }
-+
-+ if ((ctxt->level > 0) && (ctxt->format == 1) &&
-+ (xmlIndentTreeOutput))
- xmlOutputBufferWrite(buf, ctxt->indent_size *
- (ctxt->level > ctxt->indent_nr ?
- ctxt->indent_nr : ctxt->level),
-@@ -942,6 +956,7 @@ xmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur) {
- xmlOutputBufferWrite(buf, 1, ">");
- if (ctxt->format == 1) xmlOutputBufferWrite(buf, 1, "\n");
- if (ctxt->level >= 0) ctxt->level++;
-+ parent = cur;
- cur = cur->children;
- continue;
- }
-@@ -1058,13 +1073,9 @@ xmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur) {
- break;
- }
-
-- /*
-- * The parent should never be NULL here but we want to handle
-- * corrupted documents gracefully.
-- */
-- if (cur->parent == NULL)
-- return;
-- cur = cur->parent;
-+ cur = parent;
-+ /* cur->parent was validated when descending. */
-+ parent = cur->parent;
-
- if (cur->type == XML_ELEMENT_NODE) {
- if (ctxt->level > 0) ctxt->level--;
---
-GitLab
-
diff --git a/textproc/libxml2/files/patch-git-01-b66ce0bba83febe2f4d119097a0391f5d886c3b4 b/textproc/libxml2/files/patch-git-01-b66ce0bba83febe2f4d119097a0391f5d886c3b4
new file mode 100644
index 000000000000..b5d302151dfe
--- /dev/null
+++ b/textproc/libxml2/files/patch-git-01-b66ce0bba83febe2f4d119097a0391f5d886c3b4
@@ -0,0 +1,86 @@
+From b66ce0bba83febe2f4d119097a0391f5d886c3b4 Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wellnhofer@aevum.de>
+Date: Tue, 1 Mar 2022 12:39:02 +0100
+Subject: [PATCH] Don't include ICU headers in public headers
+
+There's no need to make these implementation details public.
+---
+ configure.ac | 2 --
+ encoding.c | 14 ++++++++++++++
+ include/libxml/encoding.h | 21 +++------------------
+ 3 files changed, 17 insertions(+), 20 deletions(-)
+
+diff --git a/encoding.c b/encoding.c
+index 0847934a..bfa5a304 100644
+--- encoding.c
++++ encoding.c
+@@ -48,6 +48,20 @@
+ #include "buf.h"
+ #include "enc.h"
+
++#ifdef LIBXML_ICU_ENABLED
++#include <unicode/ucnv.h>
++/* Size of pivot buffer, same as icu/source/common/ucnv.cpp CHUNK_SIZE */
++#define ICU_PIVOT_BUF_SIZE 1024
++typedef struct _uconv_t uconv_t;
++struct _uconv_t {
++ UConverter *uconv; /* for conversion between an encoding and UTF-16 */
++ UConverter *utf8; /* for conversion between UTF-8 and UTF-16 */
++ UChar pivot_buf[ICU_PIVOT_BUF_SIZE];
++ UChar *pivot_source;
++ UChar *pivot_target;
++};
++#endif
++
+ static xmlCharEncodingHandlerPtr xmlUTF16LEHandler = NULL;
+ static xmlCharEncodingHandlerPtr xmlUTF16BEHandler = NULL;
+
+diff --git a/include/libxml/encoding.h b/include/libxml/encoding.h
+index c875af6f..77f137f4 100644
+--- include/libxml/encoding.h
++++ include/libxml/encoding.h
+@@ -27,9 +27,7 @@
+ #ifdef LIBXML_ICONV_ENABLED
+ #include <iconv.h>
+ #endif
+-#ifdef LIBXML_ICU_ENABLED
+-#include <unicode/ucnv.h>
+-#endif
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+@@ -128,19 +126,6 @@ typedef int (* xmlCharEncodingOutputFunc)(unsigned char *out, int *outlen,
+ * Block defining the handlers for non UTF-8 encodings.
+ * If iconv is supported, there are two extra fields.
+ */
+-#ifdef LIBXML_ICU_ENABLED
+-/* Size of pivot buffer, same as icu/source/common/ucnv.cpp CHUNK_SIZE */
+-#define ICU_PIVOT_BUF_SIZE 1024
+-struct _uconv_t {
+- UConverter *uconv; /* for conversion between an encoding and UTF-16 */
+- UConverter *utf8; /* for conversion between UTF-8 and UTF-16 */
+- UChar pivot_buf[ICU_PIVOT_BUF_SIZE];
+- UChar *pivot_source;
+- UChar *pivot_target;
+-};
+-typedef struct _uconv_t uconv_t;
+-#endif
+-
+ typedef struct _xmlCharEncodingHandler xmlCharEncodingHandler;
+ typedef xmlCharEncodingHandler *xmlCharEncodingHandlerPtr;
+ struct _xmlCharEncodingHandler {
+@@ -152,8 +137,8 @@ struct _xmlCharEncodingHandler {
+ iconv_t iconv_out;
+ #endif /* LIBXML_ICONV_ENABLED */
+ #ifdef LIBXML_ICU_ENABLED
+- uconv_t *uconv_in;
+- uconv_t *uconv_out;
++ struct _uconv_t *uconv_in;
++ struct _uconv_t *uconv_out;
+ #endif /* LIBXML_ICU_ENABLED */
+ };
+
+--
+GitLab
+
diff --git a/textproc/libxml2/files/patch-git-02-13ad8736d294536da4cbcd70a96b0a2fbf47070c b/textproc/libxml2/files/patch-git-02-13ad8736d294536da4cbcd70a96b0a2fbf47070c
deleted file mode 100644
index 3bf47b75b3cc..000000000000
--- a/textproc/libxml2/files/patch-git-02-13ad8736d294536da4cbcd70a96b0a2fbf47070c
+++ /dev/null
@@ -1,46 +0,0 @@
-From 13ad8736d294536da4cbcd70a96b0a2fbf47070c Mon Sep 17 00:00:00 2001
-From: Nick Wellnhofer <wellnhofer@aevum.de>
-Date: Tue, 25 May 2021 10:55:25 +0200
-Subject: [PATCH] Fix regression in xmlNodeDumpOutputInternal
-
-Commit 85b1792e could cause additional whitespace if xmlNodeDump was
-called with a non-zero starting level.
----
- xmlsave.c | 14 +++++++-------
- 1 file changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/xmlsave.c b/xmlsave.c
-index aedbd5e7..489505f4 100644
---- xmlsave.c
-+++ xmlsave.c
-@@ -890,6 +890,13 @@ xmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur) {
- break;
-
- case XML_ELEMENT_NODE:
-+ if ((cur != root) && (ctxt->format == 1) &&
-+ (xmlIndentTreeOutput))
-+ xmlOutputBufferWrite(buf, ctxt->indent_size *
-+ (ctxt->level > ctxt->indent_nr ?
-+ ctxt->indent_nr : ctxt->level),
-+ ctxt->indent);
-+
- /*
- * Some users like lxml are known to pass nodes with a corrupted
- * tree structure. Fall back to a recursive call to handle this
-@@ -900,13 +907,6 @@ xmlNodeDumpOutputInternal(xmlSaveCtxtPtr ctxt, xmlNodePtr cur) {
- break;
- }
-
-- if ((ctxt->level > 0) && (ctxt->format == 1) &&
-- (xmlIndentTreeOutput))
-- xmlOutputBufferWrite(buf, ctxt->indent_size *
-- (ctxt->level > ctxt->indent_nr ?
-- ctxt->indent_nr : ctxt->level),
-- ctxt->indent);
--
- xmlOutputBufferWrite(buf, 1, "<");
- if ((cur->ns != NULL) && (cur->ns->prefix != NULL)) {
- xmlOutputBufferWriteString(buf, (const char *)cur->ns->prefix);
---
-GitLab
-
diff --git a/textproc/libxml2/files/patch-git-03-3e1aad4fe584747fd7d17cc7b2863a78e2d21a77 b/textproc/libxml2/files/patch-git-03-3e1aad4fe584747fd7d17cc7b2863a78e2d21a77
deleted file mode 100644
index 6ed3d25dd436..000000000000
--- a/textproc/libxml2/files/patch-git-03-3e1aad4fe584747fd7d17cc7b2863a78e2d21a77
+++ /dev/null
@@ -1,31 +0,0 @@
-From 3e1aad4fe584747fd7d17cc7b2863a78e2d21a77 Mon Sep 17 00:00:00 2001
-From: Nick Wellnhofer <wellnhofer@aevum.de>
-Date: Wed, 2 Jun 2021 17:31:49 +0200
-Subject: [PATCH] Fix XPath recursion limit
-
-Fix accounting of recursion depth when parsing XPath expressions.
-
-This silly bug introduced in commit 804c5297 could lead to spurious
-errors when parsing larger expressions or XSLT documents.
-
-Should fix #264.
----
- xpath.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/xpath.c b/xpath.c
-index 7497ba07..1aa2f1ab 100644
---- xpath.c
-+++ xpath.c
-@@ -10983,7 +10983,7 @@ xmlXPathCompileExpr(xmlXPathParserContextPtr ctxt, int sort) {
- }
-
- if (xpctxt != NULL)
-- xpctxt->depth -= 1;
-+ xpctxt->depth -= 10;
- }
-
- /**
---
-GitLab
-
diff --git a/textproc/libxml2/files/patch-git-04-92d9ab4c28842a09ca2b76d3ff2f933e01b6cd6f b/textproc/libxml2/files/patch-git-04-92d9ab4c28842a09ca2b76d3ff2f933e01b6cd6f
deleted file mode 100644
index bad2cff3acc4..000000000000
--- a/textproc/libxml2/files/patch-git-04-92d9ab4c28842a09ca2b76d3ff2f933e01b6cd6f
+++ /dev/null
@@ -1,43 +0,0 @@
-From 92d9ab4c28842a09ca2b76d3ff2f933e01b6cd6f Mon Sep 17 00:00:00 2001
-From: Nick Wellnhofer <wellnhofer@aevum.de>
-Date: Mon, 7 Jun 2021 15:09:53 +0200
-Subject: [PATCH] Fix whitespace when serializing empty HTML documents
-
-The old, non-recursive HTML serialization code would always terminate
-the output with a newline. The new implementation omitted the newline
-if the document node had no children. Readd the newline when
-serializing empty documents.
-
-Fixes #266.
----
- HTMLtree.c | 14 +++++++++-----
- 1 file changed, 9 insertions(+), 5 deletions(-)
-
-diff --git a/HTMLtree.c b/HTMLtree.c
-index bdd639c7..7a2b8558 100644
---- HTMLtree.c
-+++ HTMLtree.c
-@@ -763,11 +763,15 @@ htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, xmlDocPtr doc,
- if (((xmlDocPtr) cur)->intSubset != NULL) {
- htmlDtdDumpOutput(buf, (xmlDocPtr) cur, NULL);
- }
-- /* Always validate cur->parent when descending. */
-- if ((cur->parent == parent) && (cur->children != NULL)) {
-- parent = cur;
-- cur = cur->children;
-- continue;
-+ if (cur->children != NULL) {
-+ /* Always validate cur->parent when descending. */
-+ if (cur->parent == parent) {
-+ parent = cur;
-+ cur = cur->children;
-+ continue;
-+ }
-+ } else {
-+ xmlOutputBufferWriteString(buf, "\n");
- }
- break;
-
---
-GitLab
-
diff --git a/textproc/libxml2/files/patch-libxml-2.0-uninstalled.pc.in b/textproc/libxml2/files/patch-libxml-2.0-uninstalled.pc.in
deleted file mode 100644
index 77dc8c19fd9c..000000000000
--- a/textproc/libxml2/files/patch-libxml-2.0-uninstalled.pc.in
+++ /dev/null
@@ -1,9 +0,0 @@
---- libxml-2.0-uninstalled.pc.in.orig 2016-02-09 10:17:32 UTC
-+++ libxml-2.0-uninstalled.pc.in
-@@ -8,5 +8,5 @@ Name: libXML
- Version: @VERSION@
- Description: libXML library version2.
- Requires:
--Libs: -L${libdir} -lxml2 @ICU_LIBS@ @THREAD_LIBS@ @Z_LIBS@ @LZMA_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@
-+Libs: -L${libdir} -lxml2 @THREAD_LIBS@ @Z_LIBS@ @LZMA_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@
- Cflags: -I${includedir} @XML_INCLUDEDIR@ @XML_CFLAGS@
diff --git a/textproc/libxml2/files/patch-libxml-2.0.pc.in b/textproc/libxml2/files/patch-libxml-2.0.pc.in
index 1a4857175883..2635302b12e1 100644
--- a/textproc/libxml2/files/patch-libxml-2.0.pc.in
+++ b/textproc/libxml2/files/patch-libxml-2.0.pc.in
@@ -1,9 +1,11 @@
---- libxml-2.0.pc.in.orig 2016-02-09 10:17:32 UTC
+--- libxml-2.0.pc.in.orig 2022-03-08 22:00:47 UTC
+++ libxml-2.0.pc.in
-@@ -9,5 +9,5 @@ Version: @VERSION@
+@@ -8,6 +8,6 @@ Name: libXML
+ Version: @VERSION@
Description: libXML library version2.
Requires:
- Libs: -L${libdir} -lxml2
+-Libs: -L${libdir} -lxml2
-Libs.private: @ICU_LIBS@ @THREAD_LIBS@ @Z_LIBS@ @LZMA_LIBS@ @ICONV_LIBS@ @M_LIBS@ @WIN32_EXTRA_LIBADD@ @LIBS@
-+Libs.private: @THREAD_LIBS@ @Z_LIBS@ @LZMA_LIBS@ @ICONV_LIBS@ @M_LIBS@ @WIN32_EXTRA_LIBADD@ @LIBS@
++Libs: -L${libdir} @XML_LIBS@
++Libs.private: @XML_PRIVATE_LIBS@ @WIN32_EXTRA_LIBADD@ @LIBS@
Cflags: @XML_INCLUDEDIR@ @XML_CFLAGS@
diff --git a/textproc/libxml2/files/patch-python_Makefile.in b/textproc/libxml2/files/patch-python_Makefile.in
deleted file mode 100644
index 610b02d370ef..000000000000
--- a/textproc/libxml2/files/patch-python_Makefile.in
+++ /dev/null
@@ -1,20 +0,0 @@
---- python/Makefile.in.orig 2019-11-16 14:42:34 UTC
-+++ python/Makefile.in
-@@ -493,7 +493,7 @@ top_srcdir = @top_srcdir@
-
- # Makefile for libxml2 python library
- AUTOMAKE_OPTIONS = 1.4 foreign
--SUBDIRS = . tests
-+SUBDIRS = .
- docsdir = $(datadir)/doc/libxml2-python-$(LIBXML_VERSION)
- dist_docs_DATA = TODO
- EXTRA_DIST = \
-@@ -513,7 +513,7 @@ EXTRA_DIST = \
- @WITH_PYTHON_TRUE@python_LTLIBRARIES = libxml2mod.la
- @WITH_PYTHON_TRUE@libxml2mod_la_SOURCES = libxml.c libxml_wrap.h libxml2-py.h libxml2-py.c types.c
- @WITH_PYTHON_TRUE@libxml2mod_la_LDFLAGS = $(CYGWIN_EXTRA_LDFLAGS) $(WIN32_EXTRA_LDFLAGS) -module -avoid-version \
--@WITH_PYTHON_TRUE@ $(top_builddir)/libxml2.la $(CYGWIN_EXTRA_PYTHON_LIBADD) $(WIN32_EXTRA_PYTHON_LIBADD) $(PYTHON_LIBS)
-+@WITH_PYTHON_TRUE@ -lxml2 $(CYGWIN_EXTRA_PYTHON_LIBADD) $(WIN32_EXTRA_PYTHON_LIBADD) $(PYTHON_LIBS)
-
- @WITH_PYTHON_TRUE@BUILT_SOURCES = libxml2-export.c libxml2-py.h libxml2-py.c
- @WITH_PYTHON_TRUE@dist_python_DATA = \
diff --git a/textproc/libxml2/files/patch-python_tests_Makefile.in b/textproc/libxml2/files/patch-python_tests_Makefile.in
deleted file mode 100644
index 9998f93a3e12..000000000000
--- a/textproc/libxml2/files/patch-python_tests_Makefile.in
+++ /dev/null
@@ -1,11 +0,0 @@
---- python/tests/Makefile.in.orig 2019-11-16 14:42:34 UTC
-+++ python/tests/Makefile.in
-@@ -387,7 +387,7 @@ target_alias = @target_alias@
- top_build_prefix = @top_build_prefix@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
--exampledir = $(datadir)/doc/libxml2-python-$(LIBXML_VERSION)/examples
-+exampledir = $(datadir)/examples/py-libxml2
- dist_example_DATA = $(PYTESTS) $(XMLS)
- PYTESTS = \
- build.py \
diff --git a/textproc/libxml2/files/patch-xml2Conf.sh.in b/textproc/libxml2/files/patch-xml2Conf.sh.in
deleted file mode 100644
index 2f01e89136bb..000000000000
--- a/textproc/libxml2/files/patch-xml2Conf.sh.in
+++ /dev/null
@@ -1,15 +0,0 @@
---- xml2Conf.sh.in.orig 2019-10-22 18:28:43 UTC
-+++ xml2Conf.sh.in
-@@ -1,6 +1,12 @@
- #
- # Configuration file for using the XML library in GNOME applications
- #
-+
-+prefix=@prefix@
-+exec_prefix=@exec_prefix@
-+includedir=@includedir@
-+libdir=@libdir@
-+
- XML2_LIBDIR="@XML_LIBDIR@"
- XML2_LIBS="@XML_LIBS@ @XML_PRIVATE_LIBS@"
- XML2_INCLUDEDIR="@XML_INCLUDEDIR@"
diff --git a/textproc/libxml2/pkg-plist b/textproc/libxml2/pkg-plist
index 41a493d45155..fe71e56cf861 100644
--- a/textproc/libxml2/pkg-plist
+++ b/textproc/libxml2/pkg-plist
@@ -48,15 +48,303 @@ 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
-lib/libxml2.a
+lib/cmake/libxml2-%%LIBVERSION%%/libxml2-config-version.cmake
+lib/cmake/libxml2-%%LIBVERSION%%/libxml2-config.cmake
+lib/cmake/libxml2-%%LIBVERSION%%/libxml2-export-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/libxml2-%%LIBVERSION%%/libxml2-export.cmake
lib/libxml2.so
lib/libxml2.so.2
lib/libxml2.so.%%LIBVERSION%%
lib/xml2Conf.sh
libdata/pkgconfig/libxml-2.0.pc
-share/aclocal/libxml.m4
-man/man1/xml2-config.1.gz
man/man1/xmlcatalog.1.gz
man/man1/xmllint.1.gz
man/man3/libxml.3.gz
+share/aclocal/libxml.m4
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk0.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk1.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk10.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk11.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk12.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk13.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk14.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk15.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk16.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk17.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk18.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk19.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk2.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk20.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk21.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk22.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk23.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk24.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk25.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk26.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk27.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk28.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk29.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk3.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk4.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk5.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk6.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk7.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk8.html
+%%PORTDOCS%%%%DOCSDIR%%/APIchunk9.html
+%%PORTDOCS%%%%DOCSDIR%%/APIconstructors.html
+%%PORTDOCS%%%%DOCSDIR%%/APIfiles.html
+%%PORTDOCS%%%%DOCSDIR%%/APIfunctions.html
+%%PORTDOCS%%%%DOCSDIR%%/APIsymbols.html
+%%PORTDOCS%%%%DOCSDIR%%/DOM.gif
+%%PORTDOCS%%%%DOCSDIR%%/DOM.html
+%%PORTDOCS%%%%DOCSDIR%%/FAQ.html
+%%PORTDOCS%%%%DOCSDIR%%/Libxml2-Logo-180x168.gif
+%%PORTDOCS%%%%DOCSDIR%%/Libxml2-Logo-90x34.gif
+%%PORTDOCS%%%%DOCSDIR%%/XMLinfo.html
+%%PORTDOCS%%%%DOCSDIR%%/XSLT.html
+%%PORTDOCS%%%%DOCSDIR%%/api.xsl
+%%PORTDOCS%%%%DOCSDIR%%/apibuild.py
+%%PORTDOCS%%%%DOCSDIR%%/architecture.html
+%%PORTDOCS%%%%DOCSDIR%%/bugs.html
+%%PORTDOCS%%%%DOCSDIR%%/catalog.gif
+%%PORTDOCS%%%%DOCSDIR%%/catalog.html
+%%PORTDOCS%%%%DOCSDIR%%/checkapisym.xsl
+%%PORTDOCS%%%%DOCSDIR%%/contribs.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/devhelp2.xsl
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/general.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/home.png
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/html.xsl
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/index.html
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/left.png
+%%PORTDOCS%%%%DOCSDIR%%/devhelp/libxml2-DOCBparser.html
+%%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%%/docs.html
+%%PORTDOCS%%%%DOCSDIR%%/downloads.html
+%%PORTDOCS%%%%DOCSDIR%%/elfgcchack.xsl
+%%PORTDOCS%%%%DOCSDIR%%/encoding.html
+%%PORTDOCS%%%%DOCSDIR%%/entities.html
+%%PORTDOCS%%%%DOCSDIR%%/example.html
+%%PORTDOCS%%%%DOCSDIR%%/examples/examples.xml
+%%PORTDOCS%%%%DOCSDIR%%/examples/examples.xsl
+%%PORTDOCS%%%%DOCSDIR%%/examples/index.html
+%%PORTDOCS%%%%DOCSDIR%%/examples/index.py
+%%PORTDOCS%%%%DOCSDIR%%/examples/io1.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/io1.res
+%%PORTDOCS%%%%DOCSDIR%%/examples/io2.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/io2.res
+%%PORTDOCS%%%%DOCSDIR%%/examples/parse1.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/parse2.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/parse3.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/parse4.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/reader1.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/reader1.res
+%%PORTDOCS%%%%DOCSDIR%%/examples/reader2.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/reader3.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/reader3.res
+%%PORTDOCS%%%%DOCSDIR%%/examples/reader4.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/reader4.res
+%%PORTDOCS%%%%DOCSDIR%%/examples/test1.xml
+%%PORTDOCS%%%%DOCSDIR%%/examples/test2.xml
+%%PORTDOCS%%%%DOCSDIR%%/examples/test3.xml
+%%PORTDOCS%%%%DOCSDIR%%/examples/testWriter.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/tree1.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/tree1.res
+%%PORTDOCS%%%%DOCSDIR%%/examples/tree2.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/tree2.res
+%%PORTDOCS%%%%DOCSDIR%%/examples/tst.xml
+%%PORTDOCS%%%%DOCSDIR%%/examples/writer.xml
+%%PORTDOCS%%%%DOCSDIR%%/examples/xpath1.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/xpath1.res
+%%PORTDOCS%%%%DOCSDIR%%/examples/xpath2.c
+%%PORTDOCS%%%%DOCSDIR%%/examples/xpath2.res
+%%PORTDOCS%%%%DOCSDIR%%/guidelines.html
+%%PORTDOCS%%%%DOCSDIR%%/help.html
+%%PORTDOCS%%%%DOCSDIR%%/html/book1.html
+%%PORTDOCS%%%%DOCSDIR%%/html/home.png
+%%PORTDOCS%%%%DOCSDIR%%/html/index.html
+%%PORTDOCS%%%%DOCSDIR%%/html/left.png
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-DOCBparser.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-HTMLparser.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-HTMLtree.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-SAX.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-SAX2.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-c14n.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-catalog.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-chvalid.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-debugXML.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-dict.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-encoding.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-entities.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-globals.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-hash.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-lib.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-list.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-nanoftp.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-nanohttp.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-parser.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-parserInternals.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-pattern.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-relaxng.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-schemasInternals.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-schematron.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-threads.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-tree.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-uri.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-valid.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xinclude.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xlink.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlIO.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlautomata.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlerror.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlexports.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlmemory.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlmodule.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlreader.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlregexp.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlsave.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlschemas.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlschemastypes.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlstring.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlunicode.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlversion.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xmlwriter.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xpath.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xpathInternals.html
+%%PORTDOCS%%%%DOCSDIR%%/html/libxml-xpointer.html
+%%PORTDOCS%%%%DOCSDIR%%/html/right.png
+%%PORTDOCS%%%%DOCSDIR%%/html/up.png
+%%PORTDOCS%%%%DOCSDIR%%/index.html
+%%PORTDOCS%%%%DOCSDIR%%/index.py
+%%PORTDOCS%%%%DOCSDIR%%/interface.html
+%%PORTDOCS%%%%DOCSDIR%%/intro.html
+%%PORTDOCS%%%%DOCSDIR%%/library.html
+%%PORTDOCS%%%%DOCSDIR%%/libxml.gif
+%%PORTDOCS%%%%DOCSDIR%%/libxml2-api.xml
+%%PORTDOCS%%%%DOCSDIR%%/libxml2.xsa
+%%PORTDOCS%%%%DOCSDIR%%/namespaces.html
+%%PORTDOCS%%%%DOCSDIR%%/newapi.xsl
+%%PORTDOCS%%%%DOCSDIR%%/news.html
+%%PORTDOCS%%%%DOCSDIR%%/news.xsl
+%%PORTDOCS%%%%DOCSDIR%%/python.html
+%%PORTDOCS%%%%DOCSDIR%%/redhat.gif
+%%PORTDOCS%%%%DOCSDIR%%/search.php
+%%PORTDOCS%%%%DOCSDIR%%/searches.html
+%%PORTDOCS%%%%DOCSDIR%%/searches.xsl
+%%PORTDOCS%%%%DOCSDIR%%/site.xsl
+%%PORTDOCS%%%%DOCSDIR%%/smallfootonly.gif
+%%PORTDOCS%%%%DOCSDIR%%/structure.gif
+%%PORTDOCS%%%%DOCSDIR%%/symbols.xml
+%%PORTDOCS%%%%DOCSDIR%%/syms.xsl
+%%PORTDOCS%%%%DOCSDIR%%/threads.html
+%%PORTDOCS%%%%DOCSDIR%%/tree.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/apa.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/apb.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/apc.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/apd.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/ape.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/apf.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/apg.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/aph.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/api.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s02.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s03.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s04.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s05.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s06.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s07.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s08.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/ar01s09.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/blank.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/1.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/10.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/2.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/3.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/4.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/5.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/6.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/7.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/8.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/callouts/9.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/caution.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/draft.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/home.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/important.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/next.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/note.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/prev.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/tip.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/toc-blank.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/toc-minus.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/toc-plus.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/up.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/images/warning.png
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/includeaddattribute.c
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/includeaddkeyword.c
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/includeconvert.c
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/includegetattribute.c
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/includekeyword.c
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/includexpath.c
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/index.html
+%%PORTDOCS%%%%DOCSDIR%%/tutorial/ix01.html
+%%PORTDOCS%%%%DOCSDIR%%/upgrade.html
+%%PORTDOCS%%%%DOCSDIR%%/w3c.png
+%%PORTDOCS%%%%DOCSDIR%%/wiki.xsl
+%%PORTDOCS%%%%DOCSDIR%%/xml.html
+%%PORTDOCS%%%%DOCSDIR%%/xmlcatalog_man.html
+%%PORTDOCS%%%%DOCSDIR%%/xmlcatalog_man.xml
+%%PORTDOCS%%%%DOCSDIR%%/xmldtd.html
+%%PORTDOCS%%%%DOCSDIR%%/xmlio.html
+%%PORTDOCS%%%%DOCSDIR%%/xmllint.html
+%%PORTDOCS%%%%DOCSDIR%%/xmllint.xml
+%%PORTDOCS%%%%DOCSDIR%%/xmlmem.html
+%%PORTDOCS%%%%DOCSDIR%%/xmlreader.html
+%%PORTDOCS%%%%DOCSDIR%%/xsa.xsl
diff --git a/textproc/py-libxml2/Makefile b/textproc/py-libxml2/Makefile
index 622f2ca1513e..9652aab0c212 100644
--- a/textproc/py-libxml2/Makefile
+++ b/textproc/py-libxml2/Makefile
@@ -3,30 +3,36 @@
CATEGORIES= textproc gnome python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
-MAINTAINER= desktop@FreeBSD.org
COMMENT= Python interface for XML parser library for GNOME
-
MASTERDIR= ${.CURDIR}/../libxml2
-BUILD_WRKSRC= ${WRKSRC}/python
-INSTALL_WRKSRC= ${BUILD_WRKSRC}
-DESCR= ${.CURDIR}/pkg-descr
-PLIST= ${.CURDIR}/pkg-plist
+USES+= gnome python shebangfix
USE_GNOME= libxml2
-USES= gettext-runtime gnome python:3.6+
-USE_PYTHON= autoplist distutils
+USE_PYTHON= flavors
+SHEBANG_FILES= *.py doc/*.py python/*.py python/tests/*.py
-CPPFLAGS+= `${PYTHON_CMD}-config --cflags`
-LDFLAGS+= -L${LOCALBASE}/lib `${PYTHON_CMD}-config --libs`
-CONFIGURE_ARGS= --with-iconv=${ICONV_PREFIX} \
- --with-html-dir=${PREFIX}/share/doc \
- --with-html-subdir=${PORTNAME} \
- --with-python=${PYTHON_CMD}
+# Help CMake determine the correct version of Python if
+# multiple versions are installed
+CMAKE_ARGS= -DPython_EXECUTABLE=${PYTHON_CMD}
-DOCSDIR= ${PREFIX}/share/doc/py-libxml2
-EXAMPLESDIR= ${PREFIX}/share/examples/py-libxml2
+OPTIONS_SLAVE= ${OPTIONS_DEFINE:NTEST}
-post-install:
- @${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/libxml2mod*.so
+# Tell master port we're a slave port
+LIBXML2_SLAVE= python
+# Grab pkg-descr from slave port
+DESCR= ${.CURDIR}/pkg-descr
+# Don't append pkg-plist from master port
+PLIST=
+PLIST_FILES= ${PYTHON_SITELIBDIR}/drv_libxml2.py \
+ ${PYTHON_SITELIBDIR}/libxml2.py \
+ ${PYTHON_SITELIBDIR}/libxml2mod.so \
+ ${PYTHON_SITELIBDIR}/libxml2mod.so.${DISTVERSION}
+
+do-install:
+ ${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}
+ ${INSTALL_SCRIPT} ${WRKSRC}/python/drv_libxml2.py ${STAGEDIR}${PYTHON_SITELIBDIR}
+ ${INSTALL_SCRIPT} ${BUILD_WRKSRC}/libxml2.py ${STAGEDIR}${PYTHON_SITELIBDIR}
+ ${INSTALL_LIB} ${BUILD_WRKSRC}/libxml2mod.so ${STAGEDIR}${PYTHON_SITELIBDIR}
+ ${RLN} ${STAGEDIR}${PYTHON_SITELIBDIR}/libxml2mod.so ${STAGEDIR}${PYTHON_SITELIBDIR}/libxml2mod.so.${DISTVERSION}
.include "${MASTERDIR}/Makefile"