add_dependencies¶
添加顶级目标之间的依赖关系。
add_dependencies(<target> [<target-dependency>]...)
使顶级 <target>
依赖于其他顶级目标,以确保它们在 <target>
执行之前构建。顶级目标是用以下命令之一创建的:add_executable()
、add_library()
或 add_custom_target()
(而不是 CMake 生成的目标,如 install
)。
添加到 导入目标或接口库中的依赖项在原处被传递,因为目标本身不会构建。
3.3 版新增: 允许向接口库添加依赖项。
3.8 版新增: 依赖项将填充目标的 MANUALLY_ADDED_DEPENDENCIES
属性 <target>
。
3.9 版已更改: Ninja 生成器 使用较其他生成器更弱的排序,以改善可用并发性。它们仅保证在 <target>
中源码编译之前,依赖项的自定义命令完成;这确保了所生成源码可用。
另请参阅¶
add_custom_target()
和add_custom_command()
命令的DEPENDS
选项,用于在自定义规则中添加文件级别的依赖项。OBJECT_DEPENDS
源文件属性,用于向目标文件添加文件级别的依赖项。