git: edda35495236 - main - textproc/libxml++: resurrect^Wreadd the port and update to version 5.0.1

From: Alexey Dokuchaev <danfe_at_FreeBSD.org>
Date: Tue, 28 Jun 2022 11:34:00 UTC
The branch main has been updated by danfe:

URL: https://cgit.FreeBSD.org/ports/commit/?id=edda35495236e91396238b98d4993dbaa83aa7b7

commit edda35495236e91396238b98d4993dbaa83aa7b7
Author:     Alexey Dokuchaev <danfe@FreeBSD.org>
AuthorDate: 2022-06-28 11:32:34 +0000
Commit:     Alexey Dokuchaev <danfe@FreeBSD.org>
CommitDate: 2022-06-28 11:32:34 +0000

    textproc/libxml++: resurrect^Wreadd the port and update to version 5.0.1
    
    Keep the VERSION vs. API_VERSION separation for the time being to remain
    consistent with the `textproc/libxml++26' port.  Install both static and
    shared libraries for the same reason.
    
    PR:     264699
---
 MOVED                                        |  1 -
 textproc/Makefile                            |  1 +
 textproc/libxml++/Makefile                   | 21 +++++++++++++
 textproc/libxml++/distinfo                   |  3 ++
 textproc/libxml++/files/patch-libxml++.pc.in |  8 +++++
 textproc/libxml++/files/patch-meson.build    | 20 ++++++++++++
 textproc/libxml++/pkg-descr                  |  8 +++++
 textproc/libxml++/pkg-plist                  | 47 ++++++++++++++++++++++++++++
 8 files changed, 108 insertions(+), 1 deletion(-)

diff --git a/MOVED b/MOVED
index 574b71e71c21..d93bf1637d19 100644
--- a/MOVED
+++ b/MOVED
@@ -4916,7 +4916,6 @@ www/libghttp||2013-10-07|Component of the obsolete gnome1
 deskutils/gworkspace-clipbook||2013-10-07|Replaced by tabbed shelf in GWorkspace
 audio/yamt||2013-10-07|Depends on EOLed gnome1 libraries
 astro/nova||2013-10-07|Development ceased 8 years ago, depends on some gnome1 libraries
-textproc/libxml++||2013-10-07|Component of the obsolete gnome1
 devel/linux-f10-libglade|devel/linux-f10-libglade2|2013-10-07|Unused
 textproc/linux-f10-libxml|textproc/linux-f10-libxml2|2013-10-07|Unused
 www/moodle23||2013-10-08|Has expired: Unmaintained upstream
diff --git a/textproc/Makefile b/textproc/Makefile
index f444a5a2b3c2..68134eb9aeee 100644
--- a/textproc/Makefile
+++ b/textproc/Makefile
@@ -405,6 +405,7 @@
     SUBDIR += libwps
     SUBDIR += libwps03
     SUBDIR += libxdiff
+    SUBDIR += libxml++
     SUBDIR += libxml++26
     SUBDIR += libxml2
     SUBDIR += libxmlb
diff --git a/textproc/libxml++/Makefile b/textproc/libxml++/Makefile
new file mode 100644
index 000000000000..08de080c00d4
--- /dev/null
+++ b/textproc/libxml++/Makefile
@@ -0,0 +1,21 @@
+# Created by: Ying-Chieh Liao <ijliao@FreeBSD.org>
+
+PORTNAME=	libxml++
+PORTVERSION=	5.0.1
+CATEGORIES=	textproc
+MASTER_SITES=	GNOME
+PKGNAMESUFFIX=	${PORTVERSION:R:S/.//}
+
+MAINTAINER=	jcfyecrayz@liamekaens.com
+COMMENT=	XML API for C++
+
+LICENSE=	LGPL21+
+
+USES=		gnome meson pkgconfig tar:xz
+USE_GNOME=	libxml2
+USE_LDCONFIG=	yes
+MESON_ARGS=	-Ddefault_library=both
+
+PLIST_SUB=	VERSION=${PORTVERSION:R} API_VERSION=${PORTVERSION:R}
+
+.include <bsd.port.mk>
diff --git a/textproc/libxml++/distinfo b/textproc/libxml++/distinfo
new file mode 100644
index 000000000000..cd64f5750e53
--- /dev/null
+++ b/textproc/libxml++/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1622112113
+SHA256 (libxml++-5.0.1.tar.xz) = 15c38307a964fa6199f4da6683a599eb7e63cc89198545b36349b87cf9aa0098
+SIZE (libxml++-5.0.1.tar.xz) = 779760
diff --git a/textproc/libxml++/files/patch-libxml++.pc.in b/textproc/libxml++/files/patch-libxml++.pc.in
new file mode 100644
index 000000000000..f59451ca7ce1
--- /dev/null
+++ b/textproc/libxml++/files/patch-libxml++.pc.in
@@ -0,0 +1,8 @@
+--- libxml++.pc.in.orig	2021-05-27 10:36:45 UTC
++++ libxml++.pc.in
+@@ -16,4 +16,4 @@ Libs: -L${libdir} -lxml++@MSVC_TOOLSET_VER@-@LIBXMLXX_
+ URL: https://libxmlplusplus.github.io/libxmlplusplus/
+ Requires: @LIBXMLXX_MODULES@
+ Libs: -L${libdir} -lxml++@MSVC_TOOLSET_VER@-@LIBXMLXX_API_VERSION@ @LIBXML2_LIB_NO_PKGCONFIG@
+-Cflags: -I${includedir}/@LIBXMLXX_MODULE_NAME@ -I${libdir}/@LIBXMLXX_MODULE_NAME@/include
++Cflags: -I${includedir}/@LIBXMLXX_MODULE_NAME@ -I${includedir}/@LIBXMLXX_MODULE_NAME@/include
diff --git a/textproc/libxml++/files/patch-meson.build b/textproc/libxml++/files/patch-meson.build
new file mode 100644
index 000000000000..7f1709a768ef
--- /dev/null
+++ b/textproc/libxml++/files/patch-meson.build
@@ -0,0 +1,20 @@
+--- meson.build.orig	2021-05-27 10:36:45 UTC
++++ meson.build
+@@ -44,7 +44,7 @@ is_msvc = cpp_compiler.get_id() == 'msvc'
+ 
+ cpp_compiler = meson.get_compiler('cpp')
+ is_msvc = cpp_compiler.get_id() == 'msvc'
+-python3 = import('python').find_installation('python3')
++python3 = import('python').find_installation()
+ 
+ python_version = python3.language_version()
+ python_version_req = '>= 3.5'
+@@ -290,7 +290,7 @@ configure_file(
+   install_dir: install_pkgconfigdir,
+ )
+ 
+-install_includeconfigdir = install_libdir / xmlxx_pcname / 'include'
++install_includeconfigdir = install_includedir / xmlxx_pcname / 'include'
+ xmlxxconfig_h = configure_file(
+   input: 'libxml++config.h.meson',
+   output: 'libxml++config.h',
diff --git a/textproc/libxml++/pkg-descr b/textproc/libxml++/pkg-descr
new file mode 100644
index 000000000000..75e7756bdd61
--- /dev/null
+++ b/textproc/libxml++/pkg-descr
@@ -0,0 +1,8 @@
+libxml++ is a C++ interface for working with XML files, using libxml
+(gnome-xml) to parse and write the actual XML files. It has a simple
+but complete API.
+
+libxml++-5.0 (ABI version 5.0) does not depend on glibmm, is not as
+good at handling UTF-8 strings, but has fewer dependencies.
+
+WWW: http://libxmlplusplus.sourceforge.net/
diff --git a/textproc/libxml++/pkg-plist b/textproc/libxml++/pkg-plist
new file mode 100644
index 000000000000..b5f1c87df671
--- /dev/null
+++ b/textproc/libxml++/pkg-plist
@@ -0,0 +1,47 @@
+include/libxml++-%%API_VERSION%%/include/libxml++config.h
+include/libxml++-%%API_VERSION%%/libxml++/attribute.h
+include/libxml++-%%API_VERSION%%/libxml++/attributedeclaration.h
+include/libxml++-%%API_VERSION%%/libxml++/attributenode.h
+include/libxml++-%%API_VERSION%%/libxml++/document.h
+include/libxml++-%%API_VERSION%%/libxml++/dtd.h
+include/libxml++-%%API_VERSION%%/libxml++/exceptions/exception.h
+include/libxml++-%%API_VERSION%%/libxml++/exceptions/internal_error.h
+include/libxml++-%%API_VERSION%%/libxml++/exceptions/parse_error.h
+include/libxml++-%%API_VERSION%%/libxml++/exceptions/validity_error.h
+include/libxml++-%%API_VERSION%%/libxml++/exceptions/wrapped_exception.h
+include/libxml++-%%API_VERSION%%/libxml++/io/istreamparserinputbuffer.h
+include/libxml++-%%API_VERSION%%/libxml++/io/ostreamoutputbuffer.h
+include/libxml++-%%API_VERSION%%/libxml++/io/outputbuffer.h
+include/libxml++-%%API_VERSION%%/libxml++/io/parserinputbuffer.h
+include/libxml++-%%API_VERSION%%/libxml++/keepblanks.h
+include/libxml++-%%API_VERSION%%/libxml++/libxml++.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/cdatanode.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/commentnode.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/contentnode.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/element.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/entitydeclaration.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/entityreference.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/node.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/processinginstructionnode.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/textnode.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/xincludeend.h
+include/libxml++-%%API_VERSION%%/libxml++/nodes/xincludestart.h
+include/libxml++-%%API_VERSION%%/libxml++/noncopyable.h
+include/libxml++-%%API_VERSION%%/libxml++/parsers/domparser.h
+include/libxml++-%%API_VERSION%%/libxml++/parsers/parser.h
+include/libxml++-%%API_VERSION%%/libxml++/parsers/saxparser.h
+include/libxml++-%%API_VERSION%%/libxml++/parsers/textreader.h
+include/libxml++-%%API_VERSION%%/libxml++/relaxngschema.h
+include/libxml++-%%API_VERSION%%/libxml++/schemabase.h
+include/libxml++-%%API_VERSION%%/libxml++/ustring.h
+include/libxml++-%%API_VERSION%%/libxml++/validators/dtdvalidator.h
+include/libxml++-%%API_VERSION%%/libxml++/validators/relaxngvalidator.h
+include/libxml++-%%API_VERSION%%/libxml++/validators/schemavalidatorbase.h
+include/libxml++-%%API_VERSION%%/libxml++/validators/validator.h
+include/libxml++-%%API_VERSION%%/libxml++/validators/xsdvalidator.h
+include/libxml++-%%API_VERSION%%/libxml++/xsdschema.h
+lib/libxml++-%%VERSION%%.a
+lib/libxml++-%%VERSION%%.so
+lib/libxml++-%%VERSION%%.so.1
+lib/libxml++-%%VERSION%%.so.1.0.0
+libdata/pkgconfig/libxml++-%%API_VERSION%%.pc