Spec-Zone.ru › CMake

CMP0163

Добавлен в версии 3.30.

Свойство файла-источника GENERATED теперь видно во всех каталогах.

В CMake 3.29 и ниже свойство файла-источника GENERATED, как и другие свойства файлов-источников, были ограничены каждым каталогом отдельно. Хотя политика CMP0118 позволяла использовать источники, помеченные как GENERATED в одном каталоге, в других каталогах без их повторного указания как GENERATED, свойство GENERATED всё ещё не было доступно для вызовов get_property() и get_source_file_property().

Является ли файл-источник сгенерированным или нет – это глобальное свойство файла-источника, либо да, либо нет. CMake 3.30 и выше предпочитает рассматривать свойство файла-источника GENERATED как глобальное. После его установки в одном каталоге, оно сразу становится доступным для вызовов get_property() и get_source_file_property() в других каталогах. Эта политика обеспечивает совместимость для проектов, которые не были обновлены для этого поведения.

Поведение OLD этой политики заключается в том, что свойство файла-источника GENERATED видно только в тех каталогах, в которых оно установлено. Поведение NEW этой политики позволяет свойству файла-источника GENERATED быть видимым во всех каталогах после его установки в любом каталоге. Кроме того, поведение NEW этой политики подразумевает поведение NEW политики CMP0118: свойство GENERATED может быть установлено только в булевых значениях и не может быть отключено после включения.

Эта политика была введена в CMake версии 3.30. Она может быть установлена с помощью 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/CMP0163.html

Spec-Zone.ru

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