summaryrefslogtreecommitdiffstats
path: root/Help
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2022-05-03 15:23:48 (GMT)
committerKitware Robot <kwrobot@kitware.com>2022-05-03 15:24:11 (GMT)
commite253e57fe3d789feb4f8124009f46c20c6a3177c (patch)
tree3a6b9ca949c73dc553a91410097f196d266aad5e /Help
parent891266cacc0f48d8fcc1813ddeaeb14d7dd43e48 (diff)
parentd099136addaf5e9672e892ad2cb1c43809f7174b (diff)
downloadCMake-e253e57fe3d789feb4f8124009f46c20c6a3177c.zip
CMake-e253e57fe3d789feb4f8124009f46c20c6a3177c.tar.gz
CMake-e253e57fe3d789feb4f8124009f46c20c6a3177c.tar.bz2
Merge topic 'restore-CPACK_PACKAGEMAKER_CHOICES'
d099136add productbuild: Restore CPACK_PACKAGEMAKER_CHOICES variable Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7220
Diffstat (limited to 'Help')
-rw-r--r--Help/cpack_gen/productbuild.rst44
-rw-r--r--Help/release/3.23.rst27
2 files changed, 71 insertions, 0 deletions
diff --git a/Help/cpack_gen/productbuild.rst b/Help/cpack_gen/productbuild.rst
index 26e0782..48a9b44 100644
--- a/Help/cpack_gen/productbuild.rst
+++ b/Help/cpack_gen/productbuild.rst
@@ -203,3 +203,47 @@ installer.
Does the same as :variable:`CPACK_PRODUCTBUILD_BACKGROUND_UTI` option,
but for the dark theme.
+
+Distribution XML Template
+^^^^^^^^^^^^^^^^^^^^^^^^^
+
+CPack uses a template file to generate the ``distribution.dist`` file used
+internally by this package generator. Ordinarily, CMake provides the template
+file, but projects may supply their own by placing a file called
+``CPack.distribution.dist.in`` in one of the directories listed in the
+:variable:`CMAKE_MODULE_PATH` variable. CPack will then pick up the project's
+template file instead of using its own.
+
+The ``distribution.dist`` file is generated by performing substitutions
+similar to the :command:`configure_file` command. Any variable set when
+CPack runs will be available for substitution using the usual ``@...@``
+form. The following variables are also set internally and made available for
+substitution:
+
+``CPACK_RESOURCE_FILE_LICENSE_NOPATH``
+ Same as :variable:`CPACK_RESOURCE_FILE_LICENSE` except without the path.
+ The named file will be available in the same directory as the generated
+ ``distribution.dist`` file.
+
+``CPACK_RESOURCE_FILE_README_NOPATH``
+ Same as :variable:`CPACK_RESOURCE_FILE_README` except without the path.
+ The named file will be available in the same directory as the generated
+ ``distribution.dist`` file.
+
+``CPACK_RESOURCE_FILE_WELCOME_NOPATH``
+ Same as :variable:`CPACK_RESOURCE_FILE_WELCOME` except without the path.
+ The named file will be available in the same directory as the generated
+ ``distribution.dist`` file.
+
+``CPACK_APPLE_PKG_INSTALLER_CONTENT``
+ .. versionadded:: 3.23
+
+ This contains all the XML elements that specify installer-wide options
+ (including domain details), default backgrounds and the choices outline.
+
+``CPACK_PACKAGEMAKER_CHOICES``
+ .. deprecated:: 3.23
+
+ This contains only the XML elements that specify the default backgrounds
+ and the choices outline. It does not include the installer-wide options or
+ any domain details. Use ``CPACK_APPLE_PKG_INSTALLER_CONTENT`` instead.
diff --git a/Help/release/3.23.rst b/Help/release/3.23.rst
index 2febbec..47c4243 100644
--- a/Help/release/3.23.rst
+++ b/Help/release/3.23.rst
@@ -185,6 +185,13 @@ CPack
:variable:`CPACK_PRODUCTBUILD_IDENTIFIER`, used to customize the unique
product identifier associated with the product.
+* The ``CPack.distribution.dist.in`` template used by the
+ :cpack_gen:`CPack productbuild Generator` and
+ :cpack_gen:`CPack PackageMaker Generator` was updated to use a new
+ ``CPACK_APPLE_PKG_INSTALLER_CONTENT`` variable for its main content.
+ This replaced the previously undocumented and now deprecated
+ ``CPACK_PACKAGEMAKER_CHOICES`` variable.
+
* The :cpack_gen:`CPack IFW Generator` gained the new
:variable:`CPACK_IFW_ARCHIVE_FORMAT` and
:variable:`CPACK_IFW_ARCHIVE_COMPRESSION` variables for setting the
@@ -230,6 +237,15 @@ Deprecated and Removed Features
* The :manual:`cpack(1)` undocumented ``OSXX11`` generator has been removed.
+* The previously undocumented ``CPACK_PACKAGEMAKER_CHOICES`` variable used in
+ the ``CPack.distribution.dist.in`` template has been replaced by a new
+ ``CPACK_APPLE_PKG_INSTALLER_CONTENT`` variable. This only affects projects
+ that were providing their own custom ``CPack.distribution.dist.in`` template
+ file, but still relied on ``CPACK_PACKAGEMAKER_CHOICES`` being set. Those
+ custom template files should be updated to use
+ ``CPACK_APPLE_PKG_INSTALLER_CONTENT`` instead, or to fully define all the
+ template file's contents without relying on substitution of either variable.
+
Other Changes
=============
@@ -282,3 +298,14 @@ Changes made since CMake 3.23.0 include the following.
* The :prop_tgt:`HEADER_SETS` and :prop_tgt:`INTERFACE_HEADER_SETS` target
properties added in CMake 3.23.0 are now read-only records of the header
sets created by the :command:`target_sources` command.
+
+3.23.2
+------
+
+* The ``CPACK_PACKAGEMAKER_CHOICES`` variable used in the
+ ``CPack.distribution.dist.in`` template file was replaced by a new
+ ``CPACK_APPLE_PKG_INSTALLER_CONTENT`` variable in CMake 3.23.0.
+ This broke projects that provided their own template file but still
+ expected the ``CPACK_PACKAGEMAKER_CHOICES`` variable to be defined.
+ The old ``CPACK_PACKAGEMAKER_CHOICES`` variable is now also set to the
+ same content as it was before, but it is formally deprecated.