AUTOGEN_ORIGIN_DEPENDS¶
在 3.14 版本加入.
用于将原始目标依赖项转发到相应的 _autogen 目标的开关。
具有 AUTOMOC 或 AUTOUIC 属性 ON 的目标具有相应的 _autogen 目标,该目标生成 moc 和 uic 文件。由于此 _autogen 目标是在生成时创建的,因此无法使用例如定义它的依赖项 add_dependencies()。相反,AUTOGEN_ORIGIN_DEPENDS 目标属性决定是否应将原始目标依赖项转发到 _autogen 目标。
默认情况下,AUTOGEN_ORIGIN_DEPENDS 是从 CMAKE_AUTOGEN_ORIGIN_DEPENDS 初始化的,默认情况下是 ON。
总的来说,_autogen 目标的依赖项由
转发源目标依赖项(默认情况下通过
AUTOGEN_ORIGIN_DEPENDS启用)来自
AUTOGEN_TARGET_DEPENDS的额外用户定义依赖项
有关在 Qt 中使用 CMake 的更多信息,请参阅 cmake-qt(7) 手册。
笔记¶
禁用“AUTOGEN_ORIGIN_DEPENDS”有助于避免在仅构建“_autogen”目标时构建原始目标依赖项。这在启用 global autogen target 时特别有趣。
当 _autogen` 目标不需要所有原始目标的依赖项,并且 AUTOGEN_ORIGIN_DEPENDS 被禁用时,可能需要扩展 AUTOGEN_TARGET_DEPENDS 以添加缺少的依赖项。