aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/Qt6QmlMacros.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'src/qml/Qt6QmlMacros.cmake')
-rw-r--r--src/qml/Qt6QmlMacros.cmake22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/qml/Qt6QmlMacros.cmake b/src/qml/Qt6QmlMacros.cmake
index 6b24f34a2a..c155bac7d4 100644
--- a/src/qml/Qt6QmlMacros.cmake
+++ b/src/qml/Qt6QmlMacros.cmake
@@ -303,15 +303,19 @@ function(qt6_add_qml_module target)
foreach(dependency IN LISTS arg_DEPENDENCIES)
string(FIND ${dependency} "/" slash_position REVERSE)
if (slash_position EQUAL -1)
- message(FATAL_ERROR "Dependencies should follow the format 'ModuleName/VersionMajor.VersionMinor'")
- endif()
- string(SUBSTRING ${dependency} 0 ${slash_position} dep_module)
- math(EXPR slash_position "${slash_position} + 1")
- string(SUBSTRING ${dependency} ${slash_position} -1 dep_version)
- if (NOT dep_version MATCHES "[0-9]+\\.[0-9]+")
- message(FATAL_ERROR "Invalid module dependency version number. Expected VersionMajor.VersionMinor.")
+ string(APPEND qmldir_file_contents "depends ${dependency}\n")
+ else()
+ string(SUBSTRING ${dependency} 0 ${slash_position} dep_module)
+ math(EXPR slash_position "${slash_position} + 1")
+ string(SUBSTRING ${dependency} ${slash_position} -1 dep_version)
+ if (dep_version MATCHES "[0-9]+\\.[0-9]+" OR dep_version MATCHES "[0-9]+")
+ string(APPEND qmldir_file_contents "depends ${dep_module} ${dep_version}\n")
+ elseif (dep_version MATCHES "auto")
+ string(APPEND qmldir_file_contents "depends ${dep_module} auto\n")
+ else()
+ message(FATAL_ERROR "Invalid module dependency version number. Expected 'VersionMajor', 'VersionMajor.VersionMinor' or 'auto'.")
+ endif()
endif()
- string(APPEND qmldir_file_contents "depends ${dep_module} ${dep_version}\n")
endforeach()
file(WRITE ${qmldir_file} ${qmldir_file_contents})
@@ -575,7 +579,7 @@ function(qt6_qml_type_registration target)
# Extract major and minor version
if (NOT import_version MATCHES "[0-9]+\\.[0-9]+")
- message(FATAL_ERROR "Invalid module dependency version number. Expected VersionMajor.VersionMinor.")
+ message(FATAL_ERROR "Invalid module version number. Expected VersionMajor.VersionMinor.")
endif()
#string(FIND "${import_version}" "." dot_location)
#string(SUBSTRING ${import_version} 0 ${dot_location} major_version)