Spec-Zone.ru › CMake 3.5

CPackComponent

Создание установочных файлов бинарных и исходных пакетов

Переменные, относящиеся к компонентам CPack

Модуль CPackComponent обрабатывает компонентную часть CPack. Для общей информации о CPack см. модуль CPack.

Для определённых типов установочных файлов (включая графические установщики на Mac OS X и Windows), CPack генерирует установщики, которые позволяют пользователю выбирать отдельные компоненты приложения для установки. Содержимое каждого компонента определяется аргументом COMPONENT команды INSTALL CMake. Эти компоненты могут быть снабжены удобочитаемыми именами и описаниями, зависимостями между компонентами и т.д., а также сгруппированы различными способами для настройки результирующего установщика. Дополнительную информацию об установке, специфичной для компонентов, см. в командах cpack_add_*, описанных ниже.

Установка, специфичная для компонентов, позволяет пользователю выбирать определённые наборы компонентов для установки во время процесса установки. Компоненты установки определяются аргументом COMPONENT команд CMake INSTALL и должны быть дополнительно описаны следующими командами CPack:

CPACK_COMPONENTS_ALL

Список компонентов для установки.

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

CPACK_<GENNAME>_COMPONENT_INSTALL

Включить/выключить установку компонента для генератора CPack <GENNAME>.

Каждый генератор CPack (RPM, DEB, ARCHIVE, NSIS, DMG и т.д.) имеет устаревшее поведение по умолчанию. Например, RPM создаёт монолитные файлы, в то время как NSIS создаёт компоненты. Можно изменить поведение по умолчанию, установив эту переменную в 0/1 или ВЫКЛ./ВКЛ.

CPACK_COMPONENTS_GROUPING

Указывает, как компоненты группируются для многопакетных генераторов CPack, осознающих компоненты.

Некоторые генераторы, такие как RPM или ARCHIVE (TGZ, ZIP, ...), генерируют несколько файлов пакетов, когда запрошена компонентная упаковка. Они группируют компоненты по-разному в зависимости от значения этой переменной:

  • ONE_PER_GROUP (по умолчанию): создаёт один файл пакета на группу компонентов
  • ALL_COMPONENTS_IN_ONE: создаёт один пакет со всеми (запрошенными) компонентами
  • IGNORE: создаёт один пакет на компонент, т.е. игнорирует группировку компонентов

Можно указать различную группировку для разных генераторов CPack, используя CPACK_PROJECT_CONFIG_FILE.

CPACK_COMPONENT_<compName>_DISPLAY_NAME

Имя компонента для отображения.

CPACK_COMPONENT_<compName>_DESCRIPTION

Описание компонента.

CPACK_COMPONENT_<compName>_GROUP

Группа компонента.

CPACK_COMPONENT_<compName>_DEPENDS

Зависимости (список компонентов), от которых зависит этот компонент.

CPACK_COMPONENT_<compName>_REQUIRED

Истина, если этот компонент необходим.

cpack_add_component

Описание компонента установки CPack, именуемого аргументом COMPONENT команды CMake INSTALL.

cpack_add_component(compname
                    [DISPLAY_NAME name]
                    [DESCRIPTION description]
                    [HIDDEN | REQUIRED | DISABLED ]
                    [GROUP group]
                    [DEPENDS comp1 comp2 ... ]
                    [INSTALL_TYPES type1 type2 ... ]
                    [DOWNLOADED]
                    [ARCHIVE_FILE filename])

Команда cmake_add_component описывает компонент установки, который пользователь может выбрать для установки или удаления в рамках процесса графической установки. compname — это имя компонента, заданное аргументом COMPONENT одной или нескольких команд CMake INSTALL.

DISPLAY_NAME — отображаемое имя компонента, используемое в графических установщиках для отображения имени компонента. Это значение может быть любой строкой.

DESCRIPTION — расширенное описание компонента, используемое в графических установщиках для предоставления пользователю дополнительной информации о компоненте. Описания могут занимать несколько строк, используя \n в качестве разделителя строк. Обычно эти описания должны быть не более нескольких строк.

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

REQUIRED указывает, что этот компонент необходим и, следовательно, всегда будет установлен. Он будет виден в графическом установщике, но его нельзя отключить. (Обычно обязательные компоненты отображаются серым цветом).

DISABLED указывает, что этот компонент должен быть отключён (не выбран) по умолчанию. Пользователь может выбрать этот компонент для установки, если он не скрыт.

DEPENDS перечисляет компоненты, от которых зависит этот компонент. Если выбран этот компонент, то каждый из перечисленных компонентов также должен быть выбран. Информация о зависимостях закодирована в самом установщике, так что пользователи не могут устанавливать несовместимые наборы компонентов.

GROUP указывает имя группы компонентов, к которой принадлежит данный компонент. Если не указано, компонент будет самостоятельным компонентом, не входящим в группу. Группы компонентов описываются командой cpack_add_component_group, описанной ниже.

INSTALL_TYPES перечисляет типы установок, к которым принадлежит этот компонент. Когда один из этих типов установок выбран, этот компонент будет автоматически выбран. Типы установок описываются командой cpack_add_install_type, описанной ниже.

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

