git » qt5-webengine.git » commit a901006

upgpkg: 5.15.15-3: ICU 74 rebuild

author Antonio Rojas
2023-12-11 18:48:46 UTC
committer Antonio Rojas
2023-12-11 18:48:46 UTC
parent 4ecc71f72b70a051521fd5576d3175a1e33c5df3

upgpkg: 5.15.15-3: ICU 74 rebuild

.SRCINFO +5 -1
PKGBUILD +9 -3
qt5-webengine-icu-74.patch +20 -0
qt5-webengine-libxml-2.12.patch +26 -0

diff --git a/.SRCINFO b/.SRCINFO
index 39ae690..fcada30 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
 pkgbase = qt5-webengine
 	pkgdesc = Provides support for web applications using the Chromium browser project
 	pkgver = 5.15.15
-	pkgrel = 2
+	pkgrel = 3
 	url = https://www.qt.io
 	arch = x86_64
 	groups = qt5
@@ -40,11 +40,15 @@ pkgbase = qt5-webengine
 	source = qt5-webengine-chromium-python3.patch
 	source = qt5-webengine-ffmpeg5.patch
 	source = qt5-webengine-pipewire-0.3.patch
+	source = qt5-webengine-libxml-2.12.patch
+	source = qt5-webengine-icu-74.patch
 	sha256sums = SKIP
 	sha256sums = SKIP
 	sha256sums = 0ad5d1660886f7bbf5108b071bf5d7bbbabf1cd1258ce9d4587a01dec4a1aa89
 	sha256sums = d8beb3d65a1aaf927285e6f055a9d1facd0f9c3fd851f91ba568389fb3137399
 	sha256sums = c50d3019626183e753c53a997dc8a55938847543aa3178d4c51f377be741c693
 	sha256sums = 5e3a3c4711d964d5152a04059a2b5c1d14bb13dd29bce370120f60e85b476b6f
+	sha256sums = bfae9e773edfd0ddbc617777fdd4c0609cba2b048be7afe40f97768e4eb6117e
+	sha256sums = 547e092f6a20ebd15e486b31111145bc94b8709ec230da89c591963001378845
 
 pkgname = qt5-webengine
diff --git a/PKGBUILD b/PKGBUILD
index abae431..ca75ed3 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,7 +4,7 @@
 pkgname=qt5-webengine
 _basever=5.15.11
 pkgver=5.15.15
-pkgrel=2
+pkgrel=3
 arch=('x86_64')
 url='https://www.qt.io'
 license=('LGPL3' 'LGPL2.1' 'BSD')
