Accepting request 1175837 from home:krop:qtwebengine-lts

Update to 5.15.17

OBS-URL: https://build.opensuse.org/request/show/1175837
OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:5.15/libqt5-qtwebengine?expand=0&rev=64
This commit is contained in:
Fabian Vogt 2024-05-22 13:36:23 +00:00 committed by Git OBS Bridge
parent 098a6c9472
commit 62d1bf8a5c
10 changed files with 64 additions and 2306 deletions

View File

@ -1,53 +0,0 @@
From 159dff274a7f32f9b53711df6a5b6fbae8c64b4a Mon Sep 17 00:00:00 2001
From: Martin Negyokru <negyokru@inf.u-szeged.hu>
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 <allan.jensen@qt.io>
---
.../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<FrameConsole*>(user_data);
if (!console)
return;
--
2.44.0

View File

@ -1,19 +1,11 @@
<services>
<service name="tar_scm" mode="disabled">
<param name="changesgenerate">enable</param>
<param name="version">5.15.16</param>
<param name="version">5.15.17</param>
<param name="url">git://code.qt.io/qt/qtwebengine.git</param>
<param name="scm">git</param>
<param name="filename">qtwebengine-everywhere-src</param>
<param name="revision">v5.15.16-lts</param>
</service>
<service name="tar_scm" mode="disabled">
<param name="changesgenerate">disable</param>
<param name="url">https://chromium.googlesource.com/catapult</param>
<param name="revision">main</param>
<param name="scm">git</param>
<param name="filename">catapult</param>
<param name="versionformat">git</param>
<param name="revision">v5.15.17-lts</param>
</service>
<service name="recompress" mode="disabled">
<param name="file">*.tar</param>

View File

@ -1,4 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">git://code.qt.io/qt/qtwebengine.git</param>
<param name="changesrevision">224806a7022eed6d5c75b486bec8715a618cb314</param></service></servicedata>
<param name="changesrevision">17fd3176988586168bee8654008a097a5f23ec1d</param></service></servicedata>

BIN
catapult-git.tar.xz (Stored with Git LFS)

Binary file not shown.

View File

@ -1,3 +1,48 @@
-------------------------------------------------------------------
Wed May 22 08:20:33 UTC 2024 - christophe@krop.fr
- Update to version 5.15.17:
* Add option to chose python version for building 5.15 WebEngine
* Update Chromium. Backported fixes:
* [Backport] Security bug 325296797
* [Backport] CVE-2024-1059: Use after free in WebRTC
* [Backport] Security bug 1518994
* Fixup for [Backport] Security bug 1519980
* [Backport] CVE-2024-1283: Heap buffer overflow in Skia
* [Backport] CVE-2024-1060: Use after free in Canvas
* [Backport] CVE-2024-1077: Use after free in Network
* [Backport] Security bug 1519980
* [Backport] CVE-2024-0808: Integer underflow in WebUI
* [Backport] CVE-2024-0807: Use after free in WebAudio
* Fix ffmpeg assembly with newer binutil
* [Backport] Security bug 1511689
* [Backport] CVE-2024-0224: Use after free in WebAudio
* [Backport] CVE-2023-7024: Heap buffer overflow in WebRTC
* [Backport] Security bug 1506535
* [Backport] CVE-2024-0519: Out of bounds memory access in V8
* [Backport] CVE-2024-0518: Type Confusion in V8
* [Backport] CVE-2024-0333: Insufficient data validation in Extensions
* [Backport] CVE-2024-0222: Use after free in ANGLE
* Fixup: [Backport] Security bug 1488199
* FIXUP: Fix compilation with system ICU
* Fixup: [Backport] Security bug 1505632
* [Backport] Security bug 1505632
* [Backport] CVE-2023-6702: Type Confusion in V8
* [Backport] CVE-2023-6345: Integer overflow in Skia
* Bump V8_PATCH_LEVEL
* [Backport] Security bug 1488199 (2/2)
* [Backport] Security bug 1488199 (1/2)
* [Backport] CVE-2023-6510: Use after free in Media Capture
* Fix building with system libxml2
* [Backport] CVE-2023-6347: Use after free in Mojo
* [Backport] CVE-2023-6112: Use after free in Navigation
* [Backport] CVE-2023-5997: Use after free in Garbage Collection
- Drop patches, merged upstream:
* 0001-Fix-building-with-system-libxml2.patch
* qtwebengine-python3.patch
* python311-fixes.patch
- Update _service file, catapult snapshots are not needed anymore
-------------------------------------------------------------------
Fri May 17 05:53:59 UTC 2024 - Christoph G <foss@grueninger.de>

