diff --git a/0001-Fix-building-with-system-libxml2.patch b/0001-Fix-building-with-system-libxml2.patch new file mode 100644 index 0000000..d802c6c --- /dev/null +++ b/0001-Fix-building-with-system-libxml2.patch @@ -0,0 +1,53 @@ +From 159dff274a7f32f9b53711df6a5b6fbae8c64b4a Mon Sep 17 00:00:00 2001 +From: Martin Negyokru +Date: Thu, 7 Dec 2023 15:37:53 +0100 +Subject: [PATCH] Fix building with system libxml2 + +Libxml2 2.12.0 has changed the const-ness of the +xmlError pointers, which results in a build error. + +Pick-to: 112-based 108-based 87-based +Change-Id: Id86fcfbfe004f89109808b9bdb11c01133553884 +Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/523633 +Reviewed-by: Allan Sandfeld Jensen +--- + .../third_party/blink/renderer/core/xml/xslt_processor.h | 5 +++++ + .../blink/renderer/core/xml/xslt_processor_libxslt.cc | 4 ++++ + 2 files changed, 9 insertions(+) + +diff --git 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 +index d53835e9675..72536e4fd7d 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,12 @@ class XSLTProcessor final : public ScriptWrappable { + + 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/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 +index 133e0b3355d..e8e6a09f485 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(void*, const char*, ...) { + // 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(user_data); + if (!console) + return; +-- +2.44.0 + diff --git a/libqt5-qtwebengine.changes b/libqt5-qtwebengine.changes index 50730ef..1f2b381 100644 --- a/libqt5-qtwebengine.changes +++ b/libqt5-qtwebengine.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Fri Apr 19 14:57:37 UTC 2024 - Christophe Marin + +- Add patch to fix build with libxml >= 2.12: + * 0001-Fix-building-with-system-libxml2.patch + ------------------------------------------------------------------- Sat Feb 24 11:06:56 UTC 2024 - Jan Engelhardt diff --git a/libqt5-qtwebengine.spec b/libqt5-qtwebengine.spec index ed4e095..2e08e73 100644 --- a/libqt5-qtwebengine.spec +++ b/libqt5-qtwebengine.spec @@ -62,6 +62,8 @@ Patch5: qtwebengine-python3.patch Patch6: sandbox_futex_time64.patch # PATCH-FIX-UPSTREAM -- python 3.11 fixes Patch7: python311-fixes.patch +# PATCH-FIX-UPSTREAM -- libxml 2.12 support +Patch8: 0001-Fix-building-with-system-libxml2.patch ### Patch 50-99 are applied conditionally # PATCH-FIX-OPENSUSE -- allow building qtwebengine with ffmpeg5 Patch50: qtwebengine-ffmpeg5.patch @@ -297,6 +299,7 @@ Examples for the libqt5-qtpdf module. %patch -P5 -p1 %patch -P6 -p1 %patch -P7 -p1 +%patch -P8 -p1 # Replace the whole catapult folder rather than picking individual changes pushd src/3rdparty/chromium/third_party