CMake生成包含目录

时间:2017-04-30 15:01:04

标签: cmake

如何告诉CMake目录是否已生成,以便在构建进程之前不会抱怨该目录不存在?

我的库项目被许多客户端使用,对于每个客户端,我都有脚本生成的客户端特定配置,并放入生成的/ [client-name] /generated.h头文件中。因此,对于每个客户端,都会生成文件夹。但是父项目源文件(* .cpp)只包含generated.h。我想使用:

为我的库添加生成的/ [client-name]接口包含目录
set_target_properties(mylib PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "generated/myclient" ...)

但是CMake甚至在开始编译之前就抱怨了 - 导入的目标“xxx”包括不存在的路径。所以我猜CMake不喜欢包含目录在开始构建过程时丢失,尽管目标依赖于应该创建正确目录的其他目标。其中的头文件。

1 个答案:

答案 0 :(得分:1)

您可以先使用CMake创建目录:

file(MAKE_DIRECTORY "generated/myclient")

如果目录已存在,则无效。

相关问题