summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.cmake.conf3
-rw-r--r--src/corelib/CMakeLists.txt1
-rw-r--r--src/corelib/io/qdebug.h14
-rw-r--r--src/corelib/kernel/qvariant.h19
-rw-r--r--src/corelib/kernel/qvarianthash.h56
-rw-r--r--src/corelib/kernel/qvariantlist.h55
-rw-r--r--src/corelib/kernel/qvariantmap.h56
-rw-r--r--src/corelib/tools/qsharedpointer_impl.h6
-rw-r--r--sync.profile1
9 files changed, 193 insertions, 18 deletions
diff --git a/.cmake.conf b/.cmake.conf
index 57401cb9b9..ee63c78947 100644
--- a/.cmake.conf
+++ b/.cmake.conf
@@ -22,3 +22,6 @@ set(QT_SUPPORTED_MIN_CMAKE_VERSION_FOR_USING_QT_STATIC "3.21")
# in sync.
set(QT_MIN_NEW_POLICY_CMAKE_VERSION "3.16")
set(QT_MAX_NEW_POLICY_CMAKE_VERSION "3.21")
+
+# set (git) module specific defines
+set(QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_LEAN_HEADERS=1")
diff --git a/src/corelib/CMakeLists.txt b/src/corelib/CMakeLists.txt
index 1cf6a9c486..6f5e0ec6cf 100644
--- a/src/corelib/CMakeLists.txt
+++ b/src/corelib/CMakeLists.txt
@@ -145,6 +145,7 @@ qt_internal_add_module(Core
kernel/qtimer.cpp kernel/qtimer.h
kernel/qtranslator.cpp kernel/qtranslator.h kernel/qtranslator_p.h
kernel/qvariant.cpp kernel/qvariant.h kernel/qvariant_p.h
+ kernel/qvariantmap.h kernel/qvarianthash.h kernel/qvariantlist.h
plugin/qfactoryinterface.cpp plugin/qfactoryinterface.h
plugin/qfactoryloader.cpp plugin/qfactoryloader_p.h
plugin/qplugin.h plugin/qplugin_p.h
diff --git a/src/corelib/io/qdebug.h b/src/corelib/io/qdebug.h
index fccf581ed9..32b3bf793d 100644
--- a/src/corelib/io/qdebug.h
+++ b/src/corelib/io/qdebug.h
@@ -41,14 +41,9 @@
#ifndef QDEBUG_H
#define QDEBUG_H
-#include <QtCore/qalgorithms.h>
-#include <QtCore/qhash.h>
-#include <QtCore/qlist.h>
-#include <QtCore/qmap.h>
+#include <QtCore/qcontainerfwd.h>
#include <QtCore/qtextstream.h>
#include <QtCore/qstring.h>
-#include <QtCore/qset.h>
-#include <QtCore/qvarlengtharray.h>
#include <QtCore/qcontiguouscache.h>
#include <QtCore/qsharedpointer.h>
@@ -58,6 +53,13 @@
#include <map>
#include <utility>
+#if !defined(QT_LEAN_HEADERS) || QT_LEAN_HEADERS < 1
+# include <QtCore/qlist.h>
+# include <QtCore/qmap.h>
+# include <QtCore/qset.h>
+# include <QtCore/qvarlengtharray.h>
+#endif
+
QT_BEGIN_NAMESPACE
class QT6_ONLY(Q_CORE_EXPORT) QDebug : public QIODeviceBase
diff --git a/src/corelib/kernel/qvariant.h b/src/corelib/kernel/qvariant.h
index fc6b8e9563..ffc091ebf9 100644
--- a/src/corelib/kernel/qvariant.h
+++ b/src/corelib/kernel/qvariant.h
@@ -41,23 +41,22 @@
#define QVARIANT_H
#include <QtCore/qatomic.h>
-#include <QtCore/qbytearray.h>
-#include <QtCore/qlist.h>
+#include <QtCore/qcontainerfwd.h>
#include <QtCore/qmetatype.h>
-#include <QtCore/qmap.h>
-#include <QtCore/qhash.h>
-#include <QtCore/qstring.h>
-#include <QtCore/qstringlist.h>
-#include <QtCore/qobject.h>
#ifndef QT_NO_DEBUG_STREAM
#include <QtCore/qdebug.h>
#endif
-#ifndef QT_BOOTSTRAPPED
-#include <QtCore/qbytearraylist.h>
-#endif
#include <memory>
#include <type_traits>
#include <variant>
+#if !defined(QT_LEAN_HEADERS) || QT_LEAN_HEADERS < 1
+# include <QtCore/qlist.h>
+# include <QtCore/qstringlist.h>
+# include <QtCore/qbytearraylist.h>
+# include <QtCore/qhash.h>
+# include <QtCore/qmap.h>
+# include <QtCore/qobject.h>
+#endif
QT_BEGIN_NAMESPACE
diff --git a/src/corelib/kernel/qvarianthash.h b/src/corelib/kernel/qvarianthash.h
new file mode 100644
index 0000000000..3ace02eede
--- /dev/null
+++ b/src/corelib/kernel/qvarianthash.h
@@ -0,0 +1,56 @@
+/****************************************************************************
+**
+** Copyright (C) 2022 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the QtCore module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 3 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL3 included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 3 requirements
+** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 2.0 or (at your option) the GNU General
+** Public license version 3 or any later version approved by the KDE Free
+** Qt Foundation. The licenses are as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-2.0.html and
+** https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QVARIANTHASH_H
+#define QVARIANTHASH_H
+
+#if 0
+#pragma qt_class(QVariantHash)
+#endif
+
+#include <QtCore/qglobal.h>
+
+#include <QtCore/QHash>
+#include <QtCore/QVariant>
+#include <QtCore/QString>
+
+QT_BEGIN_NAMESPACE
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/corelib/kernel/qvariantlist.h b/src/corelib/kernel/qvariantlist.h
new file mode 100644
index 0000000000..9cecf2e484
--- /dev/null
+++ b/src/corelib/kernel/qvariantlist.h
@@ -0,0 +1,55 @@
+/****************************************************************************
+**
+** Copyright (C) 2022 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the QtCore module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 3 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL3 included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 3 requirements
+** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 2.0 or (at your option) the GNU General
+** Public license version 3 or any later version approved by the KDE Free
+** Qt Foundation. The licenses are as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-2.0.html and
+** https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QVARIANTLIST_H
+#define QVARIANTLIST_H
+
+#if 0
+#pragma qt_class(QVariantList)
+#endif
+
+#include <QtCore/qglobal.h>
+
+#include <QtCore/QList>
+#include <QtCore/QVariant>
+
+QT_BEGIN_NAMESPACE
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/corelib/kernel/qvariantmap.h b/src/corelib/kernel/qvariantmap.h
new file mode 100644
index 0000000000..a2d0458902
--- /dev/null
+++ b/src/corelib/kernel/qvariantmap.h
@@ -0,0 +1,56 @@
+/****************************************************************************
+**
+** Copyright (C) 2022 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the QtCore module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 3 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL3 included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 3 requirements
+** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 2.0 or (at your option) the GNU General
+** Public license version 3 or any later version approved by the KDE Free
+** Qt Foundation. The licenses are as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-2.0.html and
+** https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QVARIANTMAP_H
+#define QVARIANTMAP_H
+
+#if 0
+#pragma qt_class(QVariantMap)
+#endif
+
+#include <QtCore/qglobal.h>
+
+#include <QtCore/QMap>
+#include <QtCore/QVariant>
+#include <QtCore/QString>
+
+QT_BEGIN_NAMESPACE
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/corelib/tools/qsharedpointer_impl.h b/src/corelib/tools/qsharedpointer_impl.h
index 1b982c0cf9..683dc496a4 100644
--- a/src/corelib/tools/qsharedpointer_impl.h
+++ b/src/corelib/tools/qsharedpointer_impl.h
@@ -62,13 +62,17 @@ QT_END_NAMESPACE
#include <new>
#include <QtCore/qatomic.h>
-#include <QtCore/qobject.h> // for qobject_cast
#include <QtCore/qhashfunctions.h>
+#include <QtCore/qmetatype.h> // for IsPointerToTypeDerivedFromQObject
#include <memory>
QT_BEGIN_NAMESPACE
+class QObject;
+template <class T>
+T qobject_cast(const QObject *object);
+
//
// forward declarations
//
diff --git a/sync.profile b/sync.profile
index 83fab8ffe0..70f652ecf4 100644
--- a/sync.profile
+++ b/sync.profile
@@ -51,7 +51,6 @@
"qevent.h" => "QtEvents",
"qnamespace.h" => "Qt",
"qnumeric.h" => "QtNumeric",
- "qvariant.h" => "QVariantHash,QVariantList,QVariantMap",
"qvulkanfunctions.h" => "QVulkanFunctions,QVulkanDeviceFunctions",
"qgl.h" => "QGL",
"qtsqlglobal.h" => "QSql",