CMP0028ΒΆ
Warning
The OLD
behavior of this policy was removed
in CMake version 4.0.
This policy must be set to NEW
by a call to
cmake_minimum_required()
or cmake_policy()
.
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.
See also the LINK_LIBRARIES_ONLY_TARGETS
target property.
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.
Prior to removal in CMake version 4.0, it could be
set by cmake_policy()
or cmake_minimum_required()
.
If it was not set, CMake warned, and used OLD
behavior.