Spec-Zone.ru › CMake 3.7

CPackIFW

Этот модуль ищет расположение командных утилит, поставляемых с Qt Installer Framework (QtIFW).

Модуль также определяет несколько команд для управления поведением генератора CPack IFW.

Обзор

Генератор CPack IFW помогает создавать кроссплатформенные установщики программ с графическим интерфейсом пользователя, как онлайн, так и оффлайн.

Генератор CPack IFW подготавливает установку проекта и генерирует конфигурационную и мета-информацию для инструментов QtIFW.

QtIFW предоставляет набор инструментов и утилит для создания установщиков для поддерживаемых настольных платформ Qt: Linux, Microsoft Windows и Mac OS X.

Для использования генератора CPack IFW генератора также необходимо установить QtIFW. Если вы не используете стандартный путь установки, пожалуйста, задайте используемый путь в переменной QTIFWDIR.

Переменные

Вы можете использовать следующие переменные для изменения поведения генератора CPack IFW.

Отладка

CPACK_IFW_VERBOSE

Установите в ON, чтобы включить дополнительный вывод отладки. По умолчанию установлено значение OFF.

Упаковщик

CPACK_IFW_PACKAGE_TITLE

Название установщика, отображаемое в строке заголовка. По умолчанию используется значение CPACK_PACKAGE_DESCRIPTION_SUMMARY.

CPACK_IFW_PACKAGE_PUBLISHER

Издатель программного обеспечения (как показано в Панели управления Windows). По умолчанию используется значение CPACK_PACKAGE_VENDOR.

CPACK_IFW_PRODUCT_URL

URL страницы с информацией о продукте на вашем веб-сайте.

CPACK_IFW_PACKAGE_ICON

Имя файла для пользовательского значка установщика. Файл имеет расширение ‘.icns’ (Mac OS X), ‘.ico’ (Windows). Не имеет функциональности в Unix.

CPACK_IFW_PACKAGE_WINDOW_ICON

Имя файла для пользовательского значка окна приложения установщика в формате PNG.

CPACK_IFW_PACKAGE_LOGO

Имя файла логотипа, используемого как QWizard::LogoPixmap.

CPACK_IFW_PACKAGE_START_MENU_DIRECTORY

Название группы по умолчанию для продукта в меню Пуск Windows.

По умолчанию используется значение CPACK_IFW_PACKAGE_NAME.

CPACK_IFW_TARGET_DIRECTORY

Целевой каталог по умолчанию для установки. По умолчанию используется значение «@ApplicationsDir@/CPACK_PACKAGE_INSTALL_DIRECTORY».

Вы можете использовать предопределённые переменные.

CPACK_IFW_ADMIN_TARGET_DIRECTORY

Целевой каталог по умолчанию для установки с правами администратора.

Вы можете использовать предопределённые переменные.

CPACK_IFW_PACKAGE_GROUP

Группа, которая будет использоваться для настройки корневого пакета

CPACK_IFW_PACKAGE_NAME

Имя корневого пакета, которое будет использоваться, если группа конфигурации не указана.

CPACK_IFW_PACKAGE_MAINTENANCE_TOOL_NAME

Имя файла сгенерированного инструмента обслуживания. К имени добавляется платформа-специфическое расширение исполняемого файла.

По умолчанию используются значения по умолчанию QtIFW (maintenancetool).

CPACK_IFW_PACKAGE_MAINTENANCE_TOOL_INI_FILE

Имя файла для конфигурации сгенерированного инструмента обслуживания.

По умолчанию используются значения по умолчанию QtIFW (maintenancetool.ini).

CPACK_IFW_PACKAGE_ALLOW_NON_ASCII_CHARACTERS

Установите в ON, если путь к установке может содержать не-ASCII символы.

Установлено в значение ON для инструментов QtIFW версии ниже 2.0.

CPACK_IFW_PACKAGE_ALLOW_SPACE_IN_PATH

Установите в OFF, если путь к установке не может содержать пробелы.

Установлено в значение ON для инструментов QtIFW версии ниже 2.0.

CPACK_IFW_PACKAGE_CONTROL_SCRIPT

Имя файла пользовательского скрипта управления установщиком.

CPACK_IFW_PACKAGE_RESOURCES

Список дополнительных ресурсов (файлы ‘.qrc’) для включения в исполняемый файл установщика.

Вы можете использовать команду cpack_ifw_add_package_resources() для разрешения относительных путей.

CPACK_IFW_REPOSITORIES_ALL

Список удаленных репозиториев.

Значение по умолчанию этой переменной вычисляется CPack и содержит все репозитории, добавленные командой cpack_ifw_add_repository() или обновлённые командой cpack_ifw_update_repository().

CPACK_IFW_DOWNLOAD_ALL

Если это ON, все компоненты будут скачаны. По умолчанию это OFF, или используется значение из CPACK_DOWNLOAD_ALL, если оно задано.

Компоненты

CPACK_IFW_RESOLVE_DUPLICATE_NAMES

Разрешить дублирование имён при установке компонентов в группах.

CPACK_IFW_PACKAGES_DIRECTORIES

Дополнительные подготовленные каталоги пакетов, которые будут использоваться для разрешения зависимых компонентов.

Инструменты

CPACK_IFW_FRAMEWORK_VERSION

Версия используемых инструментов QtIFW.

CPACK_IFW_BINARYCREATOR_EXECUTABLE

Путь к командной утилите «binarycreator».

Эта переменная кэшируется и может быть настроена пользователем при необходимости.

CPACK_IFW_REPOGEN_EXECUTABLE

Путь к командной утилите «repogen».

Эта переменная кэшируется и может быть настроена пользователем при необходимости.

Команды

Модуль определяет следующие команды:

cpack_ifw_configure_component

Устанавливает аргументы, специфичные для генератора CPack IFW.

cpack_ifw_configure_component(<compname> [COMMON] [ESSENTIAL]
                    [NAME <name>]
                    [VERSION <version>]
                    [SCRIPT <script>]
                    [PRIORITY <priority>]
                    [DEPENDS <com_id> ...]
                    [LICENSES <display_name> <file_path> ...]
                    [USER_INTERFACES <file_path> <file_path> ...])

Эта команда должна вызываться после команды cpack_add_component().

COMMON
если установлено, то компонент будет упакован и установлен как часть группы, к которой он принадлежит.
ESSENTIAL
если установлено, то менеджер пакетов остаётся отключённым, пока этот компонент не будет обновлён.
NAME
используется для создания идентификации типа домена для этого компонента. По умолчанию используется имя исходного компонента.
VERSION
это версия компонента. По умолчанию используется CPACK_PACKAGE_VERSION.
SCRIPT
это относительный или абсолютный путь к скрипту операций для этого компонента.
PRIORITY
это приоритет компонента в дереве.
DEPENDS
список идентификаторов зависимых компонентов в стиле QtIFW.
LICENSES
пара <display_name> и <file_path> текста лицензии для этого компонента. Можно указать несколько лицензий.
USER_INTERFACES
список <file_path>, представляющих страницы для загрузки
cpack_ifw_configure_component_group

Устанавливает аргументы, специфичные для генератора CPack IFW.

cpack_ifw_configure_component_group(<groupname>
                    [NAME <name>]
                    [VERSION <version>]
                    [SCRIPT <script>]
                    [PRIORITY <priority>]
                    [LICENSES <display_name> <file_path> ...]
                    [USER_INTERFACES <file_path> <file_path> ...])

Эта команда должна вызываться после команды cpack_add_component_group().

NAME
используется для создания идентификатора доменного типа для этой группы компонентов. По умолчанию используется имя исходной группы компонентов.
VERSION
это версия группы компонентов. По умолчанию используется CPACK_PACKAGE_VERSION.
SCRIPT
это относительный или абсолютный путь к скрипту операций для этой группы компонентов.
PRIORITY
это приоритет группы компонентов в дереве.
LICENSES
пара <display_name> и <file_path> текста лицензии для этой группы компонентов. Можно указать несколько лицензий.
USER_INTERFACES
список <file_path>, представляющих страницы для загрузки
END_OF_DOCUMENT_MARKER
cpack_ifw_add_repository

