New in version 3.1.
Reject source and build dirs in installed INTERFACE_INCLUDE_DIRECTORIES
.
CMake 3.0 and lower allowed subdirectories of the source directory or build directory to be in the INTERFACE_INCLUDE_DIRECTORIES
of installed and exported targets, if the directory was also a subdirectory of the installation prefix. This makes the installation depend on the existence of the source dir or binary dir, and the installation will be broken if either are removed after installation.
See Include Directories and Usage Requirements for more on specifying include directories for targets.
The OLD
behavior for this policy is to export the content of the INTERFACE_INCLUDE_DIRECTORIES
with the source or binary directory. The NEW
behavior for this policy is to issue an error if such a directory is used.
This policy was introduced in CMake version 3.1. 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/CMP0052.html