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 см. в руководстве cmake-qt(7).

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

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

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

его необходимо добавить в AUTOGEN_TARGET_DEPENDS.

© 2000–2026 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