summaryrefslogtreecommitdiffstats
path: root/Help/policy
diff options
context:
space:
mode:
authorKyle Edwards <kyle.edwards@kitware.com>2018-10-02 20:38:26 (GMT)
committerKyle Edwards <kyle.edwards@kitware.com>2018-10-10 14:26:39 (GMT)
commitfc8955e8891c645cd369a3cc8b607a14a8ed5bd7 (patch)
tree8a20a759ac2ea54aae9411bad8c54d109dd1ae02 /Help/policy
parent514f0b572ea8ca2ba87810aa8f48185f266a8eaa (diff)
downloadCMake-fc8955e8891c645cd369a3cc8b607a14a8ed5bd7.zip
CMake-fc8955e8891c645cd369a3cc8b607a14a8ed5bd7.tar.gz
CMake-fc8955e8891c645cd369a3cc8b607a14a8ed5bd7.tar.bz2
add_subdirectory: Run subdirectory install rules in correct order
Before this change, install rules created by add_subdirectory() would be executed after all of the top-level install rules, even if they were declared before the top-level rules. This change adds a new policy, CMP0082, which interleaves the add_subdirectory() install rules with the other install rules so they are run in the correct order.
Diffstat (limited to 'Help/policy')
-rw-r--r--Help/policy/CMP0082.rst24
1 files changed, 24 insertions, 0 deletions
diff --git a/Help/policy/CMP0082.rst b/Help/policy/CMP0082.rst
new file mode 100644
index 0000000..7b2ef04
--- /dev/null
+++ b/Help/policy/CMP0082.rst
@@ -0,0 +1,24 @@
+CMP0082
+-------
+
+Install rules from :command:`add_subdirectory` calls are interleaved with
+those in caller.
+
+CMake 3.13 and lower ran the install rules from :command:`add_subdirectory`
+after all other install rules, even if :command:`add_subdirectory` was called
+before the other install rules. CMake 3.14 and later interleaves these
+:command:`add_subdirectory` install rules with the others so that they are
+run in the order they are declared.
+
+The ``OLD`` behavior for this policy is to run the install rules from
+:command:`add_subdirectory` after the other install rules. The ``NEW``
+behavior for this policy is to run all install rules in the order they are
+declared.
+
+This policy was introduced in CMake version 3.14. Unlike most policies,
+CMake version |release| does *not* warn by default when this policy
+is not set and simply uses OLD behavior. See documentation of the
+:variable:`CMAKE_POLICY_WARNING_CMP0082 <CMAKE_POLICY_WARNING_CMP<NNNN>>`
+variable to control the warning.
+
+.. include:: DEPRECATED.txt