CMP0049

不要扩展目标源条目中的变量。

CMake 2.8.12 及更低版本在评估源文件名时执行额外的变量扩展层

set(a_source foo.c)
add_executable(foo \${a_source})

这是无证行为。

此策略的“旧”行为是在处理目标源时扩展此类变量。此策略的“新”行为是在需要扩展此类变量时发出错误。

此策略是在 CMake 3.0 版中引入的。 CMake 版本 |发布|当未设置策略并使用“旧”行为时发出警告。使用 cmake_policy() 命令将其显式设置为 OLDNEW

备注

策略的“旧”行为是 :manual:根据定义 <cmake-policies(7)> 已弃用,并且可能会在未来版本的 CMake 中删除。