import qt6-qtdeclarative-6.8.1-2.el10

i10cs changed/i10cs/qt6-qtdeclarative-6.8.1-2.el10
MSVSphere Packaging Team 1 week ago
parent cc7e505276
commit c31f077b81
Signed by: sys_gitsync
GPG Key ID: B2B0B9F29E528FE8

2
.gitignore vendored

@ -1 +1 @@
SOURCES/qtdeclarative-everywhere-src-6.7.1.tar.xz
SOURCES/qtdeclarative-everywhere-src-6.8.1.tar.xz

@ -1 +1 @@
495ab434a05a657658718b70397ec5b7df356877 SOURCES/qtdeclarative-everywhere-src-6.7.1.tar.xz
672e5532e616fea73ae7368174fe1536299b450e SOURCES/qtdeclarative-everywhere-src-6.8.1.tar.xz

@ -1,352 +0,0 @@
From 3ed063d2ff6b418e8487bea0d839fd2f768c91b6 Mon Sep 17 00:00:00 2001
From: Sami Shalayel <sami.shalayel@qt.io>
Date: Thu, 21 Mar 2024 14:43:19 +0100
Subject: [PATCH] dom: avoid asserts during dom construction
Add missing safeguards to avoid crashing when constructing the Dom, also
add some tests.
Fixes: QTBUG-123871
Change-Id: Ie5da7c3b7bbf61d49d755ec6c338e2011532e89b
(cherry picked from commit 4c4605be79e564921699a065df58333d3ee10d59)
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
---
diff --git a/src/qmldom/qqmldomastcreator.cpp b/src/qmldom/qqmldomastcreator.cpp
index 1f5db5a..d8e7590 100644
--- a/src/qmldom/qqmldomastcreator.cpp
+++ b/src/qmldom/qqmldomastcreator.cpp
@@ -495,8 +495,10 @@
{
if (auto &lastEl = currentNode(); lastEl.kind == DomType::Binding) {
Binding &b = std::get<Binding>(lastEl.value);
- if (m_enableScriptExpressions && scriptNodeStack.size() != 1)
+ if (m_enableScriptExpressions
+ && (scriptNodeStack.size() != 1 || scriptNodeStack.last().isList())) {
Q_SCRIPTELEMENT_DISABLE();
+ }
if (m_enableScriptExpressions) {
b.scriptExpressionValue()->setScriptElement(finalizeScriptExpression(
currentScriptNodeEl().takeVariant(), Path().field(Fields::scriptElement),
@@ -1077,7 +1079,7 @@
if (!m_enableScriptExpressions)
return false;
- if (scriptNodeStack.empty()) {
+ if (scriptNodeStack.empty() || scriptNodeStack.last().isList()) {
Q_SCRIPTELEMENT_DISABLE();
return false;
}
@@ -1106,7 +1108,7 @@
for (auto it = list; it; it = it->next) {
if (it->elision) {
Node::accept(it->elision, this);
- if (scriptNodeStack.empty()) {
+ if (scriptNodeStack.empty() || !scriptNodeStack.last().isList()) {
Q_SCRIPTELEMENT_DISABLE();
return false;
}
@@ -1115,7 +1117,7 @@
}
if (it->element) {
Node::accept(it->element, this);
- if (scriptNodeStack.empty()) {
+ if (scriptNodeStack.empty() || scriptNodeStack.last().isList()) {
Q_SCRIPTELEMENT_DISABLE();
return false;
}
@@ -1142,7 +1144,7 @@
Node::accept(it->property, this);
if (!m_enableScriptExpressions)
return false;
- if (scriptNodeStack.empty()) {
+ if (scriptNodeStack.empty() || scriptNodeStack.last().isList()) {
Q_SCRIPTELEMENT_DISABLE();
return false;
}
@@ -1346,7 +1348,7 @@
auto current = makeScriptList(list);
for (auto it = list; it; it = it->next) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current.append(scriptNodeStack.takeLast().takeVariant());
}
@@ -1364,15 +1366,15 @@
void QQmlDomAstCreator::endVisit(AST::BinaryExpression *exp)
{
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.size() < 2);
-
if (!m_enableScriptExpressions)
return;
auto current = makeScriptElement<ScriptElements::BinaryExpression>(exp);
current->addLocation(OperatorTokenRegion, exp->operatorToken);
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setRight(currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setLeft(currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
@@ -1426,19 +1428,19 @@
current->addLocation(FileLocationRegion::RightParenthesisRegion, forStatement->rparenToken);
if (forStatement->statement) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setBody(currentScriptNodeEl().takeVariant());
removeCurrentScriptNode(std::nullopt);
}
if (forStatement->expression) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setExpression(currentScriptNodeEl().takeVariant());
removeCurrentScriptNode(std::nullopt);
}
if (forStatement->condition) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setCondition(currentScriptNodeEl().takeVariant());
removeCurrentScriptNode(std::nullopt);
}
@@ -1458,7 +1460,7 @@
}
if (forStatement->initialiser) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setInitializer(currentScriptNodeEl().takeVariant());
removeCurrentScriptNode(std::nullopt);
}
@@ -1590,7 +1592,7 @@
Node::accept(it->declaration, this);
if (!m_enableScriptExpressions)
return false;
- if (scriptNodeStack.empty()) {
+ if (scriptNodeStack.empty() || scriptNodeStack.last().isList()) {
Q_SCRIPTELEMENT_DISABLE();
return false;
}
@@ -1697,18 +1699,18 @@
current->addLocation(ElseKeywordRegion, ifStatement->elseToken);
if (ifStatement->ko) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setAlternative(scriptNodeStack.last().takeVariant());
scriptNodeStack.removeLast();
}
if (ifStatement->ok) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setConsequence(scriptNodeStack.last().takeVariant());
scriptNodeStack.removeLast();
}
if (ifStatement->expression) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setCondition(scriptNodeStack.last().takeVariant());
scriptNodeStack.removeLast();
}
@@ -1733,7 +1735,7 @@
current->addLocation(ReturnKeywordRegion, returnStatement->returnToken);
if (returnStatement->expression) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setExpression(currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
@@ -1759,7 +1761,7 @@
current->addLocation(FileLocationRegion::OperatorTokenRegion, expression->dotToken);
if (expression->base) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setLeft(currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
@@ -1790,7 +1792,7 @@
current->addLocation(FileLocationRegion::OperatorTokenRegion, expression->lbracketToken);
if (expression->expression) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
// if scriptNodeStack.last() is fieldmember expression, add expression to it instead of
// creating new one
current->setRight(currentScriptNodeEl().takeVariant());
@@ -1798,7 +1800,7 @@
}
if (expression->base) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->setLeft(currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
@@ -1834,7 +1836,7 @@
}
if (exp->base) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::callee, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
@@ -1924,7 +1926,7 @@
return;
if (exp->name) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::name, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
@@ -2038,7 +2040,7 @@
}
if (exp->expression) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::expression, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
@@ -2062,7 +2064,7 @@
auto current = makeScriptList(list);
for (auto it = list; it; it = it->next) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current.append(scriptNodeStack.takeLast().takeVariant());
}
@@ -2094,7 +2096,7 @@
}
if (exp->defaultClause) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::defaultClause, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
@@ -2125,12 +2127,12 @@
current->addLocation(FileLocationRegion::RightParenthesisRegion, exp->rparenToken);
if (exp->block) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::caseBlock, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
if (exp->expression) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::expression, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
@@ -2157,13 +2159,13 @@
current->addLocation(FileLocationRegion::RightParenthesisRegion, exp->rparenToken);
if (exp->statement) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::body, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
if (exp->expression) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::expression, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
@@ -2191,13 +2193,13 @@
current->addLocation(FileLocationRegion::RightParenthesisRegion, exp->rparenToken);
if (exp->expression) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::expression, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
if (exp->statement) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::body, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
@@ -2224,18 +2226,18 @@
current->addLocation(FileLocationRegion::RightParenthesisRegion, exp->rparenToken);
if (exp->statement) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::body, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
if (exp->expression) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::expression, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
if (exp->lhs) {
- Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty());
+ Q_SCRIPTELEMENT_EXIT_IF(scriptNodeStack.isEmpty() || scriptNodeStack.last().isList());
current->insertChild(Fields::bindingElement, currentScriptNodeEl().takeVariant());
removeCurrentScriptNode({});
}
diff --git a/tests/auto/qmldom/domdata/domitem/crashes/lambda.qml b/tests/auto/qmldom/domdata/domitem/crashes/lambda.qml
new file mode 100644
index 0000000..85f696f
--- /dev/null
+++ b/tests/auto/qmldom/domdata/domitem/crashes/lambda.qml
@@ -0,0 +1,7 @@
+import QtQuick.Controls
+
+Action {
+ onTriggered: foo(Bla.Bar, function() {
+ console.log("Hello")
+ })
+}
diff --git a/tests/auto/qmldom/domdata/domitem/crashes/templateStrings.qml b/tests/auto/qmldom/domdata/domitem/crashes/templateStrings.qml
new file mode 100644
index 0000000..feb5646
--- /dev/null
+++ b/tests/auto/qmldom/domdata/domitem/crashes/templateStrings.qml
@@ -0,0 +1,10 @@
+import QtQuick
+
+
+Item {
+ property string verbatim1: 'A "verbatim" string!'
+ property string verbatim2: "A 'verbatim' string\u2757"
+ property string verbatim3: `400 + 300 is ${400 + 300}.
+
+mutliline`
+}
diff --git a/tests/auto/qmldom/domitem/tst_qmldomitem.h b/tests/auto/qmldom/domitem/tst_qmldomitem.h
index 184dc8e..3673871 100644
--- a/tests/auto/qmldom/domitem/tst_qmldomitem.h
+++ b/tests/auto/qmldom/domitem/tst_qmldomitem.h
@@ -2813,6 +2813,12 @@
QTest::addRow("inactiveVisitorMarkerCrash")
<< baseDir + u"/inactiveVisitorMarkerCrash.qml"_s;
+
+ QTest::addRow("templateStrings")
+ << baseDir + u"/crashes/templateStrings.qml"_s;
+
+ QTest::addRow("lambda")
+ << baseDir + u"/crashes/lambda.qml"_s;
}
void crashes()
{

@ -16,8 +16,8 @@
Summary: Qt6 - QtDeclarative component
Name: qt6-%{qt_module}
Version: 6.7.1
Release: 7%{?dist}
Version: 6.8.1
Release: 2%{?dist}
License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0
Url: http://www.qt.io
@ -35,13 +35,11 @@ Source0: https://download.qt.io/official_releases/qt/%{majmin}/%{version}/submod
Source5: qv4global_p-multilib.h
## upstream patches
# https://codereview.qt-project.org/c/qt/qtdeclarative/+/550241
Patch0: qtdeclarative-avoid-asserts-during-dom-construction.patch
## upstreamable patches
# filter qml provides
%global __provides_exclude_from ^%{_qt6_archdatadir}/qml/.*\\.so$
%global __provides_exclude_from ^%{_qt6_qmldir}/.*\\.so$
BuildRequires: cmake
BuildRequires: gcc-c++
@ -51,6 +49,7 @@ BuildRequires: qt6-qtbase-devel >= %{version}
BuildRequires: qt6-qtbase-private-devel
BuildRequires: qt6-qtlanguageserver-devel >= %{version}
BuildRequires: qt6-qtshadertools-devel >= %{version}
BuildRequires: qt6-qtsvg-devel >= %{version}
%{?_qt6:Requires: %{_qt6}%{?_isa} = %{_qt6_version}}
BuildRequires: python%{python3_pkgversion}
BuildRequires: pkgconfig(xkbcommon) >= 0.4.1
@ -75,6 +74,10 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: qt6-qtbase-devel%{?_isa}
Obsoletes: qt6-qtquickcontrols2-devel < 6.2.0~beta3-1
Provides: qt6-qtquickcontrols2-devel = %{version}-%{release}
# rhbz#2330219
# Require qt6-qtbase-private-devel until this is fixed upstream or a better
# workaround is found.
Requires: (qt6-qtbase-private-devel if cmake >= 3.31.0)
%description devel
%{summary}.
@ -118,8 +121,6 @@ export PATH=`pwd`:$PATH
-DQT_BUILD_TESTS=%{?build_tests:ON}%{!?build_tests:OFF} \
-DQT_INSTALL_EXAMPLES_SOURCES=%{?examples:ON}%{!?examples:OFF}
# FIXME: tests/auto/qml/qmltc doesn't build
sed -i 's|add_subdirectory(qmltc)||' tests/auto/qml/CMakeLists.txt
%if 0%{?build_tests}
%qt6_fix_tests
@ -173,6 +174,9 @@ for prl_file in libQt6*.prl ; do
done
popd
# Copied from OpenSUSE packages
# CMake modules for plugins are not useful
rm %{buildroot}%{_qt6_libdir}/cmake/*/*Plugin{Config,ConfigVersion,Targets*}.cmake
%check
%if 0%{?tests}
@ -190,183 +194,453 @@ make check -k -C tests ||:
%files
%license LICENSES/LGPL*
%{_qt6_archdatadir}/sbom/%{qt_module}-%{qt_version}.spdx
%{_qt6_libdir}/libQt6LabsAnimation.so.6*
%{_qt6_libdir}/libQt6LabsFolderListModel.so.6*
%{_qt6_libdir}/libQt6LabsPlatform.so.6*
%{_qt6_libdir}/libQt6LabsQmlModels.so.6*
%{_qt6_libdir}/libQt6LabsSettings.so.6*
%{_qt6_libdir}/libQt6LabsSharedImage.so.6*
%{_qt6_libdir}/libQt6LabsWavefrontMesh.so.6*
%{_qt6_libdir}/libQt6QmlLocalStorage.so.6*
%{_qt6_libdir}/libQt6QmlNetwork.so.6*
%{_qt6_libdir}/libQt6Qml.so.6*
%{_qt6_libdir}/libQt6QmlCompiler.so.*
%{_qt6_libdir}/libQt6QmlCore.so.6*
%{_qt6_libdir}/libQt6QmlLocalStorage.so.6*
%{_qt6_libdir}/libQt6QmlMeta.so.6*
%{_qt6_libdir}/libQt6QmlModels.so.6*
%{_qt6_libdir}/libQt6QmlNetwork.so.6*
%{_qt6_libdir}/libQt6QmlWorkerScript.so.6*
%{_qt6_libdir}/libQt6Quick*.so.6*
%{_qt6_libdir}/libQt6QmlXmlListModel.so.6*
%{_qt6_libdir}/libQt6Quick.so.6*
%{_qt6_libdir}/libQt6QuickControls2.so.6*
%{_qt6_libdir}/libQt6QuickControls2Basic.so.6*
%{_qt6_libdir}/libQt6QuickControls2BasicStyleImpl.so.6*
%{_qt6_libdir}/libQt6QuickControls2FluentWinUI3StyleImpl.so.6*
%{_qt6_libdir}/libQt6QuickControls2Fusion.so.6*
%{_qt6_libdir}/libQt6QuickControls2FusionStyleImpl.so.6*
%{_qt6_libdir}/libQt6QuickControls2Imagine.so.6*
%{_qt6_libdir}/libQt6QuickControls2ImagineStyleImpl.so.6*
%{_qt6_libdir}/libQt6QuickControls2Impl.so.6*
%{_qt6_libdir}/libQt6QuickControls2Material.so.6*
%{_qt6_libdir}/libQt6QuickControls2MaterialStyleImpl.so.6*
%{_qt6_libdir}/libQt6QuickControls2Universal.so.6*
%{_qt6_libdir}/libQt6QuickControls2UniversalStyleImpl.so.6*
%{_qt6_libdir}/libQt6QuickDialogs2.so.6*
%{_qt6_libdir}/libQt6QuickDialogs2QuickImpl.so.6*
%{_qt6_libdir}/libQt6QuickDialogs2Utils.so.6*
%{_qt6_libdir}/libQt6QuickEffects.so.6*
%{_qt6_libdir}/libQt6QuickLayouts.so.6*
%{_qt6_libdir}/libQt6QuickWidgets.so.6*
%{_qt6_libdir}/libQt6QuickParticles.so.6*
%{_qt6_libdir}/libQt6QuickShapes.so.6*
%{_qt6_libdir}/libQt6QuickTest.so.6*
%{_qt6_libdir}/libQt6QuickTemplates2.so.6*
%{_qt6_libdir}/libQt6QmlXmlListModel.so.6*
%{_qt6_libdir}/libQt6QuickTest.so.6*
%{_qt6_libdir}/libQt6QuickVectorImage.so.6*
%{_qt6_libdir}/libQt6QuickVectorImageGenerator.so.6*
%{_qt6_libdir}/libQt6QuickWidgets.so.6*
%{_qt6_plugindir}/qmltooling/
%{_qt6_plugindir}/qmllint/
%{_qt6_archdatadir}/qml/Qt*
%{_qt6_archdatadir}/qml/QmlTime
%{_qt6_archdatadir}/qml/*.qmltypes
%{_qt6_plugindir}/qmlls/
%dir %{_qt6_qmldir}
%{_qt6_qmldir}/QML/
%{_qt6_qmldir}/QmlTime/
%{_qt6_qmldir}/Qt/
%{_qt6_qmldir}/QtCore/
%{_qt6_qmldir}/QtNetwork/
%{_qt6_qmldir}/QtQml/
%{_qt6_qmldir}/QtQuick/
%{_qt6_qmldir}/QtTest/
%{_qt6_qmldir}/builtins.qmltypes
%{_qt6_qmldir}/jsroot.qmltypes
%files devel
%dir %{_qt6_libdir}/cmake/Qt6PacketProtocolPrivate
%dir %{_qt6_libdir}/cmake/Qt6Qml
%dir %{_qt6_libdir}/cmake/Qt6Qml/QmlPlugins
%dir %{_qt6_libdir}/cmake/Qt6QmlBuiltins
%dir %{_qt6_libdir}/cmake/Qt6QmlCompiler
%dir %{_qt6_libdir}/cmake/Qt6QmlCore
%dir %{_qt6_libdir}/cmake/Qt6QmlDebugPrivate
%dir %{_qt6_libdir}/cmake/Qt6QmlIntegration
%dir %{_qt6_libdir}/cmake/Qt6QmlImportScanner
%dir %{_qt6_libdir}/cmake/Qt6LabsAnimation
%dir %{_qt6_libdir}/cmake/Qt6LabsFolderListModel
%dir %{_qt6_libdir}/cmake/Qt6LabsPlatform
%dir %{_qt6_libdir}/cmake/Qt6LabsQmlModels
%dir %{_qt6_libdir}/cmake/Qt6LabsSettings
%dir %{_qt6_libdir}/cmake/Qt6LabsSharedImage
%dir %{_qt6_libdir}/cmake/Qt6LabsWavefrontMesh
%dir %{_qt6_libdir}/cmake/Qt6Qml
%dir %{_qt6_libdir}/cmake/Qt6QmlCompiler
%dir %{_qt6_libdir}/cmake/Qt6QmlCore
%dir %{_qt6_libdir}/cmake/Qt6QmlImportScanner
%dir %{_qt6_libdir}/cmake/Qt6QmlIntegration
%dir %{_qt6_libdir}/cmake/Qt6QmlLocalStorage
%dir %{_qt6_libdir}/cmake/Qt6QmlMeta
%dir %{_qt6_libdir}/cmake/Qt6QmlModels
%dir %{_qt6_libdir}/cmake/Qt6QmlNetwork
%dir %{_qt6_libdir}/cmake/Qt6QmlTools
%dir %{_qt6_libdir}/cmake/Qt6QmlWorkerScript
%dir %{_qt6_libdir}/cmake/Qt6QmlXmlListModel
%dir %{_qt6_libdir}/cmake/Qt6Quick
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2Basic
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2BasicStyleImpl
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2FluentWinUI3StyleImpl
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2Fusion
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2FusionStyleImpl
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2Imagine
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2ImagineStyleImpl
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2Impl
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2Material
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2MaterialStyleImpl
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2Universal
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2UniversalStyleImpl
%dir %{_qt6_libdir}/cmake/Qt6QmlLSPrivate
%dir %{_qt6_libdir}/cmake/Qt6QmlDomPrivate
%dir %{_qt6_libdir}/cmake/Qt6QmlLocalStorage
%dir %{_qt6_libdir}/cmake/Qt6QmlModels
%dir %{_qt6_libdir}/cmake/Qt6QmlNetwork
%dir %{_qt6_libdir}/cmake/Qt6QmlTools
%dir %{_qt6_libdir}/cmake/Qt6QmlToolingSettingsPrivate
%dir %{_qt6_libdir}/cmake/Qt6QmlWorkerScript
%dir %{_qt6_libdir}/cmake/Qt6QmlTypeRegistrarPrivate
%dir %{_qt6_libdir}/cmake/Qt6QuickEffectsPrivate
%dir %{_qt6_libdir}/cmake/Qt6Quick
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2
%dir %{_qt6_libdir}/cmake/Qt6QuickControls2Impl
%dir %{_qt6_libdir}/cmake/Qt6QuickControlsTestUtilsPrivate
%dir %{_qt6_libdir}/cmake/Qt6QuickDialogs2
%dir %{_qt6_libdir}/cmake/Qt6QuickDialogs2QuickImpl
%dir %{_qt6_libdir}/cmake/Qt6QuickDialogs2Utils
%dir %{_qt6_libdir}/cmake/Qt6QuickLayouts
%dir %{_qt6_libdir}/cmake/Qt6QuickParticlesPrivate
%dir %{_qt6_libdir}/cmake/Qt6QuickShapesPrivate
%dir %{_qt6_libdir}/cmake/Qt6QuickTest
%dir %{_qt6_libdir}/cmake/Qt6QuickTestUtilsPrivate
%dir %{_qt6_libdir}/cmake/Qt6QuickTemplates2
%dir %{_qt6_libdir}/cmake/Qt6QmlXmlListModel
%dir %{_qt6_libdir}/cmake/Qt6QuickTest
%dir %{_qt6_libdir}/cmake/Qt6QuickTools
%dir %{_qt6_libdir}/cmake/Qt6QuickVectorImage
%dir %{_qt6_libdir}/cmake/Qt6QuickWidgets
%{_bindir}/qml*
%{_bindir}/svgtoqml
%{_qt6_bindir}/qml*
%{_qt6_bindir}/svgtoqml
%{_qt6_libexecdir}/qmlcachegen
%{_qt6_libexecdir}/qmlimportscanner
%{_qt6_libexecdir}/qmltyperegistrar
%{_qt6_libexecdir}/qmljsrootgen
%{_qt6_headerdir}/Qt*/
%{_qt6_libdir}/libQt6LabsAnimation.so
%{_qt6_libdir}/libQt6LabsFolderListModel.so
%{_qt6_libdir}/libQt6LabsQmlModels.so
%{_qt6_libdir}/libQt6LabsSettings.so
%{_qt6_libdir}/libQt6LabsSharedImage.so
%{_qt6_libdir}/libQt6LabsWavefrontMesh.so
%{_qt6_libdir}/libQt6QmlLocalStorage.so
%{_qt6_libexecdir}/qmlaotstats
%{_qt6_headerdir}/QtLabs*/
%{_qt6_headerdir}/QtQml/
%{_qt6_headerdir}/QtQmlCompiler/
%{_qt6_headerdir}/QtQmlCore/
%{_qt6_headerdir}/QtQmlIntegration/
%{_qt6_headerdir}/QtQmlLocalStorage/
%{_qt6_headerdir}/QtQmlMeta/
%{_qt6_headerdir}/QtQmlModels/
%{_qt6_headerdir}/QtQmlNetwork/
%{_qt6_headerdir}/QtQmlWorkerScript/
%{_qt6_headerdir}/QtQmlXmlListModel/
%{_qt6_headerdir}/QtQuick/
%{_qt6_headerdir}/QtQuickControls2*StyleImpl/
%{_qt6_headerdir}/QtQuickControls2/
%{_qt6_headerdir}/QtQuickControls2Basic/
%{_qt6_headerdir}/QtQuickControls2Fusion/
%{_qt6_headerdir}/QtQuickControls2Imagine/
%{_qt6_headerdir}/QtQuickControls2Impl/
%{_qt6_headerdir}/QtQuickControls2Material/
%{_qt6_headerdir}/QtQuickControls2Universal/
%{_qt6_headerdir}/QtQuickDialogs2/
%{_qt6_headerdir}/QtQuickDialogs2QuickImpl/
%{_qt6_headerdir}/QtQuickDialogs2Utils/
%{_qt6_headerdir}/QtQuickEffects/
%{_qt6_headerdir}/QtQuickLayouts/
%{_qt6_headerdir}/QtQuickParticles/
%{_qt6_headerdir}/QtQuickShapes/
%{_qt6_headerdir}/QtQuickTemplates2/
%{_qt6_headerdir}/QtQuickTest/
%{_qt6_headerdir}/QtQuickVectorImage/
%{_qt6_headerdir}/QtQuickVectorImageGenerator/
%{_qt6_headerdir}/QtQuickWidgets/
%{_qt6_libdir}/libQt6Labs*.prl
%{_qt6_libdir}/libQt6Labs*.so
%{_qt6_libdir}/libQt6Qml.prl
%{_qt6_libdir}/libQt6Qml.so
%{_qt6_libdir}/libQt6QmlNetwork.so
%{_qt6_libdir}/libQt6QmlCompiler.prl
%{_qt6_libdir}/libQt6QmlCompiler.so
%{_qt6_libdir}/libQt6QmlCore.prl
%{_qt6_libdir}/libQt6QmlCore.so
%{_qt6_libdir}/libQt6QmlLocalStorage.prl
%{_qt6_libdir}/libQt6QmlLocalStorage.so
%{_qt6_libdir}/libQt6QmlMeta.prl
%{_qt6_libdir}/libQt6QmlMeta.so
%{_qt6_libdir}/libQt6QmlModels.prl
%{_qt6_libdir}/libQt6QmlModels.so
%{_qt6_libdir}/libQt6QmlNetwork.prl
%{_qt6_libdir}/libQt6QmlNetwork.so
%{_qt6_libdir}/libQt6QmlWorkerScript.prl
%{_qt6_libdir}/libQt6QmlWorkerScript.so
%{_qt6_libdir}/libQt6Quick*.so
%{_qt6_libdir}/libQt6QmlXmlListModel.prl
%{_qt6_libdir}/libQt6QmlXmlListModel.so
%{_qt6_libdir}/qt6/metatypes/qt6*_metatypes.json
%{_qt6_libdir}/qt6/objects-RelWithDebInfo/QmlTypeRegistrarPrivate_resources_1/.qt/rcc/qrc_jsRootMetaTypes_init.cpp.o
%{_qt6_archdatadir}/mkspecs/modules/*.pri
%{_qt6_archdatadir}/mkspecs/features/*.prf
%{_qt6_libdir}/libQt6Quick*Impl.prl
%{_qt6_libdir}/libQt6Quick*Impl.so
%{_qt6_libdir}/libQt6Quick.prl
%{_qt6_libdir}/libQt6Quick.so
%{_qt6_libdir}/libQt6QuickControls2.prl
%{_qt6_libdir}/libQt6QuickControls2.so
%{_qt6_libdir}/libQt6QuickControls2Basic.prl
%{_qt6_libdir}/libQt6QuickControls2Basic.so
%{_qt6_libdir}/libQt6QuickControls2Fusion.prl
%{_qt6_libdir}/libQt6QuickControls2Fusion.so
%{_qt6_libdir}/libQt6QuickControls2Imagine.prl
%{_qt6_libdir}/libQt6QuickControls2Imagine.so
%{_qt6_libdir}/libQt6QuickControls2Material.prl
%{_qt6_libdir}/libQt6QuickControls2Material.so
%{_qt6_libdir}/libQt6QuickControls2Universal.prl
%{_qt6_libdir}/libQt6QuickControls2Universal.so
%{_qt6_libdir}/libQt6QuickDialogs2.prl
%{_qt6_libdir}/libQt6QuickDialogs2.so
%{_qt6_libdir}/libQt6QuickDialogs2Utils.prl
%{_qt6_libdir}/libQt6QuickDialogs2Utils.so
%{_qt6_libdir}/libQt6QuickEffects.prl
%{_qt6_libdir}/libQt6QuickEffects.so
%{_qt6_libdir}/libQt6QuickLayouts.prl
%{_qt6_libdir}/libQt6QuickLayouts.so
%{_qt6_libdir}/libQt6QuickParticles.prl
%{_qt6_libdir}/libQt6QuickParticles.so
%{_qt6_libdir}/libQt6QuickShapes.prl
%{_qt6_libdir}/libQt6QuickShapes.so
%{_qt6_libdir}/libQt6QuickTemplates2.prl
%{_qt6_libdir}/libQt6QuickTemplates2.so
%{_qt6_libdir}/libQt6QuickTest.prl
%{_qt6_libdir}/libQt6QuickTest.so
%{_qt6_libdir}/libQt6QuickVectorImage.prl
%{_qt6_libdir}/libQt6QuickVectorImage.so
%{_qt6_libdir}/libQt6QuickVectorImageGenerator.prl
%{_qt6_libdir}/libQt6QuickVectorImageGenerator.so
%{_qt6_libdir}/libQt6QuickWidgets.prl
%{_qt6_libdir}/libQt6QuickWidgets.so
%{_qt6_libdir}/cmake/Qt6BuildInternals/StandaloneTests/QtDeclarativeTestsConfig.cmake
%{_qt6_libdir}/cmake/Qt6PacketProtocolPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsAnimation/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsFolderListModel/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsPlatform/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsQmlModels/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsSettings/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsSharedImage/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsWavefrontMesh/*.cmake
%{_qt6_libdir}/cmake/Qt6Qml/*.cmake*
%{_qt6_libdir}/cmake/Qt6Qml/*.conf.in
%{_qt6_libdir}/cmake/Qt6Qml/*.cpp.in
%{_qt6_libdir}/cmake/Qt6Qml/*.qrc.in
%{_qt6_libdir}/cmake/Qt6QmlBuiltins/*cmake
%{_qt6_libdir}/cmake/Qt6Qml/QmlPlugins/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlCompiler/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlCore/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlDebugPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlIntegration/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlImportScanner/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsAnimation/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsFolderListModel/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsQmlModels/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsSettings/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsSharedImage/*.cmake
%{_qt6_libdir}/cmake/Qt6LabsWavefrontMesh/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlLSPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlDomPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlIntegration/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlLocalStorage/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlMeta/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlModels/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlNetwork/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlTools/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlWorkerScript/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlXmlListModel/*.cmake
%{_qt6_libdir}/cmake/Qt6Quick/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2Basic/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2BasicStyleImpl/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2FluentWinUI3StyleImpl/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2Fusion/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2FusionStyleImpl/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2Imagine/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2ImagineStyleImpl/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2Impl/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2Material/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2MaterialStyleImpl/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2Universal/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2UniversalStyleImpl/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlModels/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlNetwork/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlTools/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlToolingSettingsPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlWorkerScript/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlTypeRegistrarPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickEffectsPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6Quick/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControls2Impl/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControlsTestUtilsPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickDialogs2/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickDialogs2QuickImpl/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickDialogs2Utils/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickLayouts/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickParticlesPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickShapesPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickTest/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickTestUtilsPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickTemplates2/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlXmlListModel/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickTest/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickTools/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickVectorImage/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickWidgets/*.cmake
%{_qt6_libdir}/qt6/modules/*.json
%{_qt6_libdir}/pkgconfig/*.pc
%{_qt6_libdir}/libQt6*.prl
# FIXME: should be in -static, but looks it's required for all modules
%{_qt6_libdir}/libQt6QmlBuiltins.a
%dir %{_qt6_mkspecsdir}/features
%{_qt6_mkspecsdir}/features/qmlcache.prf
%{_qt6_mkspecsdir}/features/qmltypes.prf
%{_qt6_mkspecsdir}/features/qtquickcompiler.prf
%{_qt6_descriptionsdir}/Labs*.json
%{_qt6_descriptionsdir}/Qml.json
%{_qt6_descriptionsdir}/QmlCompiler.json
%{_qt6_descriptionsdir}/QmlCore.json
%{_qt6_descriptionsdir}/QmlIntegration.json
%{_qt6_descriptionsdir}/QmlLocalStorage.json
%{_qt6_descriptionsdir}/QmlMeta.json
%{_qt6_descriptionsdir}/QmlModels.json
%{_qt6_descriptionsdir}/QmlNetwork.json
%{_qt6_descriptionsdir}/QmlWorkerScript.json
%{_qt6_descriptionsdir}/QmlXmlListModel.json
%{_qt6_descriptionsdir}/Quick.json
%{_qt6_descriptionsdir}/QuickControls2*Impl.json
%{_qt6_descriptionsdir}/QuickControls2.json
%{_qt6_descriptionsdir}/QuickControls2Basic.json
%{_qt6_descriptionsdir}/QuickControls2Fusion.json
%{_qt6_descriptionsdir}/QuickControls2Imagine.json
%{_qt6_descriptionsdir}/QuickControls2Material.json
%{_qt6_descriptionsdir}/QuickControls2Universal.json
%{_qt6_descriptionsdir}/QuickDialogs2.json
%{_qt6_descriptionsdir}/QuickDialogs2QuickImpl.json
%{_qt6_descriptionsdir}/QuickDialogs2Utils.json
%{_qt6_descriptionsdir}/QuickLayouts.json
%{_qt6_descriptionsdir}/QuickTemplates2.json
%{_qt6_descriptionsdir}/QuickTest.json
%{_qt6_descriptionsdir}/QuickVectorImage.json
%{_qt6_descriptionsdir}/QuickWidgets.json
%{_qt6_metatypesdir}/qt6labs*_metatypes.json
%{_qt6_metatypesdir}/qt6qml_*_metatypes.json
%{_qt6_metatypesdir}/qt6qmlcompiler_*_metatypes.json
%{_qt6_metatypesdir}/qt6qmlcore_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6qmllocalstorage_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6qmlmeta_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6qmlmodels_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6qmlnetwork_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6qmlworkerscript_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6qmlxmllistmodel_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6quick*impl*_metatypes.json
%{_qt6_metatypesdir}/qt6quick_*_metatypes.json
%{_qt6_metatypesdir}/qt6quickcontrols2_*.json
%{_qt6_metatypesdir}/qt6quickcontrols2basic_*_metatypes.json
%{_qt6_metatypesdir}/qt6quickcontrols2fusion_*_metatypes.json
%{_qt6_metatypesdir}/qt6quickcontrols2imagine_*_metatypes.json
%{_qt6_metatypesdir}/qt6quickcontrols2material_*_metatypes.json
%{_qt6_metatypesdir}/qt6quickcontrols2universal_*_metatypes.json
%{_qt6_metatypesdir}/qt6quickdialogs2_*.json
%{_qt6_metatypesdir}/qt6quickdialogs2utils_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6quicklayouts_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6quicktest_*_metatypes.json
%{_qt6_metatypesdir}/qt6quicktemplates2_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6quickvectorimage_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6quickwidgets_*_metatypes.json
%{_qt6_mkspecsdir}/modules/qt_lib_labs*.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qml.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qmlcompiler.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qmlcore.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qmlintegration.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qmllocalstorage.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qmlmeta.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qmlmodels.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qmlnetwork.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qmltest.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qmlworkerscript.pri
%{_qt6_mkspecsdir}/modules/qt_lib_qmlxmllistmodel.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quick*impl.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quick.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quickcontrols2.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quickcontrols2basic.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quickcontrols2fusion.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quickcontrols2imagine.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quickcontrols2material.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quickcontrols2universal.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quickdialogs2.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quickdialogs2utils.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quicklayouts.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quicktemplates2.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quickvectorimage.pri
%{_qt6_mkspecsdir}/modules/qt_lib_quickwidgets.pri
%{_qt6_libdir}/pkgconfig/Qt6Labs*.pc
%{_qt6_libdir}/pkgconfig/Qt6Qml.pc
%{_qt6_libdir}/pkgconfig/Qt6QmlCompiler.pc
%{_qt6_libdir}/pkgconfig/Qt6QmlCore.pc
%{_qt6_libdir}/pkgconfig/Qt6QmlIntegration.pc
%{_qt6_libdir}/pkgconfig/Qt6QmlLocalStorage.pc
%{_qt6_libdir}/pkgconfig/Qt6QmlMeta.pc
%{_qt6_libdir}/pkgconfig/Qt6QmlModels.pc
%{_qt6_libdir}/pkgconfig/Qt6QmlNetwork.pc
%{_qt6_libdir}/pkgconfig/Qt6QmlWorkerScript.pc
%{_qt6_libdir}/pkgconfig/Qt6QmlXmlListModel.pc
%{_qt6_libdir}/pkgconfig/Qt6Quick*Impl.pc
%{_qt6_libdir}/pkgconfig/Qt6Quick.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickControls2.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickControls2Basic.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickControls2Fusion.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickControls2Imagine.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickControls2Material.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickControls2Universal.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickDialogs2.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickDialogs2Utils.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickLayouts.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickTemplates2.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickTest.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickVectorImage.pc
%{_qt6_libdir}/pkgconfig/Qt6QuickWidgets.pc
# FIXME:
# This (slit to -private-devel) didn't work out because of rhbz#2330219
# Might be something to consider in the future.
# Private stuff
# {_qt6_headerdir}/*/{qt_version}
%dir %{_qt6_libdir}/cmake/Qt6QuickEffectsPrivate
%dir %{_qt6_libdir}/cmake/Qt6QuickParticlesPrivate
%dir %{_qt6_libdir}/cmake/Qt6QuickShapesPrivate
%dir %{_qt6_libdir}/cmake/Qt6QuickVectorImageGeneratorPrivate
%{_qt6_libdir}/cmake/Qt6QuickEffectsPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickParticlesPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickShapesPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickVectorImageGeneratorPrivate/*.cmake
%{_qt6_descriptionsdir}/QuickEffectsPrivate.json
%{_qt6_descriptionsdir}/QuickParticlesPrivate.json
%{_qt6_descriptionsdir}/QuickShapesPrivate.json
%{_qt6_descriptionsdir}/QuickVectorImageGeneratorPrivate.json
%{_qt6_metatypesdir}/qt6quickeffectsprivate_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6quickparticlesprivate_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6quickshapesprivate_relwithdebinfo_metatypes.json
%{_qt6_metatypesdir}/qt6quickvectorimagegeneratorprivate_relwithdebinfo_metatypes.json
%{_qt6_mkspecsdir}/modules/qt_lib_*_private.pri
%files static
%dir %{_qt6_archdatadir}/objects-*
%dir %{_qt6_libdir}/cmake/Qt6PacketProtocolPrivate
%dir %{_qt6_libdir}/cmake/Qt6QmlDebugPrivate
%dir %{_qt6_libdir}/cmake/Qt6QmlDomPrivate
%dir %{_qt6_libdir}/cmake/Qt6QmlLSPrivate
%dir %{_qt6_libdir}/cmake/Qt6QmlToolingSettingsPrivate
%dir %{_qt6_libdir}/cmake/Qt6QmlTypeRegistrarPrivate
%dir %{_qt6_libdir}/cmake/Qt6QuickControlsTestUtilsPrivate
%dir %{_qt6_libdir}/cmake/Qt6QuickTestUtilsPrivate
%{_qt6_libdir}/cmake/Qt6PacketProtocolPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlDebugPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlDomPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlLSPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QmlToolingSettingsPrivate/*cmake
%{_qt6_libdir}/cmake/Qt6QmlTypeRegistrarPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickControlsTestUtilsPrivate/*.cmake
%{_qt6_libdir}/cmake/Qt6QuickTestUtilsPrivate/*.cmake
%{_qt6_headerdir}/QtPacketProtocol/
%{_qt6_headerdir}/QtQmlDebug/
%{_qt6_headerdir}/QtQmlDom/
%{_qt6_headerdir}/QtQmlLS/
%{_qt6_headerdir}/QtQmlToolingSettings/
%{_qt6_headerdir}/QtQmlTypeRegistrar/
%{_qt6_headerdir}/QtQuickControlsTestUtils/
%{_qt6_headerdir}/QtQuickTestUtils/
%{_qt6_libdir}/libQt6PacketProtocol.a
%{_qt6_libdir}/libQt6PacketProtocol.prl
%{_qt6_libdir}/libQt6QmlDebug.a
%{_qt6_libdir}/libQt6QmlDebug.prl
%{_qt6_libdir}/libQt6QmlDom.a
%{_qt6_libdir}/libQt6QmlDom.prl
%{_qt6_libdir}/libQt6QmlLS.a
%{_qt6_libdir}/libQt6QmlTypeRegistrar.a
%{_qt6_libdir}/libQt6QmlLS.prl
%{_qt6_libdir}/libQt6QmlToolingSettings.a
%{_qt6_libdir}/libQt6PacketProtocol.a
%{_qt6_libdir}/libQt6QmlToolingSettings.prl
%{_qt6_libdir}/libQt6QmlTypeRegistrar.a
%{_qt6_libdir}/libQt6QmlTypeRegistrar.prl
%{_qt6_libdir}/libQt6QuickControlsTestUtils.a
%{_qt6_libdir}/libQt6QuickControlsTestUtils.prl
%{_qt6_libdir}/libQt6QuickTestUtils.a
%{_qt6_libdir}/libQt6QmlDebug.a
%{_qt6_libdir}/libQt6QuickTestUtils.prl
%{_qt6_descriptionsdir}/PacketProtocolPrivate.json
%{_qt6_descriptionsdir}/QmlDebugPrivate.json
%{_qt6_descriptionsdir}/QmlDomPrivate.json
%{_qt6_descriptionsdir}/QmlLSPrivate.json
%{_qt6_descriptionsdir}/QmlToolingSettingsPrivate.json
%{_qt6_descriptionsdir}/QmlTypeRegistrarPrivate.json
%{_qt6_descriptionsdir}/QuickControlsTestUtilsPrivate.json
%{_qt6_descriptionsdir}/QuickTestUtilsPrivate.json
%{_qt6_metatypesdir}/qt6packetprotocolprivate_*_metatypes.json
%{_qt6_metatypesdir}/qt6qmldebugprivate_*_metatypes.json
%{_qt6_metatypesdir}/qt6qmldomprivate_*_metatypes.json
%{_qt6_metatypesdir}/qt6qmllsprivate_*_metatypes.json
%{_qt6_metatypesdir}/qt6qmltoolingsettingsprivate_*_metatypes.json
%{_qt6_metatypesdir}/qt6qmltyperegistrarprivate_*_metatypes.json
%{_qt6_metatypesdir}/qt6quickcontrolstestutilsprivate_*_metatypes.json
%{_qt6_metatypesdir}/qt6quicktestutilsprivate_*_metatypes.json
# FIXME:
# Same to qtbase, we probably cannot have mkspecs separate from -devel
#{_qt6_mkspecsdir}/modules/qt_lib_packetprotocol_private.pri
#{_qt6_mkspecsdir}/modules/qt_lib_qmldebug_private.pri
#{_qt6_mkspecsdir}/modules/qt_lib_qmldom_private.pri
#{_qt6_mkspecsdir}/modules/qt_lib_qmlls_private.pri
#{_qt6_mkspecsdir}/modules/qt_lib_qmltoolingsettings_private.pri
#{_qt6_mkspecsdir}/modules/qt_lib_qmltyperegistrar_private.pri
#{_qt6_mkspecsdir}/modules/qt_lib_quickcontrolstestutilsprivate_private.pri
#{_qt6_mkspecsdir}/modules/qt_lib_quicktestutilsprivate_private.pri
%{_qt6_archdatadir}/objects-*/QmlTypeRegistrarPrivate_resources_1/
%if 0%{?examples}
%files examples
@ -379,6 +653,15 @@ make check -k -C tests ||:
%endif
%changelog
* Sat Dec 07 2024 Jan Grulich <jgrulich@redhat.com> - 6.8.1-2
- Make -devel subpkg to require qtbase-private-devel for cmake >= 3.31.0
Workaround for rhbz#2330219
Resolves: RHEL-53982
* Tue Dec 03 2024 Jan Grulich <jgrulich@redhat.com> - 6.8.1-1
- 6.8.1
Resolves: RHEL-53982
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 6.7.1-7
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018

Loading…
Cancel
Save