围绕CMake变量时,“@”符号是否具有特殊含义?

时间:2016-02-02 11:26:12

标签: cmake

在查看ITK源代码时,我遇到了许多文件,例如this,它们具有后缀.cmake.in并定义了许多变量(字符串?) ,其中值与变量名称相同,但前缀/附加@个符号。例如:

set(ExternalData_OBJECT_STORES "@ExternalData_OBJECT_STORES@")

这些声明的目的是什么? @符号在此上下文中是否具有特殊含义?我尝试在CMake Language Syntax Wiki中搜索此内容,但页面上没有出现@

1 个答案:

答案 0 :(得分:3)

带后缀.in的文件通常用于通过命令configure_file进行配置。此类文件中的所有序列@NAME@都将转换为变量NAME的值。

configure_file / string(CONFIGURE)符号@之外,在CMake中没有特殊含义。