@@ -20,13 +20,17 @@ source=(git+https://code.qt.io/qt/qtwebengine.git#tag=v${pkgver}-lts
         qt5-webengine-python3.patch
         qt5-webengine-chromium-python3.patch
         qt5-webengine-ffmpeg5.patch
-        qt5-webengine-pipewire-0.3.patch)
+        qt5-webengine-pipewire-0.3.patch
+        qt5-webengine-libxml-2.12.patch
+        qt5-webengine-icu-74.patch)
 sha256sums=('SKIP'
             'SKIP'
             '0ad5d1660886f7bbf5108b071bf5d7bbbabf1cd1258ce9d4587a01dec4a1aa89'
             'd8beb3d65a1aaf927285e6f055a9d1facd0f9c3fd851f91ba568389fb3137399'
             'c50d3019626183e753c53a997dc8a55938847543aa3178d4c51f377be741c693'
-            '5e3a3c4711d964d5152a04059a2b5c1d14bb13dd29bce370120f60e85b476b6f')
+            '5e3a3c4711d964d5152a04059a2b5c1d14bb13dd29bce370120f60e85b476b6f'
+            'bfae9e773edfd0ddbc617777fdd4c0609cba2b048be7afe40f97768e4eb6117e'
+            '547e092f6a20ebd15e486b31111145bc94b8709ec230da89c591963001378845')
 
 prepare() {
   mkdir -p build
@@ -42,6 +46,8 @@ prepare() {
 
   patch -p1 -d src/3rdparty -i "$srcdir"/qt5-webengine-ffmpeg5.patch # Fix build with ffmpeg 5
   patch -p1 -d src/3rdparty -i "$srcdir"/qt5-webengine-pipewire-0.3.patch # Port to pipewire 0.3
+  patch -p1 -d src/3rdparty/chromium -i "$srcdir"/qt5-webengine-libxml-2.12.patch # Fix build with libxml 2.12
+  patch -p1 -d src/3rdparty/chromium -i "$srcdir"/qt5-webengine-icu-74.patch # Fix build with ICU 74 - patch from Alpine
 }
 
 build() {
diff --git a/qt5-webengine-icu-74.patch b/qt5-webengine-icu-74.patch
new file mode 100644
index 0000000..02a44b7
--- /dev/null
+++ b/qt5-webengine-icu-74.patch
@@ -0,0 +1,20 @@
+See ICU change https://github.com/unicode-org/icu/commit/2e45e6ec0e84a1c01812015a254ea31b286316fb
+
+Similar has happened in the past. See:
+https://chromium.googlesource.com/chromium/src/+/e60b571faa3f14dd9119a6792dccf12f8bf80192
+
+diff --git a/third_party/blink/renderer/platform/text/text_break_iterator.cc b/third_party/blink/renderer/platform/text/text_break_iterator.cc
+index ddfbd51..247da06 100644
+--- a/third_party/blink/renderer/platform/text/text_break_iterator.cc
++++ b/third_party/blink/renderer/platform/text/text_break_iterator.cc
+@@ -161,7 +161,9 @@ static const unsigned char kAsciiLineBreakTable[][(kAsciiLineBreakTableLastChar
+ };
+ // clang-format on
+ 
+-#if U_ICU_VERSION_MAJOR_NUM >= 58
++#if U_ICU_VERSION_MAJOR_NUM >= 74
++#define BA_LB_COUNT (U_LB_COUNT - 8)
++#elif U_ICU_VERSION_MAJOR_NUM >= 58
+ #define BA_LB_COUNT (U_LB_COUNT - 3)
+ #else
+ #define BA_LB_COUNT U_LB_COUNT
diff --git a/qt5-webengine-libxml-2.12.patch b/qt5-webengine-libxml-2.12.patch
new file mode 100644
index 0000000..402d6ac
--- /dev/null
+++ b/qt5-webengine-libxml-2.12.patch
@@ -0,0 +1,26 @@
+diff --git a/third_party/blink/renderer/core/xml/xslt_processor.h b/third_party/blink/renderer/core/xml/xslt_processor.h
+index d53835e9675793..2eaea31ed29b90 100644
+--- a/third_party/blink/renderer/core/xml/xslt_processor.h
++++ b/third_party/blink/renderer/core/xml/xslt_processor.h
+@@ -77,7 +77,7 @@ class XSLTProcessor final : public ScriptWrappable {
+ 
+   void reset();
+ 
+-  static void ParseErrorFunc(void* user_data, xmlError*);
++  static void ParseErrorFunc(void* user_data, const xmlError*);
+   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 133e0b3355d2f0..f424077089da87 100644
+--- a/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
++++ b/third_party/blink/renderer/core/xml/xslt_processor_libxslt.cc
+@@ -66,7 +66,7 @@ void XSLTProcessor::GenericErrorFunc(void*, const char*, ...) {
+   // It would be nice to do something with this error message.
+ }
+ 
+-void XSLTProcessor::ParseErrorFunc(void* user_data, xmlError* error) {
++void XSLTProcessor::ParseErrorFunc(void* user_data, const xmlError* error) {
+   FrameConsole* console = static_cast<FrameConsole*>(user_data);
+   if (!console)
+     return;