QTP0005

qt_add_qml_module's DEPENDENCIES argument accepts targets

This policy was introduced in Qt 6.8. It allows passing targets to qt_add_qml_module() DEPENDENCIES, IMPORTS, OPTIONAL_IMPORTS and DEFAULT_IMPORTS.

Enabling this policy means that the arguments which are passed to the key words can be prefixed with TARGET, and are then treated as a target name.

The OLD behavior of this policy is that the "TARGET name" is treated as two URIs, "TARGET" and "name".

The NEW behavior of this policy is that TARGET is considered a keyword, and the URI is extracted from the target which follows next. It is a hard error if the name following TARGET does not name a target, or if that target does not correspond to a QML module.

In both the NEW and the OLD behavior it is possible to specify a module version by appending a slash and the version. See Declaring module dependencies for more details.

Qt 6.8 issues warnings if you pass a URI to DEPENDENCIES which coincides with a target name. Use the qt_policy command to suppress the warning by explicitly setting the policy to OLD or NEW.

Note: The OLD behavior of a policy is deprecated, and may be removed in the future.

See also qt_policy, qt_standard_project_setup(), qt_cmake_policies, and qt_add_qml_module.

© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.