Spec-Zone.ru › CMake

CMP0028

Предупреждение

Поведение этой политики OLD было удалено в CMake версии 4.0. Эта политика должна быть установлена в NEW вызовом cmake_minimum_required() или cmake_policy().

Двойное двоеточие в имени цели означает цель ALIAS или IMPORTED.

CMake 2.8.12 и более ранние версии допускали использование целей и файлов с двойными двоеточиями в target_link_libraries() с некоторыми генераторами систем сборки.

Использование двойных двоеточий — распространённый способ задать пространство имён для целей IMPORTED и целей ALIAS. При вычислении зависимостей цели для компоновки имя каждой зависимости могло обозначать как цель, так и файл на диске. Ранее, если цель с соответствующим именем не находилась, считалось, что это имя обозначает файл на диске. Это может приводить к запутанным сообщениям об ошибках, если в имени цели допущена опечатка.

См. также свойство цели LINK_LIBRARIES_ONLY_TARGETS.

Поведение OLD для этой политики заключается в поиске сначала целей, а затем файлов на диске, даже если поисковый запрос содержит двойные двоеточия. Поведение NEW для этой политики заключается в выдаче FATAL_ERROR, если зависимость для компоновки содержит двойные двоеточия, но не является целью IMPORTED или целью ALIAS.

Эта политика была добавлена в CMake версии 3.0. До её удаления в CMake версии 4.0 её можно было установить с помощью cmake_policy() или cmake_minimum_required(). Если она не была установлена, CMake выдавал предупреждение и использовал поведение OLD.

© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/policy/CMP0028.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API