CMP0028.rst 1.1 KB

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