diff options
author | Patrick Steinhardt <ps@pks.im> | 2018-10-04 10:48:12 +0200 |
---|---|---|
committer | Patrick Steinhardt <ps@pks.im> | 2018-10-04 10:58:52 +0200 |
commit | 633584b52faa6ff06fdd21050a554241a40ded3f (patch) | |
tree | 13c196d37f030804a880dc2f72594cc1f5d67393 | |
parent | 04d3853ff69c6d70d1bdcde7b1283677bcd27f10 (diff) | |
download | libgit2-633584b52faa6ff06fdd21050a554241a40ded3f.tar.gz |
cmake: enable new quoted argument policy CMP0054
Quoting from CMP0054's documentation:
Only interpret if() arguments as variables or keywords when
unquoted.
CMake 3.1 and above no longer implicitly dereference variables or
interpret keywords in an if() command argument when it is a Quoted
Argument or a Bracket Argument.
The OLD behavior for this policy is to dereference variables and
interpret keywords even if they are quoted or bracketed. The NEW
behavior is to not dereference variables or interpret keywords that
have been quoted or bracketed.
The previous behaviour could be quite unexpected. Quoted arguments might
be expanded in case where the value of the argument corresponds to a
variable. E.g. `IF("MONKEY" STREQUAL "MONKEY")` would have been expanded
to `IF("1" STREQUAL "1")` iff `SET(MONKEY 1)` was set. This behaviour
was weird, and recent CMake versions have started to complain about this
if they see ambiguous situations. Thus we want to disable it in favor of
the new behaviour.
-rw-r--r-- | CMakeLists.txt | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 37970c769..47b1cd187 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,6 +20,9 @@ ENDIF() IF(POLICY CMP0042) CMAKE_POLICY(SET CMP0042 NEW) ENDIF() +IF(POLICY CMP0054) + CMAKE_POLICY(SET CMP0054 NEW) +ENDIF() # Add find modules to the path SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${libgit2_SOURCE_DIR}/cmake/Modules/") |