View File

@ -32,19 +32,17 @@
%global _qtwebengine_dictionaries_dir %{_libqt5_datadir}/qtwebengine_dictionaries
Name: libqt5-qtwebengine
Version: 5.15.16
Version: 5.15.17
Release: 0
Summary: Qt 5 WebEngine Library
License: LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
Group: Development/Libraries/X11
URL: https://www.qt.io
%define base_name libqt5
%define real_version 5.15.16
%define so_version 5.15.16
%define real_version 5.15.17
%define so_version 5.15.17
%define tar_version qtwebengine-everywhere-src-%{version}
Source: %{tar_version}.tar.xz
# Use a git snapshot for catapult to build with python3 (git rev: 2da767c6)
Source1: catapult-git.tar.xz
Source99: libqt5-qtwebengine-rpmlintrc
# PATCH-FIX-UPSTREAM armv6-ffmpeg-no-thumb.patch - Fix ffmpeg configuration for armv6
Patch0: armv6-ffmpeg-no-thumb.patch
@ -56,16 +54,10 @@ Patch2: rtc-dont-use-h264.patch
Patch3: 0001-skia-Some-includes-to-fix-build-with-GCC-12.patch
# PATCH-FIX-UPSTREAM -- build with pipewire 0.3
Patch4: qtwebengine-pipewire-0.3.patch
# PATCH-FIX-OPENSUSE -- build with python 3
Patch5: qtwebengine-python3.patch
# PATCH-FIX-UPSTREAM -- handle futex_time64
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
Patch5: sandbox_futex_time64.patch
# PATCH-FIX-UPSTREAM -- Add missing dependencies for compatibility with Ninja 1.12
Patch9: Add-missing-dependencies.patch
Patch6: Add-missing-dependencies.patch
### Patch 50-99 are applied conditionally
# PATCH-FIX-OPENSUSE -- allow building qtwebengine with ffmpeg5
Patch50: qtwebengine-ffmpeg5.patch
@ -108,6 +100,7 @@ BuildRequires: pipewire-devel
BuildRequires: pkgconfig
BuildRequires: %{pyver}
BuildRequires: %{pyver}-devel
BuildRequires: %{pyver}-html5lib
BuildRequires: %{pyver}-xml
BuildRequires: re2c
BuildRequires: sed
@ -300,16 +293,6 @@ Examples for the libqt5-qtpdf module.
%patch -P4 -p1
%patch -P5 -p1
%patch -P6 -p1
%patch -P7 -p1
%patch -P8 -p1
%patch -P9 -p1
# Replace the whole catapult folder rather than picking individual changes
pushd src/3rdparty/chromium/third_party
rm -r catapult
tar xJf %{SOURCE1}
mv catapult-git catapult
popd
# FFmpeg 5
%if %{with system_ffmpeg}
@ -330,11 +313,6 @@ sed -i -e '/toolprefix = /d' -e 's/\${toolprefix}//g' \
%build
rm -r src/3rdparty/chromium/third_party/openh264/src
%if "%{pyver}" == "python311"
sed -i 's#QMAKE_PYTHON = python3#QMAKE_PYTHON = python3.11#' mkspecs/features/functions.prf
sed -i 's#python3#python3.11#' configure.pri
%endif
%ifnarch x86_64
RPM_OPT_FLAGS="$RPM_OPT_FLAGS "
export RPM_OPT_FLAGS=${RPM_OPT_FLAGS/-g / }
@ -349,6 +327,9 @@ export RPM_OPT_FLAGS="${RPM_OPT_FLAGS} -Wno-return-type"
gn_args+="link_pulseaudio=true" \
gn_args+="media_use_openh264=false" \
gn_args+="use_system_libxml=true use_system_libxslt=true" \
%if "%{pyver}" == "python311"
config.input.python_override=python3.11 \
%endif
qtwebengine.pro -- \
-webengine-alsa \
-no-webengine-embedded-build \
@ -363,7 +344,10 @@ export RPM_OPT_FLAGS="${RPM_OPT_FLAGS} -Wno-return-type"
-webengine-proprietary-codecs \
%endif
%if %{with pipewire}
-webengine-webrtc-pipewire
-webengine-webrtc-pipewire \
%endif
%if 0%{?suse_version} > 1500
-webengine-python-version python3
%endif
# Determine the right number of parallel processes based on the available memory

