Spec-Zone.ru › CMake

AUTOUIC

Следует ли обрабатывать цель с помощью auto-uic (для проектов Qt).

AUTOUIC — это логическое значение, определяющее, будет ли CMake автоматически обрабатывать генератор кода Qt uic, то есть без необходимости использовать такие команды, как qt4_wrap_ui(), qt5_wrap_ui() и т. д. В настоящее время поддерживаются Qt версий с 4 по 6.

Это свойство инициализируется значением переменной CMAKE_AUTOUIC, если она задана при создании цели.

Если это свойство имеет значение ON, CMake во время сборки сканирует заголовочные и исходные файлы и соответствующим образом вызывает uic.

Обработка заголовочных и исходных файлов

Во время сборки CMake сканирует каждый заголовочный и исходный файл из списка исходных файлов цели на наличие директив включения следующего вида

#include "ui_<ui_base>.h"

После обнаружения такой директивы включения в файле CMake ищет входной файл uic <ui_base>.ui

  • в непосредственной близости от файла и
  • в AUTOUIC_SEARCH_PATHS цели.

Если файл <ui_base>.ui найден, для него вызывается uic, чтобы создать ui_<ui_base>.h в каталоге

  • <AUTOGEN_BUILD_DIR>/include для генераторов с одной конфигурацией или в
  • <AUTOGEN_BUILD_DIR>/include_<CONFIG> для генераторов multi configuration.

Здесь <AUTOGEN_BUILD_DIR> — значение свойства цели AUTOGEN_BUILD_DIR.

Каталог включаемых файлов автоматически добавляется в INCLUDE_DIRECTORIES цели.

Модификаторы

AUTOUIC_EXECUTABLE: исполняемый файл uic будет обнаружен автоматически, но с помощью этого свойства цели можно указать конкретный двоичный файл.

AUTOUIC_OPTIONS: с помощью этого свойства цели можно задать дополнительные параметры командной строки для uic. Соответствующее свойство исходного файла AUTOUIC_OPTIONS можно использовать, чтобы задать параметры, применяемые только к конкретному файлу <base_name>.ui.

SKIP_AUTOUIC: исходные файлы можно исключить из обработки AUTOUIC, задав это свойство исходного файла.

SKIP_AUTOGEN: исходные файлы можно исключить из обработки AUTOMOC, AUTOUIC и AUTORCC, задав это свойство исходного файла.

AUTOGEN_TARGETS_FOLDER: это глобальное свойство можно использовать для группировки целей AUTOMOC, AUTOUIC и AUTORCC в IDE, например в MSVS.

CMAKE_GLOBAL_AUTOGEN_TARGET: если этой переменной присвоено значение ON, будет создана глобальная цель autogen, зависящая от всех целей AUTOMOC или AUTOUIC <ORIGIN>_autogen, сгенерированных в проекте.

AUTOGEN_PARALLEL: это свойство цели определяет количество процессов moc или uic, запускаемых параллельно во время сборки.

AUTOGEN_COMMAND_LINE_LENGTH_MAX: это свойство цели определяет порог, при превышении которого для процессов moc или uic в Windows используются файлы ответов.

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

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

Spec-Zone.ru

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