1CMP0028 2------- 3 4Double colon in target name means ``ALIAS`` or ``IMPORTED`` target. 5 6CMake 2.8.12 and lower allowed the use of targets and files with double 7colons in :command:`target_link_libraries`, with some buildsystem generators. 8 9The use of double-colons is a common pattern used to namespace ``IMPORTED`` 10targets and ``ALIAS`` targets. When computing the link dependencies of 11a target, the name of each dependency could either be a target, or a file 12on disk. Previously, if a target was not found with a matching name, the name 13was considered to refer to a file on disk. This can lead to confusing error 14messages if there is a typo in what should be a target name. 15 16The ``OLD`` behavior for this policy is to search for targets, then files on 17disk, even if the search term contains double-colons. The ``NEW`` behavior 18for this policy is to issue a ``FATAL_ERROR`` if a link dependency contains 19double-colons but is not an ``IMPORTED`` target or an ``ALIAS`` target. 20 21This policy was introduced in CMake version 3.0. CMake version 22|release| warns when the policy is not set and uses ``OLD`` behavior. Use 23the :command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly. 24 25.. include:: DEPRECATED.txt 26