https://github.com/Kitware/CMake
Tip revision: b45f9b364382839995c76bc9794bb5ae8fb787b5 authored by Brad King on 01 November 2022, 17:10:48 UTC
CMake 3.25.0-rc3
CMake 3.25.0-rc3
Tip revision: b45f9b3
CMP0011.rst
CMP0011
-------
Included scripts do automatic :command:`cmake_policy` PUSH and POP.
In CMake 2.6.2 and below, CMake Policy settings in scripts loaded by
the :command:`include` and :command:`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, :command:`include` and
:command:`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 :command:`include` and :command:`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
|release| warns when the policy is not set and uses ``OLD`` behavior. Use
the :command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly.
.. include:: DEPRECATED.txt