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源文件属性用于为对象文件添加文件级依赖项。