Do not expand variables in target source entries.
CMake 2.8.12 and lower performed an extra layer of variable expansion when evaluating source file names:
set(a_source foo.c) add_executable(foo \${a_source})
This was undocumented behavior.
The OLD
behavior for this policy is to expand such variables when processing the target sources. The NEW
behavior for this policy is to issue an error if such variables need to be expanded.
This policy was introduced in CMake version 3.0. CMake version 3.19.0-rc3 warns when the policy is not set and uses OLD
behavior. Use the cmake_policy()
command to set it to OLD
or NEW
explicitly.
Note
The OLD
behavior of a policy is deprecated by definition
and may be removed in a future version of CMake.
© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.19/policy/CMP0049.html