使用cmake使用一个目标名称构建库和多个可执行文件

时间:2014-04-10 18:09:28

标签: cmake

我目前正在从内部构建系统迁移到cmake,到目前为止我很享受它。

我们的源代码被分解为离散的命名组件。这些组件通常会构建一个库和一组可执行文件。我已经使用基本CMakeLists.txt设置了cmake,然后在每个代码组件中创建了一个CMakeLists.txt,然后包含在基础中。组件CMakeLists.txt中有多个目标,一个用于库,然后是可变数量的可执行文件。

使用我们当前的系统,您可以键入以下内容:

make component_name

这将构建一个库以及与component_name关联的所有可执行文件。用cmake可以做到这样吗?我可以使用一个名称来构建CMakeLists.txt文件中的所有目标吗?

1 个答案:

答案 0 :(得分:3)

首先定义自定义目标,然后定义目标的依赖关系:

ADD_CUSTOM_TARGET(component_name)
ADD_DEPENDENCIES(component_name lib1 lib2 exe1 exe2)