CPackWIX
CPack WiX генератор специфичные опции
Переменные, специфичные для генератора CPack WiX
Следующие переменные специфичны для установщиков, созданных на Windows с использованием WiX.
-
CPACK_WIX_UPGRADE_GUID -
GUID обновления (
Product/@UpgradeCode)Будет автоматически сгенерирован, если не задан явно.
Он должен быть явно задан как постоянный, глобально уникальный идентификатор (GUID), чтобы позволить вашим установщикам заменять существующие установки, использующие тот же GUID.
Например, вы можете явно задать эту переменную в вашем CMakeLists.txt со значением, сгенерированным по умолчанию. Вы не должны использовать GUID, которые вы не сгенерировали сами или которые могут принадлежать другим проектам.
GUID должен иметь следующий фиксированный синтаксис:
XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
(каждая X представляет собой верхний регистр шестнадцатеричной цифры)
-
CPACK_WIX_PRODUCT_GUID -
GUID продукта (
Product/@Id)Будет автоматически сгенерирован, если не задан явно.
Если задан явно, это установит идентификатор продукта вашего установщика.
Установка прервётся, если будет обнаружена существующая установка, использующая тот же GUID.
GUID должен использовать синтаксис, описанный для CPACK_WIX_UPGRADE_GUID.
-
CPACK_WIX_LICENSE_RTF -
RTF файл лицензии
Если CPACK_RESOURCE_FILE_LICENSE имеет расширение .rtf, он используется как есть.
Если CPACK_RESOURCE_FILE_LICENSE имеет расширение .txt, он неявно преобразуется в RTF генератором WiX. Ожидаемая кодировка файла .txt — UTF-8.
С помощью CPACK_WIX_LICENSE_RTF можно переопределить файл лицензии, используемый генератором WiX, если CPACK_RESOURCE_FILE_LICENSE имеет неподдерживаемый формат или преобразование .txt -> .rtf не работает как ожидалось.
-
CPACK_WIX_PRODUCT_ICON -
Иконка, отображаемая рядом с именем программы в списке программ.
Если задано, эта иконка используется вместо стандартной.
-
CPACK_WIX_UI_REF -
Эта переменная позволяет вам переопределить Id элемента
<UIRef>в шаблоне WiX.Значение по умолчанию —
WixUI_InstallDirв случае, если не определены компоненты CPack, иWixUI_FeatureTreeв противном случае.
-
CPACK_WIX_UI_BANNER -
Растровый образ, отображаемый в верхней части всех страниц установщика, кроме диалогов приветствия и завершения.
Если задано, это изображение заменит стандартное изображение баннера.
Это изображение должно иметь размеры 493 на 58 пикселей.
-
CPACK_WIX_UI_DIALOG -
Растровый образ фона, используемый на диалогах приветствия и завершения.
Если эта переменная задана, установщик заменит стандартное изображение диалога.
Это изображение должно иметь размеры 493 на 312 пикселей.
-
CPACK_WIX_PROGRAM_MENU_FOLDER -
Имя папки меню Пуск для запуска.
Если эта переменная не задана, она инициализируется значением CPACK_PACKAGE_NAME.
-
CPACK_WIX_CULTURES -
Язык(и) установщика
Языки компилируются в библиотеку расширений WixUI. Для их использования достаточно указать имя культуры. Если вы указали несколько идентификаторов культуры в списке, разделённом запятыми или точкой с запятой, будет использоваться первый найденный. Список поддерживаемых языков можно найти по адресу: http://wix.sourceforge.net/manual-wix3/WixUI_localization.htm
-
CPACK_WIX_TEMPLATE -
Шаблон файла для генерации WiX
Если эта переменная задана, указанный шаблон будет использован для генерации файла WiX wxs. Это нужно для дополнительных настроек вывода.
Если эта переменная не задана, будет использован шаблон MSI по умолчанию, включённый в CMake.
-
CPACK_WIX_PATCH_FILE -
Необязательный список XML-файлов с фрагментами, которые будут вставлены в сгенерированные источники WiX
Эта необязательная переменная может быть использована для указания XML-файла, который генератор WiX будет использовать для вставки фрагментов в сгенерированные файлы исходного кода.
Файлы патчей, понимаемые генератором CPack WiX, примерно соответствуют этому компактному схеме RELAX NG:
start = CPackWiXPatch CPackWiXPatch = element CPackWiXPatch { CPackWiXFragment* } CPackWiXFragment = element CPackWiXFragment { attribute Id { string }, fragmentContent* } fragmentContent = element * - CPackWiXFragment { (attribute * { text } | text | fragmentContent)* }В настоящее время фрагменты могут быть вставлены в большинство элементов Component, File, Directory и Feature.
Следующие дополнительные специальные идентификаторы могут быть использованы:
-
#PRODUCTдля элемента<Product>. -
#PRODUCTFEATUREдля корневого элемента<Feature>.
Следующий пример демонстрирует, как это работает.
Предположим, что генератор WiX создаёт следующий XML-элемент:
<Component Id="CM_CP_applications.bin.my_libapp.exe" Guid="*"/>
Следующий XML-файл патча может быть использован для вставки элемента Environment в него:
<CPackWiXPatch> <CPackWiXFragment Id="CM_CP_applications.bin.my_libapp.exe"> <Environment Id="MyEnvironment" Action="set" Name="MyVariableName" Value="MyVariableValue"/> </CPackWiXFragment> </CPackWiXPatch> -
-
CPACK_WIX_EXTRA_SOURCES -
Дополнительные файлы исходного кода WiX
Эта переменная предоставляет необязательный список дополнительных файлов исходного кода WiX (.wxs), которые должны быть скомпилированы и связаны. Требуется полный путь к файлам исходного кода.
-
CPACK_WIX_EXTRA_OBJECTS -
Дополнительные файлы объектов WiX или библиотеки
Эта переменная предоставляет необязательный список дополнительных файлов объектов WiX (.wixobj) и/или библиотек WiX (.wixlib). Требуется полный путь к объектам и библиотекам.
-
CPACK_WIX_EXTENSIONS -
Эта переменная предоставляет список дополнительных расширений для инструментов WiX light и candle.
-
CPACK_WIX_<TOOL>_EXTENSIONS -
Это инструмент-специфичная версия CPACK_WIX_EXTENSIONS.
<TOOL>может быть либо LIGHT, либо CANDLE.
-
CPACK_WIX_<TOOL>_EXTRA_FLAGS -
Эта переменная списка позволяет передавать дополнительные флаги инструменту WiX
<TOOL>.Используйте с осторожностью. Будущие версии CPack могут генерировать флаги, которые могут конфликтовать с вашими собственными флагами.
<TOOL>может быть либо LIGHT, либо CANDLE.
-
CPACK_WIX_CMAKE_PACKAGE_REGISTRY -
Если эта переменная задана, сгенерированный установщик создаст запись в ключе реестра Windows
HKEY_LOCAL_MACHINE\Software\Kitware\CMake\Packages\<package>. Значение для<package>предоставляется этой переменной.Предполагая, что вы также установите файл конфигурации CMake, это позволит другим проектам CMake найти ваш пакет с помощью команды
find_package().
-
CPACK_WIX_PROPERTY_<PROPERTY> -
Эта переменная может быть использована для предоставления значения для свойства установщика Windows
<PROPERTY>Следующий список содержит некоторые примеры свойств, которые могут быть использованы для настройки информации в разделе «Программы и компоненты» (также известном как «Установка или удаление программ»)
- ARPCOMMENTS — Комментарии
- ARPHELPLINK — URL справки и поддержки
- ARPURLINFOABOUT — URL общей информации
- ARPURLUPDATEINFO — URL информации об обновлении
- ARPHELPTELEPHONE — Номер телефона для справки и поддержки
- ARPSIZE — Размер (в килобайтах) приложения
-
CPACK_WIX_ROOT_FEATURE_TITLE
Устанавливает имя корневой функции установки в установщике WiX. То же, что и CPACK_COMPONENT_<компонентноеИмя>_DISPLAY_NAME для компонентов.
-
CPACK_WIX_ROOT_FEATURE_DESCRIPTION
Устанавливает описание корневой функции установки в установщике WiX. То же, что и CPACK_COMPONENT_<компонентноеИмя>_DESCRIPTION для компонентов.
-
CPACK_WIX_SKIP_PROGRAM_FOLDER
Если эта переменная установлена в значение true, стандартное место установки сгенерированного пакета будет CPACK_PACKAGE_INSTALL_DIRECTORY напрямую. Место установки не будет находиться относительно папок ProgramFiles или ProgramFiles64.
Примечание
Установщики, созданные с этой функцией, не учитывают различия между системой, на которой создаётся установщик, и системой, на которой он может быть использован.
Поэтому возможно, что установщик, например, попытается установить на недоступный или нежелательный диск или путь, который не соответствует локализации или соглашениям системы, на которой выполняется установка.
© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.7/module/CPackWIX.html