diff options
author | Nils Gladitz <n.gladitz@abberior-instruments.com> | 2021-05-19 08:15:16 (GMT) |
---|---|---|
committer | Nils Gladitz <n.gladitz@abberior-instruments.com> | 2021-05-19 17:17:58 (GMT) |
commit | 99ff75455ece5ec4add771a2de93b237ab858d08 (patch) | |
tree | 49f27c52bcec9b415c054ac80d3643fa03756a33 /Help | |
parent | 82fd8b6ba36658705fc55bc40df0b6b6ec80b773 (diff) | |
download | CMake-99ff75455ece5ec4add771a2de93b237ab858d08.zip CMake-99ff75455ece5ec4add771a2de93b237ab858d08.tar.gz CMake-99ff75455ece5ec4add771a2de93b237ab858d08.tar.bz2 |
install: Implement new install(CODE|SCRIPT) option ALL_COMPONENTS
In a per-component installation the generated installation scripts
are invoked once for each component.
Per default custom installation script code added by install(CODE|SCRIPT)
only runs for one specific component in this context.
The new ALL_COMPONENTS option allows custom script code to be run once
for each component being installed.
Diffstat (limited to 'Help')
-rw-r--r-- | Help/command/install.rst | 8 | ||||
-rw-r--r-- | Help/manual/cmake-file-api.7.rst | 5 | ||||
-rw-r--r-- | Help/release/dev/install-script-all-components.rst | 7 |
3 files changed, 19 insertions, 1 deletions
diff --git a/Help/command/install.rst b/Help/command/install.rst index 993cf7f..2259176 100644 --- a/Help/command/install.rst +++ b/Help/command/install.rst @@ -619,7 +619,7 @@ Custom Installation Logic .. code-block:: cmake install([[SCRIPT <file>] [CODE <code>]] - [COMPONENT <component>] [EXCLUDE_FROM_ALL] [...]) + [COMPONENT <component>] [EXCLUDE_FROM_ALL] [ALL_COMPONENTS] [...]) The ``SCRIPT`` form will invoke the given CMake script files during installation. If the script file name is a relative path it will be @@ -634,6 +634,12 @@ example, the code will print a message during installation. +The option ``ALL_COMPONENTS`` + .. versionadded:: 3.21 + + Run the custom installation script code for every component of a + component-specific installation. + .. versionadded:: 3.14 ``<file>`` or ``<code>`` may use "generator expressions" with the syntax ``$<...>`` (in the case of ``<file>``, this refers to their use in the file diff --git a/Help/manual/cmake-file-api.7.rst b/Help/manual/cmake-file-api.7.rst index 445ebeb..0e530bc 100644 --- a/Help/manual/cmake-file-api.7.rst +++ b/Help/manual/cmake-file-api.7.rst @@ -751,6 +751,11 @@ with members: Optional member that is present with boolean value ``true`` when :command:`install` is called with the ``EXCLUDE_FROM_ALL`` option. + ``isForAllComponents`` + Optional member that is present with boolean value ``true`` when + :command:`install(SCRIPT|CODE)` is called with the + ``ALL_COMPONENTS`` option. + ``isOptional`` Optional member that is present with boolean value ``true`` when :command:`install` is called with the ``OPTIONAL`` option. diff --git a/Help/release/dev/install-script-all-components.rst b/Help/release/dev/install-script-all-components.rst new file mode 100644 index 0000000..e421d3d --- /dev/null +++ b/Help/release/dev/install-script-all-components.rst @@ -0,0 +1,7 @@ +install-script-all-components +----------------------------- + +* The :command:`install(SCRIPT|CODE)` command + supports a new option ``ALL_COMPONENTS`` which allows + the corresponding code to run for every component of + a per component installation. |