Help: Clarify policy `CMP0040` documentation (#15681)

State explicitly that the target must be defined in the current
directory.  While at it, improve markup formatting.
This commit is contained in:
Bartosz Kosiorek 2016-01-28 10:52:15 +01:00 committed by Brad King
parent 63c5808f93
commit 8c615af4df
1 changed files with 11 additions and 8 deletions

View File

@ -1,18 +1,21 @@
CMP0040 CMP0040
------- -------
The target in the TARGET signature of add_custom_command() must exist. The target in the ``TARGET`` signature of :command:`add_custom_command`
must exist and must be defined in current directory.
CMake 2.8.12 and lower silently ignored a custom command created with CMake 2.8.12 and lower silently ignored a custom command created with
the TARGET signature of :command:`add_custom_command` the ``TARGET`` signature of :command:`add_custom_command`
if the target is unknown. if the target is unknown or was defined outside the current directory.
The OLD behavior for this policy is to ignore custom commands The ``OLD`` behavior for this policy is to ignore custom commands
for unknown targets. The NEW behavior for this policy is to report an error for unknown targets. The ``NEW`` behavior for this policy is to report
if the target referenced in :command:`add_custom_command` is unknown. an error if the target referenced in :command:`add_custom_command` is
unknown or was defined outside the current directory.
This policy was introduced in CMake version 3.0. CMake version This policy was introduced in CMake version 3.0. CMake version
|release| warns when the policy is not set and uses OLD behavior. Use |release| warns when the policy is not set and uses ``OLD`` behavior.
the cmake_policy command to set it to OLD or NEW explicitly. Use the :command:`cmake_policy` command to set it to ``OLD`` or
``NEW`` explicitly.
.. include:: DEPRECATED.txt .. include:: DEPRECATED.txt