diff --git a/qt6-qtwebengine.spec b/qt6-qtwebengine.spec index 7f2a6c6371695b5dd41cf6b5d34fc1ac6941acf8..bc2cacb5b065f08dd4426b91d309e342724065cd 100644 --- a/qt6-qtwebengine.spec +++ b/qt6-qtwebengine.spec @@ -11,6 +11,7 @@ %global use_system_libicu 1 +%global use_system_py_six 1 # NEON support on ARM (detected at runtime) - disable this if you are hitting # FTBFS due to e.g. GCC bug https://bugzilla.redhat.com/show_bug.cgi?id=1282495 #global arm_neon 1 @@ -37,8 +38,8 @@ Summary: Qt6 - QtWebEngine components Name: qt6-qtwebengine -Version: 6.5.0 -Release: 6 +Version: 6.5.2 +Release: 1 # See LICENSE.GPL LICENSE.LGPL LGPL_EXCEPTION.txt, for details # See also http://qt-project.org/doc/qt-5.0/qtdoc/licensing.html @@ -115,7 +116,7 @@ BuildRequires: git-core BuildRequires: gperf BuildRequires: krb5-devel %if 0%{?use_system_libicu} -BuildRequires: libicu-devel >= 65 +BuildRequires: libicu-devel >= 68 %endif BuildRequires: libjpeg-devel BuildRequires: nodejs @@ -187,6 +188,9 @@ BuildRequires: pkgconfig(libavutil) # src/3rdparty/chromium/third_party/sqlite/README.chromium for details #BuildRequires: pkgconfig(sqlite3) +# Split subpackage +Requires: qt6-qtpdf%{?_isa} = %{version}-%{release} + ## Various bundled libraries that Chromium does not support unbundling :-( ## Only the parts actually built are listed. ## Query for candidates: @@ -306,6 +310,7 @@ Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: qt6-qtbase-devel%{?_isa} Requires: qt6-qtdeclarative-devel%{?_isa} +Requires: qt6-qtpdf-devel%{?_isa} = %{version}-%{release} # not arch'd for now, see if can get away with avoiding multilib'ing -- rex Requires: %{name}-devtools = %{version}-%{release} %description devel @@ -323,6 +328,25 @@ Summary: Example files for %{name} %description examples %{summary}. +%package -n qt6-qtpdf +Summary: Qt6 - QtPdf components +%description -n qt6-qtpdf +%{summary}. + +%package -n qt6-qtpdf-devel +Summary: Development files for qt6-qtpdf +Requires: qt6-qtpdf%{?_isa} = %{version}-%{release} +Requires: qt6-qtbase-devel%{?_isa} +Requires: qt6-qtdeclarative-devel%{?_isa} +%description -n qt6-qtpdf-devel +%{summary}. + +%package -n qt6-qtpdf-examples +Summary: Example files for qt6-qtpdf + +%description -n qt6-qtpdf-examples +%{summary}. + %prep cat %{SOURCE100} %{SOURCE101} > %{SOURCE0} %setup -q -n %{qt_module}-everywhere-src-%{version} -a20 @@ -353,6 +377,16 @@ popd sed -i -e '/toolprefix = /d' -e 's/\${toolprefix}//g' \ src/3rdparty/chromium/build/toolchain/linux/BUILD.gn +%if 0%{?use_system_py_six} +rm src/3rdparty/chromium/third_party/six/src/six.py +rm src/3rdparty/chromium/third_party/catapult/third_party/six/six.py +rm src/3rdparty/chromium/third_party/wpt_tools/wpt/tools/third_party/six/six.py + +ln -s /usr/lib/python%{python3_version}/site-packages/six.py src/3rdparty/chromium/third_party/six/src/six.py +ln -s /usr/lib/python%{python3_version}/site-packages/six.py src/3rdparty/chromium/third_party/catapult/third_party/six/six.py +ln -s /usr/lib/python%{python3_version}/site-packages/six.py src/3rdparty/chromium/third_party/wpt_tools/wpt/tools/third_party/six/six.py +%endif + %if 0%{?use_system_re2} # http://bugzilla.redhat.com/1337585 # can't just delete, but we'll overwrite with system headers to be on the safe side @@ -451,9 +485,6 @@ done %if 0%{?docs} %license src/webengine/doc/src/qtwebengine-3rdparty.qdoc %endif -%{_qt6_libdir}/libQt6Pdf.so.* -%{_qt6_libdir}/libQt6PdfQuick.so.* -%{_qt6_libdir}/libQt6PdfWidgets.so.* %{_qt6_libdir}/libQt6WebEngineCore.so.* %{_qt6_libdir}/libQt6WebEngineQuick.so.* %{_qt6_libdir}/libQt6WebEngineQuickDelegatesQml.so.* @@ -461,16 +492,16 @@ done %{_qt6_libdir}/qt6/libexec/gn %{_qt6_libdir}/qt6/libexec/qwebengine_convert_dict %{_qt6_libdir}/qt6/libexec/QtWebEngineProcess -%dir %{_qt6_libdir}/qt6/qml/QtQuick/Pdf -%{_qt6_libdir}/qt6/qml/QtQuick/Pdf/* %dir %{_qt6_libdir}/qt6/qml/QtWebEngine %{_qt6_libdir}/qt6/qml/QtWebEngine/* %{_qt6_plugindir}/designer/libqwebengineview.so -%{_qt6_plugindir}/imageformats/libqpdf.so %dir %{_qt6_datadir}/resources/ %{_qt6_datadir}/resources/qtwebengine_resources.pak %{_qt6_datadir}/resources/qtwebengine_resources_100p.pak %{_qt6_datadir}/resources/qtwebengine_resources_200p.pak +%if ! 0%{?use_system_libicu} +%{_qt6_datadir}/resources/icudtl.dat +%endif %dir %{_qtwebengine_dictionaries_dir} %dir %{_qt6_translationdir}/qtwebengine_locales %lang(am) %{_qt6_translationdir}/qtwebengine_locales/am.pak @@ -529,46 +560,27 @@ done %files devel %{_rpmmacrodir}/macros.qt6-qtwebengine -%dir %{_qt6_headerdir}/QtPdf -%{_qt6_headerdir}/QtPdf/* -%dir %{_qt6_headerdir}/QtPdfQuick -%{_qt6_headerdir}/QtPdfQuick/* -%dir %{_qt6_headerdir}/QtPdfWidgets -%{_qt6_headerdir}/QtPdfWidgets/* %dir %{_qt6_headerdir}/QtWebEngineCore %{_qt6_headerdir}/QtWebEngineCore/* %dir %{_qt6_headerdir}/QtWebEngineQuick %{_qt6_headerdir}/QtWebEngineQuick/* %dir %{_qt6_headerdir}/QtWebEngineWidgets %{_qt6_headerdir}/QtWebEngineWidgets/* -%{_qt6_libdir}/qt6/metatypes/*.json -%{_qt6_libdir}/qt6/modules/*.json -%{_qt6_libdir}/libQt6Pdf.so -%{_qt6_libdir}/libQt6PdfQuick.so -%{_qt6_libdir}/libQt6PdfWidgets.so +%{_qt6_libdir}/qt6/metatypes/qt6webengine*.json +%{_qt6_libdir}/qt6/modules/WebEngine*.json %{_qt6_libdir}/libQt6WebEngineCore.so %{_qt6_libdir}/libQt6WebEngineQuick.so %{_qt6_libdir}/libQt6WebEngineQuickDelegatesQml.so %{_qt6_libdir}/libQt6WebEngineWidgets.so %{_qt6_libdir}/libQt6WebEngineCore.prl -%{_qt6_libdir}/libQt6Pdf.prl -%{_qt6_libdir}/libQt6PdfQuick.prl -%{_qt6_libdir}/libQt6PdfWidgets.prl %{_qt6_libdir}/libQt6WebEngineQuick.prl %{_qt6_libdir}/libQt6WebEngineQuickDelegatesQml.prl %{_qt6_libdir}/libQt6WebEngineWidgets.prl %{_qt6_libdir}/cmake/Qt6/*.cmake -%{_qt6_libdir}/cmake/Qt6BuildInternals/StandaloneTests -%{_qt6_libdir}/cmake/Qt6Gui/*.cmake -%{_qt6_libdir}/cmake/Qt6Qml/QmlPlugins/*.cmake +%{_qt6_libdir}/cmake/Qt6BuildInternals/StandaloneTests/QtWebEngine* +%{_qt6_libdir}/cmake/Qt6Qml/QmlPlugins/Qt6qtwebengine*.cmake %dir %{_qt6_libdir}/cmake/Qt6Designer -%{_qt6_libdir}/cmake/Qt6Designer/*.cmake -%dir %{_qt6_libdir}/cmake/Qt6Pdf -%{_qt6_libdir}/cmake/Qt6Pdf/*.cmake -%dir %{_qt6_libdir}/cmake/Qt6PdfQuick -%{_qt6_libdir}/cmake/Qt6PdfQuick/*.cmake -%dir %{_qt6_libdir}/cmake/Qt6PdfWidgets -%{_qt6_libdir}/cmake/Qt6PdfWidgets/*.cmake +%{_qt6_libdir}/cmake/Qt6Designer/Qt6QWebEngine*.cmake %dir %{_qt6_libdir}/cmake/Qt6WebEngineQuick %{_qt6_libdir}/cmake/Qt6WebEngineQuick/*.cmake %dir %{_qt6_libdir}/cmake/Qt6WebEngineWidgets @@ -579,28 +591,68 @@ done %{_qt6_libdir}/cmake/Qt6WebEngineCoreTools/*.cmake %dir %{_qt6_libdir}/cmake/Qt6WebEngineQuickDelegatesQml %{_qt6_libdir}/cmake/Qt6WebEngineQuickDelegatesQml/*.cmake -%{_qt6_libdir}/pkgconfig/Qt6Pdf.pc -%{_qt6_libdir}/pkgconfig/Qt6PdfQuick.pc -%{_qt6_libdir}/pkgconfig/Qt6PdfWidgets.pc %{_qt6_libdir}/pkgconfig/Qt6WebEngineCore.pc %{_qt6_libdir}/pkgconfig/Qt6WebEngineQuick.pc %{_qt6_libdir}/pkgconfig/Qt6WebEngineQuickDelegatesQml.pc %{_qt6_libdir}/pkgconfig/Qt6WebEngineWidgets.pc -%{_qt6_archdatadir}/mkspecs/modules/*.pri +%{_qt6_archdatadir}/mkspecs/modules/qt_lib_webengine*.pri %files devtools %{_qt6_datadir}/resources/qtwebengine_devtools_resources.pak %files examples -%{_qt6_examplesdir}/ +%{_qt6_examplesdir}/webengine* %if 0%{?docs} %files doc %{_qt6_docdir}/* %endif +%files -n qt6-qtpdf +%license LICENSE.* +%{_qt6_libdir}/libQt6Pdf.so.* +%{_qt6_libdir}/libQt6PdfQuick.so.* +%{_qt6_libdir}/libQt6PdfWidgets.so.* +%dir %{_qt6_libdir}/qt6/qml/QtQuick/Pdf +%{_qt6_libdir}/qt6/qml/QtQuick/Pdf/* +%{_qt6_plugindir}/imageformats/libqpdf.so + +%files -n qt6-qtpdf-devel +%dir %{_qt6_headerdir}/QtPdf +%{_qt6_headerdir}/QtPdf/* +%dir %{_qt6_headerdir}/QtPdfQuick +%{_qt6_headerdir}/QtPdfQuick/* +%dir %{_qt6_headerdir}/QtPdfWidgets +%{_qt6_headerdir}/QtPdfWidgets/* +%{_qt6_libdir}/qt6/metatypes/qt6pdf*.json +%{_qt6_libdir}/qt6/modules/Pdf*.json +%{_qt6_libdir}/libQt6Pdf.so +%{_qt6_libdir}/libQt6PdfQuick.so +%{_qt6_libdir}/libQt6PdfWidgets.so +%{_qt6_libdir}/libQt6Pdf.prl +%{_qt6_libdir}/libQt6PdfQuick.prl +%{_qt6_libdir}/libQt6PdfWidgets.prl +%{_qt6_libdir}/cmake/Qt6Gui/Qt6QPdf*.cmake +%dir %{_qt6_libdir}/cmake/Qt6Pdf +%{_qt6_libdir}/cmake/Qt6Pdf/*.cmake +%dir %{_qt6_libdir}/cmake/Qt6PdfQuick +%{_qt6_libdir}/cmake/Qt6PdfQuick/*.cmake +%dir %{_qt6_libdir}/cmake/Qt6PdfWidgets +%{_qt6_libdir}/cmake/Qt6PdfWidgets/*.cmake +%{_qt6_libdir}/cmake/Qt6Qml/QmlPlugins/Qt6Pdf*.cmake +%{_qt6_libdir}/pkgconfig/Qt6Pdf.pc +%{_qt6_libdir}/pkgconfig/Qt6PdfQuick.pc +%{_qt6_libdir}/pkgconfig/Qt6PdfWidgets.pc +%{_qt6_archdatadir}/mkspecs/modules/qt_lib_pdf*.pri + +%files -n qt6-qtpdf-examples +%{_qt6_examplesdir}/pdf* + %changelog +* Fri Mar 08 2024 peijiankang - 6.5.2-1 +- update version to 6.5.2 + * Mon Feb 5 2024 Dongxing Wang - 6.5.0-6 - remove Source0 file for fix Eulermaker failure diff --git a/qtwebengine-everywhere-src-6.5.0-clean.tar.xz.0 b/qtwebengine-everywhere-src-6.5.2-clean.tar.xz.0 similarity index 78% rename from qtwebengine-everywhere-src-6.5.0-clean.tar.xz.0 rename to qtwebengine-everywhere-src-6.5.2-clean.tar.xz.0 index 78365dc40bbc1d836c742a53781da133ac215465..a237aae3c4867a3f2d8b74584943f71b0d5edd15 100644 Binary files a/qtwebengine-everywhere-src-6.5.0-clean.tar.xz.0 and b/qtwebengine-everywhere-src-6.5.2-clean.tar.xz.0 differ diff --git a/qtwebengine-everywhere-src-6.5.0-clean.tar.xz.1 b/qtwebengine-everywhere-src-6.5.2-clean.tar.xz.1 similarity index 69% rename from qtwebengine-everywhere-src-6.5.0-clean.tar.xz.1 rename to qtwebengine-everywhere-src-6.5.2-clean.tar.xz.1 index 2f791a7f917dfecd9434296d7cff6f45252069fa..dfda535b42f9db5ff4ce6678b08d1fe84302a685 100644 Binary files a/qtwebengine-everywhere-src-6.5.0-clean.tar.xz.1 and b/qtwebengine-everywhere-src-6.5.2-clean.tar.xz.1 differ diff --git a/qtwebengine-fix-build.patch b/qtwebengine-fix-build.patch index 4ce1d039c49448ca198c09118d74727dac60b7ed..52d9d39cbe5bd865e5474619ccb93670ccf4af9e 100644 --- a/qtwebengine-fix-build.patch +++ b/qtwebengine-fix-build.patch @@ -1,114 +1,54 @@ diff --git a/src/3rdparty/chromium/base/debug/profiler.h b/src/3rdparty/chromium/base/debug/profiler.h -index 5f0deadd5..803de8f2b 100644 +index 80c73feb9..d3921a6aa 100644 --- a/src/3rdparty/chromium/base/debug/profiler.h +++ b/src/3rdparty/chromium/base/debug/profiler.h @@ -5,6 +5,7 @@ #ifndef BASE_DEBUG_PROFILER_H_ #define BASE_DEBUG_PROFILER_H_ - + +#include #include - - #include + #include + diff --git a/src/3rdparty/chromium/cc/trees/target_property.cc b/src/3rdparty/chromium/cc/trees/target_property.cc -index f6e873a01..5f952c5ed 100644 +index 714bd5efe..cf0bb5fa9 100644 --- a/src/3rdparty/chromium/cc/trees/target_property.cc +++ b/src/3rdparty/chromium/cc/trees/target_property.cc -@@ -6,6 +6,8 @@ - +@@ -8,6 +8,8 @@ + #include "ui/gfx/animation/keyframe/target_property.h" - + +#include + namespace cc { - + static_assert(TargetProperty::LAST_TARGET_PROPERTY < -diff --git a/src/3rdparty/chromium/components/viz/common/shared_element_resource_id.h b/src/3rdparty/chromium/components/viz/common/shared_element_resource_id.h -index b39a2d3dc..ca3d8aeda 100644 ---- a/src/3rdparty/chromium/components/viz/common/shared_element_resource_id.h -+++ b/src/3rdparty/chromium/components/viz/common/shared_element_resource_id.h -@@ -5,6 +5,7 @@ - #ifndef COMPONENTS_VIZ_COMMON_SHARED_ELEMENT_RESOURCE_ID_H_ - #define COMPONENTS_VIZ_COMMON_SHARED_ELEMENT_RESOURCE_ID_H_ - -+#include - #include - #include - -diff --git a/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h b/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h -index ee75332f0..c0168281e 100644 ---- a/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h -+++ b/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h -@@ -5,6 +5,7 @@ - #ifndef CONTENT_PUBLIC_BROWSER_BROWSING_DATA_REMOVER_DELEGATE_H_ - #define CONTENT_PUBLIC_BROWSER_BROWSING_DATA_REMOVER_DELEGATE_H_ - -+#include - #include - #include - #include "base/callback_forward.h" diff --git a/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc b/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc index c62a00ee0..af54520b7 100644 --- a/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc +++ b/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc @@ -6,6 +6,8 @@ - + #include "base/threading/platform_thread.h" - + +#include + namespace device { - + OneWriterSeqLock::OneWriterSeqLock() : sequence_(0) {} -diff --git a/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.h b/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.h -index 528b6683c..e37a16b81 100644 ---- a/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.h -+++ b/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.h -@@ -6,6 +6,7 @@ - #define DEVICE_BASE_SYNCHRONIZATION_ONE_WRITER_SEQLOCK_H_ - - #include -+#include - #include - - #include "base/atomicops.h" -diff --git a/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h b/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h -index 816d3405e..15c4004c0 100644 ---- a/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h -+++ b/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h -@@ -5,6 +5,7 @@ - #ifndef DEVICE_BLUETOOTH_PUBLIC_CPP_BLUETOOTH_UUID_H_ - #define DEVICE_BLUETOOTH_PUBLIC_CPP_BLUETOOTH_UUID_H_ - -+#include - #include - #include - #include diff --git a/src/3rdparty/chromium/extensions/common/constants.h b/src/3rdparty/chromium/extensions/common/constants.h -index bf6bac2b4..51c534509 100644 +index b1a0d56ea..019bc0743 100644 --- a/src/3rdparty/chromium/extensions/common/constants.h +++ b/src/3rdparty/chromium/extensions/common/constants.h -@@ -10,6 +10,8 @@ +@@ -12,6 +12,8 @@ #include "build/chromeos_buildflags.h" #include "extensions/common/extensions_export.h" - + +#include + namespace extensions { - + // Scheme we serve extension content from. -diff --git a/src/3rdparty/chromium/gpu/config/gpu_feature_info.h b/src/3rdparty/chromium/gpu/config/gpu_feature_info.h -index 1a7028e47..b9e951c0a 100644 ---- a/src/3rdparty/chromium/gpu/config/gpu_feature_info.h -+++ b/src/3rdparty/chromium/gpu/config/gpu_feature_info.h -@@ -5,6 +5,7 @@ - #ifndef GPU_CONFIG_GPU_FEATURE_INFO_H_ - #define GPU_CONFIG_GPU_FEATURE_INFO_H_ - -+#include - #include - #include - diff --git a/src/3rdparty/chromium/gpu/config/gpu_util.h b/src/3rdparty/chromium/gpu/config/gpu_util.h index 574aca1ff..fca32671c 100644 --- a/src/3rdparty/chromium/gpu/config/gpu_util.h @@ -116,73 +56,25 @@ index 574aca1ff..fca32671c 100644 @@ -5,6 +5,8 @@ #ifndef GPU_CONFIG_GPU_UTIL_H_ #define GPU_CONFIG_GPU_UTIL_H_ - + +#include + #include "build/build_config.h" #include "gpu/config/gpu_feature_info.h" #include "gpu/gpu_export.h" diff --git a/src/3rdparty/chromium/net/base/parse_number.h b/src/3rdparty/chromium/net/base/parse_number.h -index d6adf388e..560e692aa 100644 +index ea360d1c9..dca84fd02 100644 --- a/src/3rdparty/chromium/net/base/parse_number.h +++ b/src/3rdparty/chromium/net/base/parse_number.h -@@ -8,6 +8,8 @@ +@@ -10,6 +10,8 @@ #include "base/strings/string_piece.h" #include "net/base/net_export.h" - + +#include + // This file contains utility functions for parsing numbers, in the context of // network protocols. // -diff --git a/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h b/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h -index 5f289ddcd..44f2f9eb1 100644 ---- a/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h -+++ b/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h -@@ -6,6 +6,7 @@ - #define NET_COOKIES_COOKIE_INCLUSION_STATUS_H_ - - #include -+#include - #include - #include - #include -diff --git a/src/3rdparty/chromium/net/third_party/quiche/src/quiche/quic/core/crypto/quic_hkdf.h b/src/3rdparty/chromium/net/third_party/quiche/src/quiche/quic/core/crypto/quic_hkdf.h -index 6a300ed0c..3e30f1cb0 100644 ---- a/src/3rdparty/chromium/net/third_party/quiche/src/quiche/quic/core/crypto/quic_hkdf.h -+++ b/src/3rdparty/chromium/net/third_party/quiche/src/quiche/quic/core/crypto/quic_hkdf.h -@@ -5,6 +5,7 @@ - #ifndef QUICHE_QUIC_CORE_CRYPTO_QUIC_HKDF_H_ - #define QUICHE_QUIC_CORE_CRYPTO_QUIC_HKDF_H_ - -+#include - #include - - #include "absl/strings/string_view.h" -diff --git a/src/3rdparty/chromium/net/third_party/quiche/src/quiche/quic/core/quic_connection_id.h b/src/3rdparty/chromium/net/third_party/quiche/src/quiche/quic/core/quic_connection_id.h -index 52f150172..db4d31084 100644 ---- a/src/3rdparty/chromium/net/third_party/quiche/src/quiche/quic/core/quic_connection_id.h -+++ b/src/3rdparty/chromium/net/third_party/quiche/src/quiche/quic/core/quic_connection_id.h -@@ -5,6 +5,7 @@ - #ifndef QUICHE_QUIC_CORE_QUIC_CONNECTION_ID_H_ - #define QUICHE_QUIC_CORE_QUIC_CONNECTION_ID_H_ - -+#include - #include - #include - -diff --git a/src/3rdparty/chromium/pdf/document_attachment_info.h b/src/3rdparty/chromium/pdf/document_attachment_info.h -index e0fffc2ca..095463fcb 100644 ---- a/src/3rdparty/chromium/pdf/document_attachment_info.h -+++ b/src/3rdparty/chromium/pdf/document_attachment_info.h -@@ -5,6 +5,7 @@ - #ifndef PDF_DOCUMENT_ATTACHMENT_INFO_H_ - #define PDF_DOCUMENT_ATTACHMENT_INFO_H_ - -+#include - #include - - diff --git a/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h b/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h index 7c0dcdecb..97054d476 100644 --- a/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h @@ -201,65 +93,20 @@ index 7c0dcdecb..97054d476 100644 @@ -67,8 +71,6 @@ class ThreadSafeThreadTraits { int32_t ref_; }; - + - typedef pp::Lock Lock; - typedef pp::AutoLock AutoLock; }; - + /// The non-thread-safe version of thread traits. Using this class as the -diff --git a/src/3rdparty/chromium/sandbox/linux/syscall_broker/broker_file_permission.h b/src/3rdparty/chromium/sandbox/linux/syscall_broker/broker_file_permission.h -index b167ffb09..2347d5461 100644 ---- a/src/3rdparty/chromium/sandbox/linux/syscall_broker/broker_file_permission.h -+++ b/src/3rdparty/chromium/sandbox/linux/syscall_broker/broker_file_permission.h -@@ -6,6 +6,7 @@ - #define SANDBOX_LINUX_SYSCALL_BROKER_BROKER_FILE_PERMISSION_H_ - - #include -+#include - #include - - #include "sandbox/sandbox_export.h" -diff --git a/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h b/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h -index 4b76d33af..4db1902d1 100644 ---- a/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h -+++ b/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h -@@ -12,6 +12,7 @@ - - #include - #include -+#include - #include - #include - -diff --git a/src/3rdparty/chromium/third_party/blink/public/common/origin_trials/origin_trial_public_key.h b/src/3rdparty/chromium/third_party/blink/public/common/origin_trials/origin_trial_public_key.h -index c1b5f59f5..246200991 100644 ---- a/src/3rdparty/chromium/third_party/blink/public/common/origin_trials/origin_trial_public_key.h -+++ b/src/3rdparty/chromium/third_party/blink/public/common/origin_trials/origin_trial_public_key.h -@@ -6,6 +6,7 @@ - #define THIRD_PARTY_BLINK_PUBLIC_COMMON_ORIGIN_TRIALS_ORIGIN_TRIAL_PUBLIC_KEY_H_ - - #include -+#include - - namespace blink { - diff --git a/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/paint/effect_paint_property_node.h b/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/paint/effect_paint_property_node.h -index e40a76207..bf5ef7f13 100644 +index 745b7b089..1e5dec4f5 100644 --- a/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/paint/effect_paint_property_node.h +++ b/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/paint/effect_paint_property_node.h -@@ -122,7 +122,7 @@ class PLATFORM_EXPORT EffectPaintPropertyNode - - // An identifier for a document transition shared element. `id.valid()` - // returns true if this has been set, and false otherwise. -- DocumentTransitionSharedElementId document_transition_shared_element_id; -+ cc::DocumentTransitionSharedElementId document_transition_shared_element_id; - - // An identifier to tag shared element resources generated and cached in the - // Viz process. This generated resource can be used as content for other @@ -291,7 +291,7 @@ class PLATFORM_EXPORT EffectPaintPropertyNode return state_.compositor_element_id; } - + - const blink::DocumentTransitionSharedElementId& + const cc::DocumentTransitionSharedElementId& DocumentTransitionSharedElementId() const { @@ -272,10 +119,10 @@ index c7e4f2b37..e491a1f68 100644 @@ -33,6 +33,7 @@ #include #include - + +#include #include - + #include "client/linux/handler/microdump_extra_info.h" diff --git a/src/3rdparty/chromium/third_party/dawn/src/dawn/native/CacheKey.h b/src/3rdparty/chromium/third_party/dawn/src/dawn/native/CacheKey.h index 6cec3b6b8..541bba5b1 100644 @@ -284,10 +131,10 @@ index 6cec3b6b8..541bba5b1 100644 @@ -15,6 +15,7 @@ #ifndef SRC_DAWN_NATIVE_CACHEKEY_H_ #define SRC_DAWN_NATIVE_CACHEKEY_H_ - + +#include #include - + #include "dawn/native/stream/ByteVectorSink.h" diff --git a/src/3rdparty/chromium/third_party/dawn/src/tint/reader/spirv/entry_point_info.h b/src/3rdparty/chromium/third_party/dawn/src/tint/reader/spirv/entry_point_info.h index 90077421d..f303f9e8b 100644 @@ -296,10 +143,10 @@ index 90077421d..f303f9e8b 100644 @@ -15,6 +15,7 @@ #ifndef SRC_TINT_READER_SPIRV_ENTRY_POINT_INFO_H_ #define SRC_TINT_READER_SPIRV_ENTRY_POINT_INFO_H_ - + +#include #include - + #include "src/tint/ast/pipeline_stage.h" diff --git a/src/3rdparty/chromium/third_party/dawn/src/tint/reader/spirv/namer.h b/src/3rdparty/chromium/third_party/dawn/src/tint/reader/spirv/namer.h index 7a20e8738..655f69ce3 100644 @@ -308,7 +155,7 @@ index 7a20e8738..655f69ce3 100644 @@ -15,6 +15,7 @@ #ifndef SRC_TINT_READER_SPIRV_NAMER_H_ #define SRC_TINT_READER_SPIRV_NAMER_H_ - + +#include #include #include @@ -320,11 +167,11 @@ index 8e0306b6a..0fc0cc2b0 100644 @@ -15,6 +15,7 @@ #ifndef SRC_TINT_READER_WGSL_LEXER_H_ #define SRC_TINT_READER_WGSL_LEXER_H_ - + +#include #include #include - + diff --git a/src/3rdparty/chromium/third_party/dawn/src/tint/reader/wgsl/token.h b/src/3rdparty/chromium/third_party/dawn/src/tint/reader/wgsl/token.h index 4cf9aad1b..3fa13e216 100644 --- a/src/3rdparty/chromium/third_party/dawn/src/tint/reader/wgsl/token.h @@ -332,7 +179,7 @@ index 4cf9aad1b..3fa13e216 100644 @@ -15,6 +15,7 @@ #ifndef SRC_TINT_READER_WGSL_TOKEN_H_ #define SRC_TINT_READER_WGSL_TOKEN_H_ - + +#include #include #include @@ -344,7 +191,7 @@ index 0601ca068..ac9dde64e 100644 @@ -15,6 +15,7 @@ #ifndef SRC_TINT_WRITER_SPIRV_OPERAND_H_ #define SRC_TINT_WRITER_SPIRV_OPERAND_H_ - + +#include #include #include @@ -360,32 +207,7 @@ index a3099e15d..2e6f0eea7 100644 +#include #include #include - -diff --git a/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h b/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h -index d2731dac7..46bc87ef9 100644 ---- a/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h -+++ b/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h -@@ -5,6 +5,8 @@ - #ifndef CONSTANTS_ANNOTATION_FLAGS_H_ - #define CONSTANTS_ANNOTATION_FLAGS_H_ - -+#include -+ - namespace pdfium { - namespace annotation_flags { - -diff --git a/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h b/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h -index 1b4c53815..472042fab 100644 ---- a/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h -+++ b/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h -@@ -18,6 +18,7 @@ - #define INCLUDE_PERFETTO_EXT_BASE_UUID_H_ - - #include -+#include - #include - - #include "perfetto/ext/base/optional.h" + diff --git a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h index d047de1bf..d7fc91a59 100644 --- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h @@ -393,11 +215,11 @@ index d047de1bf..d7fc91a59 100644 @@ -21,6 +21,8 @@ #include "perfetto/trace_processor/status.h" #include "src/trace_processor/importers/common/trace_parser.h" - + +#include + namespace perfetto { - + namespace protos { diff --git a/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp b/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp index 0101632c5..3f04a2dd2 100644 @@ -406,7 +228,7 @@ index 0101632c5..3f04a2dd2 100644 @@ -15,6 +15,10 @@ #include #include - + +#include +#include +#include @@ -415,13 +237,13 @@ index 0101632c5..3f04a2dd2 100644 "aliceblue", "antiquewhite", diff --git a/src/3rdparty/chromium/third_party/vulkan_memory_allocator/include/vk_mem_alloc.h b/src/3rdparty/chromium/third_party/vulkan_memory_allocator/include/vk_mem_alloc.h -index b7c586b80..d950214c3 100644 +index 9e073d4e1..da96f327c 100644 --- a/src/3rdparty/chromium/third_party/vulkan_memory_allocator/include/vk_mem_alloc.h +++ b/src/3rdparty/chromium/third_party/vulkan_memory_allocator/include/vk_mem_alloc.h @@ -105,6 +105,8 @@ Documentation of all members: vk_mem_alloc.h - [Source repository on GitHub](https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator) */ - + +#include + #ifdef __cplusplus @@ -432,25 +254,13 @@ index b70ac4aa5..7ba555564 100644 --- a/src/3rdparty/chromium/third_party/webrtc/modules/desktop_capture/linux/wayland/xdg_session_details.h +++ b/src/3rdparty/chromium/third_party/webrtc/modules/desktop_capture/linux/wayland/xdg_session_details.h @@ -13,6 +13,7 @@ - + #include - + +#include #include - + namespace webrtc { -diff --git a/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h b/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h -index 4190a79dc..5a9285f00 100644 ---- a/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h -+++ b/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h -@@ -12,6 +12,7 @@ - #ifndef RTC_BASE_THIRD_PARTY_BASE64_BASE64_H_ - #define RTC_BASE_THIRD_PARTY_BASE64_BASE64_H_ - -+#include - #include - #include - diff --git a/src/3rdparty/chromium/ui/events/gesture_event_details.h b/src/3rdparty/chromium/ui/events/gesture_event_details.h index 41ff9906d..1864e9e21 100644 --- a/src/3rdparty/chromium/ui/events/gesture_event_details.h @@ -458,36 +268,23 @@ index 41ff9906d..1864e9e21 100644 @@ -5,6 +5,7 @@ #ifndef UI_EVENTS_GESTURE_EVENT_DETAILS_H_ #define UI_EVENTS_GESTURE_EVENT_DETAILS_H_ - + +#include #include - + #include "base/check_op.h" -diff --git a/src/3rdparty/chromium/ui/events/types/scroll_types.h b/src/3rdparty/chromium/ui/events/types/scroll_types.h -index be6b2779f..dbe2e5cf7 100644 ---- a/src/3rdparty/chromium/ui/events/types/scroll_types.h -+++ b/src/3rdparty/chromium/ui/events/types/scroll_types.h -@@ -5,6 +5,8 @@ - #ifndef UI_EVENTS_TYPES_SCROLL_TYPES_H_ - #define UI_EVENTS_TYPES_SCROLL_TYPES_H_ - -+#include -+ - namespace ui { - - enum class ScrollGranularity : uint8_t { diff --git a/src/3rdparty/chromium/ui/gfx/geometry/linear_gradient.h b/src/3rdparty/chromium/ui/gfx/geometry/linear_gradient.h -index 65cd4cb07..210c4318e 100644 +index ab0ce5808..9a9f187bb 100644 --- a/src/3rdparty/chromium/ui/gfx/geometry/linear_gradient.h +++ b/src/3rdparty/chromium/ui/gfx/geometry/linear_gradient.h @@ -5,6 +5,7 @@ #ifndef UI_GFX_LINEAR_GRADIENT_H_ #define UI_GFX_LINEAR_GRADIENT_H_ - + +#include #include + #include #include - diff --git a/src/3rdparty/chromium/v8/src/base/macros.h b/src/3rdparty/chromium/v8/src/base/macros.h index cd5b91f74..a74c0021f 100644 --- a/src/3rdparty/chromium/v8/src/base/macros.h @@ -495,21 +292,21 @@ index cd5b91f74..a74c0021f 100644 @@ -5,6 +5,7 @@ #ifndef V8_BASE_MACROS_H_ #define V8_BASE_MACROS_H_ - + +#include #include #include - + diff --git a/src/core/browsing_data_remover_delegate_qt.h b/src/core/browsing_data_remover_delegate_qt.h -index 4e690ffb1..dfa884cd6 100644 +index a611a710c..67743f52b 100644 --- a/src/core/browsing_data_remover_delegate_qt.h +++ b/src/core/browsing_data_remover_delegate_qt.h -@@ -6,6 +6,8 @@ - +@@ -8,6 +8,8 @@ + #include "content/public/browser/browsing_data_remover_delegate.h" - + +#include + namespace QtWebEngineCore { - + class BrowsingDataRemoverDelegateQt : public content::BrowsingDataRemoverDelegate { diff --git a/qtwebengine-webrtc-dlopen-h264.patch b/qtwebengine-webrtc-dlopen-h264.patch index 3575b28701182e09c4e78c64fa2b7412c5d8100b..07cecaa864b247bedc9d00dc97a08f8d8921021b 100644 --- a/qtwebengine-webrtc-dlopen-h264.patch +++ b/qtwebengine-webrtc-dlopen-h264.patch @@ -4,16 +4,16 @@ index 640d6626d..3d1f62190 100644 +++ b/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/BUILD.gn @@ -7,6 +7,7 @@ # be found in the AUTHORS file in the root of the source tree. - + import("//third_party/libaom/options.gni") +import("//tools/generate_stubs/rules.gni") import("../../webrtc.gni") - + rtc_library("encoded_frame") { @@ -499,6 +500,21 @@ rtc_library("video_coding_utility") { ] } - + +if (rtc_use_h264 && rtc_dlopen_openh264) { + # When OpenH264 is not directly linked, use stubs to allow for dlopening of + # the binary. @@ -34,7 +34,7 @@ index 640d6626d..3d1f62190 100644 sources = [ @@ -542,10 +558,15 @@ rtc_library("webrtc_h264") { ] - + if (rtc_use_h264) { - deps += [ - "//third_party/ffmpeg", @@ -59,15 +59,15 @@ index fc3fd195f..48eedcefd 100644 @@ -36,10 +36,22 @@ #include "third_party/openh264/src/codec/api/svc/codec_def.h" #include "third_party/openh264/src/codec/api/svc/codec_ver.h" - + +#if defined(WEBRTC_DLOPEN_OPENH264) +#include "modules/video_coding/codecs/h264/openh264_stubs.h" +#endif // defined(WEBRTC_DLOPEN_OPENH264) + namespace webrtc { - + namespace { - + +#if defined(WEBRTC_DLOPEN_OPENH264) +using modules_video_coding_codecs_h264::InitializeStubs; +using modules_video_coding_codecs_h264::kModuleOpenh264; @@ -77,10 +77,10 @@ index fc3fd195f..48eedcefd 100644 +#endif + const bool kOpenH264EncoderDetailedLogging = false; - + // QP scaling thresholds. @@ -167,6 +179,15 @@ H264EncoderImpl::~H264EncoderImpl() { - + int32_t H264EncoderImpl::InitEncode(const VideoCodec* inst, const VideoEncoder::Settings& settings) { +#if defined(WEBRTC_DLOPEN_OPENH264) @@ -95,35 +95,6 @@ index fc3fd195f..48eedcefd 100644 ReportInit(); if (!inst || inst->codecType != kVideoCodecH264) { ReportError(); -diff --git a/src/3rdparty/chromium/third_party/webrtc/webrtc.gni b/src/3rdparty/chromium/third_party/webrtc/webrtc.gni -index df42a48d4..cb5de2fda 100644 ---- a/src/3rdparty/chromium/third_party/webrtc/webrtc.gni -+++ b/src/3rdparty/chromium/third_party/webrtc/webrtc.gni -@@ -181,6 +181,10 @@ declare_args() { - rtc_use_h264 = - proprietary_codecs && !is_android && !is_ios && !(is_win && !is_clang) - -+ # Allow to use OpenH264 on systems where OpenH264 cannot be installed by -+ # default due to licensing, but can be installed later from other sources. -+ rtc_dlopen_openh264 = false -+ - # Enable this flag to make webrtc::Mutex be implemented by absl::Mutex. - rtc_use_absl_mutex = false - -diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt -index e1e551a3e..1a5f839a0 100644 ---- a/src/core/CMakeLists.txt -+++ b/src/core/CMakeLists.txt -@@ -401,6 +401,9 @@ foreach(arch ${archs}) - use_bluez=false - use_vaapi=false - use_udev=true -+ media_use_openh264=false -+ rtc_use_h264=true -+ rtc_dlopen_openh264=true - enable_session_service=false - is_cfi=false - use_ozone=true diff --git a/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/h264/openh264.sigs b/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/h264/openh264.sigs new file mode 100644 index 000000000..4924f8e9a @@ -146,7 +117,7 @@ index 000000000..4924f8e9a +void WelsGetCodecVersionEx(OpenH264Version *pVersion); diff --git a/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/h264/openh264_stub_header.fragment b/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/h264/openh264_stub_header.fragment new file mode 100644 -index 000000000..9bc0a7cbe +index 000000000..e8a3727a0 --- /dev/null +++ b/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/h264/openh264_stub_header.fragment @@ -0,0 +1,11 @@ @@ -161,3 +132,32 @@ index 000000000..9bc0a7cbe +#include "third_party/openh264/src/codec/api/svc/codec_ver.h" + +} +diff --git a/src/3rdparty/chromium/third_party/webrtc/webrtc.gni b/src/3rdparty/chromium/third_party/webrtc/webrtc.gni +index 8ab7b27f0..2023102a8 100644 +--- a/src/3rdparty/chromium/third_party/webrtc/webrtc.gni ++++ b/src/3rdparty/chromium/third_party/webrtc/webrtc.gni +@@ -181,6 +181,10 @@ declare_args() { + rtc_use_h264 = + proprietary_codecs && !is_android && !is_ios && !(is_win && !is_clang) + ++ # Allow to use OpenH264 on systems where OpenH264 cannot be installed by ++ # default due to licensing, but can be installed later from other sources. ++ rtc_dlopen_openh264 = false ++ + # Enable this flag to make webrtc::Mutex be implemented by absl::Mutex. + rtc_use_absl_mutex = false + +diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt +index 1d183573f..d08fd1bcb 100644 +--- a/src/core/CMakeLists.txt ++++ b/src/core/CMakeLists.txt +@@ -413,6 +413,9 @@ foreach(arch ${archs}) + use_udev=true + is_cfi=false + use_ozone=true ++ media_use_openh264=false ++ rtc_use_h264=true ++ rtc_dlopen_openh264=true + ozone_auto_platforms=false + ozone_platform_headless=false + ozone_platform_external=true