Sync from SUSE:SLFO:Main qt6-webengine revision a9962d84513f8499a835e4695215ad3f

This commit is contained in:
Adrian Schröter 2024-05-03 23:57:44 +02:00
commit 1229250802
9 changed files with 918 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

View File

@ -0,0 +1,34 @@
From 48c84bd037128d6788ee74786ac5f4aca9727ae9 Mon Sep 17 00:00:00 2001
From: Antonio Larrosa <alarrosa@suse.com>
Date: Wed, 20 Dec 2023 13:48:14 +0100
Subject: [PATCH] Fix race condition generating docs
When doing a parallel build, there's a race condition
that sometimes builds qtpdf before pdf_attributions is
generated resulting in an incomplete qtpdf.index file.
Adding this dependency solves this.
Issue found by Bernhard Wiedemann <bwiedemann@suse.com> while
testing build reproducibility of packages in openSUSE and
reported originally at https://bugzilla.opensuse.org/show_bug.cgi?id=1217774
Change-Id: Ia7c0c4c685eeed56e9318871467dc2be6626cc47
---
src/pdf/CMakeLists.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/pdf/CMakeLists.txt b/src/pdf/CMakeLists.txt
index a50120d3e..c40476f89 100644
--- a/src/pdf/CMakeLists.txt
+++ b/src/pdf/CMakeLists.txt
@@ -66,6 +66,7 @@ add_code_attributions_target(
)
add_dependencies(generate_pdf_attributions run_pdf_GnDone)
add_dependencies(docs generate_pdf_attributions)
+add_dependencies(prepare_docs_Pdf generate_pdf_attributions)
##
# TOOLCHAIN SETUP
--
2.42.0

42
_constraints Normal file
View File

@ -0,0 +1,42 @@
<constraints>
<overwrite>
<conditions>
<package>qt6-webengine</package>
</conditions>
<hardware>
<disk>
<size unit="G">16</size>
</disk>
<memory>
<size unit="G">20</size>
</memory>
<physicalmemory>
<size unit="G">8</size>
</physicalmemory>
<processors>8</processors>
</hardware>
</overwrite>
<overwrite>
<conditions>
<arch>aarch64</arch>
</conditions>
<hardware>
<memory>
<size unit="G">16</size>
</memory>
</hardware>
</overwrite>
<overwrite>
<conditions>
<package>qt6-webengine:docs</package>
</conditions>
<hardware>
<disk>
<size unit="G">7</size>
</disk>
<memory>
<size unit="G">2</size>
</memory>
</hardware>
</overwrite>
</constraints>

3
_multibuild Normal file
View File

@ -0,0 +1,3 @@
<multibuild>
<flavor>docs</flavor>
</multibuild>

8
qt6-webengine-rpmlintrc Normal file
View File

@ -0,0 +1,8 @@
# using fdupes on include directories means looking for troubles
addFilter("files-duplicate .*")
# library and development package names don't match
addFilter("no-dependency-on .*")
# Only libraries used at link time are guaranteed to work
addFilter("shlib-fixed-dependency .*")

241
qt6-webengine.changes Normal file
View File