ARCHIVE_FILE предоставляет имя файла архива, созданного CPack для использования с загружаемыми компонентами. Если не указано, CPack создаст файл с именем, основанным на CPACK_PACKAGE_FILE_NAME и имени компонента. Дополнительную информацию см. в команде cpack_configure_downloads.

cpack_add_component_group

Описание группы связанных компонентов CPack установки.

cpack_add_component_group(groupname
                         [DISPLAY_NAME name]
                         [DESCRIPTION description]
                         [PARENT_GROUP parent]
                         [EXPANDED]
                         [BOLD_TITLE])

Команда cpack_add_component_group описывает группу компонентов установки, которые будут размещены вместе в списке параметров. Как правило, группы компонентов позволяют пользователю выбирать/снимать выбор со всех компонентов в группе с помощью одного параметра уровня группы. Используйте группы компонентов для уменьшения сложности установщиков с большим количеством параметров. groupname — произвольное имя, используемое для идентификации группы в аргументе GROUP команды cpack_add_component, используемой для размещения компонента в группе. Имя группы не должно совпадать с именем какого-либо компонента.

DISPLAY_NAME — отображаемое имя группы компонентов, используемое в графических установщиках для отображения имени группы компонентов. Это значение может быть любой строкой.

DESCRIPTION — расширенное описание группы компонентов, используемое в графических установщиках для предоставления пользователю дополнительной информации о компонентах в этой группе. Описания могут занимать несколько строк, используя \n в качестве разделителя строк. Обычно эти описания должны быть не более нескольких строк.

PARENT_GROUP, если указано, называет родительскую группу этой группы. Родительские группы используются для создания иерархии групп, предоставляя произвольную иерархию групп.

EXPANDED указывает, что по умолчанию группа должна отображаться «развёрнутой», чтобы пользователь сразу увидел все компоненты в группе. В противном случае группа первоначально будет отображаться как одноэлементная запись.

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

cpack_add_install_type

Добавление нового типа установки, содержащего набор предопределённых выборов компонентов, в графический установщик.

cpack_add_install_type(typename
                       [DISPLAY_NAME name])

Команда cpack_add_install_type идентифицирует набор предопределённых компонентов, представляющих общий случай использования приложения. Например, тип установки «Разработчик» может включать приложение вместе с заголовочными файлами и библиотеками, а тип установки «Конечный пользователь» может включать только исполняемый файл приложения. Каждый компонент определяет себя с помощью одного или нескольких типов установок через аргумент INSTALL_TYPES команды cpack_add_component.

DISPLAY_NAME — отображаемое имя типа установки, которое обычно отображается в раскрывающемся списке в графическом установщике. Это значение может быть любой строкой.

cpack_configure_downloads

Настройка CPack для загрузки выбранных компонентов во время процесса установки.

cpack_configure_downloads(site
                          [UPLOAD_DIRECTORY dirname]
                          [ALL]
                          [ADD_REMOVE|NO_ADD_REMOVE])

Команда cpack_configure_downloads настраивает загрузки компонентов во время установки. Для каждого загружаемого компонента CPack создаст архив, содержащий содержимое этого компонента, который должен быть загружен на указанный сайт. При выборе пользователем этого компонента для установки установщик загрузит и извлечёт компонент на место. Эта функция полезна для создания небольших установщиков, которые загружают только запрошенные компоненты, экономя пропускную способность. Кроме того, установщики достаточно малы, чтобы их можно было установить как часть обычного процесса установки, а кнопка «Изменить» в диалоговом окне «Установка и удаление программ» Windows позволит добавить или удалить части приложения после первоначальной установки. В Windows функциональность загружаемых компонентов требует плагина ZipDLL для NSIS, доступного по адресу:

http://nsis.sourceforge.net/ZipDLL_plug-in

На Mac OS X установщики, загружающие компоненты во время установки, могут быть построены и установлены только на системах с Mac OS X 10.5 или новее.

Аргумент site — это URL, где будут храниться архивы загружаемых компонентов, например, https://cmake.org/files/2.6.1/installer/ Все архивы, созданные CPack, должны быть загружены по этому адресу.

UPLOAD_DIRECTORY — локальный каталог, в котором CPack создаст различные архивы для каждого компонента. Содержимое этого каталога должно быть загружено в место, доступное по URL, указанному в аргументе site. Если не указано, CPack будет использовать каталог CPackUploads в каталоге бинарных файлов CMake для хранения сгенерированных архивов.

Флаг ALL указывает, что все компоненты должны быть загружены. В противном случае загружаются только те компоненты, которые явно помечены как DOWNLOADED или для которых указан ARCHIVE_FILE. Кроме того, опция ALL подразумевает ADD_REMOVE (если не указана NO_ADD_REMOVE).

ADD_REMOVE указывает, что CPack должен установить копию установщика, которая может вызываться из диалогового окна «Установка и удаление программ» Windows (через кнопку «Изменить») для изменения набора установленных компонентов. NO_ADD_REMOVE отключает это поведение. Эта опция игнорируется на Mac OS X.

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

Spec-Zone.ru

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