Spec-Zone.ru › CMake 3.31

CMP0002

Логические имена целевых объектов должны быть глобально уникальными.

Имена целевых объектов, созданные с помощью add_executable(), add_library() или add_custom_target(), являются логическими именами целевых объектов сборки. Логические имена целевых объектов должны быть глобально уникальными, потому что:

- Unique names may be referenced unambiguously both in CMake
  code and on make tool command lines.
- Logical names are used by Xcode and VS IDE generators
  to produce meaningful project names for the targets.

Логическое имя целевых объектов исполняемых файлов и библиотек не обязательно должно соответствовать физическим именам создаваемых файлов. Используйте свойство целевого объекта OUTPUT_NAME, чтобы создать два целевых объекта с одинаковым физическим именем, сохраняя при этом уникальность логических имён. У целевых объектов пользовательских задач просто должны быть глобально уникальные имена (если не используется глобальное свойство ALLOW_DUPLICATE_CUSTOM_TARGETS с генератором Makefiles).

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

Примечание

Поведение политики OLD — deprecated by definition, и оно может быть удалено в будущих версиях CMake.

© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.31/policy/CMP0002.html

Spec-Zone.ru

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