add_dependencies¶
在顶级目标之间添加依赖关系。
add_dependencies(<target> <target-dependency>...)
使顶级 <target>
依赖于其他顶级目标,以确保它们在 <target>
之前构建。顶级目标是指由 add_executable()
、add_library()
或 add_custom_target()
命令之一创建的目标(但不包括 CMake 生成的目标,如 install
)。
添加到导入目标或接口库的依赖关系将传递地在其位置被遵循,因为目标本身不会构建。
3.3 版本新增: 允许为接口库添加依赖项。
3.8 版本新增: 依赖项将填充 <target>
的 MANUALLY_ADDED_DEPENDENCIES
属性。
3.9 版本更改: Ninja 生成器使用比其他生成器更弱的排序,以提高可用并发性。它们只保证依赖项的自定义命令在 <target>
中的源文件开始编译之前完成;这确保了生成的源文件可用。
4.1 版本更改: 该命令可以不带任何依赖项调用。以前,至少需要一个依赖项。
另请参阅¶
add_custom_target()
和add_custom_command()
命令的DEPENDS
选项用于在自定义规则中添加文件级依赖项。OBJECT_DEPENDS
源文件属性用于为对象文件添加文件级依赖项。