aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2020-03-12 15:27:58 +0100
committerAlexandru Croitor <alexandru.croitor@qt.io>2020-03-12 15:28:15 +0100
commit8592ae4096f3f9c2b08b87ad2fcbbbfadf75f2d7 (patch)
treea757c1d80ec77952eae2cc4de5d89c01f14760fc /tools
parente7decc7637e9eb7e66a0d19705090f18488028c0 (diff)
parent14492ecee2e34843efd3ef070503a43a48552055 (diff)
Merge remote-tracking branch 'origin/wip/cmake' into dev
Conflicts: dependencies.yaml Change-Id: Ifff48b9d0e7962d481e63c49399e2d304e1011e5
Diffstat (limited to 'tools')
-rw-r--r--tools/.prev_CMakeLists.txt54
-rw-r--r--tools/CMakeLists.txt53
-rw-r--r--tools/qml/.prev_CMakeLists.txt71
-rw-r--r--tools/qml/CMakeLists.txt88
-rw-r--r--tools/qmlcachegen/.prev_CMakeLists.txt49
-rw-r--r--tools/qmlcachegen/CMakeLists.txt50
-rw-r--r--tools/qmlcachegen/qmlcachegen.cpp60
-rw-r--r--tools/qmleasing/CMakeLists.txt41
-rw-r--r--tools/qmlformat/.prev_CMakeLists.txt19
-rw-r--r--tools/qmlformat/CMakeLists.txt20
-rw-r--r--tools/qmlimportscanner/.prev_CMakeLists.txt77
-rw-r--r--tools/qmlimportscanner/CMakeLists.txt78
-rw-r--r--tools/qmljs/.prev_CMakeLists.txt87
-rw-r--r--tools/qmljs/CMakeLists.txt88
-rw-r--r--tools/qmllint/.prev_CMakeLists.txt24
-rw-r--r--tools/qmllint/CMakeLists.txt25
-rw-r--r--tools/qmlplugindump/.prev_CMakeLists.txt37
-rw-r--r--tools/qmlplugindump/CMakeLists.txt38
-rw-r--r--tools/qmlpreview/.prev_CMakeLists.txt18
-rw-r--r--tools/qmlpreview/CMakeLists.txt19
-rw-r--r--tools/qmlprofiler/.prev_CMakeLists.txt21
-rw-r--r--tools/qmlprofiler/CMakeLists.txt22
-rw-r--r--tools/qmlscene/.prev_CMakeLists.txt35
-rw-r--r--tools/qmlscene/CMakeLists.txt36
-rw-r--r--tools/qmltestrunner/.prev_CMakeLists.txt17
-rw-r--r--tools/qmltestrunner/CMakeLists.txt18
-rw-r--r--tools/qmltime/CMakeLists.txt33
27 files changed, 1174 insertions, 4 deletions
diff --git a/tools/.prev_CMakeLists.txt b/tools/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..0233f2e8d0
--- /dev/null
+++ b/tools/.prev_CMakeLists.txt
@@ -0,0 +1,54 @@
+# Generated from tools.pro.
+
+
+if(QT_FEATURE_qml_devtools)
+ add_subdirectory(qmllint)
+ add_subdirectory(qmlmin)
+ add_subdirectory(qmlimportscanner)
+
+ if(QT_FEATURE_commandlineparser AND QT_FEATURE_xmlstreamwriter)
+ add_subdirectory(qmlcachegen)
+ endif()
+endif()
+
+if(QT_FEATURE_thread AND NOT ANDROID OR android_app AND NOT WASM AND NOT rtems)
+ add_subdirectory(qml)
+
+ if(QT_FEATURE_qml_profiler)
+ add_subdirectory(qmlprofiler)
+ endif()
+
+ if(QT_FEATURE_qml_preview)
+ add_subdirectory(qmlpreview)
+ endif()
+
+ if(TARGET Qt::Quick)
+
+ if(NOT static)
+ add_subdirectory(qmlscene)
+ add_subdirectory(qmltime)
+
+ if(QT_FEATURE_regularexpression AND QT_FEATURE_process)
+ add_subdirectory(qmlplugindump)
+ endif()
+ endif()
+
+ if(TARGET Qt::Widgets)
+
+ if(QT_FEATURE_dialogbuttonbox)
+ add_subdirectory(qmleasing)
+ endif()
+ endif()
+ endif()
+
+ if(TARGET Qt::QuickTest)
+ add_subdirectory(qmltestrunner)
+ endif()
+
+ if(QT_FEATURE_private_tests)
+ add_subdirectory(qmljs)
+ endif()
+endif()
+
+if(QT_FEATURE_qml_devtools)
+endif()
diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
new file mode 100644
index 0000000000..b1c05782b3
--- /dev/null
+++ b/tools/CMakeLists.txt
@@ -0,0 +1,53 @@
+# Generated from tools.pro.
+
+
+if(QT_FEATURE_qml_devtools)
+ add_subdirectory(qmllint)
+ add_subdirectory(qmlimportscanner)
+ add_subdirectory(qmlformat)
+ # special case: Do not build qmlcachegen here but build it at src/
+ # time, so that we can use it for our own .qml files in src/imports.
+endif()
+
+if(QT_FEATURE_thread AND NOT ANDROID OR android_app AND NOT WASM AND NOT rtems)
+ add_subdirectory(qml)
+
+ if(QT_FEATURE_qml_profiler)
+ add_subdirectory(qmlprofiler)
+ endif()
+
+ if(QT_FEATURE_qml_preview)
+ add_subdirectory(qmlpreview)
+ endif()
+
+ if(TARGET Qt::Quick)
+
+ if(BUILD_SHARED_LIBS) # special case
+ add_subdirectory(qmlscene)
+ add_subdirectory(qmltime)
+
+ if(QT_FEATURE_regularexpression AND QT_FEATURE_process)
+ add_subdirectory(qmlplugindump)
+ endif()
+ endif()
+
+ if(TARGET Qt::Widgets)
+
+ if(QT_FEATURE_dialogbuttonbox)
+ add_subdirectory(qmleasing)
+ endif()
+ endif()
+ endif()
+
+ if(TARGET Qt::QuickTest)
+ add_subdirectory(qmltestrunner)
+ endif()
+
+ if(QT_FEATURE_private_tests)
+ add_subdirectory(qmljs)
+ endif()
+endif()
+
+if(QT_FEATURE_qml_devtools)
+endif()
+
diff --git a/tools/qml/.prev_CMakeLists.txt b/tools/qml/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..b9b93d02d3
--- /dev/null
+++ b/tools/qml/.prev_CMakeLists.txt
@@ -0,0 +1,71 @@
+# Generated from qml.pro.
+
+#####################################################################
+## qml Tool:
+#####################################################################
+
+qt_add_tool(qml
+ SOURCES
+ conf.h
+ main.cpp
+ PUBLIC_LIBRARIES
+ Qt::CorePrivate
+ Qt::QmlPrivate
+)
+
+# Resources:
+set(qml_resource_files
+ "conf/content/resizeItemToWindow.qml"
+ "conf/content/resizeWindowToItem.qml"
+ "conf/default.qml"
+ "conf/resizeToItem.qml"
+ "resources/qml-64.png"
+)
+
+qt_add_resource(qml "qml"
+ PREFIX
+ "/qt-project.org/QmlRuntime"
+ FILES
+ ${qml_resource_files}
+)
+
+
+#### Keys ignored in scope 1:.:.:qml.pro:<TRUE>:
+# ICON = "resources/qml-64.png"
+# QMAKE_TARGET_DESCRIPTION = "QML" "Runtime"
+# QML_IMPORT_NAME = "QmlRuntime.Config"
+# QML_IMPORT_VERSION = "1.0"
+
+## Scopes:
+#####################################################################
+
+qt_extend_target(qml CONDITION TARGET Qt::Gui
+ PUBLIC_LIBRARIES
+ Qt::Gui
+)
+
+qt_extend_target(qml CONDITION TARGET Qt::Widgets
+ PUBLIC_LIBRARIES
+ Qt::Widgets
+)
+
+#### Keys ignored in scope 4:.:.:qml.pro:WIN32:
+# RC_ICONS = "resources/qml.ico"
+
+#### Keys ignored in scope 5:.:.:qml.pro:APPLE:
+# ICON = "resources/qml.icns"
+# OTHER_FILES = "resources/Info.plist"
+# QMAKE_INFO_PLIST = "resources/Info.plist"
+
+qt_extend_target(qml CONDITION QT_FEATURE_qml_debug
+ DEFINES
+ QT_QML_DEBUG_NO_WARNING
+)
+
+set_target_properties(qml PROPERTIES
+ QT_QML_MODULE_INSTALL_QMLTYPES TRUE
+ QT_QML_MODULE_VERSION 1.0
+ QT_QML_MODULE_URI QmlRuntime.Config
+)
+
+qt6_qml_type_registration(qml)
diff --git a/tools/qml/CMakeLists.txt b/tools/qml/CMakeLists.txt
new file mode 100644
index 0000000000..6edf190389
--- /dev/null
+++ b/tools/qml/CMakeLists.txt
@@ -0,0 +1,88 @@
+# Generated from qml.pro.
+
+#####################################################################
+## qml Tool:
+#####################################################################
+
+qt_add_tool(qml
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ conf.h
+ main.cpp
+ PUBLIC_LIBRARIES
+ Qt::CorePrivate
+ Qt::QmlPrivate
+)
+
+# special case begin
+# Don't set properties on a host tool when cross compiling, because it
+# is not being built.
+if(CMAKE_CROSSCOMPILING)
+ return()
+endif()
+
+set_source_files_properties(
+ conf/default.qml
+ conf/resizeToItem.qml
+ conf/content/resizeItemToWindow.qml
+ conf/content/resizeWindowToItem.qml
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+# special case end
+
+# Resources:
+set(qml_resource_files
+ "conf/content/resizeItemToWindow.qml"
+ "conf/content/resizeWindowToItem.qml"
+ "conf/default.qml"
+ "conf/resizeToItem.qml"
+ "resources/qml-64.png"
+)
+
+qt_add_resource(qml "qml"
+ PREFIX
+ "/qt-project.org/QmlRuntime"
+ FILES
+ ${qml_resource_files}
+)
+
+
+#### Keys ignored in scope 1:.:.:qml.pro:<TRUE>:
+# ICON = "resources/qml-64.png"
+# QMAKE_TARGET_DESCRIPTION = "QML" "Runtime"
+# QML_IMPORT_NAME = "QmlRuntime.Config"
+# QML_IMPORT_VERSION = "1.0"
+
+## Scopes:
+#####################################################################
+
+qt_extend_target(qml CONDITION TARGET Qt::Gui
+ PUBLIC_LIBRARIES
+ Qt::Gui
+)
+
+qt_extend_target(qml CONDITION TARGET Qt::Widgets
+ PUBLIC_LIBRARIES
+ Qt::Widgets
+)
+
+#### Keys ignored in scope 4:.:.:qml.pro:WIN32:
+# RC_ICONS = "resources/qml.ico"
+
+#### Keys ignored in scope 5:.:.:qml.pro:APPLE:
+# ICON = "resources/qml.icns"
+# OTHER_FILES = "resources/Info.plist"
+# QMAKE_INFO_PLIST = "resources/Info.plist"
+
+qt_extend_target(qml CONDITION QT_FEATURE_qml_debug
+ DEFINES
+ QT_QML_DEBUG_NO_WARNING
+)
+
+set_target_properties(qml PROPERTIES
+ QT_QML_MODULE_INSTALL_QMLTYPES TRUE
+ QT_QML_MODULE_VERSION 1.0
+ QT_QML_MODULE_URI QmlRuntime.Config
+)
+qt6_qml_type_registration(qml)
+
diff --git a/tools/qmlcachegen/.prev_CMakeLists.txt b/tools/qmlcachegen/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..40ba09bc07
--- /dev/null
+++ b/tools/qmlcachegen/.prev_CMakeLists.txt
@@ -0,0 +1,49 @@
+# Generated from qmlcachegen.pro.
+
+#####################################################################
+## qmlcachegen Tool:
+#####################################################################
+
+qt_add_tool(qmlcachegen
+ SOURCES
+ ../shared/qmlstreamwriter.cpp ../shared/qmlstreamwriter.h
+ ../shared/resourcefilemapper.cpp ../shared/resourcefilemapper.h
+ generateloader.cpp
+ qmlcachegen.cpp
+ resourcefilter.cpp
+ DEFINES
+ QT_NO_CAST_FROM_ASCII
+ QT_NO_CAST_TO_ASCII
+ INCLUDE_DIRECTORIES
+ ../shared
+ PUBLIC_LIBRARIES
+ Qt::QmlDevToolsPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlcachegen.pro:<TRUE>:
+# CMAKE_BIN_DIR = "$$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX])"
+# QMAKE_SUBSTITUTES = "cmake_config_file"
+# QMAKE_TARGET_DESCRIPTION = "QML" "Cache" "Generator"
+# _OPTION = "host_build"
+# build_integration.files = "qmlcache.prf" "qtquickcompiler.prf"
+# build_integration.path = "$$[QT_HOST_DATA]/mkspecs/features"
+# cmake_build_integration.files = "$$cmake_config_file.output"
+# cmake_build_integration.path = "$$[QT_INSTALL_LIBS]/cmake/Qt5QuickCompiler"
+# cmake_config_file.input = "$$PWD/Qt5QuickCompilerConfig.cmake.in"
+# cmake_config_file.output = "$$MODULE_BASE_OUTDIR/lib/cmake/Qt5QuickCompiler/Qt5QuickCompilerConfig.cmake"
+
+## Scopes:
+#####################################################################
+
+#### Keys ignored in scope 2:.:.:qmlcachegen.pro:prefix_build:
+# INSTALLS = "cmake_build_integration" "build_integration"
+
+#### Keys ignored in scope 3:.:.:qmlcachegen.pro:else:
+# COPIES = "cmake_build_integration" "build_integration"
+
+#### Keys ignored in scope 4:.:.:qmlcachegen.pro:CMAKE_BIN_DIR___contains___^\\.\\./._x_:
+# CMAKE_BIN_DIR = "$$[QT_HOST_BINS]/"
+# CMAKE_BIN_DIR_IS_ABSOLUTE = "True"
+
+#### Keys ignored in scope 5:.:.:qmlcachegen.pro:QMAKE_HOST.os___equals___Windows:
+# CMAKE_BIN_SUFFIX = ".exe"
diff --git a/tools/qmlcachegen/CMakeLists.txt b/tools/qmlcachegen/CMakeLists.txt
new file mode 100644
index 0000000000..29302c1ef6
--- /dev/null
+++ b/tools/qmlcachegen/CMakeLists.txt
@@ -0,0 +1,50 @@
+# Generated from qmlcachegen.pro.
+
+#####################################################################
+## qmlcachegen Tool:
+#####################################################################
+
+qt_add_tool(qmlcachegen
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ ../shared/qmlstreamwriter.cpp ../shared/qmlstreamwriter.h
+ ../shared/resourcefilemapper.cpp ../shared/resourcefilemapper.h
+ generateloader.cpp
+ qmlcachegen.cpp
+ resourcefilter.cpp
+ DEFINES
+ QT_NO_CAST_FROM_ASCII
+ QT_NO_CAST_TO_ASCII
+ INCLUDE_DIRECTORIES
+ ../shared
+ PUBLIC_LIBRARIES
+ Qt::QmlDevToolsPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlcachegen.pro:<TRUE>:
+# CMAKE_BIN_DIR = "$$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX])"
+# QMAKE_SUBSTITUTES = "cmake_config_file"
+# QMAKE_TARGET_DESCRIPTION = "QML" "Cache" "Generator"
+# _OPTION = "host_build"
+# build_integration.files = "qmlcache.prf" "qtquickcompiler.prf"
+# build_integration.path = "$$[QT_HOST_DATA]/mkspecs/features"
+# cmake_build_integration.files = "$$cmake_config_file.output"
+# cmake_build_integration.path = "$$[QT_INSTALL_LIBS]/cmake/Qt5QuickCompiler"
+# cmake_config_file.input = "$$PWD/Qt5QuickCompilerConfig.cmake.in"
+# cmake_config_file.output = "$$MODULE_BASE_OUTDIR/lib/cmake/Qt5QuickCompiler/Qt5QuickCompilerConfig.cmake"
+
+## Scopes:
+#####################################################################
+
+#### Keys ignored in scope 2:.:.:qmlcachegen.pro:prefix_build:
+# INSTALLS = "cmake_build_integration" "build_integration"
+
+#### Keys ignored in scope 3:.:.:qmlcachegen.pro:else:
+# COPIES = "cmake_build_integration" "build_integration"
+
+#### Keys ignored in scope 4:.:.:qmlcachegen.pro:CMAKE_BIN_DIR___contains___^\\.\\./._x_:
+# CMAKE_BIN_DIR = "$$[QT_HOST_BINS]/"
+# CMAKE_BIN_DIR_IS_ABSOLUTE = "True"
+
+#### Keys ignored in scope 5:.:.:qmlcachegen.pro:QMAKE_HOST.os___equals___Windows:
+# CMAKE_BIN_SUFFIX = ".exe"
diff --git a/tools/qmlcachegen/qmlcachegen.cpp b/tools/qmlcachegen/qmlcachegen.cpp
index bc74e7b08e..174cd547f6 100644
--- a/tools/qmlcachegen/qmlcachegen.cpp
+++ b/tools/qmlcachegen/qmlcachegen.cpp
@@ -109,6 +109,36 @@ void Error::appendDiagnostics(const QString &inputFileName, const QList<Diagnost
appendDiagnostic(inputFileName, diagnostic);
}
+static bool argumentsFromCommandLineAndFile(QStringList& allArguments, const QStringList &arguments)
+{
+ allArguments.reserve(arguments.size());
+ for (const QString &argument : arguments) {
+ // "@file" doesn't start with a '-' so we can't use QCommandLineParser for it
+ if (argument.startsWith(QLatin1Char('@'))) {
+ QString optionsFile = argument;
+ optionsFile.remove(0, 1);
+ if (optionsFile.isEmpty()) {
+ fprintf(stderr, "The @ option requires an input file");
+ return false;
+ }
+ QFile f(optionsFile);
+ if (!f.open(QIODevice::ReadOnly | QIODevice::Text)) {
+ fprintf(stderr, "Cannot open options file specified with @");
+ return false;
+ }
+ while (!f.atEnd()) {
+ QString line = QString::fromLocal8Bit(f.readLine().trimmed());
+ if (!line.isEmpty())
+ allArguments << line;
+ }
+ } else {
+ allArguments << argument;
+ }
+ }
+ return true;
+}
+
+
// Ensure that ListElement objects keep all property assignments in their string form
static void annotateListElements(QmlIR::Document *document)
{
@@ -426,6 +456,10 @@ int main(int argc, char **argv)
parser.addOption(resourceOption);
QCommandLineOption resourcePathOption(QStringLiteral("resource-path"), QCoreApplication::translate("main", "Qt resource file path corresponding to the file being compiled"), QCoreApplication::translate("main", "resource-path"));
parser.addOption(resourcePathOption);
+ QCommandLineOption resourceNameOption(QStringLiteral("resource-name"),
+ QCoreApplication::translate("main", "Required to generate qmlcache_loader without qrc files. This is the name of the Qt resource the input files belong to."),
+ QCoreApplication::translate("main", "compiled-file-list"));
+ parser.addOption(resourceNameOption);
QCommandLineOption outputFileOption(QStringLiteral("o"), QCoreApplication::translate("main", "Output file name"), QCoreApplication::translate("main", "file name"));
parser.addOption(outputFileOption);
@@ -435,12 +469,18 @@ int main(int argc, char **argv)
parser.setSingleDashWordOptionMode(QCommandLineParser::ParseAsLongOptions);
- parser.process(app);
+
+ QStringList arguments;
+ if (!argumentsFromCommandLineAndFile(arguments, app.arguments()))
+ return EXIT_FAILURE;
+
+ parser.process(arguments);
enum Output {
GenerateCpp,
GenerateCacheFile,
- GenerateLoader
+ GenerateLoader,
+ GenerateLoaderStandAlone,
} target = GenerateCacheFile;
QString outputFileName;
@@ -453,15 +493,18 @@ int main(int argc, char **argv)
target = GenerateLoader;
}
+ if (target == GenerateLoader && parser.isSet(resourceNameOption))
+ target = GenerateLoaderStandAlone;
+
const QStringList sources = parser.positionalArguments();
if (sources.isEmpty()){
parser.showHelp();
- } else if (sources.count() > 1 && target != GenerateLoader) {
+ } else if (sources.count() > 1 && (target != GenerateLoader && target != GenerateLoaderStandAlone)) {
fprintf(stderr, "%s\n", qPrintable(QStringLiteral("Too many input files specified: '") + sources.join(QStringLiteral("' '")) + QLatin1Char('\'')));
return EXIT_FAILURE;
}
- const QString inputFile = sources.first();
+ const QString inputFile = !sources.isEmpty() ? sources.first() : QString();
if (outputFileName.isEmpty())
outputFileName = inputFile + QLatin1Char('c');
@@ -481,6 +524,15 @@ int main(int argc, char **argv)
return EXIT_SUCCESS;
}
+ if (target == GenerateLoaderStandAlone) {
+ Error error;
+ if (!generateLoader(sources, outputFileName,
+ parser.values(resourceNameOption), &error.message)) {
+ error.augment(QLatin1String("Error generating loader stub: ")).print();
+ return EXIT_FAILURE;
+ }
+ return EXIT_SUCCESS;
+ }
QString inputFileUrl = inputFile;
SaveFunction saveFunction;
diff --git a/tools/qmleasing/CMakeLists.txt b/tools/qmleasing/CMakeLists.txt
new file mode 100644
index 0000000000..a057e4c50c
--- /dev/null
+++ b/tools/qmleasing/CMakeLists.txt
@@ -0,0 +1,41 @@
+# Generated from qmleasing.pro.
+
+#####################################################################
+## qmleasing Binary:
+#####################################################################
+
+qt_add_executable(qmleasing
+ GUI
+ SOURCES
+ import.ui
+ main.cpp
+ mainwindow.cpp mainwindow.h
+ pane.ui
+ properties.ui
+ segmentproperties.cpp segmentproperties.h
+ splineeditor.cpp splineeditor.h
+ PUBLIC_LIBRARIES
+ Qt::Gui
+ Qt::Qml
+ Qt::Quick
+ Qt::Widgets
+ ENABLE_AUTOGEN_TOOLS
+ uic
+)
+
+# Resources:
+set(resources_resource_files
+ "Button.qml"
+ "preview.qml"
+)
+
+qt_add_resource(qmleasing "resources"
+ PREFIX
+ "/"
+ FILES
+ ${resources_resource_files}
+)
+
+
+#### Keys ignored in scope 1:.:.:qmleasing.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Easing" "Curve" "Editor"
diff --git a/tools/qmlformat/.prev_CMakeLists.txt b/tools/qmlformat/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..4f1f038f9b
--- /dev/null
+++ b/tools/qmlformat/.prev_CMakeLists.txt
@@ -0,0 +1,19 @@
+# Generated from qmlformat.pro.
+
+#####################################################################
+## qmlformat Tool:
+#####################################################################
+
+qt_add_tool(qmlformat
+ SOURCES
+ commentastvisitor.cpp commentastvisitor.h
+ dumpastvisitor.cpp dumpastvisitor.h
+ main.cpp
+ restructureastvisitor.cpp restructureastvisitor.h
+ PUBLIC_LIBRARIES
+ Qt::QmlDevToolsPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlformat.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Formatter"
+# _OPTION = "host_build"
diff --git a/tools/qmlformat/CMakeLists.txt b/tools/qmlformat/CMakeLists.txt
new file mode 100644
index 0000000000..b83b8745d2
--- /dev/null
+++ b/tools/qmlformat/CMakeLists.txt
@@ -0,0 +1,20 @@
+# Generated from qmlformat.pro.
+
+#####################################################################
+## qmlformat Tool:
+#####################################################################
+
+qt_add_tool(qmlformat
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ commentastvisitor.cpp commentastvisitor.h
+ dumpastvisitor.cpp dumpastvisitor.h
+ main.cpp
+ restructureastvisitor.cpp restructureastvisitor.h
+ PUBLIC_LIBRARIES
+ Qt::QmlDevToolsPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlformat.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Formatter"
+# _OPTION = "host_build"
diff --git a/tools/qmlimportscanner/.prev_CMakeLists.txt b/tools/qmlimportscanner/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..fbab757807
--- /dev/null
+++ b/tools/qmlimportscanner/.prev_CMakeLists.txt
@@ -0,0 +1,77 @@
+# Generated from qmlimportscanner.pro.
+
+#####################################################################
+## qmlimportscanner Tool:
+#####################################################################
+
+qt_add_tool(qmlimportscanner
+ SOURCES
+ ../shared/qmlstreamwriter.cpp ../shared/qmlstreamwriter.h
+ ../shared/resourcefilemapper.cpp ../shared/resourcefilemapper.h
+ main.cpp
+ DEFINES
+ QT_NO_CAST_FROM_ASCII
+ QT_NO_CAST_TO_ASCII
+ INCLUDE_DIRECTORIES
+ ../shared
+ PUBLIC_LIBRARIES
+ Qt::QmlDevToolsPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlimportscanner.pro:<TRUE>:
+# CMAKE_BIN_DIR = "$$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX])"
+# CMAKE_DEBUG_TYPE = <EMPTY>
+# CMAKE_QML_DIR = "$$cmakeRelativePath($$[QT_INSTALL_QML], $$[QT_INSTALL_PREFIX])"
+# CMAKE_QML_PLUGIN_SUFFIX_RELEASE = <EMPTY>
+# CMAKE_RELEASE_TYPE = <EMPTY>
+# QMAKE_SUBSTITUTES = "cmake_config_file"
+# QMAKE_TARGET_DESCRIPTION = "QML" "Import" "Scanner"
+# _OPTION = "host_build"
+# cmake_build_integration.files = "$$cmake_config_file.output" "$$PWD/Qt5QmlImportScannerTemplate.cpp.in"
+# cmake_build_integration.path = "$$[QT_INSTALL_LIBS]/cmake/Qt5QmlImportScanner"
+# cmake_config_file.input = "$$PWD/Qt5QmlImportScannerConfig.cmake.in"
+# cmake_config_file.output = "$$MODULE_BASE_OUTDIR/lib/cmake/Qt5QmlImportScanner/Qt5QmlImportScannerConfig.cmake"
+
+## Scopes:
+#####################################################################
+
+#### Keys ignored in scope 2:.:.:qmlimportscanner.pro:CMAKE_BIN_DIR___contains___^\\.\\./._x_:
+# CMAKE_BIN_DIR = "$$[QT_HOST_BINS]/"
+# CMAKE_BIN_DIR_IS_ABSOLUTE = "True"
+
+#### Keys ignored in scope 3:.:.:qmlimportscanner.pro:CMAKE_QML_DIR___contains___^\\.\\./._x_:
+# CMAKE_QML_DIR = "$$[QT_INSTALL_QML]/"
+# CMAKE_QML_DIR_IS_ABSOLUTE = "True"
+
+#### Keys ignored in scope 4:.:.:qmlimportscanner.pro:static OR staticlib:
+# CMAKE_STATIC_TYPE = "true"
+
+#### Keys ignored in scope 5:.:.:qmlimportscanner.pro:WIN32:
+# CMAKE_QML_PLUGIN_SUFFIX_DEBUG = "d"
+
+#### Keys ignored in scope 7:.:.:qmlimportscanner.pro:APPLE:
+# CMAKE_QML_PLUGIN_SUFFIX_DEBUG = "_debug"
+
+#### Keys ignored in scope 8:.:.:qmlimportscanner.pro:else:
+# CMAKE_QML_PLUGIN_SUFFIX_DEBUG = <EMPTY>
+
+#### Keys ignored in scope 9:.:.:qmlimportscanner.pro:( QT_FEATURE_debug_and_release OR QT_CONFIG___contains___debug,debug OR release ):
+# CMAKE_DEBUG_TYPE = "debug"
+
+#### Keys ignored in scope 10:.:.:qmlimportscanner.pro:( QT_FEATURE_debug_and_release OR QT_CONFIG___contains___release,debug OR release ):
+# CMAKE_RELEASE_TYPE = "release"
+
+#### Keys ignored in scope 11:.:.:qmlimportscanner.pro:QT_FEATURE_debug_and_release:
+# CMAKE_DEBUG_AND_RELEASE = "TRUE"
+
+#### Keys ignored in scope 12:.:.:qmlimportscanner.pro:else:
+# CMAKE_DEBUG_AND_RELEASE = "FALSE"
+
+#### Keys ignored in scope 13:.:.:qmlimportscanner.pro:QMAKE_HOST.os___equals___Windows:
+# CMAKE_BIN_SUFFIX = ".exe"
+
+#### Keys ignored in scope 14:.:.:qmlimportscanner.pro:prefix_build:
+# INSTALLS = "cmake_build_integration"
+
+#### Keys ignored in scope 15:.:.:qmlimportscanner.pro:else:
+# COPIES = "cmake_build_integration"
diff --git a/tools/qmlimportscanner/CMakeLists.txt b/tools/qmlimportscanner/CMakeLists.txt
new file mode 100644
index 0000000000..30a4babfcd
--- /dev/null
+++ b/tools/qmlimportscanner/CMakeLists.txt
@@ -0,0 +1,78 @@
+# Generated from qmlimportscanner.pro.
+
+#####################################################################
+## qmlimportscanner Tool:
+#####################################################################
+
+qt_add_tool(qmlimportscanner
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ ../shared/qmlstreamwriter.cpp ../shared/qmlstreamwriter.h
+ ../shared/resourcefilemapper.cpp ../shared/resourcefilemapper.h
+ main.cpp
+ DEFINES
+ QT_NO_CAST_FROM_ASCII
+ QT_NO_CAST_TO_ASCII
+ INCLUDE_DIRECTORIES
+ ../shared
+ PUBLIC_LIBRARIES
+ Qt::QmlDevToolsPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlimportscanner.pro:<TRUE>:
+# CMAKE_BIN_DIR = "$$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX])"
+# CMAKE_DEBUG_TYPE = <EMPTY>
+# CMAKE_QML_DIR = "$$cmakeRelativePath($$[QT_INSTALL_QML], $$[QT_INSTALL_PREFIX])"
+# CMAKE_QML_PLUGIN_SUFFIX_RELEASE = <EMPTY>
+# CMAKE_RELEASE_TYPE = <EMPTY>
+# QMAKE_SUBSTITUTES = "cmake_config_file"
+# QMAKE_TARGET_DESCRIPTION = "QML" "Import" "Scanner"
+# _OPTION = "host_build"
+# cmake_build_integration.files = "$$cmake_config_file.output" "$$PWD/Qt5QmlImportScannerTemplate.cpp.in"
+# cmake_build_integration.path = "$$[QT_INSTALL_LIBS]/cmake/Qt5QmlImportScanner"
+# cmake_config_file.input = "$$PWD/Qt5QmlImportScannerConfig.cmake.in"
+# cmake_config_file.output = "$$MODULE_BASE_OUTDIR/lib/cmake/Qt5QmlImportScanner/Qt5QmlImportScannerConfig.cmake"
+
+## Scopes:
+#####################################################################
+
+#### Keys ignored in scope 2:.:.:qmlimportscanner.pro:CMAKE_BIN_DIR___contains___^\\.\\./._x_:
+# CMAKE_BIN_DIR = "$$[QT_HOST_BINS]/"
+# CMAKE_BIN_DIR_IS_ABSOLUTE = "True"
+
+#### Keys ignored in scope 3:.:.:qmlimportscanner.pro:CMAKE_QML_DIR___contains___^\\.\\./._x_:
+# CMAKE_QML_DIR = "$$[QT_INSTALL_QML]/"
+# CMAKE_QML_DIR_IS_ABSOLUTE = "True"
+
+#### Keys ignored in scope 4:.:.:qmlimportscanner.pro:static OR staticlib:
+# CMAKE_STATIC_TYPE = "true"
+
+#### Keys ignored in scope 5:.:.:qmlimportscanner.pro:WIN32:
+# CMAKE_QML_PLUGIN_SUFFIX_DEBUG = "d"
+
+#### Keys ignored in scope 7:.:.:qmlimportscanner.pro:APPLE:
+# CMAKE_QML_PLUGIN_SUFFIX_DEBUG = "_debug"
+
+#### Keys ignored in scope 8:.:.:qmlimportscanner.pro:else:
+# CMAKE_QML_PLUGIN_SUFFIX_DEBUG = <EMPTY>
+
+#### Keys ignored in scope 9:.:.:qmlimportscanner.pro:( QT_FEATURE_debug_and_release OR QT_CONFIG___contains___debug,debug OR release ):
+# CMAKE_DEBUG_TYPE = "debug"
+
+#### Keys ignored in scope 10:.:.:qmlimportscanner.pro:( QT_FEATURE_debug_and_release OR QT_CONFIG___contains___release,debug OR release ):
+# CMAKE_RELEASE_TYPE = "release"
+
+#### Keys ignored in scope 11:.:.:qmlimportscanner.pro:QT_FEATURE_debug_and_release:
+# CMAKE_DEBUG_AND_RELEASE = "TRUE"
+
+#### Keys ignored in scope 12:.:.:qmlimportscanner.pro:else:
+# CMAKE_DEBUG_AND_RELEASE = "FALSE"
+
+#### Keys ignored in scope 13:.:.:qmlimportscanner.pro:QMAKE_HOST.os___equals___Windows:
+# CMAKE_BIN_SUFFIX = ".exe"
+
+#### Keys ignored in scope 14:.:.:qmlimportscanner.pro:prefix_build:
+# INSTALLS = "cmake_build_integration"
+
+#### Keys ignored in scope 15:.:.:qmlimportscanner.pro:else:
+# COPIES = "cmake_build_integration"
diff --git a/tools/qmljs/.prev_CMakeLists.txt b/tools/qmljs/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..0096f335ae
--- /dev/null
+++ b/tools/qmljs/.prev_CMakeLists.txt
@@ -0,0 +1,87 @@
+# Generated from qmljs.pro.
+
+#####################################################################
+## qmljs Tool:
+#####################################################################
+
+qt_add_tool(qmljs
+ SOURCES
+ qmljs.cpp
+ DEFINES
+ BUILDING_QT__
+ ENABLE_ASSEMBLER_WX_EXCLUSIVE=1
+ ENABLE_DFG_JIT=0
+ ENABLE_DFG_JIT_UTILITY_METHODS=1
+ ENABLE_JIT_CONSTANT_BLINDING=0
+ ENABLE_LLINT=0
+ JS_EXPORT_PRIVATE=""
+ WTFInvokeCrashHook=qmlWTFInvokeCrashHook
+ WTFReportAssertionFailure=qmlWTFReportAssertionFailure
+ WTFReportAssertionFailureWithMessage=qmlWTFReportAssertionFailureWithMessage
+ WTFReportBacktrace=qmlWTFReportBacktrace
+ WTF_EXPORT_PRIVATE=""
+ INCLUDE_DIRECTORIES
+ ../../src/3rdparty/masm
+ ../../src/3rdparty/masm/assembler
+ ../../src/3rdparty/masm/disassembler
+ ../../src/3rdparty/masm/disassembler/udis86
+ ../../src/3rdparty/masm/jit
+ ../../src/3rdparty/masm/runtime
+ ../../src/3rdparty/masm/stubs
+ ../../src/3rdparty/masm/stubs/runtime
+ ../../src/3rdparty/masm/stubs/wtf
+ ../../src/3rdparty/masm/wtf
+ PUBLIC_LIBRARIES
+ Qt::CorePrivate
+ Qt::QmlPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmljs.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "JavaScript" "Tool"
+# TEMPLATE = "app"
+
+## Scopes:
+#####################################################################
+
+qt_extend_target(qmljs CONDITION WIN32
+ DEFINES
+ NOMINMAX
+)
+
+qt_extend_target(qmljs CONDITION disassembler AND ((TEST_architecture_arch STREQUAL "i386") OR (TEST_architecture_arch STREQUAL "x86_64"))
+ DEFINES
+ WTF_USE_UDIS86=1
+)
+
+qt_extend_target(qmljs CONDITION (TEST_architecture_arch STREQUAL "arm") AND disassembler
+ DEFINES
+ WTF_USE_ARMV7_DISASSEMBLER=1
+)
+
+qt_extend_target(qmljs CONDITION (TEST_architecture_arch STREQUAL "arm64") AND disassembler
+ DEFINES
+ WTF_USE_ARM64_DISASSEMBLER=1
+)
+
+qt_extend_target(qmljs CONDITION (TEST_architecture_arch STREQUAL "mips") AND disassembler
+ DEFINES
+ WTF_USE_MIPS32_DISASSEMBLER=1
+)
+
+qt_extend_target(qmljs CONDITION NOT disassembler
+ DEFINES
+ WTF_USE_UDIS86=0
+)
+
+qt_extend_target(qmljs CONDITION CMAKE_BUILD_TYPE STREQUAL Release
+ DEFINES
+ NDEBUG
+)
+
+qt_extend_target(qmljs CONDITION GCC AND QT_COMPILER_VERSION_MAJOR STRGREATER 6 AND NOT CLANG AND NOT ICC
+ COMPILE_OPTIONS
+ -Wno-expansion-to-defined
+)
+
+#### Keys ignored in scope 12:.:../../src/3rdparty/masm:../../src/3rdparty/masm/masm-defs.pri:(QT_COMPILER_VERSION_MAJOR STRGREATER 6):
+# QMAKE_CXXFLAGS_WARN_ON = "-Wno-expansion-to-defined"
diff --git a/tools/qmljs/CMakeLists.txt b/tools/qmljs/CMakeLists.txt
new file mode 100644
index 0000000000..a972a8ba1b
--- /dev/null
+++ b/tools/qmljs/CMakeLists.txt
@@ -0,0 +1,88 @@
+# Generated from qmljs.pro.
+
+#####################################################################
+## qmljs Tool:
+#####################################################################
+
+qt_add_tool(qmljs
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ qmljs.cpp
+ DEFINES
+ BUILDING_QT__
+ ENABLE_ASSEMBLER_WX_EXCLUSIVE=1
+ ENABLE_DFG_JIT=0
+ ENABLE_DFG_JIT_UTILITY_METHODS=1
+ ENABLE_JIT_CONSTANT_BLINDING=0
+ ENABLE_LLINT=0
+ JS_EXPORT_PRIVATE= # special case
+ WTFInvokeCrashHook=qmlWTFInvokeCrashHook
+ WTFReportAssertionFailure=qmlWTFReportAssertionFailure
+ WTFReportAssertionFailureWithMessage=qmlWTFReportAssertionFailureWithMessage
+ WTFReportBacktrace=qmlWTFReportBacktrace
+ WTF_EXPORT_PRIVATE= # special case
+ INCLUDE_DIRECTORIES
+ ../../src/3rdparty/masm
+ ../../src/3rdparty/masm/assembler
+ ../../src/3rdparty/masm/disassembler
+ ../../src/3rdparty/masm/disassembler/udis86
+ ../../src/3rdparty/masm/jit
+ ../../src/3rdparty/masm/runtime
+ ../../src/3rdparty/masm/stubs
+ ../../src/3rdparty/masm/stubs/runtime
+ ../../src/3rdparty/masm/stubs/wtf
+ ../../src/3rdparty/masm/wtf
+ PUBLIC_LIBRARIES
+ Qt::CorePrivate
+ Qt::QmlPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmljs.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "JavaScript" "Tool"
+# TEMPLATE = "app"
+
+## Scopes:
+#####################################################################
+
+qt_extend_target(qmljs CONDITION WIN32
+ DEFINES
+ NOMINMAX
+)
+
+qt_extend_target(qmljs CONDITION disassembler AND ((TEST_architecture_arch STREQUAL "i386") OR (TEST_architecture_arch STREQUAL "x86_64"))
+ DEFINES
+ WTF_USE_UDIS86=1
+)
+
+qt_extend_target(qmljs CONDITION (TEST_architecture_arch STREQUAL "arm") AND disassembler
+ DEFINES
+ WTF_USE_ARMV7_DISASSEMBLER=1
+)
+
+qt_extend_target(qmljs CONDITION (TEST_architecture_arch STREQUAL "arm64") AND disassembler
+ DEFINES
+ WTF_USE_ARM64_DISASSEMBLER=1
+)
+
+qt_extend_target(qmljs CONDITION (TEST_architecture_arch STREQUAL "mips") AND disassembler
+ DEFINES
+ WTF_USE_MIPS32_DISASSEMBLER=1
+)
+
+qt_extend_target(qmljs CONDITION NOT disassembler
+ DEFINES
+ WTF_USE_UDIS86=0
+)
+
+qt_extend_target(qmljs CONDITION CMAKE_BUILD_TYPE STREQUAL Release
+ DEFINES
+ NDEBUG
+)
+
+qt_extend_target(qmljs CONDITION GCC AND QT_COMPILER_VERSION_MAJOR STRGREATER 6 AND NOT CLANG AND NOT ICC
+ COMPILE_OPTIONS
+ -Wno-expansion-to-defined
+)
+
+#### Keys ignored in scope 12:.:../../src/3rdparty/masm:../../src/3rdparty/masm/masm-defs.pri:(QT_COMPILER_VERSION_MAJOR STRGREATER 6):
+# QMAKE_CXXFLAGS_WARN_ON = "-Wno-expansion-to-defined"
diff --git a/tools/qmllint/.prev_CMakeLists.txt b/tools/qmllint/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..9e3667fead
--- /dev/null
+++ b/tools/qmllint/.prev_CMakeLists.txt
@@ -0,0 +1,24 @@
+# Generated from qmllint.pro.
+
+#####################################################################
+## qmllint Tool:
+#####################################################################
+
+qt_add_tool(qmllint
+ SOURCES
+ componentversion.cpp componentversion.h
+ findunqualified.cpp findunqualified.h
+ importedmembersvisitor.cpp importedmembersvisitor.h
+ main.cpp
+ metatypes.h
+ qcoloroutput.cpp qcoloroutput.h
+ scopetree.cpp scopetree.h
+ typedescriptionreader.cpp typedescriptionreader.h
+ PUBLIC_LIBRARIES
+ Qt::CorePrivate
+ Qt::QmlDevToolsPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmllint.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Syntax" "Verifier"
+# _OPTION = "host_build"
diff --git a/tools/qmllint/CMakeLists.txt b/tools/qmllint/CMakeLists.txt
new file mode 100644
index 0000000000..d4b0aad760
--- /dev/null
+++ b/tools/qmllint/CMakeLists.txt
@@ -0,0 +1,25 @@
+# Generated from qmllint.pro.
+
+#####################################################################
+## qmllint Tool:
+#####################################################################
+
+qt_add_tool(qmllint
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ componentversion.cpp componentversion.h
+ findunqualified.cpp findunqualified.h
+ importedmembersvisitor.cpp importedmembersvisitor.h
+ main.cpp
+ metatypes.h
+ qcoloroutput.cpp qcoloroutput.h
+ scopetree.cpp scopetree.h
+ typedescriptionreader.cpp typedescriptionreader.h
+ PUBLIC_LIBRARIES
+ Qt::CorePrivate
+ Qt::QmlDevToolsPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmllint.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Syntax" "Verifier"
+# _OPTION = "host_build"
diff --git a/tools/qmlplugindump/.prev_CMakeLists.txt b/tools/qmlplugindump/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..c161a13077
--- /dev/null
+++ b/tools/qmlplugindump/.prev_CMakeLists.txt
@@ -0,0 +1,37 @@
+# Generated from qmlplugindump.pro.
+
+#####################################################################
+## qmlplugindump Tool:
+#####################################################################
+
+qt_add_tool(qmlplugindump
+ SOURCES
+ ../shared/qmlstreamwriter.cpp ../shared/qmlstreamwriter.h
+ main.cpp
+ qmltypereader.cpp qmltypereader.h
+ INCLUDE_DIRECTORIES
+ ../shared
+ PUBLIC_LIBRARIES
+ Qt::CorePrivate
+ Qt::Gui
+ Qt::Qml
+ Qt::QmlPrivate
+ Qt::QuickPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlplugindump.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Plugin" "Metadata" "Dumper"
+# QTPLUGIN.platforms = "qminimal"
+
+## Scopes:
+#####################################################################
+
+qt_extend_target(qmlplugindump CONDITION TARGET Qt::Widgets
+ PUBLIC_LIBRARIES
+ Qt::Widgets
+)
+
+qt_extend_target(qmlplugindump CONDITION APPLE_OSX
+ LINK_OPTIONS
+ "-Wl,-sectcreate,__TEXT,__info_plist,$$shell_quote$$PWD/Info.plist"
+)
diff --git a/tools/qmlplugindump/CMakeLists.txt b/tools/qmlplugindump/CMakeLists.txt
new file mode 100644
index 0000000000..c2a84fcccc
--- /dev/null
+++ b/tools/qmlplugindump/CMakeLists.txt
@@ -0,0 +1,38 @@
+# Generated from qmlplugindump.pro.
+
+#####################################################################
+## qmlplugindump Tool:
+#####################################################################
+
+qt_add_tool(qmlplugindump
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ ../shared/qmlstreamwriter.cpp ../shared/qmlstreamwriter.h
+ main.cpp
+ qmltypereader.cpp qmltypereader.h
+ INCLUDE_DIRECTORIES
+ ../shared
+ PUBLIC_LIBRARIES
+ Qt::CorePrivate
+ Qt::Gui
+ Qt::Qml
+ Qt::QmlPrivate
+ Qt::QuickPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlplugindump.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Plugin" "Metadata" "Dumper"
+# QTPLUGIN.platforms = "qminimal"
+
+## Scopes:
+#####################################################################
+
+qt_extend_target(qmlplugindump CONDITION TARGET Qt::Widgets
+ PUBLIC_LIBRARIES
+ Qt::Widgets
+)
+
+qt_extend_target(qmlplugindump CONDITION APPLE_OSX
+ LINK_OPTIONS
+ "-Wl,-sectcreate,__TEXT,__info_plist,${CMAKE_CURRENT_SOURCE_DIR}/Info.plist" # special case
+)
diff --git a/tools/qmlpreview/.prev_CMakeLists.txt b/tools/qmlpreview/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..05eb333bb2
--- /dev/null
+++ b/tools/qmlpreview/.prev_CMakeLists.txt
@@ -0,0 +1,18 @@
+# Generated from qmlpreview.pro.
+
+#####################################################################
+## qmlpreview Tool:
+#####################################################################
+
+qt_add_tool(qmlpreview
+ SOURCES
+ main.cpp
+ qmlpreviewapplication.cpp qmlpreviewapplication.h
+ qmlpreviewfilesystemwatcher.cpp qmlpreviewfilesystemwatcher.h
+ PUBLIC_LIBRARIES
+ Qt::Network
+ Qt::QmlDebugPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlpreview.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Preview"
diff --git a/tools/qmlpreview/CMakeLists.txt b/tools/qmlpreview/CMakeLists.txt
new file mode 100644
index 0000000000..2adec05254
--- /dev/null
+++ b/tools/qmlpreview/CMakeLists.txt
@@ -0,0 +1,19 @@
+# Generated from qmlpreview.pro.
+
+#####################################################################
+## qmlpreview Tool:
+#####################################################################
+
+qt_add_tool(qmlpreview
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ main.cpp
+ qmlpreviewapplication.cpp qmlpreviewapplication.h
+ qmlpreviewfilesystemwatcher.cpp qmlpreviewfilesystemwatcher.h
+ PUBLIC_LIBRARIES
+ Qt::Network
+ Qt::QmlDebugPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlpreview.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Preview"
diff --git a/tools/qmlprofiler/.prev_CMakeLists.txt b/tools/qmlprofiler/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..eb51932918
--- /dev/null
+++ b/tools/qmlprofiler/.prev_CMakeLists.txt
@@ -0,0 +1,21 @@
+# Generated from qmlprofiler.pro.
+
+#####################################################################
+## qmlprofiler Tool:
+#####################################################################
+
+qt_add_tool(qmlprofiler
+ SOURCES
+ commandlistener.cpp commandlistener.h
+ constants.h
+ main.cpp
+ qmlprofilerapplication.cpp qmlprofilerapplication.h
+ qmlprofilerclient.cpp qmlprofilerclient.h
+ qmlprofilerdata.cpp qmlprofilerdata.h
+ PUBLIC_LIBRARIES
+ Qt::Network
+ Qt::QmlDebugPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlprofiler.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Profiler"
diff --git a/tools/qmlprofiler/CMakeLists.txt b/tools/qmlprofiler/CMakeLists.txt
new file mode 100644
index 0000000000..6bc6fff823
--- /dev/null
+++ b/tools/qmlprofiler/CMakeLists.txt
@@ -0,0 +1,22 @@
+# Generated from qmlprofiler.pro.
+
+#####################################################################
+## qmlprofiler Tool:
+#####################################################################
+
+qt_add_tool(qmlprofiler
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ commandlistener.cpp commandlistener.h
+ constants.h
+ main.cpp
+ qmlprofilerapplication.cpp qmlprofilerapplication.h
+ qmlprofilerclient.cpp qmlprofilerclient.h
+ qmlprofilerdata.cpp qmlprofilerdata.h
+ PUBLIC_LIBRARIES
+ Qt::Network
+ Qt::QmlDebugPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlprofiler.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Profiler"
diff --git a/tools/qmlscene/.prev_CMakeLists.txt b/tools/qmlscene/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..df4bfeaf44
--- /dev/null
+++ b/tools/qmlscene/.prev_CMakeLists.txt
@@ -0,0 +1,35 @@
+# Generated from qmlscene.pro.
+
+#####################################################################
+## qmlscene Tool:
+#####################################################################
+
+qt_add_tool(qmlscene
+ SOURCES
+ main.cpp
+ DEFINES
+ QML_RUNTIME_TESTING
+ PUBLIC_LIBRARIES
+ Qt::CorePrivate
+ Qt::Gui
+ Qt::GuiPrivate
+ Qt::Qml
+ Qt::Quick
+ Qt::QuickPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlscene.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Scene" "Viewer"
+
+## Scopes:
+#####################################################################
+
+qt_extend_target(qmlscene CONDITION TARGET Qt::Widgets
+ PUBLIC_LIBRARIES
+ Qt::Widgets
+)
+
+qt_extend_target(qmlscene CONDITION QT_FEATURE_qml_debug
+ DEFINES
+ QT_QML_DEBUG_NO_WARNING
+)
diff --git a/tools/qmlscene/CMakeLists.txt b/tools/qmlscene/CMakeLists.txt
new file mode 100644
index 0000000000..b53816c494
--- /dev/null
+++ b/tools/qmlscene/CMakeLists.txt
@@ -0,0 +1,36 @@
+# Generated from qmlscene.pro.
+
+#####################################################################
+## qmlscene Tool:
+#####################################################################
+
+qt_add_tool(qmlscene
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ main.cpp
+ DEFINES
+ QML_RUNTIME_TESTING
+ PUBLIC_LIBRARIES
+ Qt::CorePrivate
+ Qt::Gui
+ Qt::GuiPrivate
+ Qt::Qml
+ Qt::Quick
+ Qt::QuickPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmlscene.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Scene" "Viewer"
+
+## Scopes:
+#####################################################################
+
+qt_extend_target(qmlscene CONDITION TARGET Qt::Widgets
+ PUBLIC_LIBRARIES
+ Qt::Widgets
+)
+
+qt_extend_target(qmlscene CONDITION QT_FEATURE_qml_debug
+ DEFINES
+ QT_QML_DEBUG_NO_WARNING
+)
diff --git a/tools/qmltestrunner/.prev_CMakeLists.txt b/tools/qmltestrunner/.prev_CMakeLists.txt
new file mode 100644
index 0000000000..0033cc0679
--- /dev/null
+++ b/tools/qmltestrunner/.prev_CMakeLists.txt
@@ -0,0 +1,17 @@
+# Generated from qmltestrunner.pro.
+
+#####################################################################
+## qmltestrunner Tool:
+#####################################################################
+
+qt_add_tool(qmltestrunner
+ SOURCES
+ main.cpp
+ PUBLIC_LIBRARIES
+ Qt::Gui
+ Qt::Qml
+ Qt::QuickTest
+)
+
+#### Keys ignored in scope 1:.:.:qmltestrunner.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Test" "Runner"
diff --git a/tools/qmltestrunner/CMakeLists.txt b/tools/qmltestrunner/CMakeLists.txt
new file mode 100644
index 0000000000..03d6cb77fb
--- /dev/null
+++ b/tools/qmltestrunner/CMakeLists.txt
@@ -0,0 +1,18 @@
+# Generated from qmltestrunner.pro.
+
+#####################################################################
+## qmltestrunner Tool:
+#####################################################################
+
+qt_add_tool(qmltestrunner
+ TOOLS_TARGET Qml # special case
+ SOURCES
+ main.cpp
+ PUBLIC_LIBRARIES
+ Qt::Gui
+ Qt::Qml
+ Qt::QuickTest
+)
+
+#### Keys ignored in scope 1:.:.:qmltestrunner.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Test" "Runner"
diff --git a/tools/qmltime/CMakeLists.txt b/tools/qmltime/CMakeLists.txt
new file mode 100644
index 0000000000..03425e9ecf
--- /dev/null
+++ b/tools/qmltime/CMakeLists.txt
@@ -0,0 +1,33 @@
+# Generated from qmltime.pro.
+
+#####################################################################
+## qmltime Binary:
+#####################################################################
+
+qt_add_executable(qmltime
+ GUI
+ SOURCES
+ qmltime.cpp qmltime.h
+ PUBLIC_LIBRARIES
+ Qt::Gui
+ Qt::Qml
+ Qt::Quick
+ Qt::QuickPrivate
+)
+
+#### Keys ignored in scope 1:.:.:qmltime.pro:<TRUE>:
+# QMAKE_TARGET_DESCRIPTION = "QML" "Time"
+# QML_IMPORT_NAME = "QmlTime"
+# QML_IMPORT_VERSION = "1.0"
+# TEMPLATE = "app"
+
+## Scopes:
+#####################################################################
+
+set_target_properties(qmltime PROPERTIES
+ QT_QML_MODULE_INSTALL_QMLTYPES TRUE
+ QT_QML_MODULE_VERSION 1.0
+ QT_QML_MODULE_URI QmlTime
+)
+
+qt6_qml_type_registration(qmltime)