CMake/Help/policy/CMP0005.rst
Brad King 482a3bf3f0 Help: Document explicitly that policy OLD behavior is deprecated
The most likely documentation page a project author will read in
response to a policy warning is the page for the policy itself.
Add to every policy documentation page a note explicitly stating
that the OLD behavior is deprecated.  Also mention this in the
cmake_policy() command documentation that explains how to set a
policy to OLD.

Suggested-by: Fraser Hutchison <fraser.hutchison@gmail.com>
2015-06-09 09:29:41 -04:00

27 lines
1.2 KiB
ReStructuredText

CMP0005
-------
Preprocessor definition values are now escaped automatically.
This policy determines whether or not CMake should generate escaped
preprocessor definition values added via add_definitions. CMake
versions 2.4 and below assumed that only trivial values would be given
for macros in add_definitions calls. It did not attempt to escape
non-trivial values such as string literals in generated build rules.
CMake versions 2.6 and above support escaping of most values, but
cannot assume the user has not added escapes already in an attempt to
work around limitations in earlier versions.
The OLD behavior for this policy is to place definition values given
to add_definitions directly in the generated build rules without
attempting to escape anything. The NEW behavior for this policy is to
generate correct escapes for all native build tools automatically.
See documentation of the COMPILE_DEFINITIONS target property for
limitations of the escaping implementation.
This policy was introduced in CMake version 2.6.0. CMake version
|release| warns when the policy is not set and uses OLD behavior. Use
the cmake_policy command to set it to OLD or NEW explicitly.
.. include:: DEPRECATED.txt