CMP0028
Двойное двоеточие в имени целевого объекта означает ALIAS или IMPORTED целевой объект.
CMake 2.8.12 и ниже допускали использование целевых объектов и файлов с двойными двоеточиями в target_link_libraries(), с некоторыми генераторами систем сборки.
Использование двойных двоеточий — это распространённый способ именования IMPORTED целевых объектов и ALIAS целевых объектов. При вычислении зависимостей компоновки целевого объекта имя каждой зависимости может быть либо именем целевого объекта, либо именем файла на диске. Ранее, если целевой объект с соответствующим именем не находился, имя считалось ссылкой на файл на диске. Это может приводить к запутывающим сообщениям об ошибках, если в имени целевого объекта допущена опечатка.
Поведение OLD по отношению к этой политике — это поиск целевых объектов, а затем файлов на диске, даже если в поисковом запросе содержатся двойные двоеточия. Поведение NEW по отношению к этой политике — выдача FATAL_ERROR сообщения, если зависимость компоновки содержит двойные двоеточия, но не является IMPORTED целевым объектом или ALIAS целевым объектом.
Эта политика была введена в CMake версии 3.0. CMake версии 3.15.7 выводит предупреждение, если политика не установлена, и использует OLD поведение. Используйте команду cmake_policy(), чтобы явно установить её на OLD или NEW.
Примечание
Поведение OLD этой политики — deprecated by definition и может быть удалено в будущих версиях CMake.
© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.15/policy/CMP0028.html