Github messages for voidlinux
 help / color / mirror / Atom feed
From: oreo639 <oreo639@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] libxml2: update to 2.12.5.
Date: Sun, 25 Feb 2024 04:59:22 +0100	[thread overview]
Message-ID: <20240225035922.CDAE6247FA@inbox.vuxu.org> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-48826@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 1478 bytes --]

There is an updated pull request by oreo639 against master on the void-packages repository

https://github.com/oreo639/void-packages libxml2
https://github.com/void-linux/void-packages/pull/48826

libxml2: update to 2.12.5.
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**

I tested building all packages depending on libxml2.
~~The only other build failure not addressed is vtk, which is gcc 13 related.~~
This depends on https://github.com/void-linux/void-packages/pull/48824

cc: @classabbyamp 

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/48826.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-libxml2-48826.patch --]
[-- Type: text/x-diff, Size: 28087 bytes --]

From 3256ee1aa327964806791955c6a9c3d771e38cc0 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Sun, 18 Feb 2024 13:33:55 -0800
Subject: [PATCH 01/14] libxml2: update to 2.12.5.

---
 ...952bdb7a4364100f009043e94e1bf44c6197.patch | 85 +++++++++++++++++++
 srcpkgs/libxml2/template                      |  8 +-
 2 files changed, 89 insertions(+), 4 deletions(-)
 create mode 100644 srcpkgs/libxml2/patches/387a952bdb7a4364100f009043e94e1bf44c6197.patch