View File

@ -1,149 +0,0 @@
From f90f49df8db04dcb72f7ce0c4d0b2fe329bab00c Mon Sep 17 00:00:00 2001
From: Dan Harrington <harringtond@chromium.org>
Date: Fri, 04 Jun 2021 16:46:25 +0000
Subject: [PATCH] Migrate presubmit to python3
Fixed a couple warnings I found when running the unit
tests in python3.
Bug: 1212110
Change-Id: I3d1b5859b5c517ad5eea30cb816fad0389715f73
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2934203
Reviewed-by: Jesse Doherty <jwd@chromium.org>
Commit-Queue: Dan H <harringtond@chromium.org>
Cr-Commit-Position: refs/heads/master@{#889331}
---
Index: qtwebengine-everywhere-src-5.15.13/src/3rdparty/chromium/tools/metrics/ukm/PRESUBMIT.py
===================================================================
--- qtwebengine-everywhere-src-5.15.13.orig/src/3rdparty/chromium/tools/metrics/ukm/PRESUBMIT.py
+++ qtwebengine-everywhere-src-5.15.13/src/3rdparty/chromium/tools/metrics/ukm/PRESUBMIT.py
@@ -8,6 +8,8 @@ See http://dev.chromium.org/developers/h
for more details on the presubmit API built into gcl.
"""
+USE_PYTHON3 = True
+
UKM_XML = 'ukm.xml'
Index: qtwebengine-everywhere-src-5.15.13/src/3rdparty/chromium/tools/metrics/ukm/gen_builders_test.py
===================================================================
--- qtwebengine-everywhere-src-5.15.13.orig/src/3rdparty/chromium/tools/metrics/ukm/gen_builders_test.py
+++ qtwebengine-everywhere-src-5.15.13/src/3rdparty/chromium/tools/metrics/ukm/gen_builders_test.py
@@ -25,8 +25,8 @@ class GenBuildersTest(unittest.TestCase)
def testGenerateCode(self):
relpath = '.'
- data = ukm_model.UKM_XML_TYPE.Parse(
- open('../../tools/metrics/ukm/ukm.xml').read())
+ with open('../../tools/metrics/ukm/ukm.xml') as f:
+ data = ukm_model.UKM_XML_TYPE.Parse(f.read())
event = data[ukm_model._EVENT_TYPE.tag][0]
metric = event[ukm_model._METRIC_TYPE.tag][0]
self.assertIsNotNone(event)
Index: qtwebengine-everywhere-src-5.15.13/src/3rdparty/chromium/tools/metrics/ukm/ukm_model.py
===================================================================
--- qtwebengine-everywhere-src-5.15.13.orig/src/3rdparty/chromium/tools/metrics/ukm/ukm_model.py
+++ qtwebengine-everywhere-src-5.15.13/src/3rdparty/chromium/tools/metrics/ukm/ukm_model.py
@@ -39,15 +39,16 @@ _INDEX_TYPE = models.ObjectNodeType(
],
single_line=True)
-_STATISTICS_TYPE = models.ObjectNodeType(
+_STATISTICS_TYPE = models.ObjectNodeType(
'statistics',
attributes=[
- ('export', str, r'^(?i)(|true|false)$'),
+ ('export', str, r'(?i)^(|true|false)$'),
],
children=[
models.ChildType(_QUANTILES_TYPE.tag, _QUANTILES_TYPE, multiple=False),
- models.ChildType(
- _ENUMERATION_TYPE.tag, _ENUMERATION_TYPE, multiple=False),
+ models.ChildType(_ENUMERATION_TYPE.tag,
+ _ENUMERATION_TYPE,
+ multiple=False),
])
_HISTORY_TYPE = models.ObjectNodeType(
@@ -90,25 +91,34 @@ _METRIC_TYPE = models.ObjectNodeType(
_AGGREGATION_TYPE.tag, _AGGREGATION_TYPE, multiple=True),
])
-_EVENT_TYPE = models.ObjectNodeType(
- 'event',
- attributes=[
- ('name', str, r'^[A-Za-z0-9.]+$'),
- ('singular', str, r'^(?i)(|true|false)$'),
- ],
- alphabetization=[
- (_OBSOLETE_TYPE.tag, _KEEP_ORDER),
- (_OWNER_TYPE.tag, _KEEP_ORDER),
- (_SUMMARY_TYPE.tag, _KEEP_ORDER),
- (_METRIC_TYPE.tag, _LOWERCASE_FN('name')),
- ],
- extra_newlines=(1, 1, 1),
- children=[
- models.ChildType(_OBSOLETE_TYPE.tag, _OBSOLETE_TYPE, multiple=False),
- models.ChildType(_OWNER_TYPE.tag, _OWNER_TYPE, multiple=True),
- models.ChildType(_SUMMARY_TYPE.tag, _SUMMARY_TYPE, multiple=False),
- models.ChildType(_METRIC_TYPE.tag, _METRIC_TYPE, multiple=True),
- ])
+_EVENT_TYPE = models.ObjectNodeType('event',
+ attributes=[
+ ('name', str, r'^[A-Za-z0-9.]+$'),
+ ('singular', str,
+ r'(?i)^(|true|false)$'),
+ ],
+ alphabetization=[
+ (_OBSOLETE_TYPE.tag, _KEEP_ORDER),
+ (_OWNER_TYPE.tag, _KEEP_ORDER),
+ (_SUMMARY_TYPE.tag, _KEEP_ORDER),
+ (_METRIC_TYPE.tag,
+ _LOWERCASE_FN('name')),
+ ],
+ extra_newlines=(1, 1, 1),
+ children=[
+ models.ChildType(_OBSOLETE_TYPE.tag,
+ _OBSOLETE_TYPE,
+ multiple=False),
+ models.ChildType(_OWNER_TYPE.tag,
+ _OWNER_TYPE,
+ multiple=True),
+ models.ChildType(_SUMMARY_TYPE.tag,
+ _SUMMARY_TYPE,
+ multiple=False),
+ models.ChildType(_METRIC_TYPE.tag,
+ _METRIC_TYPE,
+ multiple=True),
+ ])
_UKM_CONFIGURATION_TYPE = models.ObjectNodeType(
'ukm-configuration',
Index: qtwebengine-everywhere-src-5.15.13/src/3rdparty/chromium/PRESUBMIT_test_mocks.py
===================================================================
--- qtwebengine-everywhere-src-5.15.13.orig/src/3rdparty/chromium/PRESUBMIT_test_mocks.py
+++ qtwebengine-everywhere-src-5.15.13/src/3rdparty/chromium/PRESUBMIT_test_mocks.py
@@ -119,7 +119,7 @@ class MockInputApi(object):
def PresubmitLocalPath(self):
return self.presubmit_local_path
- def ReadFile(self, filename, mode='rU'):
+ def ReadFile(self, filename, mode='r'):
if hasattr(filename, 'AbsoluteLocalPath'):
filename = filename.AbsoluteLocalPath()
for file_ in self.files:
Index: qtwebengine-everywhere-src-5.15.13/src/3rdparty/chromium/tools/grit/grit/util.py
===================================================================
--- qtwebengine-everywhere-src-5.15.13.orig/src/3rdparty/chromium/tools/grit/grit/util.py
+++ qtwebengine-everywhere-src-5.15.13/src/3rdparty/chromium/tools/grit/grit/util.py
@@ -211,7 +211,7 @@ def ReadFile(filename, encoding):
mode = 'rb'
encoding = None
else:
- mode = 'rU'
+ mode = 'r'
with io.open(abs(filename), mode, encoding=encoding) as f:
return f.read()

BIN
qtwebengine-everywhere-src-5.15.16.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
qtwebengine-everywhere-src-5.15.17.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff