Spec-Zone.ru › CMake 3.21

AUTOUIC

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

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

Это свойство инициализируется значением переменной 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: Глобальная autogen цель, зависящая от всех сгенерированных AUTOMOC или AUTOUIC целей в проекте, будет сгенерирована, когда эта переменная ON.

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

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

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

Spec-Zone.ru

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