diff --git a/srcpkgs/libxml2/patches/387a952bdb7a4364100f009043e94e1bf44c6197.patch b/srcpkgs/libxml2/patches/387a952bdb7a4364100f009043e94e1bf44c6197.patch
new file mode 100644
index 00000000000000..50a6da45513f82
--- /dev/null
+++ b/srcpkgs/libxml2/patches/387a952bdb7a4364100f009043e94e1bf44c6197.patch
@@ -0,0 +1,85 @@
+From 387a952bdb7a4364100f009043e94e1bf44c6197 Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wellnhofer@aevum.de>
+Date: Mon, 12 Feb 2024 16:45:16 +0100
+Subject: [PATCH] xmllint: Return error code if XPath returns empty nodeset
+
+Return an error code as before but make it possible to distinguish from
+real errors.
+
+Fixes #690.
+---
+ doc/xmllint.xml | 11 ++++++++++-
+ xmllint.c       | 24 +++++++++++++-----------
+ 2 files changed, 23 insertions(+), 12 deletions(-)
+
+diff --git a/doc/xmllint.xml b/doc/xmllint.xml
+index b81da3aa7..8bc665216 100644
+--- a/doc/xmllint.xml
++++ b/doc/xmllint.xml
+@@ -575,7 +575,9 @@
+                     result. In case of a nodeset result, each node in the
+                     node set is serialized in full in the output. In case
+                     of an empty node set the "XPath set is empty" result
+-                    will be shown and an error exit code will be returned.
++                    will be shown and exit code 11 will be returned..
++                    This feature is EXPERIMENTAL. Implementation details can
++                    change without futher notice.
+                 </para>
+             </listitem>
+         </varlistentry>
+@@ -945,6 +947,13 @@
+             </listitem>
+         </varlistentry>
+ 
++        <varlistentry>
++            <term><errorcode>11</errorcode></term>
++            <listitem>
++                <para>XPath result is empty</para>
++            </listitem>
++        </varlistentry>
++
+     </variablelist>
+ </refsect1>
+ 
+diff --git a/xmllint.c b/xmllint.c
+index 21dbe7d24..5c26c3fe8 100644
+--- a/xmllint.c
++++ b/xmllint.c
+@@ -86,17 +86,18 @@
+ #endif
+ 
+ typedef enum {
+-    XMLLINT_RETURN_OK = 0,	/* No error */
+-    XMLLINT_ERR_UNCLASS = 1,	/* Unclassified */
+-    XMLLINT_ERR_DTD = 2,	/* Error in DTD */
+-    XMLLINT_ERR_VALID = 3,	/* Validation error */
+-    XMLLINT_ERR_RDFILE = 4,	/* CtxtReadFile error */
+-    XMLLINT_ERR_SCHEMACOMP = 5,	/* Schema compilation */
+-    XMLLINT_ERR_OUT = 6,	/* Error writing output */
+-    XMLLINT_ERR_SCHEMAPAT = 7,	/* Error in schema pattern */
+-    XMLLINT_ERR_RDREGIS = 8,	/* Error in Reader registration */
+-    XMLLINT_ERR_MEM = 9,	/* Out of memory error */
+-    XMLLINT_ERR_XPATH = 10	/* XPath evaluation error */
++    XMLLINT_RETURN_OK = 0,	    /* No error */
++    XMLLINT_ERR_UNCLASS = 1,	    /* Unclassified */
++    XMLLINT_ERR_DTD = 2,	    /* Error in DTD */
++    XMLLINT_ERR_VALID = 3,	    /* Validation error */
++    XMLLINT_ERR_RDFILE = 4,	    /* CtxtReadFile error */
++    XMLLINT_ERR_SCHEMACOMP = 5,	    /* Schema compilation */
++    XMLLINT_ERR_OUT = 6,	    /* Error writing output */
++    XMLLINT_ERR_SCHEMAPAT = 7,	    /* Error in schema pattern */
++    XMLLINT_ERR_RDREGIS = 8,	    /* Error in Reader registration */
++    XMLLINT_ERR_MEM = 9,	    /* Out of memory error */
++    XMLLINT_ERR_XPATH = 10,	    /* XPath evaluation error */
++    XMLLINT_ERR_XPATH_EMPTY = 11    /* XPath result is empty */
+ } xmllintReturnCode;
+ #ifdef LIBXML_DEBUG_ENABLED
+ static int shell = 0;
+@@ -2019,6 +2020,7 @@ static void doXPathDump(xmlXPathObjectPtr cur) {
+             xmlOutputBufferPtr buf;
+ 
+             if ((cur->nodesetval == NULL) || (cur->nodesetval->nodeNr <= 0)) {
++                progresult = XMLLINT_ERR_XPATH_EMPTY;
+                 if (!quiet) {
+                     fprintf(stderr, "XPath set is empty\n");
+                 }
diff --git a/srcpkgs/libxml2/template b/srcpkgs/libxml2/template
index 7e05639eaaa1e2..270753e103cee1 100644
--- a/srcpkgs/libxml2/template
+++ b/srcpkgs/libxml2/template
@@ -1,8 +1,7 @@
 # Template file for 'libxml2'
 pkgname=libxml2
-reverts="2.12.1_1"
-version=2.11.4
-revision=6
+version=2.12.5
+revision=1
 build_style=gnu-configure
 configure_args="--with-threads --with-history --with-icu
  --with-legacy --with-ftp --with-xptr-locs --enable-static"
@@ -13,8 +12,9 @@ short_desc="Library providing XML and HTML support"
 maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://gitlab.gnome.org/GNOME/libxml2"
+changelog="https://gitlab.gnome.org/GNOME/libxml2/-/raw/master/NEWS"
 distfiles="${GNOME_SITE}/libxml2/${version%.*}/libxml2-${version}.tar.xz"
-checksum=737e1d7f8ab3f139729ca13a2494fd17bf30ddb4b7a427cf336252cab57f57f7
+checksum=a972796696afd38073e0f59c283c3a2f5a560b5268b4babc391b286166526b21
 python_version=3
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/python$py3_ver"
 

From fdd3b4787a51f0a6901f80be5f49072fd5569e88 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Sun, 18 Feb 2024 20:57:54 -0800
Subject: [PATCH 02/14] inkscape: fix build for libxml2 2.12

---
 .../inkscape/patches/fix-libxml2-2.12.patch   | 33 +++++++++++++++++++
 1 file changed, 33 insertions(+)
 create mode 100644 srcpkgs/inkscape/patches/fix-libxml2-2.12.patch

diff --git a/srcpkgs/inkscape/patches/fix-libxml2-2.12.patch b/srcpkgs/inkscape/patches/fix-libxml2-2.12.patch
new file mode 100644
index 00000000000000..dc5b0f53460c9a
--- /dev/null
+++ b/srcpkgs/inkscape/patches/fix-libxml2-2.12.patch
@@ -0,0 +1,33 @@
+From 694d8ae43d06efff21adebf377ce614d660b24cd Mon Sep 17 00:00:00 2001
+From: Christian Hesse <mail@eworm.de>
+Date: Fri, 17 Nov 2023 22:30:42 +0100
+Subject: [PATCH] include missing header file
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This fixes build error:
+```
+/build/inkscape/src/inkscape/src/object/uri.cpp: In constructor ‘Inkscape::URI::URI(const gchar*, const char*)’:
+/build/inkscape/src/inkscape/src/object/uri.cpp:86:9: error: ‘xmlFree’ was not declared in this scope; did you mean ‘xmlFreeURI’?
+   86 |         xmlFree(full);
+```
+---
+ src/object/uri.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/object/uri.h b/src/object/uri.h
+index 381adec58cf..d5b211fe2b2 100644
+--- a/src/object/uri.h
++++ b/src/object/uri.h
+@@ -13,6 +13,7 @@
+ #define INKSCAPE_URI_H
+ 
+ #include <libxml/uri.h>
++#include <libxml/xmlmemory.h>
+ #include <memory>
+ #include <string>
+ 
+-- 
+GitLab
+

From 9df5b36b648662c558e21615c2c1bd4ffe683acf Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Sun, 18 Feb 2024 20:58:21 -0800
Subject: [PATCH 03/14] rdrview: fix build for libxml2 2.12

---
 .../rdrview/patches/fix-libxml2-2.12.patch    | 26 +++++++++++++++++++
 1 file changed, 26 insertions(+)
 create mode 100644 srcpkgs/rdrview/patches/fix-libxml2-2.12.patch

diff --git a/srcpkgs/rdrview/patches/fix-libxml2-2.12.patch b/srcpkgs/rdrview/patches/fix-libxml2-2.12.patch
new file mode 100644
index 00000000000000..eb8c8eb7709a87
--- /dev/null
+++ b/srcpkgs/rdrview/patches/fix-libxml2-2.12.patch
@@ -0,0 +1,26 @@
+From b5fdd379577e13d26784ffdeca3ecb02ff1d336e Mon Sep 17 00:00:00 2001
+From: oreo639 <oreo6391@gmail.com>
+Date: Sun, 18 Feb 2024 13:49:49 -0800
+Subject: [PATCH] Add missing include with libxml2 2.12+
+
+libxml2 2.12 removed extra includes, which causes stdlib.h to not get implicitly
+included anymore.
+
+The missing include results in a warning on gcc13 and below with the resulting
+binary truncating the pointer to an integer, gcc14+ makes this a hard error.
+---
+ src/rdrview.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/rdrview.h b/src/rdrview.h
+index 9365e7a..2eda156 100644
+--- a/src/rdrview.h
++++ b/src/rdrview.h
+@@ -26,6 +26,7 @@
+ #define RDRVIEW_H
+ 
+ #include <assert.h>
++#include <stdlib.h>
+ #include <stdbool.h>
+ #include <sys/types.h>
+ #include <regex.h>

From aed2161b08e86a32e30191bb66544fe828119828 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Sun, 18 Feb 2024 20:58:50 -0800
Subject: [PATCH 04/14] cegui: fix build for libxml2 2.12

---
 srcpkgs/cegui/patches/fix-libxml2-2.12.patch | 26 ++++++++++++++++++++
 1 file changed, 26 insertions(+)
 create mode 100644 srcpkgs/cegui/patches/fix-libxml2-2.12.patch

diff --git a/srcpkgs/cegui/patches/fix-libxml2-2.12.patch b/srcpkgs/cegui/patches/fix-libxml2-2.12.patch
new file mode 100644
index 00000000000000..f288ce9a66b098
--- /dev/null
+++ b/srcpkgs/cegui/patches/fix-libxml2-2.12.patch
@@ -0,0 +1,26 @@
+From 285ba5a2c0c435ed865c6e86afe314a822fd1e3f Mon Sep 17 00:00:00 2001
+From: oreo639 <oreo6391@gmail.com>
+Date: Sun, 18 Feb 2024 14:16:21 -0800
+Subject: [PATCH] Fix return type of xmlGetLastError for libxml2 2.12
+
+https://gitlab.gnome.org/GNOME/libxml2/-/commit/45470611b047db78106dcb2fdbd4164163c15ab7
+---
+ cegui/src/XMLParserModules/Libxml2/XMLParser.cpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/cegui/src/XMLParserModules/Libxml2/XMLParser.cpp b/cegui/src/XMLParserModules/Libxml2/XMLParser.cpp
+index 74a3dbddd..a408f9305 100644
+--- a/cegui/src/XMLParserModules/Libxml2/XMLParser.cpp
++++ b/cegui/src/XMLParserModules/Libxml2/XMLParser.cpp
+@@ -109,7 +109,11 @@ void LibxmlParser::parseXML(XMLHandler& handler,
+ 
+     if (!doc)
+     {
++#if LIBXML_VERSION >= 21200
++        const xmlError* err = xmlGetLastError();
++#else
+         xmlError* err = xmlGetLastError();
++#endif
+ 
+         throw GenericException(
+             String("xmlParseMemory failed in file: '") +

From 6e849265ebb70d0bc81a7c5b6a075c66ad4168d3 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 19 Feb 2024 04:57:49 -0800
Subject: [PATCH 05/14] xmlsec1: update to 1.3.3.

Fixes build with libxml2 2.12.
---
 srcpkgs/xmlsec1/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xmlsec1/template b/srcpkgs/xmlsec1/template
index a4d9792bd2d374..0dfb40b1f1161d 100644
--- a/srcpkgs/xmlsec1/template
+++ b/srcpkgs/xmlsec1/template
@@ -1,6 +1,6 @@
 # Template file for 'xmlsec1'
 pkgname=xmlsec1
-version=1.3.2
+version=1.3.3
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -11,8 +11,8 @@ maintainer="Enno Boland <gottox@voidlinux.org>"
 license="MIT"
 homepage="https://www.aleksey.com/xmlsec/"
 changelog="https://www.aleksey.com/xmlsec/news.html"
-distfiles="https://www.aleksey.com/xmlsec/download/xmlsec1-${version}.tar.gz"
-checksum=4003c56b3d356d21b1db7775318540fad6bfedaf5f117e8f7c010811219be3cf
+distfiles="https://github.com/lsh123/xmlsec/releases/download/${version}/xmlsec1-${version}.tar.gz"
+checksum=ab5b9a9ffd6960f46f7466d9d91f174ec37e8c31989237ba6b9eacdd816464f2
 
 post_install() {
 	if [ "$CROSS_BUILD" ]; then

From c7f2ab204915a5a3d829e1e9d2bc04677eebceca Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 19 Feb 2024 05:13:26 -0800
Subject: [PATCH 06/14] recoll: update to 1.37.4.

---
 srcpkgs/recoll/patches/musl.patch | 4 ++--
 srcpkgs/recoll/template           | 8 ++++----
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/recoll/patches/musl.patch b/srcpkgs/recoll/patches/musl.patch
index d633e92b9df118..5d061a05789650 100644
--- a/srcpkgs/recoll/patches/musl.patch
+++ b/srcpkgs/recoll/patches/musl.patch
@@ -27,11 +27,11 @@ diff --git a/common/conf_post.h b/common/conf_post.h
 index 7093ead..0ecd56b 100644
 --- a/common/conf_post.h
 +++ b/common/conf_post.h
-@@ -73,12 +73,4 @@ typedef int ssize_t;
+@@ -74,12 +74,4 @@ typedef int ssize_t;
  #define REAL_GCC   __GNUC__ // probably
  #endif
  
--#ifdef REAL_GCC
+-#if defined(REAL_GCC) && defined(HAVE_FEATURES_H)
 -// Older gcc versions pretended to supply std::regex, but the resulting programs mostly crashed.
 -#include <features.h>
 -#if ! __GNUC_PREREQ(6,0)
diff --git a/srcpkgs/recoll/template b/srcpkgs/recoll/template
index cbcc61e13cd0e3..7b33d23df03a59 100644
--- a/srcpkgs/recoll/template
+++ b/srcpkgs/recoll/template
@@ -1,7 +1,7 @@
 # Template file for 'recoll'
 pkgname=recoll
-version=1.32.7
-revision=3
+version=1.37.4
+revision=1
 build_style=gnu-configure
 build_helper="qmake python3"
 configure_args="--enable-recollq --disable-python-chm --disable-x11mon
@@ -9,10 +9,10 @@ configure_args="--enable-recollq --disable-python-chm --disable-x11mon
 hostmakedepends="pkg-config gettext-devel qt5-qmake qt5-host-tools
  which python3-setuptools"
 makedepends="libxslt-devel xapian-core-devel zlib-devel qt5-devel
- python3-devel"
+ python3-devel aspell-devel"
 short_desc="Full text search tool based on Xapian backend"
 maintainer="Rui Abreu Ferreira <raf-ep@gmx.com>"
 license="GPL-2.0-or-later"
 homepage="https://www.lesbonscomptes.com/recoll/"
 distfiles="https://www.lesbonscomptes.com/recoll/recoll-${version}.tar.gz"
-checksum=ca08a6f4bb0b519bf915a062a9b7aadc4f343473cc1f07895708208d66337dba
+checksum=3109d76a65bb2f887231b643994ed701c2efe6ba0771f8451b39e2f186c3b6ad

From 345b484ce9636a8df61ce06e66201ae13ace0d64 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 19 Feb 2024 05:18:02 -0800
Subject: [PATCH 07/14] squid: update to 6.7.

---
 srcpkgs/squid/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/squid/template b/srcpkgs/squid/template
index 1dff665cda342a..e73856d05a1b80 100644
--- a/srcpkgs/squid/template
+++ b/srcpkgs/squid/template
@@ -1,7 +1,7 @@
 # Template file for 'squid'
 pkgname=squid
-version=5.7
-revision=4
+version=6.7
+revision=1
 build_style=gnu-configure
 configure_args="
  --sysconfdir=/etc/squid
@@ -52,9 +52,9 @@ short_desc="Caching proxy for the Web"
 maintainer="Toyam Cox <Vaelatern@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="http://www.squid-cache.org/"
-changelog="http://www.squid-cache.org/Versions/v5/changesets/"
-distfiles="http://www.squid-cache.org/Versions/v5/squid-${version}.tar.xz"
-checksum=6b0753aaba4c9c4efd333e67124caecf7ad6cc2d38581f19d2f0321f5b7ecd81
+changelog="http://www.squid-cache.org/Versions/v${version%%.*}/changesets/"
+distfiles="http://www.squid-cache.org/Versions/v${version%%.*}/squid-${version}.tar.xz"
+checksum=e14daa4eae41925d1ae3f08e64439a6aaa3011bdced686628b8de697d5ab8428
 system_accounts="squid"
 # squid-conf-tests requires a squid user in the system
 make_check=no

From f4b8d5777e65ebe2e00df549dc1ac2ec5ad0803a Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 19 Feb 2024 05:24:30 -0800
Subject: [PATCH 08/14] liferea: fix build for libxml2 2.12

---
 .../liferea/patches/fix-libxml2-2.12.patch    | 28 +++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 srcpkgs/liferea/patches/fix-libxml2-2.12.patch

diff --git a/srcpkgs/liferea/patches/fix-libxml2-2.12.patch b/srcpkgs/liferea/patches/fix-libxml2-2.12.patch
new file mode 100644
index 00000000000000..abe1fb13766982
--- /dev/null
+++ b/srcpkgs/liferea/patches/fix-libxml2-2.12.patch
@@ -0,0 +1,28 @@
+From be8ef494586d9ef73c04ec4ca058a9a158ae3562 Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyich@gmail.com>
+Date: Sun, 31 Dec 2023 22:26:31 +0000
+Subject: [PATCH] src/node_type.h: add `#include <libxml/tree.h>` for
+ `xmlNodePtr` type
+
+Without the change build fails on `libxml2-2.12.3` as:
+
+    ../../src/node_type.h:62:64: error: unknown type name 'xmlNodePtr'; did you mean 'nodePtr'?
+       62 |         void            (*export)               (nodePtr node, xmlNodePtr cur, gboolean trusted);
+          |                                                                ^~~~~~~~~~
+          |                                                                nodePtr
+---
+ src/node_type.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/node_type.h b/src/node_type.h
+index fcd3e7223..a41ff52fc 100644
+--- a/src/node_type.h
++++ b/src/node_type.h
+@@ -23,6 +23,7 @@
+ 
+ #include "node.h"
+ 
++#include <libxml/tree.h>
+ #include <libxml/xmlmemory.h>
+ #include <gtk/gtk.h>
+ 

From 47997bcf755bb07ef8253c31e33e53f95ba523a3 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 19 Feb 2024 05:31:24 -0800
Subject: [PATCH 09/14] gtkpod: fix build for libxml2 2.12

---
 srcpkgs/gtkpod/patches/fix-libxml2-2.12.patch | 12 ++++++++++++
 1 file changed, 12 insertions(+)
 create mode 100644 srcpkgs/gtkpod/patches/fix-libxml2-2.12.patch

diff --git a/srcpkgs/gtkpod/patches/fix-libxml2-2.12.patch b/srcpkgs/gtkpod/patches/fix-libxml2-2.12.patch
new file mode 100644
index 00000000000000..58eab19153ee7f
--- /dev/null
+++ b/srcpkgs/gtkpod/patches/fix-libxml2-2.12.patch
@@ -0,0 +1,12 @@
+Source: https://src.fedoraproject.org/rpms/gtkpod/blob/a3e1c785b5a43603ad46ef913b0644babbfc6a73/f/includes.patch
+
+--- a/libgtkpod/misc.c
++++ b/libgtkpod/misc.c
+@@ -39,6 +39,7 @@
+ #include <sys/wait.h>
+ #include <unistd.h>
+ #include <glib/gi18n-lib.h>
++#include <libxml/parser.h>
+ #include "charset.h"
+ #include "clientserver.h"
+ #include "misc.h"

From d4589fd9c1345317c7dbdf717e4f7988a326a732 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 19 Feb 2024 05:43:29 -0800
Subject: [PATCH 10/14] swiften: fix build for libxml2 2.12

---
 srcpkgs/swiften/patches/fix-libxml2-2.12.patch | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
 create mode 100644 srcpkgs/swiften/patches/fix-libxml2-2.12.patch

diff --git a/srcpkgs/swiften/patches/fix-libxml2-2.12.patch b/srcpkgs/swiften/patches/fix-libxml2-2.12.patch
new file mode 100644
index 00000000000000..3e3e4d16352060
--- /dev/null
+++ b/srcpkgs/swiften/patches/fix-libxml2-2.12.patch
@@ -0,0 +1,15 @@
+diff -rup Swiften/Parser/LibXMLParser.cpp.orig Swiften/Parser/LibXMLParser.cpp
+--- a/Swiften/Parser/LibXMLParser.cpp
++++ b/Swiften/Parser/LibXMLParser.cpp
+@@ -97,7 +97,11 @@ bool LibXMLParser::parse(const std::stri
+     if (xmlParseChunk(p->context_, data.c_str(), boost::numeric_cast<int>(data.size()), false) == XML_ERR_OK) {
+         return true;
+     }
++#if LIBXML_VERSION >= 21200
++    const xmlError* error = xmlCtxtGetLastError(p->context_);
++#else
+     xmlError* error = xmlCtxtGetLastError(p->context_);
++#endif
+     if (error->code == XML_WAR_NS_URI || error->code == XML_WAR_NS_URI_RELATIVE) {
+         xmlCtxtResetLastError(p->context_);
+         p->context_->errNo = XML_ERR_OK;

From a6ae79d5ab0edac9dde643efeb9a33e04c1eff5d Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 19 Feb 2024 06:07:22 -0800
Subject: [PATCH 11/14] qt5-webengine: fix build for libxml2 2.12

---
 .../patches/fix-libxml2-2.12.patch            | 34 +++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 srcpkgs/qt5-webengine/patches/fix-libxml2-2.12.patch

diff --git a/srcpkgs/qt5-webengine/patches/fix-libxml2-2.12.patch b/srcpkgs/qt5-webengine/patches/fix-libxml2-2.12.patch
new file mode 100644
index 00000000000000..f85ee4d01ff64f
--- /dev/null
+++ b/srcpkgs/qt5-webengine/patches/fix-libxml2-2.12.patch
@@ -0,0 +1,34 @@
+Based on: https://github.com/chromium/chromium/commit/871f8ae9b65ce2679b0bc0be36902d65edf0c1e4
+
+diff --git a/third_party/blink/renderer/core/xml/xslt_processor.h b/third_party/blink/renderer/core/xml/xslt_processor.h
+index d53835e9675793e..2eaea31ed29b90f 100644
+--- a/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor.h
++++ b/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor.h
+@@ -79,7 +79,11 @@ class XSLTProcessor final : public Scrip
+ 
+   void reset();
+ 
++#if LIBXML_VERSION >= 21200
++  static void ParseErrorFunc(void* user_data, const xmlError*);
++#else
+   static void ParseErrorFunc(void* user_data, xmlError*);
++#endif
+   static void GenericErrorFunc(void* user_data, const char* msg, ...);
+ 
+   // Only for libXSLT callbacks
+diff --git a/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc b/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
+index 133e0b3355d2f09..f424077089da87d 100644
+--- a/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
++++ b/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
+@@ -60,7 +60,11 @@ void XSLTProcessor::GenericErrorFunc(voi
+   // It would be nice to do something with this error message.
+ }
+ 
++#if LIBXML_VERSION >= 21200
++void XSLTProcessor::ParseErrorFunc(void* user_data, const xmlError* error) {
++#else
+ void XSLTProcessor::ParseErrorFunc(void* user_data, xmlError* error) {
++#endif
+   FrameConsole* console = static_cast<FrameConsole*>(user_data);
+   if (!console)
+     return;

From af69d017a8aae4ef521d707f6e7cd2e5a43a8864 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 19 Feb 2024 06:07:37 -0800
Subject: [PATCH 12/14] qt6-pdf: fix build for libxml2 2.12

---
 .../qt6-pdf/patches/fix-libxml2-2.12.patch    | 34 +++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 srcpkgs/qt6-pdf/patches/fix-libxml2-2.12.patch

diff --git a/srcpkgs/qt6-pdf/patches/fix-libxml2-2.12.patch b/srcpkgs/qt6-pdf/patches/fix-libxml2-2.12.patch
new file mode 100644
index 00000000000000..f85ee4d01ff64f
--- /dev/null
+++ b/srcpkgs/qt6-pdf/patches/fix-libxml2-2.12.patch
@@ -0,0 +1,34 @@
+Based on: https://github.com/chromium/chromium/commit/871f8ae9b65ce2679b0bc0be36902d65edf0c1e4
+
+diff --git a/third_party/blink/renderer/core/xml/xslt_processor.h b/third_party/blink/renderer/core/xml/xslt_processor.h
+index d53835e9675793e..2eaea31ed29b90f 100644
+--- a/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor.h
++++ b/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor.h
+@@ -79,7 +79,11 @@ class XSLTProcessor final : public Scrip
+ 
+   void reset();
+ 
++#if LIBXML_VERSION >= 21200
++  static void ParseErrorFunc(void* user_data, const xmlError*);
++#else
+   static void ParseErrorFunc(void* user_data, xmlError*);
++#endif
+   static void GenericErrorFunc(void* user_data, const char* msg, ...);
+ 
+   // Only for libXSLT callbacks
+diff --git a/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc b/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
+index 133e0b3355d2f09..f424077089da87d 100644
+--- a/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
++++ b/src/3rdparty/chromium/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
+@@ -60,7 +60,11 @@ void XSLTProcessor::GenericErrorFunc(voi
+   // It would be nice to do something with this error message.
+ }
+ 
++#if LIBXML_VERSION >= 21200
++void XSLTProcessor::ParseErrorFunc(void* user_data, const xmlError* error) {
++#else
+ void XSLTProcessor::ParseErrorFunc(void* user_data, xmlError* error) {
++#endif
+   FrameConsole* console = static_cast<FrameConsole*>(user_data);
+   if (!console)
+     return;

From 2456d28220860694d34fc2120a773efb1b1ade80 Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 19 Feb 2024 06:13:32 -0800
Subject: [PATCH 13/14] libmusicbrainz5: fix build for libxml2 2.12

---
 .../patches/libxml2-2.12.patch                | 36 +++++++++++++++++++
 1 file changed, 36 insertions(+)
 create mode 100644 srcpkgs/libmusicbrainz5/patches/libxml2-2.12.patch

diff --git a/srcpkgs/libmusicbrainz5/patches/libxml2-2.12.patch b/srcpkgs/libmusicbrainz5/patches/libxml2-2.12.patch
new file mode 100644
index 00000000000000..0a00d1bdc502d3
--- /dev/null
+++ b/srcpkgs/libmusicbrainz5/patches/libxml2-2.12.patch
@@ -0,0 +1,36 @@
+From 558c9ba0e6d702d5c877f75be98176f57abf1b02 Mon Sep 17 00:00:00 2001
+From: Christopher Degawa <ccom@randomderp.com>
+Date: Sun, 8 Oct 2023 11:42:55 -0500
+Subject: [PATCH] libxml: constify the storage of xmlGetLastError()
+
+libxml2 recently made it a const return.
+Since nothing is being modified of it, this should have no real effect
+past satisfying the compiler.
+
+Signed-off-by: Christopher Degawa <ccom@randomderp.com>
+---
+ src/xmlParser.cc | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/xmlParser.cc b/src/xmlParser.cc
+index 53dec25..fee684c 100644
+--- a/src/xmlParser.cc
++++ b/src/xmlParser.cc
+@@ -57,7 +57,7 @@ XMLNode *XMLRootNode::parseFile(const std::string &filename, XMLResults* results
+ 
+     doc = xmlParseFile(filename.c_str());
+     if ((doc == NULL) && (results != NULL)) {
+-        xmlErrorPtr error = xmlGetLastError();
++        const xmlError *error = xmlGetLastError();
+         results->message = error->message;
+         results->line = error->line;
+         results->code = error->code;
+@@ -72,7 +72,7 @@ XMLNode *XMLRootNode::parseString(const std::string &xml, XMLResults* results)
+ 
+     doc = xmlParseMemory(xml.c_str(), xml.length());
+     if ((doc == NULL) && (results != NULL)) {
+-        xmlErrorPtr error = xmlGetLastError();
++        const xmlError *error = xmlGetLastError();
+         results->message = error->message;
+         results->line = error->line;
+         results->code = error->code;

From 1a79cc88967a5e35346db669fe194d3616b4c5af Mon Sep 17 00:00:00 2001
From: oreo639 <oreo6391@gmail.com>
Date: Mon, 19 Feb 2024 06:27:42 -0800
Subject: [PATCH 14/14] osinfo-db-tools: fix build for libxml2 2.12 and gcc 14

---
 .../patches/fix-libxml2-2.12.patch            | 54 +++++++++++++++++++
 1 file changed, 54 insertions(+)
 create mode 100644 srcpkgs/osinfo-db-tools/patches/fix-libxml2-2.12.patch

diff --git a/srcpkgs/osinfo-db-tools/patches/fix-libxml2-2.12.patch b/srcpkgs/osinfo-db-tools/patches/fix-libxml2-2.12.patch
new file mode 100644
index 00000000000000..628005774327e9
--- /dev/null
+++ b/srcpkgs/osinfo-db-tools/patches/fix-libxml2-2.12.patch
@@ -0,0 +1,54 @@
+Not currently necessary, but will be with gcc 14
+
+From 34378a4ac257f2f5fcf364786d1634a8c36b304f Mon Sep 17 00:00:00 2001
+From: Michal Privoznik <mprivozn@redhat.com>
+Date: Mon, 27 Nov 2023 15:04:43 +0100
+Subject: [PATCH] Make xmlError structs constant
+
+In libxml2 commits v2.12.0~14 and v2.12.0~77 the API changed so
+that:
+
+1) xmlGetLastError() returns pointer to a constant xmlError
+   struct, and
+
+2) xmlSetStructuredErrorFunc() changed the signature of callback
+   (validate_structured_error_nop()), it too is passed pointer to
+   a constant xmlError struct.
+
+But of course, older libxml2 expects different callback
+signature. Therefore, we need to typecast it anyway.
+
+Also, drop obviously incorrect @error annotation in
+validate_structured_error_nop; the variable is used.
+
+Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
+---
+ tools/osinfo-db-validate.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/tools/osinfo-db-validate.c b/tools/osinfo-db-validate.c
+index a721b4d..b1434a6 100644
+--- a/tools/osinfo-db-validate.c
++++ b/tools/osinfo-db-validate.c
+@@ -35,7 +35,7 @@ static void validate_generic_error_nop(void *userData G_GNUC_UNUSED,
+ }
+ 
+ static void validate_structured_error_nop(void *userData G_GNUC_UNUSED,
+-                                          xmlErrorPtr error G_GNUC_UNUSED)
++                                          const xmlError *error)
+ {
+     if (error->file)
+         g_printerr("%s:%d %s", error->file, error->line, error->message);
+@@ -173,7 +173,8 @@ static gboolean validate_files(GFile *schema, gsize nfiles, GFile **files, GErro
+     g_autofree gchar *schemapath = NULL;
+ 
+     xmlSetGenericErrorFunc(NULL, validate_generic_error_nop);
+-    xmlSetStructuredErrorFunc(NULL, validate_structured_error_nop);
++    /* Drop this typecast when >=libxml2-2.12.0 is required */
++    xmlSetStructuredErrorFunc(NULL, (xmlStructuredErrorFunc) validate_structured_error_nop);
+ 
+     schemapath = g_file_get_path(schema);
+     rngParser = xmlRelaxNGNewParserCtxt(schemapath);
+-- 
+GitLab
+

  parent reply	other threads:[~2024-02-25  3:59 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-19  5:20 [PR PATCH] " oreo639
2024-02-19  5:26 ` oreo639
2024-02-19  5:30 ` oreo639
2024-02-19  5:51 ` [PR PATCH] [Updated] " oreo639
2024-02-19  6:18 ` sgn
2024-02-19  6:50 ` oreo639
2024-02-19  6:51 ` oreo639
2024-02-19  6:51 ` oreo639
2024-02-19  6:55 ` oreo639
2024-02-19  6:55 ` oreo639
2024-02-19  6:55 ` oreo639
2024-02-19  6:56 ` oreo639
2024-02-19  6:56 ` oreo639
2024-02-19  6:57 ` oreo639
2024-02-19  7:00 ` oreo639
2024-02-19  7:01 ` sgn
2024-02-19  7:21 ` oreo639
2024-02-19  7:22 ` oreo639
2024-02-19  7:23 ` oreo639
2024-02-19  7:37 ` [PR PATCH] [Updated] " oreo639
2024-02-19 12:41 ` oreo639
2024-02-19 12:59 ` oreo639
2024-02-19 14:32 ` oreo639
2024-02-19 14:53 ` oreo639
2024-02-19 14:57 ` oreo639
2024-02-25  3:45 ` oreo639
2024-02-25  3:59 ` oreo639 [this message]
2024-02-25 10:05 ` oreo639
2024-02-27  2:39 ` oreo639
2024-03-05 23:22 ` oreo639
2024-03-05 23:41 ` oreo639
2024-03-06  0:35 ` [PR PATCH] [Merged]: " oreo639

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240225035922.CDAE6247FA@inbox.vuxu.org \
    --to=oreo639@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).