CMP0127ΒΆ
New in version 3.22.
cmake_dependent_option() supports full Condition Syntax.
The <depends> parameter accepts a semicolon-separated list of conditions. CMake 3.21 and lower evaluates each
condition as if(${condition}), which does not properly handle
conditions with nested paren groups. CMake 3.22 and above instead prefer
to evaluate each condition as if(<condition>), where <condition>
is re-parsed as if literally written in a call to if(). This
allows expressions like:
"A AND (B OR C)"
but requires expressions like:
"FOO MATCHES (UPPER|lower)"
to be re-written as:
"FOO MATCHES \"(UPPER|lower)\""
Policy CMP0127 provides compatibility for projects that have not
been updated to expect the new behavior.
This policy was introduced in CMake version 3.22. CMake version
3.25.2 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.