M gnu/local.mk => gnu/local.mk +1 -0
@@ 2205,6 2205,7 @@ dist_patch_DATA = \
%D%/packages/patches/qtbase-qmake-use-libname.patch \
%D%/packages/patches/qtbase-5-use-TZDIR.patch \
%D%/packages/patches/qtscript-disable-tests.patch \
+ %D%/packages/patches/qtwebengine-fix-system-libvpx.patch \
%D%/packages/patches/quagga-reproducible-build.patch \
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \
%D%/packages/patches/quilt-grep-compat.patch \
A gnu/packages/patches/qtwebengine-fix-system-libvpx.patch => gnu/packages/patches/qtwebengine-fix-system-libvpx.patch +58 -0
@@ 0,0 1,58 @@
+From c4aa5cc8c87f301a7c3b208fb017468a88836d42 Mon Sep 17 00:00:00 2001
+From: Martin Negyokru <negyokru@inf.u-szeged.hu>
+Date: Fri, 17 Jan 2025 15:55:25 +0100
+Subject: [PATCH] Fix building with system libvpx
+
+Disable code path which depends on internal api.
+According to the upstream change it is only needed
+for logging. See https://crrev.com/c/chromium/src/+/5116580
+
+Fixes: QTBUG-129955
+Change-Id: I5f396fcd8b22402af71a9e557f9f2f7f177a8114
+Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/617894
+Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
+Reviewed-by: Moss Heim <moss.heim@qt.io>
+(cherry picked from commit 30e6fccd654e43b016637d25466b00d3897da0f9)
+Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/621129
+Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
+---
+
+diff --git a/src/3rdparty/chromium/media/base/libvpx_thread_wrapper.cc b/src/3rdparty/chromium/media/base/libvpx_thread_wrapper.cc
+index 5566c8e..4821c0c 100644
+--- a/src/3rdparty/chromium/media/base/libvpx_thread_wrapper.cc
++++ b/src/3rdparty/chromium/media/base/libvpx_thread_wrapper.cc
+@@ -5,11 +5,14 @@
+ #include "media/base/libvpx_thread_wrapper.h"
+
+ #include "media/base/codec_worker_impl.h"
++#if !BUILDFLAG(IS_QTWEBENGINE) || !defined(USE_SYSTEM_LIBVPX)
+ #include "third_party/libvpx/source/libvpx/vpx_util/vpx_thread.h"
++#endif
+
+ namespace media {
+
+ void InitLibVpxThreadWrapper() {
++#if !BUILDFLAG(IS_QTWEBENGINE) || !defined(USE_SYSTEM_LIBVPX)
+ const VPxWorkerInterface interface =
+ CodecWorkerImpl<VPxWorkerInterface, VPxWorkerImpl, VPxWorker,
+ VPxWorkerStatus, VPX_WORKER_STATUS_NOT_OK,
+@@ -17,6 +20,7 @@
+ VPX_WORKER_STATUS_WORKING>::GetCodecWorkerInterface();
+
+ CHECK(vpx_set_worker_interface(&interface));
++#endif
+ }
+
+ } // namespace media
+diff --git a/src/3rdparty/chromium/third_party/libvpx/BUILD.gn b/src/3rdparty/chromium/third_party/libvpx/BUILD.gn
+index 6aedb08..2933bf4 100644
+--- a/src/3rdparty/chromium/third_party/libvpx/BUILD.gn
++++ b/src/3rdparty/chromium/third_party/libvpx/BUILD.gn
+@@ -634,6 +634,7 @@
+ if (use_system_libvpx) {
+ pkg_config("system_libvpx") {
+ packages = [ "vpx" ]
++ defines = ["USE_SYSTEM_LIBVPX=true"]
+ }
+ }
+
M gnu/packages/qt.scm => gnu/packages/qt.scm +18 -12
@@ 3576,14 3576,16 @@ and binaries removed, and adds modular support for using system libraries.")
(define-public qtwebengine
(package
(name "qtwebengine")
- (version "6.7.2")
+ (version "6.8.2")
(source
(origin
(method url-fetch)
(uri (qt-url name version))
(sha256
(base32
- "1lgz0mj9lw4ii1c8nkbr0ll02xzx8i6n7wvvn21f72sdb5smhxf7"))
+ "00j8wlz6fbg4ivkc6w7dbc67835hv7w74sfrshdb75y12rzri5gz"))
+ (patches
+ (search-patches "qtwebengine-fix-system-libvpx.patch"))
(modules '((ice-9 ftw)
(ice-9 match)
(srfi srfi-1)
@@ 3607,7 3609,6 @@ and binaries removed, and adds modular support for using system libraries.")
"base/third_party/nspr"
"base/third_party/superfasthash"
"base/third_party/symbolize"
- "base/third_party/xdg_mime"
"base/third_party/xdg_user_dirs"
"net/third_party/mozilla_security_manager"
"net/third_party/nss"
@@ 3658,6 3659,7 @@ additional_readme_paths.json"
"third_party/devtools-frontend/src/front_end/third_party/chromium"
"third_party/devtools-frontend/src/front_end/third_party/codemirror"
"third_party/devtools-frontend/src/front_end/third_party/codemirror.next"
+ "third_party/devtools-frontend/src/front_end/third_party/csp_evaluator"
"third_party/devtools-frontend/src/front_end/third_party/diff"
"third_party/devtools-frontend/src/front_end/third_party/intl-messageformat"
"third_party/devtools-frontend/src/front_end/third_party/lighthouse"
@@ 3733,6 3735,7 @@ vscode.web-custom-data"
"third_party/libxml"
"third_party/libyuv"
"third_party/libzip" ;BSD-3
+ "third_party/lit"
"third_party/lottie"
"third_party/lss"
"third_party/mako"
@@ 3838,8 3841,6 @@ vscode.web-custom-data"
"v8/third_party/v8/builtins")))
(with-directory-excursion "src/3rdparty"
- (delete-file-recursively "ninja")
-
(with-directory-excursion "chromium"
;; Delete bundled software and binaries that were not
;; explicitly preserved above.
@@ 3865,10 3866,15 @@ linux/libcurl_wrapper.h"
"third_party/analytics/google-analytics-bundle.js"
(lambda (port)
(const #t)))))
- ;; Do not enable support for loading the Widevine DRM plugin.
- (substitute* "src/core/CMakeLists.txt"
- (("enable_widevine=true")
- "enable_widevine=false")))))))
+ (substitute* "src/core/CMakeLists.txt"
+ (("enable_widevine=true")
+ (string-join
+ '(;; Do not enable support for loading the Widevine DRM
+ ;; plugin.
+ "enable_widevine=false"
+ ;; Link pulseaudio directly instead of using dlopen.
+ "link_pulseaudio=true")
+ "\n"))))))))
(build-system cmake-build-system)
(arguments
(list
@@ 3885,7 3891,6 @@ linux/libcurl_wrapper.h"
;; disable it.
"-DQT_FEATURE_webengine_printing_and_pdf=OFF"
"-DQT_FEATURE_webengine_pepper_plugins=OFF" ;widevine
- "-DQT_FEATURE_system_ffmpeg=ON"
;; The webenginedriver feature is disabled, otherwise the RUNPATH
;; validation phase fails.
@@ 3978,13 3983,14 @@ linux/libcurl_wrapper.h"
(modify-inputs (package-native-inputs qtwebengine-5)
(delete "python2" "python2-six")
(replace "node" node-lts)
- (append clang-15
- lld-as-ld-wrapper-15
+ (append clang-18
+ lld-as-ld-wrapper-18
python-wrapper
python-beautifulsoup4
python-html5lib)))
(inputs
(modify-inputs (package-inputs qtwebengine-5)
+ (replace "ffmpeg" ffmpeg)
(replace "icu4c" icu4c-75)
(replace "re2" re2-next)
(replace "qtmultimedia" qtmultimedia)