mirror of
https://github.com/Kitware/CMake.git
synced 2026-02-14 11:09:56 -06:00
Every policy's documentation has a paragraph on what version of CMake introduced it, how to set the policy, and whether CMake warns if the policy is not set. The wording of this paragraph has diverged across policies over time. Factor the paragraph out into a standard advice document included by every policy.
28 lines
1.1 KiB
ReStructuredText
28 lines
1.1 KiB
ReStructuredText
CMP0111
|
|
-------
|
|
|
|
.. versionadded:: 3.19
|
|
|
|
An imported target missing its location property fails during generation.
|
|
|
|
:ref:`Imported Targets` for library files and executables require that
|
|
their location on disk is specified in a target property such as
|
|
:prop_tgt:`IMPORTED_LOCATION`, :prop_tgt:`IMPORTED_IMPLIB`, or a
|
|
per-configuration equivalent. If a needed location property is not set,
|
|
CMake 3.18 and below generate the string ``<TARGET_NAME>-NOTFOUND`` in
|
|
its place, which results in failures of the corresponding rules at build
|
|
time. CMake 3.19 and above prefer instead to raise an error during
|
|
generation. This policy provides compatibility for projects that have
|
|
not been updated to expect the new behavior.
|
|
|
|
The ``OLD`` behavior of this policy is to generate the location of an imported
|
|
unknown, static or shared library target as ``<TARGET_NAME>-NOTFOUND`` if not
|
|
set.
|
|
The ``NEW`` behavior is to raise an error.
|
|
|
|
.. |INTRODUCED_IN_CMAKE_VERSION| replace:: 3.19
|
|
.. |WARNS_OR_DOES_NOT_WARN| replace:: warns
|
|
.. include:: STANDARD_ADVICE.txt
|
|
|
|
.. include:: DEPRECATED.txt
|