Добавить специфичный для QtIFW удалённый репозиторий в установочный бинарник.

cpack_ifw_add_repository(<reponame> [DISABLED]
                    URL <url>
                    [USERNAME <username>]
                    [PASSWORD <password>]
                    [DISPLAY_NAME <display_name>])

Эта команда также добавит репозиторий <reponame> в переменную CPACK_IFW_REPOSITORIES_ALL.

DISABLED
если установлено, то репозиторий будет по умолчанию отключён.
URL
указывает на список доступных компонентов.
USERNAME
используется как пользователь в защищённом репозитории.
PASSWORD
является паролем для использования в защищённом репозитории.
DISPLAY_NAME
является строкой, отображаемой вместо URL.
cpack_ifw_update_repository

Обновить специфичный для QtIFW репозиторий из удалённого репозитория.

cpack_ifw_update_repository(<reponame>
                    [[ADD|REMOVE] URL <url>]|
                     [REPLACE OLD_URL <old_url> NEW_URL <new_url>]]
                    [USERNAME <username>]
                    [PASSWORD <password>]
                    [DISPLAY_NAME <display_name>])

Эта команда также добавит репозиторий <reponame> в переменную CPACK_IFW_REPOSITORIES_ALL.

URL
указывает на список доступных компонентов.
OLD_URL
указывает на список, который будет заменён.
NEW_URL
указывает на список, который будет заменён на.
USERNAME
используется как пользователь в защищённом репозитории.
PASSWORD
является паролем для использования в защищённом репозитории.
DISPLAY_NAME
является строкой, отображаемой вместо URL.
cpack_ifw_add_package_resources

Добавить дополнительные ресурсы в установочный бинарник.

cpack_ifw_add_package_resources(<file_path> <file_path> ...)

Эта команда также добавит указанные файлы в переменную CPACK_IFW_PACKAGE_RESOURCES.

Пример использования

set(CPACK_PACKAGE_NAME "MyPackage")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "MyPackage Installation Example")
set(CPACK_PACKAGE_VERSION "1.0.0") # Version of installer

include(CPack)
include(CPackIFW)

cpack_add_component(myapp
    DISPLAY_NAME "MyApp"
    DESCRIPTION "My Application")
cpack_ifw_configure_component(myapp
    VERSION "1.2.3" # Version of component
    SCRIPT "operations.qs")
cpack_add_component(mybigplugin
    DISPLAY_NAME "MyBigPlugin"
    DESCRIPTION "My Big Downloadable Plugin"
    DOWNLOADED)
cpack_ifw_add_repository(myrepo
    URL "http://example.com/ifw/repo/myapp"
    DISPLAY_NAME "My Application Repository")

Онлайн-установщик

По умолчанию генератор CPack IFW создаёт автономный установщик. Это означает, что все компоненты будут упакованы в один бинарный файл.

Чтобы скачать компонент, необходимо установить параметр DOWNLOADED в cpack_add_component().

Затем вы можете использовать команду cpack_configure_downloads(). Если вы установите параметр ALL , все компоненты будут скачаны.

Вы также можете использовать команду cpack_ifw_add_repository() и переменную CPACK_IFW_DOWNLOAD_ALL для более детальной настройки.

Генератор CPack IFW создаёт директорию «repository» в текущей директории бинарников. Вы можете скопировать содержимое этой директории в указанный site (url).

См. также

Руководство по Qt Installer Framework:

  • Страница индекса: http://doc.qt.io/qtinstallerframework/index.html
  • Написание скриптов компонентов: http://doc.qt.io/qtinstallerframework/scripting.html
  • Предопределённые переменные: http://doc.qt.io/qtinstallerframework/scripting.html#predefined-variables
  • Продвижение обновлений: http://doc.qt.io/qtinstallerframework/ifw-updates.html
Загрузите Qt Installer Framework для вашей платформы с сайта Qt:
http://download.qt.io/official_releases/qt-installer-framework

© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.7/module/CPackIFW.html

Spec-Zone.ru

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