CPack DragNDrop Generator ------------------------- The DragNDrop CPack generator (macOS) creates a DMG image. Variables specific to CPack DragNDrop generator ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The following variables are specific to the DragNDrop installers built on macOS: .. variable:: CPACK_DMG_VOLUME_NAME The volume name of the generated disk image. Defaults to CPACK_PACKAGE_FILE_NAME. .. variable:: CPACK_DMG_FORMAT The disk image format. Common values are ``UDRO`` (UDIF read-only), ``UDZO`` (UDIF zlib-compressed) or ``UDBZ`` (UDIF bzip2-compressed). Refer to ``hdiutil(1)`` for more information on other available formats. Defaults to ``UDZO``. .. variable:: CPACK_DMG_DS_STORE Path to a custom ``.DS_Store`` file. This ``.DS_Store`` file can be used to specify the Finder window position/geometry and layout (such as hidden toolbars, placement of the icons etc.). This file has to be generated by the Finder (either manually or through AppleScript) using a normal folder from which the ``.DS_Store`` file can then be extracted. .. variable:: CPACK_DMG_DS_STORE_SETUP_SCRIPT .. versionadded:: 3.5 Path to a custom AppleScript file. This AppleScript is used to generate a ``.DS_Store`` file which specifies the Finder window position/geometry and layout (such as hidden toolbars, placement of the icons etc.). By specifying a custom AppleScript there is no need to use ``CPACK_DMG_DS_STORE``, as the ``.DS_Store`` that is generated by the AppleScript will be packaged. .. variable:: CPACK_DMG_BACKGROUND_IMAGE Path to an image file to be used as the background. This file will be copied to ``.background``/``background.``, where ```` is the original image file extension. The background image is installed into the image before ``CPACK_DMG_DS_STORE_SETUP_SCRIPT`` is executed or ``CPACK_DMG_DS_STORE`` is installed. By default no background image is set. .. variable:: CPACK_DMG_DISABLE_APPLICATIONS_SYMLINK .. versionadded:: 3.6 Default behavior is to include a symlink to ``/Applications`` in the DMG. Set this option to ``ON`` to avoid adding the symlink. .. variable:: CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE .. versionadded:: 3.23 Control whether :variable:`CPACK_RESOURCE_FILE_LICENSE`, if set to a non-default value, is used as the license agreement provided when mounting the DMG. If ``CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE`` is not set, :manual:`cpack(1)` defaults to off. In a CMake project that uses the :module:`CPack` module to generate ``CPackConfig.cmake``, ``CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE`` must be explicitly enabled by the project to activate the SLA. See policy :policy:`CMP0133`. .. note:: This option was added in response to macOS 12.0's deprecation of the ``hdiutil udifrez`` command to make its use optional. CPack 3.22 and below always use :variable:`CPACK_RESOURCE_FILE_LICENSE`, if set to a non-default value, as the DMG license. .. variable:: CPACK_DMG_SLA_DIR .. versionadded:: 3.5 Directory where license and menu files for different languages are stored. Setting this causes CPack to look for a ``.menu.txt`` and ``.license.txt`` or ``.license.rtf`` file for every language defined in ``CPACK_DMG_SLA_LANGUAGES``. If both this variable and ``CPACK_RESOURCE_FILE_LICENSE`` are set, CPack will only look for the menu files and use the same license file for all languages. If both ``.license.txt`` and ``.license.rtf`` exist, the ``.txt`` file will be used. .. versionadded:: 3.17 RTF support. .. variable:: CPACK_DMG_SLA_LANGUAGES .. versionadded:: 3.5 Languages for which a license agreement is provided when mounting the generated DMG. A menu file consists of 9 lines of text. The first line is is the name of the language itself, uppercase, in English (e.g. German). The other lines are translations of the following strings: - Agree - Disagree - Print - Save... - You agree to the terms of the License Agreement when you click the "Agree" button. - Software License Agreement - This text cannot be saved. The disk may be full or locked, or the file may be locked. - Unable to print. Make sure you have selected a printer. For every language in this list, CPack will try to find files ``.menu.txt`` and ``.license.txt`` in the directory specified by the :variable:`CPACK_DMG_SLA_DIR` variable. .. variable:: CPACK_DMG__FILE_NAME .. versionadded:: 3.17 File name when packaging ```` as its own DMG (``CPACK_COMPONENTS_GROUPING`` set to IGNORE). - Default: ``CPACK_PACKAGE_FILE_NAME-`` .. variable:: CPACK_DMG_FILESYSTEM .. versionadded:: 3.21 The filesystem format. Common values are ``APFS`` and ``HFS+``. See ``man hdiutil`` for a full list of supported formats. Defaults to ``HFS+``. .. variable:: CPACK_COMMAND_HDIUTIL Path to the ``hdiutil(1)`` command used to operate on disk image files on macOS. This variable can be used to override the automatically detected command (or specify its location if the auto-detection fails to find it). .. variable:: CPACK_COMMAND_SETFILE Path to the ``SetFile(1)`` command used to set extended attributes on files and directories on macOS. This variable can be used to override the automatically detected command (or specify its location if the auto-detection fails to find it). .. variable:: CPACK_COMMAND_REZ Path to the ``Rez(1)`` command used to compile resources on macOS. This variable can be used to override the automatically detected command (or specify its location if the auto-detection fails to find it).