summaryrefslogtreecommitdiff
path: root/share/cmake-3.18/Help/policy/CMP0011.rst
blob: 257415c26a805eae4893d48ce2ae1947e55e553c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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