CMP0011ΒΆ
Included scripts do automatic cmake_policy()
PUSH and POP.
In CMake 2.6.2 and below, CMake Policy settings in scripts loaded by
the include()
and find_package()
commands would affect
the includer. Explicit invocations of cmake_policy(PUSH)
and
cmake_policy(POP)
were required to isolate policy changes and protect
the includer. While some scripts intend to affect the policies of their
includer, most do not. In CMake 2.6.3 and above, include()
and
find_package()
by default PUSH
and POP
an entry on
the policy stack around an included
script, but provide a NO_POLICY_SCOPE
option to disable it. This
policy determines whether or not to imply NO_POLICY_SCOPE
for
compatibility. The OLD
behavior for this policy is to imply
NO_POLICY_SCOPE
for include()
and find_package()
commands.
The NEW
behavior for this policy is to allow the commands to do
their default cmake_policy PUSH
and POP
.
This policy was introduced in CMake version 2.6.3. CMake version
3.26.6 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.