Spec-Zone.ru › CMake 3.7

CPackComponent

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

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

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

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

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

CPACK_COMPONENTS_ALL

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

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

CPACK_<GENNAME>_COMPONENT_INSTALL

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

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

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>_HIDDEN

Истина, если этот компонент скрыт от пользователя.

CPACK_COMPONENT_<compName>_REQUIRED

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

CPACK_COMPONENT_<compName>_DISABLED

Истина, если этот компонент по умолчанию не выбран для установки.

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.

END_OF_DOCUMENT_MARKER

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

Spec-Zone.ru

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