@ -0,0 +1,241 @@
-------------------------------------------------------------------
Wed Dec 20 12:16:07 UTC 2023 - Antonio Larrosa <alarrosa@suse.com>
- Add patch to force pdf_attributions.qdoc to be generated before
qtpdf, fixing a race condition that made the docs subpackage
build not reproducible (boo#1217774):
* 0001-Fix-race-condition-generating-docs.patch
-------------------------------------------------------------------
Mon Nov 27 14:00:22 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 6.6.1:
* https://www.qt.io/blog/qt-6.6.1-released
-------------------------------------------------------------------
Tue Oct 10 09:40:03 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 6.6.0
* https://www.qt.io/blog/qt-6.6-released
-------------------------------------------------------------------
Thu Sep 28 07:34:25 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 6.5.3
* https://www.qt.io/blog/qt-6.5.3-released
-------------------------------------------------------------------
Tue Aug 8 16:11:11 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Build with older re2 release on Tumbleweed.
-------------------------------------------------------------------
Thu Jul 20 09:07:35 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 6.5.2
* https://www.qt.io/blog/qt-6.5.2-released-1
-------------------------------------------------------------------
Fri Jun 30 15:13:17 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update subpackages requirements
-------------------------------------------------------------------
Wed May 24 07:45:46 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 6.5.1
* https://www.qt.io/blog/qt-6.5.1-released
- Drop patch, merged upstream:
* qtwebengine-gcc13.patch
-------------------------------------------------------------------
Mon Apr 3 10:03:15 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 6.5.0
* https://www.qt.io/blog/qt-6.5-lts-released
-------------------------------------------------------------------
Tue Mar 28 22:20:44 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Add upstream change:
* qtwebengine-gcc13.patch
-------------------------------------------------------------------
Thu Mar 16 10:00:12 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 6.4.3:
* https://www.qt.io/blog/qt-6.4.3-released
-------------------------------------------------------------------
Fri Jan 6 16:46:56 UTC 2023 - Christophe Marin <christophe@krop.fr>
- Update to 6.4.2:
* https://www.qt.io/blog/qt-6.4.2-released
-------------------------------------------------------------------
Tue Nov 15 11:53:28 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.4.1:
* https://www.qt.io/blog/qt-6.4.1-released
-------------------------------------------------------------------
Tue Oct 4 19:49:38 UTC 2022 - Andreas Schwab <schwab@suse.de>
- Update disk constraints for qt6-webengine:docs
-------------------------------------------------------------------
Thu Sep 29 10:36:10 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.4.0:
* https://www.qt.io/blog/qt-6.4-released
-------------------------------------------------------------------
Fri Sep 16 08:29:25 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.4.0 RC
-------------------------------------------------------------------
Fri Sep 9 12:41:52 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.3.2:
* https://www.qt.io/blog/qt-6.3.2-released
- Drop disable-gpu-when-using-nouveau-boo-1005323.diff
Patch was not updated for Qt6
-------------------------------------------------------------------
Mon Aug 8 12:03:18 UTC 2022 - Stephan Kulow <coolo@suse.com>
- Remove python2 from buildrequires - it's a left over from qt5
-------------------------------------------------------------------
Fri Jun 17 15:15:46 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.3.1:
* https://www.qt.io/blog/qt-6.3.1-released
- Drop patches, now upstream:
* qtwebengine-icu70.patch
* 0001-Find-GIO-with-QtBase-6.2.patch
-------------------------------------------------------------------
Fri Apr 8 11:57:03 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.3.0:
* https://www.qt.io/blog/qt-6.3-released
- Drop patches, now upstream:
* CVE-2022-0971-qtwebengine-5.15.patch
* CVE-2022-1096-qtwebengine-6.2.patch
-------------------------------------------------------------------
Mon Apr 4 20:41:16 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Add security fixes:
* CVE-2022-0971-qtwebengine-5.15.patch (CVE-2022-0971, boo#1197163)
* CVE-2022-1096-qtwebengine-6.2.patch (CVE-2022-1096, boo#1197552)
-------------------------------------------------------------------
Tue Mar 29 12:28:44 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.3.0-rc
- Drop patches, fixed upstream:
* Drop sandbox-statx-futex_time64.patch
* 0001-Fix-build-with-glibc-2.34.patch
- Add upstream changes:
* qtwebengine-icu70.patch
* 0001-Find-GIO-with-QtBase-6.2.patch
- Disable build on 32 bits archs (i586, armv7l)
Build fails (QTBUG-102143) and upstream doesn't support 32 bits
archs.
-------------------------------------------------------------------
Mon Mar 21 08:46:39 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.2.4
* https://www.qt.io/blog/qt-6.2.4-released
- Drop chromium-90-fseal.patch. Not needed anymore.
-------------------------------------------------------------------
Mon Jan 31 08:55:03 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.2.3:
* https://www.qt.io/blog/qt-6.2.3-released
-------------------------------------------------------------------
Thu Dec 9 11:27:27 UTC 2021 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Update _constraints on arm and set requirements for
qt6-webengine:docs
-------------------------------------------------------------------
Wed Dec 1 10:06:38 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.2.2
* https://www.qt.io/blog/qt-6.2.2-released
- Make sure all dependencies are present when installing devel
packages. Qt >= 6.2.2 is much less permissive.
- Rebase rtc-dont-use-h264.patch
-------------------------------------------------------------------
Tue Oct 26 11:23:04 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.2.1
* https://www.qt.io/blog/qt-6.2.1-released
- Drop openSUSE patch qtwebengine-boo1163766.patch.
should be addressed with:
https://github.com/qt/qtwebengine-chromium/commit/652f834de
https://github.com/qt/qtwebengine-chromium/commit/faae106ed
https://github.com/qt/qtwebengine-chromium/commit/6b7b3f1bf
- Drop upstream changes:
* 0001-Fix-build-when-x11-over-egl-es2.patch
* 0001-return-ENOSYS-for-clone3.patch
- Rebase patches:
* 0001-Fix-build-with-glibc-2.34.patch
* sandbox-statx-futex_time64.patch
-------------------------------------------------------------------
Thu Sep 30 12:31:00 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.2.0:
* https://www.qt.io/blog/qt-6.2-lts-released
-------------------------------------------------------------------
Sat Sep 25 07:18:46 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.2.0-rc2
-------------------------------------------------------------------
Thu Sep 16 14:24:30 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.2.0-rc
- Add arm build fix:
* 0001-Fix-build-when-x11-over-egl-es2.patch
-------------------------------------------------------------------
Sat Sep 11 12:47:13 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Update to 6.2.0-beta4
- Add glibc 2.34 compatibility patch:
* 0001-Fix-build-with-glibc-2.34.patch
- Import patches from the chromium package:
* 0001-return-ENOSYS-for-clone3.patch
* chromium-90-fseal.patch
-------------------------------------------------------------------
Sun Aug 1 09:41:59 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Drop chromium-glibc-2.33.patch. Merged upstream
- Rebase sandbox-statx-futex_time64.patch.
-------------------------------------------------------------------
Fri Jul 2 12:22:23 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Add back patches from libqt5-qtwebengine:
* qtwebengine-boo1163766.patch
* rtc-dont-use-h264.patch
* sandbox-statx-futex_time64.patch
* chromium-glibc-2.33.patch
-------------------------------------------------------------------
Wed Jun 23 19:27:45 UTC 2021 - Christophe Giboudeaux <christophe@krop.fr>
- Init qt6-webengine

547
qt6-webengine.spec Normal file
View File

@ -0,0 +1,547 @@
#
# spec file for package qt6-webengine
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define real_version 6.6.1
%define short_version 6.6
%define tar_name qtwebengine-everywhere-src
%define tar_suffix %{nil}
#
%global qt6_flavor @BUILD_FLAVOR@%{nil}
%define no_flavor ("%qt6_flavor" == "")
#
%if "%{qt6_flavor}" == "docs"
%define pkg_suffix -docs
%endif
#
%if 0%{?suse_version} > 1500
# The antique version in Leap 15 is too old for building chromium
%bcond_without system_harfbuzz
# The ICU version is also too old incrementExact() appeared in ICU 71
%bcond_without system_icu
# and so is tiff...
%bcond_without system_tiff
%endif
Name: qt6-webengine%{?pkg_suffix}
Version: 6.6.1
Release: 0
Summary: Web browser engine for Qt applications
License: GPL-2.0-only OR LGPL-3.0-only OR GPL-3.0-only
URL: https://www.qt.io
Source: https://download.qt.io/official_releases/qt/%{short_version}/%{real_version}%{tar_suffix}/submodules/%{tar_name}-%{real_version}%{tar_suffix}.tar.xz
Source99: qt6-webengine-rpmlintrc
# Patches 0-100 are upstream patches #
# PATCH-FIX-UPSTREAM https://codereview.qt-project.org/c/qt/qtwebengine/+/526880
Patch0: 0001-Fix-race-condition-generating-docs.patch
# Patches 100-200 are openSUSE and/or non-upstream(able) patches #
Patch100: rtc-dont-use-h264.patch
#
# Chromium/blink don't support PowerPC and zSystems and build fails on
# 32 bits archs (https://bugreports.qt.io/browse/QTBUG-102143)
ExclusiveArch: aarch64 x86_64 riscv64
BuildRequires: Mesa-KHR-devel
BuildRequires: bison
# Not pulled automatically on Leap
BuildRequires: cups-config
BuildRequires: cups-devel
BuildRequires: flex
BuildRequires: gperf
BuildRequires: krb5-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel >= 1.6.0
BuildRequires: memory-constraints
BuildRequires: nodejs-default
BuildRequires: pipewire-devel
BuildRequires: pkgconfig
BuildRequires: python3-devel
BuildRequires: python3-html5lib
BuildRequires: python3-importlib-metadata
BuildRequires: qt6-core-private-devel
BuildRequires: qt6-gui-private-devel
BuildRequires: qt6-qml-private-devel
BuildRequires: qt6-quick-private-devel
BuildRequires: qt6-quickwidgets-private-devel
BuildRequires: qt6-widgets-private-devel
BuildRequires: snappy-devel
BuildRequires: cmake(Qt6Core) = %{real_version}
BuildRequires: cmake(Qt6Designer) = %{real_version}
BuildRequires: cmake(Qt6Gui) = %{real_version}
BuildRequires: cmake(Qt6GuiTools) = %{real_version}
BuildRequires: cmake(Qt6Network) = %{real_version}
BuildRequires: cmake(Qt6OpenGL) = %{real_version}
BuildRequires: cmake(Qt6OpenGLWidgets) = %{real_version}
BuildRequires: cmake(Qt6Positioning) = %{real_version}
BuildRequires: cmake(Qt6PrintSupport) = %{real_version}
BuildRequires: cmake(Qt6Qml) = %{real_version}
BuildRequires: cmake(Qt6QmlModels) = %{real_version}
BuildRequires: cmake(Qt6QmlTools) = %{real_version}
BuildRequires: cmake(Qt6Quick) = %{real_version}
BuildRequires: cmake(Qt6QuickControls2) = %{real_version}
BuildRequires: cmake(Qt6QuickTest) = %{real_version}
BuildRequires: cmake(Qt6QuickWidgets) = %{real_version}
BuildRequires: cmake(Qt6WebChannel) = %{real_version}
BuildRequires: cmake(Qt6WebChannelQuick) = %{real_version}
BuildRequires: cmake(Qt6WebSockets) = %{real_version}
BuildRequires: cmake(Qt6Widgets) = %{real_version}
BuildRequires: cmake(Qt6WidgetsTools) = %{real_version}
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(epoxy)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(freetype2)
BuildRequires: pkgconfig(gbm)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.32.0
BuildRequires: pkgconfig(glproto)
%if %{with system_harfbuzz}
BuildRequires: pkgconfig(harfbuzz)
%endif
%if %{with system_icu}
BuildRequires: pkgconfig(icu-i18n) >= 71
BuildRequires: pkgconfig(icu-uc) >= 71
%endif
BuildRequires: pkgconfig(lcms2)
BuildRequires: pkgconfig(libavcodec)
BuildRequires: pkgconfig(libavformat)
BuildRequires: pkgconfig(libavutil)
BuildRequires: pkgconfig(libcrypto)
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libevent)
BuildRequires: pkgconfig(libopenjp2)
BuildRequires: pkgconfig(libpci)
BuildRequires: pkgconfig(libpulse) >= 0.9.10
%if %{with system_tiff}
BuildRequires: pkgconfig(libtiff-4) >= 4.2.0
%endif
BuildRequires: pkgconfig(libva)
BuildRequires: pkgconfig(libwebp)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(libxslt)
BuildRequires: pkgconfig(minizip)
BuildRequires: pkgconfig(nss) >= 3.26
BuildRequires: pkgconfig(opus) >= 1.3.1
BuildRequires: pkgconfig(poppler-cpp)
BuildRequires: pkgconfig(re2)
BuildRequires: pkgconfig(vpx) >= 1.10.0
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcomposite)
BuildRequires: pkgconfig(xcursor)
BuildRequires: pkgconfig(xdamage)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(xfixes)
BuildRequires: pkgconfig(xi)
BuildRequires: pkgconfig(xkbfile)
BuildRequires: pkgconfig(xrandr)
BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(xscrnsaver)
BuildRequires: pkgconfig(xshmfence)
BuildRequires: pkgconfig(xt)
BuildRequires: pkgconfig(xtst)
BuildRequires: pkgconfig(zlib)
# Picked from chromium.spec
BuildRequires: (python3 >= 3.7 or python3-dataclasses)
%if "%{qt6_flavor}" == "docs"
BuildRequires: qt6-tools
%{qt6_doc_packages}
%endif
%description
The Qt WebEngine module provides a web browser engine to embed web content into
Qt applications.
The functionality in Qt WebEngine is divided into the following
modules:
* Qt WebEngine Core module for interacting with Chromium
* Qt WebEngine Widgets module for creating widget-based web applications
* Qt WebEngine module for creating Qt Quick based web applications
%if %{no_flavor}
%package imports
Summary: Qt 6 WebEngine QML files and plugins
%description imports
QML files and plugins from the Qt 6 WebEngine module
%package -n libQt6Pdf6
Summary: Qt6 Pdf library
%description -n libQt6Pdf6
The Qt6 Pdf library.
%package -n qt6-pdf-imports
Summary: Qt 6 Pdf QML files and plugins
%description -n qt6-pdf-imports
QML files and plugins from the Qt 6 Pdf module
%package -n qt6-pdf-devel
Summary: Development files for the Qt 6 Pdf library
Requires: libQt6Pdf6 = %{version}
Requires: cmake(Qt6Gui) = %{real_version}
Requires: cmake(Qt6Network) = %{real_version}
%description -n qt6-pdf-devel
Development files for the Qt 6 Pdf library.
%package -n qt6-pdf-private-devel
Summary: Non-ABI stable API for the Qt 6 Pdf library
Requires: cmake(Qt6Pdf) = %{real_version}
%description -n qt6-pdf-private-devel
This package provides private headers of libQt6Pdf that do not have any
ABI or API guarantees.
%package -n libQt6PdfQuick6
Summary: Qt6 PdfQuick library
%description -n libQt6PdfQuick6
The Qt6 PdfQuick library.
%package -n qt6-pdfquick-devel
Summary: Development files for the Qt 6 PdfQuick library
Requires: libQt6PdfQuick6 = %{version}
Requires: qt6-pdf-private-devel = %{version}
Requires: cmake(Qt6Gui) = %{real_version}
Requires: cmake(Qt6Qml) = %{real_version}
Requires: cmake(Qt6Quick) = %{real_version}
%requires_eq qt6-quick-private-devel
%description -n qt6-pdfquick-devel
Development files for the Qt 6 PdfQuick library.
%package -n qt6-pdfquick-private-devel
Summary: Non-ABI stable API for the Qt 6 PdfQuick library
Requires: cmake(Qt6PdfQuick) = %{real_version}
%description -n qt6-pdfquick-private-devel
This package provides private headers of libQt6PdfQuick that do not have any
ABI or API guarantees.
%package -n libQt6PdfWidgets6
Summary: Qt6 PdfWidgets library
%description -n libQt6PdfWidgets6
The Qt6 PdfWidgets library.
%package -n qt6-pdfwidgets-devel
Summary: Development files for the Qt 6 PdfWidgets library
Requires: libQt6PdfWidgets6 = %{version}
Requires: cmake(Qt6Gui) = %{real_version}
Requires: cmake(Qt6Pdf) = %{real_version}
Requires: cmake(Qt6Widgets) = %{real_version}
%description -n qt6-pdfwidgets-devel
Development files for the Qt 6 PdfWidgets library.
%package -n qt6-pdfwidgets-private-devel
Summary: Non-ABI stable API for the Qt 6 PdfWidgets library
Requires: cmake(Qt6PdfWidgets) = %{real_version}
%description -n qt6-pdfwidgets-private-devel
This package provides private headers of libQt6PdfWidgets that do not have any
ABI or API guarantees.
%package -n libQt6WebEngineCore6
Summary: Qt6 WebEngineCore library
Requires: qt6-webengine = %{version}
%description -n libQt6WebEngineCore6
The Qt6 WebEngineCore library.
%package -n qt6-webenginecore-devel
Summary: Development files for the Qt 6 WebEngineCore library
Requires: libQt6WebEngineCore6 = %{version}
Requires: cmake(Qt6Gui) = %{real_version}
Requires: cmake(Qt6Network) = %{real_version}
Requires: cmake(Qt6Positioning) = %{real_version}
Requires: cmake(Qt6Quick) = %{real_version}
Requires: cmake(Qt6WebChannel) = %{real_version}
%description -n qt6-webenginecore-devel
Development files for the Qt 6 WebEngineCore library.
%package -n qt6-webenginecore-private-devel
Summary: Non-ABI stable API for the Qt 6 WebEngineCore library
Requires: cmake(Qt6WebEngineCore) = %{real_version}
%description -n qt6-webenginecore-private-devel
This package provides private headers of libQt6WebEngineCore that do not have any
ABI or API guarantees.
%package -n libQt6WebEngineQuick6
Summary: Qt6 WebEngineQuick library
Requires: qt6-webengine-imports = %{version}
%description -n libQt6WebEngineQuick6
The Qt6 WebEngineQuick library.
%package -n qt6-webenginequick-devel
Summary: Development files for the Qt 6 WebEngineQuick library
Requires: libQt6WebEngineQuick6 = %{version}
Requires: cmake(Qt6Gui) = %{real_version}
Requires: cmake(Qt6Qml) = %{real_version}
Requires: cmake(Qt6Quick) = %{real_version}
Requires: cmake(Qt6WebEngineCore) = %{real_version}
%description -n qt6-webenginequick-devel
Development files for the Qt 6 WebEngineQuick library.
%package -n qt6-webenginequick-private-devel
Summary: Non-ABI stable API for the Qt 6 WebEngineQuick library
Requires: cmake(Qt6WebEngineQuick) = %{real_version}
%description -n qt6-webenginequick-private-devel
This package provides private headers of libQt6WebEngineQuick that do not have any
ABI or API guarantees.
%package -n libQt6WebEngineWidgets6
Summary: Qt6 WebEngineWidgets library
%description -n libQt6WebEngineWidgets6
The Qt6 WebEngineWidgets library.
%package -n qt6-webenginewidgets-devel
Summary: Development files for the Qt 6 WebEngineWidgets library
Requires: libQt6WebEngineWidgets6 = %{version}
Requires: cmake(Qt6Gui) = %{real_version}
Requires: cmake(Qt6PrintSupport) = %{real_version}
Requires: cmake(Qt6Quick) = %{real_version}
Requires: cmake(Qt6QuickWidgets) = %{real_version}
Requires: cmake(Qt6WebEngineCore) = %{real_version}
Requires: cmake(Qt6Widgets) = %{real_version}
%description -n qt6-webenginewidgets-devel
Development files for the Qt 6 WebEngineWidgets library.
%package -n qt6-webenginewidgets-private-devel
Summary: Non-ABI stable API for the Qt 6 WebEngineWidgets library
Requires: cmake(Qt6WebEngineWidgets) = %{real_version}
%description -n qt6-webenginewidgets-private-devel
This package provides private headers of libQt6WebEngineWidgets that do not have any
ABI or API guarantees.
%{qt6_examples_package}
%endif
%prep
%autosetup -p1 -n %{tar_name}-%{real_version}%{tar_suffix}
%build
%if %{no_flavor}
# Determine the right number of parallel processes based on the available memory
# Copied from the Qt 5 webengine package
%limit_build -m 2750
%endif
# Ensure that also the internal chromium build follows the right number of
# parallel processes instead of its defaults.
export NINJAFLAGS="%{?_smp_mflags}"
%cmake_qt6 \
-DCMAKE_TOOLCHAIN_FILE:STRING="%{_qt6_cmakedir}/Qt6/qt.toolchain.cmake" \
-DFEATURE_qtpdf_build:BOOL=ON \
-DFEATURE_webengine_developer_build:BOOL=OFF \
-DFEATURE_webengine_embedded_build:BOOL=OFF \
-DFEATURE_webengine_extensions:BOOL=ON \
-DFEATURE_webengine_kerberos:BOOL=ON \
-DFEATURE_webengine_native_spellchecker:BOOL=OFF \
-DFEATURE_webengine_printing_and_pdf:BOOL=ON \
-DFEATURE_webengine_proprietary_codecs:BOOL=ON \
-DFEATURE_webengine_system_ffmpeg:BOOL=ON \
%if %{without system_harfbuzz}
-DFEATURE_webengine-system-harfbuzz:BOOL=OFF \
%endif
%if %{with system_icu}
-DFEATURE_webengine_system_icu:BOOL=ON \
%else
-DFEATURE_webengine_system_icu:BOOL=OFF \
%endif
-DFEATURE_webengine_system_libevent:BOOL=ON \
-DFEATURE_webengine_webrtc:BOOL=ON \
-DFEATURE_webengine_webrtc_pipewire:BOOL=ON \
-DQT_BUILD_EXAMPLES:BOOL=ON
%{qt6_build}
%install
%{qt6_install}
%if %{no_flavor}
# CMake files are not needed for plugins
rm -r %{buildroot}%{_qt6_cmakedir}/Qt6Designer/
rm -r %{buildroot}%{_qt6_cmakedir}/Qt6Gui/
rm -r %{buildroot}%{_qt6_cmakedir}/Qt6Qml/QmlPlugins
# This shouldn't be needed
rm -r %{buildroot}%{_qt6_cmakedir}/Qt6BuildInternals
%ldconfig_scriptlets -n libQt6Pdf6
%ldconfig_scriptlets -n libQt6PdfQuick6
%ldconfig_scriptlets -n libQt6PdfWidgets6
%ldconfig_scriptlets -n libQt6WebEngineCore6
%ldconfig_scriptlets -n libQt6WebEngineQuick6
%ldconfig_scriptlets -n libQt6WebEngineWidgets6
%files
%dir %{_qt6_pluginsdir}/designer
%{_qt6_datadir}/resources/
%{_qt6_translationsdir}/qtwebengine_locales/
%{_qt6_libexecdir}/QtWebEngineProcess
%{_qt6_pluginsdir}/designer/libqwebengineview.so
%files imports
%{_qt6_qmldir}/QtWebEngine/
%files -n libQt6Pdf6
%dir %{_qt6_pluginsdir}/imageformats
%{_qt6_libdir}/libQt6Pdf.so.*
%{_qt6_pluginsdir}/imageformats/libqpdf.so
%files -n qt6-pdf-imports
%dir %{_qt6_qmldir}/QtQuick
%{_qt6_qmldir}/QtQuick/Pdf
%files -n qt6-pdf-devel
%{_qt6_cmakedir}/Qt6Pdf/
%{_qt6_descriptionsdir}/Pdf.json
%{_qt6_includedir}/QtPdf/
%{_qt6_libdir}/libQt6Pdf.prl
%{_qt6_libdir}/libQt6Pdf.so
%{_qt6_metatypesdir}/qt6pdf_*_metatypes.json
%{_qt6_mkspecsdir}/modules/qt_lib_pdf.pri
%{_qt6_pkgconfigdir}/Qt6Pdf.pc
%exclude %{_qt6_includedir}/QtPdf/%{real_version}
%files -n qt6-pdf-private-devel
%{_qt6_includedir}/QtPdf/%{real_version}/
%{_qt6_mkspecsdir}/modules/qt_lib_pdf_private.pri
%files -n libQt6PdfQuick6
%{_qt6_libdir}/libQt6PdfQuick.so.*
%files -n qt6-pdfquick-devel
%{_qt6_cmakedir}/Qt6PdfQuick/
%{_qt6_descriptionsdir}/PdfQuick.json
%{_qt6_includedir}/QtPdfQuick/
%{_qt6_libdir}/libQt6PdfQuick.prl
%{_qt6_libdir}/libQt6PdfQuick.so
%{_qt6_metatypesdir}/qt6pdfquick_*_metatypes.json
%{_qt6_mkspecsdir}/modules/qt_lib_pdfquick.pri
%{_qt6_pkgconfigdir}/Qt6PdfQuick.pc
%exclude %{_qt6_includedir}/QtPdfQuick/%{real_version}
%files -n qt6-pdfquick-private-devel
%{_qt6_includedir}/QtPdfQuick/%{real_version}/
%{_qt6_mkspecsdir}/modules/qt_lib_pdfquick_private.pri
%files -n libQt6PdfWidgets6
%{_qt6_libdir}/libQt6PdfWidgets.so.*
%files -n qt6-pdfwidgets-devel
%{_qt6_cmakedir}/Qt6PdfWidgets/
%{_qt6_descriptionsdir}/PdfWidgets.json
%{_qt6_includedir}/QtPdfWidgets/
%{_qt6_libdir}/libQt6PdfWidgets.prl
%{_qt6_libdir}/libQt6PdfWidgets.so
%{_qt6_metatypesdir}/qt6pdfwidgets_*_metatypes.json
%{_qt6_mkspecsdir}/modules/qt_lib_pdfwidgets.pri
%{_qt6_pkgconfigdir}/Qt6PdfWidgets.pc
%exclude %{_qt6_includedir}/QtPdfWidgets/%{real_version}
%files -n qt6-pdfwidgets-private-devel
%{_qt6_includedir}/QtPdfWidgets/%{real_version}/
%{_qt6_mkspecsdir}/modules/qt_lib_pdfwidgets_private.pri
%files -n libQt6WebEngineCore6
%license LICENSES/*
%{_qt6_libdir}/libQt6WebEngineCore.so.*
%files -n qt6-webenginecore-devel
%{_qt6_cmakedir}/Qt6/FindGPerf.cmake
%{_qt6_cmakedir}/Qt6/FindGn.cmake
%{_qt6_cmakedir}/Qt6/FindNinja.cmake
%{_qt6_cmakedir}/Qt6/FindNodejs.cmake
%{_qt6_cmakedir}/Qt6/FindPkgConfigHost.cmake
%{_qt6_cmakedir}/Qt6/FindSnappy.cmake
%{_qt6_cmakedir}/Qt6WebEngineCore/
%{_qt6_cmakedir}/Qt6WebEngineCoreTools/
%{_qt6_descriptionsdir}/WebEngineCore.json
%{_qt6_includedir}/QtWebEngineCore/
%{_qt6_libdir}/libQt6WebEngineCore.prl
%{_qt6_libdir}/libQt6WebEngineCore.so
%{_qt6_libexecdir}/gn
%{_qt6_libexecdir}/qwebengine_convert_dict
%{_qt6_metatypesdir}/qt6webenginecore_*_metatypes.json
%{_qt6_mkspecsdir}/modules/qt_lib_webenginecore.pri
%{_qt6_pkgconfigdir}/Qt6WebEngineCore.pc
%exclude %{_qt6_includedir}/QtWebEngineCore/%{real_version}
%files -n qt6-webenginecore-private-devel
%{_qt6_includedir}/QtWebEngineCore/%{real_version}/
%{_qt6_mkspecsdir}/modules/qt_lib_webenginecore_private.pri
%files -n libQt6WebEngineQuick6
%{_qt6_libdir}/libQt6WebEngineQuick.so.*
%{_qt6_libdir}/libQt6WebEngineQuickDelegatesQml.so.*
%files -n qt6-webenginequick-devel
%{_qt6_cmakedir}/Qt6WebEngineQuick/
%{_qt6_cmakedir}/Qt6WebEngineQuickDelegatesQml/
%{_qt6_descriptionsdir}/WebEngineQuick.json
%{_qt6_descriptionsdir}/WebEngineQuickDelegatesQml.json
%{_qt6_includedir}/QtWebEngineQuick/
%{_qt6_libdir}/libQt6WebEngineQuick.prl
%{_qt6_libdir}/libQt6WebEngineQuick.so
%{_qt6_libdir}/libQt6WebEngineQuickDelegatesQml.prl
%{_qt6_libdir}/libQt6WebEngineQuickDelegatesQml.so
%{_qt6_metatypesdir}/qt6webenginequick_*_metatypes.json
%{_qt6_metatypesdir}/qt6webenginequickdelegatesqml_*_metatypes.json
%{_qt6_mkspecsdir}/modules/qt_lib_webenginequick.pri
%{_qt6_mkspecsdir}/modules/qt_lib_webenginequickdelegatesqml.pri
%{_qt6_pkgconfigdir}/Qt6WebEngineQuick.pc
%{_qt6_pkgconfigdir}/Qt6WebEngineQuickDelegatesQml.pc
%exclude %{_qt6_includedir}/QtWebEngineQuick/%{real_version}
%files -n qt6-webenginequick-private-devel
%{_qt6_includedir}/QtWebEngineQuick/%{real_version}/
%{_qt6_mkspecsdir}/modules/qt_lib_webenginequick_private.pri
%{_qt6_mkspecsdir}/modules/qt_lib_webenginequickdelegatesqml_private.pri
%files -n libQt6WebEngineWidgets6
%{_qt6_libdir}/libQt6WebEngineWidgets.so.*
%files -n qt6-webenginewidgets-devel
%{_qt6_cmakedir}/Qt6WebEngineWidgets/
%{_qt6_descriptionsdir}/WebEngineWidgets.json
%{_qt6_includedir}/QtWebEngineWidgets/
%{_qt6_libdir}/libQt6WebEngineWidgets.prl
%{_qt6_libdir}/libQt6WebEngineWidgets.so
%{_qt6_metatypesdir}/qt6webenginewidgets_*_metatypes.json
%{_qt6_mkspecsdir}/modules/qt_lib_webenginewidgets.pri
%{_qt6_pkgconfigdir}/Qt6WebEngineWidgets.pc
%exclude %{_qt6_includedir}/QtWebEngineWidgets/%{real_version}
%files -n qt6-webenginewidgets-private-devel
%{_qt6_includedir}/QtWebEngineWidgets/%{real_version}/
%{_qt6_mkspecsdir}/modules/qt_lib_webenginewidgets_private.pri
%endif
%changelog

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

Binary file not shown.

17
rtc-dont-use-h264.patch Normal file
View File

@ -0,0 +1,17 @@
From: Fabian Vogt <fabian@ritter-vogt.de>
Subject: Don't require open264 when proprietary_codecs are supported
diff --git a/src/3rdparty/chromium/third_party/webrtc/webrtc.gni b/chromium/third_party/webrtc/webrtc.gni
index ca8acdbf259..36897a72aa8 100644
--- a/src/3rdparty/chromium/third_party/webrtc/webrtc.gni
+++ b/src/3rdparty/chromium/third_party/webrtc/webrtc.gni
@@ -151,8 +151,7 @@ declare_args() {
#
# Enabling H264 when building with MSVC is currently not supported, see
# bugs.webrtc.org/9213#c13 for more info.
- rtc_use_h264 =
- proprietary_codecs && !is_android && !is_ios && !(is_win && !is_clang)
+ rtc_use_h264 = false
# Enable this flag to make webrtc::Mutex be implemented by absl::Mutex.
rtc_use_absl_mutex = false