summaryrefslogtreecommitdiff
path: root/dev-qt
diff options
context:
space:
mode:
authorIonen Wolkens <ionen@gentoo.org>2023-11-22 07:02:21 -0500
committerIonen Wolkens <ionen@gentoo.org>2023-11-22 07:44:42 -0500
commit25616a65acf3a98a21c155c7a5ae11d8d83b63f6 (patch)
tree4d138d2d786fc8beafafe7c864c3385a073f07ba /dev-qt
parentgames-emulation/pcsx2: update live (diff)
downloadgentoo-25616a65acf3a98a21c155c7a5ae11d8d83b63f6.tar.gz
gentoo-25616a65acf3a98a21c155c7a5ae11d8d83b63f6.tar.bz2
gentoo-25616a65acf3a98a21c155c7a5ae11d8d83b63f6.zip
dev-qt/qtwebengine: fix build with >=libxml2-2.12 (qt6)
For convenience, use LIBXML_VERSION rather than has_version so that can include in patchset tarball later if still needed. Formerly meant to fix only in upcoming 6.6.1 (soon) but is a simple and safe fix so let's fix the others too. Closes: https://bugs.gentoo.org/917601 Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Diffstat (limited to 'dev-qt')
-rw-r--r--dev-qt/qtwebengine/files/qtwebengine-6.5.3-libxml2-2.12.patch39
-rw-r--r--dev-qt/qtwebengine/qtwebengine-6.5.3.ebuild1
-rw-r--r--dev-qt/qtwebengine/qtwebengine-6.6.0.ebuild1
-rw-r--r--dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild1
4 files changed, 42 insertions, 0 deletions
diff --git a/dev-qt/qtwebengine/files/qtwebengine-6.5.3-libxml2-2.12.patch b/dev-qt/qtwebengine/files/qtwebengine-6.5.3-libxml2-2.12.patch
new file mode 100644
index 000000000000..d725f3209106
--- /dev/null
+++ b/dev-qt/qtwebengine/files/qtwebengine-6.5.3-libxml2-2.12.patch
@@ -0,0 +1,39 @@
+Patch status: fixed in >=chromium-121.0.6104.0 with caveat
+
+Fix build failure[1] with libxml2-2.12 due xmlError changes.
+
+For convenience, use LIBXML_VERSION like webkit did[2] rather than
+chromium's upstream fix[3] which relies on bundled libxml2 always
+being 2.12.x (spares having to use has_version).
+
+When fix lands in qtwebengine, will need to depend on >=libxml2-2.12
+unless Qt decides to do something different considering that cmake
+uses system libxml2 by default and it may be too early to enforce it.
+
+[1] https://bugs.gentoo.org/917601
+[2] https://github.com/WebKit/WebKit/commit/1bad176b2496579d760852c80cff3ad9fb7c3a4b
+[3] https://crrev.com/871f8ae9b65ce2679b0bc0be36902d65edf0c1e4
+--- 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
+@@ -78,5 +78,9 @@
+ 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, ...);
+
+--- 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
+@@ -67,5 +67,9 @@
+ }
+
++#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)
diff --git a/dev-qt/qtwebengine/qtwebengine-6.5.3.ebuild b/dev-qt/qtwebengine/qtwebengine-6.5.3.ebuild
index 41ccab685127..0ad7cbecdb1b 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.5.3.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.5.3.ebuild
@@ -104,6 +104,7 @@ PATCHES+=(
"${FILESDIR}"/${PN}-6.5.2-libcxx17.patch
"${FILESDIR}"/${PN}-6.5.2-cstdint.patch
"${FILESDIR}"/${PN}-6.5.3-icu74.patch
+ "${FILESDIR}"/${PN}-6.5.3-libxml2-2.12.patch
)
python_check_deps() {
diff --git a/dev-qt/qtwebengine/qtwebengine-6.6.0.ebuild b/dev-qt/qtwebengine/qtwebengine-6.6.0.ebuild
index 234c81fd1039..c1271196f83f 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.6.0.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.6.0.ebuild
@@ -112,6 +112,7 @@ PATCHES=( "${WORKDIR}"/patches/${PN} )
PATCHES+=(
# add extras as needed here, may merge in set if carries across versions
"${FILESDIR}"/${PN}-6.5.3-icu74.patch
+ "${FILESDIR}"/${PN}-6.5.3-libxml2-2.12.patch
)
python_check_deps() {
diff --git a/dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild b/dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild
index b5b6023bdcaf..8154731705b2 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild
@@ -112,6 +112,7 @@ PATCHES=( "${WORKDIR}"/patches/${PN} )
PATCHES+=(
# add extras as needed here, may merge in set if carries across versions
"${FILESDIR}"/${PN}-6.5.3-icu74.patch
+ "${FILESDIR}"/${PN}-6.5.3-libxml2-2.12.patch
)
python_check_deps() {