This website requires JavaScript.
Explore
Help
Sign In
kolan
/
CMake
Watch
1
Star
0
Fork
You've already forked CMake
0
Code
Issues
Pull Requests
Releases
Wiki
Activity
86578eccf2
CMake
/
Tests
/
RunCMake
/
CMP0019
/
CMP0019-WARN.cmake
2 lines
28 B
CMake
Raw
Normal View
History
Unescape
Escape
Add policy CMP0019 to skip include/link variable re-expansion Historically CMake has always expanded ${} variable references in the values given to include_directories(), link_directories(), and link_libraries(). This has been unnecessary since general ${} evaluation syntax was added to the language a LONG time ago, but has remained for compatibility with VERY early CMake versions. For a long time the re-expansion was a lightweight operation because it was only processed once at the directory level and the fast-path of cmMakefile::ExpandVariablesInString was usually taken because values did not have any '$' in them. Then commit d899eb71 (Call ExpandVariablesInString for each target's INCLUDE_DIRECTORIES, 2012-02-22) made the operation a bit heavier because the expansion is now needed on a per-target basis. In the future we will support generator expressions in INCLUDE_DIRECTORIES with $<> syntax, so the fast-path in cmMakefile::ExpandVariablesInString will no longer be taken and re-expansion will be very expensive. Add policy CMP0019 to skip the re-expansion altogether in NEW behavior. In OLD behavior perform the expansion but improve the fast-path heuristic to match ${} but not $<>. If the policy is not set then warn if expansion actually does anything. We expect this to be encountered very rarely in practice.
2012-12-06 18:59:18 +04:00
include
(
CMP0019-code.cmake
)