aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/qml/Qt6QmlMacros.cmake6
-rw-r--r--tools/qmlcachegen/qmlcachegen.cpp2
2 files changed, 8 insertions, 0 deletions
diff --git a/src/qml/Qt6QmlMacros.cmake b/src/qml/Qt6QmlMacros.cmake
index f942238572..3f23a4f63d 100644
--- a/src/qml/Qt6QmlMacros.cmake
+++ b/src/qml/Qt6QmlMacros.cmake
@@ -942,6 +942,11 @@ function(_qt_internal_quick_compiler_process_resources target resource_name)
set(chained_resource_name "${resource_name}_qmlcache")
endif()
+ get_target_property(direct_calls ${target} QT_QMLCACHEGEN_DIRECT_CALLS)
+ if (direct_calls)
+ list(APPEND qmlcachegen_extra_args "--direct-calls")
+ endif()
+
foreach(file IN LISTS qml_files)
get_filename_component(file_absolute ${file} ABSOLUTE)
file(RELATIVE_PATH file_relative ${CMAKE_CURRENT_SOURCE_DIR} ${file_absolute})
@@ -969,6 +974,7 @@ function(_qt_internal_quick_compiler_process_resources target resource_name)
COMMAND
${QT_CMAKE_EXPORT_NAMESPACE}::qmlcachegen
--resource-path "${file_resource_path}"
+ ${qmlcachegen_extra_args}
-o "${compiled_file}"
"${file_absolute}"
DEPENDS
diff --git a/tools/qmlcachegen/qmlcachegen.cpp b/tools/qmlcachegen/qmlcachegen.cpp
index f3dbd8bdd9..e4077f0831 100644
--- a/tools/qmlcachegen/qmlcachegen.cpp
+++ b/tools/qmlcachegen/qmlcachegen.cpp
@@ -103,6 +103,8 @@ int main(int argc, char **argv)
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 directCallsOption(QStringLiteral("direct-calls"), QCoreApplication::translate("main", "This option is ignored."));
+ parser.addOption(directCallsOption);
QCommandLineOption outputFileOption(QStringLiteral("o"), QCoreApplication::translate("main", "Output file name"), QCoreApplication::translate("main", "file name"));
parser.addOption(outputFileOption);