https://github.com/Kitware/CMake
Raw File
Tip revision: adf5f253ec029aec4ee7aadb95c6f908030fb98b authored by Brad King on 04 November 2016, 12:30:22 UTC
CMake 3.7.0-rc3
Tip revision: adf5f25
CMP0028.rst
CMP0028
-------

Double colon in target name means ALIAS or IMPORTED target.

CMake 2.8.12 and lower allowed the use of targets and files with double
colons in target_link_libraries, with some buildsystem generators.

The use of double-colons is a common pattern used to namespace IMPORTED
targets and ALIAS targets.  When computing the link dependencies of a target,
the name of each dependency could either be a target, or a file on disk.
Previously, if a target was not found with a matching name, the name was
considered to refer to a file on disk.  This can lead to confusing error
messages if there is a typo in what should be a target name.

The OLD behavior for this policy is to search for targets, then files on disk,
even if the search term contains double-colons.  The NEW behavior for this
policy is to issue a FATAL_ERROR if a link dependency contains
double-colons but is not an IMPORTED target or an ALIAS target.

This policy was introduced in CMake version 3.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
back to top