CPack 拖放產生器

CPack 拖放產生器 (macOS) 會建立 DMG 映像檔。

CPack 拖放產生器專用的變數

以下變數是 macOS 上建立的拖放安裝程式專用的

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 (手動或透過 AppleScript) 使用一般資料夾產生,然後才能從中提取 .DS_Store 檔案。

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 中新增。

預設行為是在 DMG 中包含指向 /Applications 的符號連結。將此選項設定為 ON 以避免新增符號連結。

CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE

在版本 3.23 中新增。

預設值:

關閉

控制 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 為 CPACK_DMG_SLA_LANGUAGES 中定義的每種語言尋找 <language>.menu.txt<language>.license.txt<language>.license.rtf 檔案。如果同時設定此變數和 CPACK_RESOURCE_FILE_LICENSE,CPack 將只會尋找功能表檔案,並對所有語言使用相同的授權檔案。如果同時存在 <language>.license.txt<language>.license.rtf,則將會使用 .txt 檔案。

在版本 3.17 中新增: RTF 支援。

CPACK_DMG_SLA_LANGUAGES

在版本 3.5 中新增。

掛載產生的 DMG 時提供授權合約的語言。功能表檔案由 9 行文字組成。第一行是以英文 (例如 German) 表示的語言本身,為大寫。其他行是以下字串的翻譯

  • 同意

  • 不同意

  • 列印

  • 儲存...

  • 當您按一下「同意」按鈕時,即表示您同意授權合約的條款。

  • 軟體授權合約

  • 無法儲存此文字。磁碟可能已滿或鎖定,或者檔案可能已鎖定。

  • 無法列印。請確定您已選取印表機。

對於此清單中的每種語言,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) 命令的路徑。此變數可用於覆寫自動偵測到的命令 (或指定其位置,如果自動偵測無法找到該命令)。