Handle genexes when evaluating INTERFACE_INCLUDE_DIRECTORIES errors.

This commit is contained in:
Stephen Kelly
2013-06-18 16:33:33 +02:00
committed by Brad King
parent 36d8d987c7
commit 70ae6dfd92
18 changed files with 161 additions and 7 deletions

View File

@@ -36,3 +36,4 @@ All Policies
/policy/CMP0024
/policy/CMP0025
/policy/CMP0026
/policy/CMP0027

25
Help/policy/CMP0027.rst Normal file
View File

@@ -0,0 +1,25 @@
CMP0027
-------
Conditionally linked imported targets with missing include directories.
CMake 2.8.11 introduced introduced the concept of
INTERFACE_INCLUDE_DIRECTORIES, and a check at cmake time that the
entries in the INTERFACE_INCLUDE_DIRECTORIES of an IMPORTED target
actually exist. CMake 2.8.11 also introduced generator expression
support in the target_link_libraries command. However, if an imported
target is linked as a result of a generator expression evaluation, the
entries in the INTERFACE_INCLUDE_DIRECTORIES of that target were not
checked for existence as they should be.
The OLD behavior of this policy is to report a warning if an entry in
the INTERFACE_INCLUDE_DIRECTORIES of a generator-expression
conditionally linked IMPORTED target does not exist.
The NEW behavior of this policy is to report an error if an entry in
the INTERFACE_INCLUDE_DIRECTORIES of a generator-expression
conditionally linked IMPORTED target does not exist.
This policy was introduced in CMake version 3.0.0. CMake version
|release| warns when the policy is not set and uses OLD behavior. Use
the cmake_policy command to set it to OLD or NEW explicitly.