Spec-Zone.ru › CMake

AUTOGEN_TARGET_DEPENDS

Дополнительные зависимости целевых объектов соответствующего целевого объекта целевой объект <ORIGIN>_autogen.

Примечание

Если используется Qt 5.15 или более поздняя версия, а генератор — это либо Ninja, либо Генераторы Makefile, дополнительные зависимости целевых объектов добавляются к целевому объекту целевой объект <ORIGIN>_autogen_timestamp_deps, а не к целевому объекту целевой объект <ORIGIN>_autogen.

Для целевых объектов, у которых свойство AUTOMOC или AUTOUIC свойство ON имеют соответствующий целевой объект целевой объект <ORIGIN>_autogen, который генерирует файлы moc и uic. Поскольку этот целевой объект целевой объект <ORIGIN>_autogen создаётся во время генерации, невозможно определить его зависимости с помощью, например, add_dependencies(). Вместо этого можно установить свойство целевого объекта AUTOGEN_TARGET_DEPENDS в список дополнительных зависимостей целевого объекта целевой объект <ORIGIN>_autogen (через разделитель «;»). Зависимости могут быть именами целевых объектов или именами файлов.

В целом зависимости целевого объекта целевой объект <ORIGIN>_autogen состоят из:

  • переданных зависимостей целевых объектов исходного объекта (включено по умолчанию через AUTOGEN_ORIGIN_DEPENDS)
  • дополнительных пользовательских зависимостей из AUTOGEN_TARGET_DEPENDS

См. руководство cmake-qt(7) для получения дополнительной информации об использовании CMake с Qt.

Сценарии использования

Если AUTOMOC или AUTOUIC зависит от файла, который является

  • не-C++ файлом, помеченным как GENERATED (например, файл GENERATED .json или .ui файла) или
  • C++ файлом, помеченным как GENERATED, который не распознаётся AUTOMOC и AUTOUIC, потому что он пропущен SKIP_AUTOMOC, SKIP_AUTOUIC, SKIP_AUTOGEN или CMP0071 или
  • файлом, который не входит в источники целевого объекта origin

он должен быть добавлен в AUTOGEN_TARGET_DEPENDS.

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

Spec-Zone.ru

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