diff options
author | Martin Duffy <martin.duffy@kitware.com> | 2023-09-14 17:13:38 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2023-09-20 14:25:24 (GMT) |
commit | ec2ba29ac5e424cf0c52ba8ea5c2e3a4c2667d7a (patch) | |
tree | eee817eede0b5dec75baf45735268ffc7e5e4997 /Help/command | |
parent | 123cdf981661c8ae32335d4ae7e1ddcbcffd09cc (diff) | |
download | CMake-ec2ba29ac5e424cf0c52ba8ea5c2e3a4c2667d7a.zip CMake-ec2ba29ac5e424cf0c52ba8ea5c2e3a4c2667d7a.tar.gz CMake-ec2ba29ac5e424cf0c52ba8ea5c2e3a4c2667d7a.tar.bz2 |
Ninja: Allow compilation before generation of dependencies' private sources
This requires knowing when a generated header is public, which we can
model using file sets. Add policy CMP0154 to treat generated sources
as private by default in targets with file sets. Generated public
headers can be specified in public file sets.
Fixes: #24959
Issue: #15555
Diffstat (limited to 'Help/command')
-rw-r--r-- | Help/command/add_custom_command.rst | 10 | ||||
-rw-r--r-- | Help/command/add_custom_target.rst | 5 | ||||
-rw-r--r-- | Help/command/target_sources.rst | 2 |
3 files changed, 17 insertions, 0 deletions
diff --git a/Help/command/add_custom_command.rst b/Help/command/add_custom_command.rst index 1fcf06c..5fe4326 100644 --- a/Help/command/add_custom_command.rst +++ b/Help/command/add_custom_command.rst @@ -87,6 +87,11 @@ The options are: :ref:`Target-dependent expressions <Target-Dependent Queries>` are not permitted. + .. versionchanged:: 3.28 + In targets using :ref:`file sets`, custom command byproducts are now + considered private unless they are listed in a non-private file set. + See policy :policy:`CMP0154`. + ``COMMAND`` Specify the command-line(s) to execute at build time. If more than one ``COMMAND`` is specified they will be executed in order, @@ -270,6 +275,11 @@ The options are: :ref:`Target-dependent expressions <Target-Dependent Queries>` are not permitted. + .. versionchanged:: 3.28 + In targets using :ref:`file sets`, custom command outputs are now + considered private unless they are listed in a non-private file set. + See policy :policy:`CMP0154`. + ``USES_TERMINAL`` .. versionadded:: 3.2 diff --git a/Help/command/add_custom_target.rst b/Help/command/add_custom_target.rst index ef0c8d9..0385a93 100644 --- a/Help/command/add_custom_target.rst +++ b/Help/command/add_custom_target.rst @@ -63,6 +63,11 @@ The options are: :ref:`Target-dependent expressions <Target-Dependent Queries>` are not permitted. + .. versionchanged:: 3.28 + In custom targets using :ref:`file sets`, byproducts are now + considered private unless they are listed in a non-private file set. + See policy :policy:`CMP0154`. + ``COMMAND`` Specify the command-line(s) to execute at build time. If more than one ``COMMAND`` is specified they will be executed in order, diff --git a/Help/command/target_sources.rst b/Help/command/target_sources.rst index 4a8eda2..86bf7fb 100644 --- a/Help/command/target_sources.rst +++ b/Help/command/target_sources.rst @@ -60,6 +60,8 @@ expressions to ensure the sources are correctly assigned to the target. See the :manual:`cmake-buildsystem(7)` manual for more on defining buildsystem properties. +.. _`File Sets`: + File Sets ^^^^^^^^^ |