AUTOGEN_TARGET_DEPENDS¶
对应 The <ORIGIN>_autogen target 的附加目标依赖项。
注意
如果使用 Qt 5.15 或更高版本,并且生成器是
Ninja
或 Makefile Generators,则会将附加目标依赖项添加到 The <ORIGIN>_autogen_timestamp_deps target 目标,而不是 The <ORIGIN>_autogen target 目标。
其 AUTOMOC
或 AUTOUIC
属性设置为 ON
的目标拥有一个对应的 The <ORIGIN>_autogen target 目标,该目标生成 moc
和 uic
文件。由于此 The <ORIGIN>_autogen target 目标是在生成时创建的,因此无法使用例如 add_dependencies()
来定义它的依赖项。而是可以将 AUTOGEN_TARGET_DEPENDS
目标属性设置为一个 ;-list,其中包含 The <ORIGIN>_autogen target 目标的其他依赖项。依赖项可以是目标名称或文件名。
总而言之,The <ORIGIN>_autogen target 目标的依赖项由以下几部分组成:
转发的原始目标依赖项(默认通过
AUTOGEN_ORIGIN_DEPENDS
启用)来自
AUTOGEN_TARGET_DEPENDS
的其他用户定义的依赖项
有关将 CMake 与 Qt 结合使用,请参阅 cmake-qt(7)
手册。
使用场景¶
如果 AUTOMOC
或 AUTOUIC
依赖于以下任一文件:
一个
GENERATED
的 C++ 文件,该文件未被AUTOMOC
和AUTOUIC
识别,因为它被SKIP_AUTOMOC
、SKIP_AUTOUIC
、SKIP_AUTOGEN
或CMP0071
跳过,或者一个不在原始目标源文件列表中的文件
它必须被添加到 AUTOGEN_TARGET_DEPENDS
中。