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/latest/policy/CMP0002.html