CPack DragNDrop 生成器

DragNDrop CPack 生成器 (macOS) 将创建一个 DMG 映像。

CPack DragNDrop 生成器的特定变量

下列变量是特定于 macOS 上构建的 DragNDrop 安装程序的。

CPACK_DMG_VOLUME_NAME

已生成磁盘映像的卷名。

默认:

CPACK_PACKAGE_FILE_NAME

CPACK_DMG_FORMAT

磁盘映像格式。

默认:

UDZO

常用值为 UDRO(UDIF 只读)、UDZO(UDIF zlib 压缩)或 UDBZ(UDIF bzip2 压缩)。有关其他可用格式的更多信息,请参阅 hdiutil(1)

CPACK_DMG_DS_STORE

自定义 .DS_Store 文件的路径。此 .DS_Store 文件可用于指定 Finder 窗口位置/几何和布局(例如隐藏的工具栏、图标的位置等)。此文件必须使用 Finder 从从中可以提取 .DS_Store 文件的普通文件夹中生成(手动或通过 AppleScript)。

CPACK_DMG_DS_STORE_SETUP_SCRIPT

在版本 3.5 中添加。

自定义 AppleScript 文件的路径。此 AppleScript 用于生成 .DS_Store 文件,该文件指定 Finder 窗口位置/几何和布局(例如隐藏的工具栏、图标的位置等)。通过指定自定义 AppleScript,无需使用 CPACK_DMG_DS_STORE,因为将打包由 AppleScript 生成的 .DS_Store

CPACK_DMG_BACKGROUND_IMAGE
默认:

要在应用中作为背景使用的图像文件路径。该文件将被复制到.background/background.<ext>,其中<ext>是原始图像文件扩展名。在执行CPACK_DMG_DS_STORE_SETUP_SCRIPT或安装CPACK_DMG_DS_STORE之前,会将背景图片安装到图片中。默认情况下,未设置背景图片。

3.6 版中添加。

默认行为是将指向/Applications的符号链接包含在 DMG 中。将此选项设置为ON以避免添加符号链接。

CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE

3.23 版中添加。

默认:

OFF

控制 CPACK_RESOURCE_FILE_LICENSE(如果设置为非默认值)是否用作安装 DMG 时提供的许可协议。如果未设置CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE,则 cpack(1) 的默认值为关闭。

在使用 CPack 模块生成CPackConfig.cmake 的 CMake 项目中,项目必须显式启用CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE 以激活 SLA。请参阅策略 CMP0133

注意

添加此选项是为了响应 macOS 12.0 弃用hdiutil udifrez命令,使其使用成为可选。CPack 3.22 及以下版本始终使用 CPACK_RESOURCE_FILE_LICENSE(如果设置为非默认值)作为 DMG 许可证。

CPACK_DMG_SLA_DIR

在版本 3.5 中添加。

存储了不同语言的许可和菜单文件的目录。设置此设置项后,CPack 会查找每种语言中定义的 <language>.menu.txt<language>.license.txt<language>.license.rtf 文件。CPACK_DMG_SLA_LANGUAGES。如果同时设置了此变量和 CPACK_RESOURCE_FILE_LICENSE,CPack 将仅搜索菜单文件,并对所有语言使用相同的许可文件。如果 <language>.license.txt<language>.license.rtf 同时存在,则会使用 .txt 文件。

版本 3.17 中添加: RTF 支持。

CPACK_DMG_SLA_LANGUAGES

在版本 3.5 中添加。

在挂载生成的 DMG 时提供许可协议的语言。菜单文件包含 9 行文本。第一行是语言本身的名称,大写,用英语(例如,德语)。其他行是以下字符串的翻译

  • 同意

  • 不同意

  • 打印

  • 保存...

  • 当您单击“同意”按钮时,即表示您同意许可协议的条款。

  • 软件许可协议

  • 无法保存此文本。磁盘可能已满或已锁定,或者文件可能已锁定。

  • 无法打印。请确保已选择打印机。

对于此列表中的每种语言,CPack 将尝试在由 CPACK_DMG_SLA_DIR 变量指定的目录中查找文件 <language>.menu.txt<language>.license.txt

CPACK_DMG_<component>_FILE_NAME

在版本 3.17 中添加。

在将 <component> 打包成其自己的 DMG 时使用的文件名(CPACK_COMPONENTS_GROUPING 设置为 IGNORE)。

默认:

CPACK_PACKAGE_FILE_NAME-<component>

CPACK_DMG_FILESYSTEM

在版本 3.21 中添加。

默认:

HFS+

文件系统格式。常见的值是 APFSHFS+。有关支持格式的完整列表,请参阅 man hdiutil

CPACK_COMMAND_HDIUTIL

用于在 macOS 上对磁盘镜像文件进行操作的 hdiutil(1) 命令的路径。此变量可用于覆盖自动检测的命令(或在自动检测无法找到命令时指定其位置)。

CPACK_COMMAND_SETFILE

用于在 macOS 上设置文件和目录的扩展属性的 SetFile(1) 命令的路径。此变量可用于覆盖自动检测的命令(或在自动检测无法找到命令时指定其位置)。

CPACK_COMMAND_REZ

用于在 macOS 上编译资源的 Rez(1) 命令的路径。此变量可用于覆盖自动检测的命令(或在自动检测无法找到命令时指定其位置)。