cmake/Help/policy/CMP0026.rst

30 lines
1.3 KiB
ReStructuredText
Raw Normal View History

2014-08-03 19:52:23 +02:00
CMP0026
-------
2015-08-17 11:37:30 +02:00
Disallow use of the LOCATION property for build targets.
2014-08-03 19:52:23 +02:00
2019-11-11 23:01:05 +01:00
CMake 2.8.12 and lower allowed reading the :prop_tgt:`LOCATION` target
2014-08-03 19:52:23 +02:00
property (and configuration-specific variants) to
determine the eventual location of build targets. This relies on the
assumption that all necessary information is available at
configure-time to determine the final location and filename of the
target. However, this property is not fully determined until later at
2021-09-14 00:13:48 +02:00
generate-time. At generate time, the :genex:`$<TARGET_FILE>` generator
2019-11-11 23:01:05 +01:00
expression can be used to determine the eventual :prop_tgt:`LOCATION` of a target
2014-08-03 19:52:23 +02:00
output.
2019-11-11 23:01:05 +01:00
Code which reads the :prop_tgt:`LOCATION` target property can be ported to
2021-09-14 00:13:48 +02:00
use the :genex:`$<TARGET_FILE>` generator expression together with the
2019-11-11 23:01:05 +01:00
:command:`file(GENERATE)` subcommand to generate a file containing
the target location.
2014-08-03 19:52:23 +02:00
2019-11-11 23:01:05 +01:00
The ``OLD`` behavior for this policy is to allow reading the :prop_tgt:`LOCATION`
properties from build-targets. The ``NEW`` behavior for this policy is to
not to allow reading the :prop_tgt:`LOCATION` properties from build-targets.
2014-08-03 19:52:23 +02:00
This policy was introduced in CMake version 3.0. CMake version
2019-11-11 23:01:05 +01:00
|release| warns when the policy is not set and uses ``OLD`` behavior. Use
the :command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly.
2015-08-17 11:37:30 +02:00
.. include:: DEPRECATED.txt