summaryrefslogtreecommitdiff
path: root/Help/policy/CMP0087.rst
blob: 4a6550675cfa85cfc36fc6862ad8e3a447e6ea05 (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
26
27
28
29
30
31
CMP0087
-------

.. versionadded:: 3.14

:command:`install(CODE)` and :command:`install(SCRIPT)` support generator
expressions.

In CMake 3.13 and earlier, :command:`install(CODE)` and
:command:`install(SCRIPT)` did not evaluate generator expressions.  CMake 3.14
and later will evaluate generator expressions for :command:`install(CODE)` and
:command:`install(SCRIPT)`.

The ``OLD`` behavior of this policy is for :command:`install(CODE)` and
:command:`install(SCRIPT)` to not evaluate generator expressions.  The ``NEW``
behavior is to evaluate generator expressions for :command:`install(CODE)` and
:command:`install(SCRIPT)`.

Note that it is the value of this policy setting at the end of the directory
scope that is important, not its setting at the time of the call to
:command:`install(CODE)` or :command:`install(SCRIPT)`.  This has implications
for calling these commands from places that have their own policy scope but not
their own directory scope (e.g. from files brought in via :command:`include()`
rather than :command:`add_subdirectory()`).

This policy was introduced in CMake version 3.14.  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