summaryrefslogtreecommitdiffstats
path: root/Help
diff options
context:
space:
mode:
Diffstat (limited to 'Help')
-rw-r--r--Help/command/cmake_host_system_information.rst2
-rw-r--r--Help/command/get_filename_component.rst10
-rw-r--r--Help/command/if.rst5
-rw-r--r--Help/cpack_gen/packagemaker.rst88
-rw-r--r--Help/cpack_gen/wix.rst9
-rw-r--r--Help/manual/cmake-language.7.rst10
-rw-r--r--Help/manual/cmake-modules.7.rst1
-rw-r--r--Help/manual/cmake-policies.7.rst1
-rw-r--r--Help/manual/cmake.1.rst2
-rw-r--r--Help/module/CPackPackageMaker.rst4
-rw-r--r--Help/policy/CMP0135.rst29
-rw-r--r--Help/release/3.17.rst2
-rw-r--r--Help/release/3.23.rst2
-rw-r--r--Help/release/dev/ExternalProject-no-extract-timestamp.rst8
-rw-r--r--Help/release/dev/cpack-wix-arch.rst6
-rw-r--r--Help/release/dev/remove-PackageMaker-generator.rst5
-rw-r--r--Help/variable/ENV.rst5
17 files changed, 91 insertions, 98 deletions
diff --git a/Help/command/cmake_host_system_information.rst b/Help/command/cmake_host_system_information.rst
index f47615a..c84c5b5 100644
--- a/Help/command/cmake_host_system_information.rst
+++ b/Help/command/cmake_host_system_information.rst
@@ -261,6 +261,8 @@ Example:
.. _man 5 os-release: https://www.freedesktop.org/software/systemd/man/os-release.html
.. _various distribution-specific files: http://linuxmafia.com/faq/Admin/release-files.html
+.. _Query Windows registry:
+
Query Windows registry
^^^^^^^^^^^^^^^^^^^^^^
diff --git a/Help/command/get_filename_component.rst b/Help/command/get_filename_component.rst
index 4bdd388..4bfe087 100644
--- a/Help/command/get_filename_component.rst
+++ b/Help/command/get_filename_component.rst
@@ -4,10 +4,16 @@ get_filename_component
Get a specific component of a full filename.
.. versionchanged:: 3.20
- This command been superseded by :command:`cmake_path` command, except
- ``REALPATH`` now offered by :ref:`file(REAL_PATH) <REAL_PATH>` command and
+ This command has been superseded by :command:`cmake_path` command, except
+ ``REALPATH`` now offered by :ref:`file(REAL_PATH)<REAL_PATH>` command and
``PROGRAM`` now available in :command:`separate_arguments(PROGRAM)` command.
+.. versionchanged:: 3.24
+ The undocumented feature offering the capability to query the ``Windows``
+ registry is superseded by
+ :ref:`cmake_host_system_information(QUERY WINDOWS_REGISTRY)<Query Windows registry>`
+ command.
+
.. code-block:: cmake
get_filename_component(<var> <FileName> <mode> [CACHE])
diff --git a/Help/command/if.rst b/Help/command/if.rst
index 4f955db..64f1c35 100644
--- a/Help/command/if.rst
+++ b/Help/command/if.rst
@@ -71,8 +71,9 @@ Basic Expressions
True if given a variable that is defined to a value that is not a false
constant. False otherwise, including if the variable is undefined.
Note that macro arguments are not variables.
- Environment variables also cannot be tested this way, e.g.
- ``if(ENV{some_var})`` will always evaluate to false.
+ :ref:`Environment Variables <CMake Language Environment Variables>` also
+ cannot be tested this way, e.g. ``if(ENV{some_var})`` will always evaluate
+ to false.
``if(<string>)``
A quoted string always evaluates to false unless:
diff --git a/Help/cpack_gen/packagemaker.rst b/Help/cpack_gen/packagemaker.rst
index 256446d..6614f31 100644
--- a/Help/cpack_gen/packagemaker.rst
+++ b/Help/cpack_gen/packagemaker.rst
@@ -1,87 +1,7 @@
CPack PackageMaker Generator
----------------------------
-PackageMaker CPack generator (macOS).
-
-.. deprecated:: 3.17
-
- Xcode no longer distributes the PackageMaker tools.
- This CPack generator will be removed in a future version of CPack.
-
-Variables specific to CPack PackageMaker generator
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-The following variable is specific to installers built on Mac
-macOS using PackageMaker:
-
-.. variable:: CPACK_OSX_PACKAGE_VERSION
-
- The version of macOS that the resulting PackageMaker archive should be
- compatible with. Different versions of macOS support different
- features. For example, CPack can only build component-based installers for
- macOS 10.4 or newer, and can only build installers that download
- components on-the-fly for macOS 10.5 or newer. If left blank, this value
- will be set to the minimum version of macOS that supports the requested
- features. Set this variable to some value (e.g., 10.4) only if you want to
- guarantee that your installer will work on that version of macOS, and
- don't mind missing extra features available in the installer shipping with
- later versions of macOS.
-
-Background Image
-""""""""""""""""
-
-.. versionadded:: 3.17
-
-This group of variables controls the background image of the generated
-installer.
-
-.. variable:: CPACK_PACKAGEMAKER_BACKGROUND
-
- Adds a background to Distribution XML if specified. The value contains the
- path to image in ``Resources`` directory.
-
-.. variable:: CPACK_PACKAGEMAKER_BACKGROUND_ALIGNMENT
-
- Adds an ``alignment`` attribute to the background in Distribution XML.
- Refer to Apple documentation for valid values.
-
-.. variable:: CPACK_PACKAGEMAKER_BACKGROUND_SCALING
-
- Adds a ``scaling`` attribute to the background in Distribution XML.
- Refer to Apple documentation for valid values.
-
-.. variable:: CPACK_PACKAGEMAKER_BACKGROUND_MIME_TYPE
-
- Adds a ``mime-type`` attribute to the background in Distribution XML.
- The option contains MIME type of an image.
-
-.. variable:: CPACK_PACKAGEMAKER_BACKGROUND_UTI
-
- Adds an ``uti`` attribute to the background in Distribution XML.
- The option contains UTI type of an image.
-
-.. variable:: CPACK_PACKAGEMAKER_BACKGROUND_DARKAQUA
-
- Adds a background for the Dark Aqua theme to Distribution XML if
- specified. The value contains the path to image in ``Resources``
- directory.
-
-.. variable:: CPACK_PACKAGEMAKER_BACKGROUND_DARKAQUA_ALIGNMENT
-
- Does the same as :variable:`CPACK_PACKAGEMAKER_BACKGROUND_ALIGNMENT` option,
- but for the dark theme.
-
-.. variable:: CPACK_PACKAGEMAKER_BACKGROUND_DARKAQUA_SCALING
-
- Does the same as :variable:`CPACK_PACKAGEMAKER_BACKGROUND_SCALING` option,
- but for the dark theme.
-
-.. variable:: CPACK_PACKAGEMAKER_BACKGROUND_DARKAQUA_MIME_TYPE
-
- Does the same as :variable:`CPACK_PACKAGEMAKER_BACKGROUND_MIME_TYPE` option,
- but for the dark theme.
-
-.. variable:: CPACK_PACKAGEMAKER_BACKGROUND_DARKAQUA_UTI
-
- Does the same as :variable:`CPACK_PACKAGEMAKER_BACKGROUND_UTI` option,
- but for the dark theme.
+Removed. This once generated PackageMaker installers, but the
+generator has been removed since CMake 3.24. Xcode no longer distributes
+the PackageMaker tools. Use the :cpack_gen:`CPack productbuild Generator`
+instead.
diff --git a/Help/cpack_gen/wix.rst b/Help/cpack_gen/wix.rst
index e9d5af6..a3d43fc 100644
--- a/Help/cpack_gen/wix.rst
+++ b/Help/cpack_gen/wix.rst
@@ -328,3 +328,12 @@ Windows using WiX.
If this variable is set then the inclusion of WixUIExtensions is skipped,
i.e. the ``-ext "WixUIExtension"`` command line is not included during
the execution of the WiX light tool.
+
+.. variable:: CPACK_WIX_ARCHITECTURE
+
+ .. versionadded:: 3.24
+
+ This variable can be optionally set to specify the target architecture
+ of the installer. May for example be set to ``x64`` or ``arm64``.
+
+ When unspecified, CPack will default to ``x64`` or ``x86``.
diff --git a/Help/manual/cmake-language.7.rst b/Help/manual/cmake-language.7.rst
index e7d2694..02cfa7e 100644
--- a/Help/manual/cmake-language.7.rst
+++ b/Help/manual/cmake-language.7.rst
@@ -582,7 +582,8 @@ Scope
They are never cached.
References
- `Variable References`_ have the form ``$ENV{<variable>}``.
+ `Variable References`_ have the form ``$ENV{<variable>}``, using the
+ :variable:`ENV` operator.
Initialization
Initial values of the CMake environment variables are those of
@@ -594,6 +595,13 @@ Initialization
Changed values are not written back to the calling process,
and they are not seen by subsequent build or test processes.
+ See the :ref:`cmake -E env <Run a Command-Line Tool>` command-line
+ tool to run a command in a modified environment.
+
+Inspection
+ See the :ref:`cmake -E environment <Run a Command-Line Tool>` command-line
+ tool to display all current environment variables.
+
The :manual:`cmake-env-variables(7)` manual documents environment
variables that have special meaning to CMake.
diff --git a/Help/manual/cmake-modules.7.rst b/Help/manual/cmake-modules.7.rst
index 141eeaa..93beea9 100644
--- a/Help/manual/cmake-modules.7.rst
+++ b/Help/manual/cmake-modules.7.rst
@@ -317,7 +317,6 @@ used directly.
/module/CPackFreeBSD
/module/CPackNSIS
/module/CPackNuGet
- /module/CPackPackageMaker
/module/CPackProductBuild
/module/CPackRPM
/module/CPackWIX
diff --git a/Help/manual/cmake-policies.7.rst b/Help/manual/cmake-policies.7.rst
index d1fafb5..b3091fa 100644
--- a/Help/manual/cmake-policies.7.rst
+++ b/Help/manual/cmake-policies.7.rst
@@ -58,6 +58,7 @@ Policies Introduced by CMake 3.24
.. toctree::
:maxdepth: 1
+ CMP0135: ExternalProject ignores timestamps in archives by default for the URL download method. </policy/CMP0135>
CMP0134: Fallback to \"HOST\" Windows registry view when \"TARGET\" view is not usable. </policy/CMP0134>
CMP0133: The CPack module disables SLA by default in the CPack DragNDrop Generator. </policy/CMP0133>
CMP0132: Do not set compiler environment variables on first run. </policy/CMP0132>
diff --git a/Help/manual/cmake.1.rst b/Help/manual/cmake.1.rst
index 5ac21c8..e0cb708 100644
--- a/Help/manual/cmake.1.rst
+++ b/Help/manual/cmake.1.rst
@@ -619,6 +619,8 @@ in the set of :variable:`CMAKE_ARGV<n> <CMAKE_ARGV0>` variables passed to the
script (including the ``--`` itself).
+.. _`Run a Command-Line Tool`:
+
Run a Command-Line Tool
=======================
diff --git a/Help/module/CPackPackageMaker.rst b/Help/module/CPackPackageMaker.rst
deleted file mode 100644
index 226b6fd..0000000
--- a/Help/module/CPackPackageMaker.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-CPackPackageMaker
------------------
-
-The documentation for the CPack PackageMaker generator has moved here: :cpack_gen:`CPack PackageMaker Generator`
diff --git a/Help/policy/CMP0135.rst b/Help/policy/CMP0135.rst
new file mode 100644
index 0000000..1c0c134
--- /dev/null
+++ b/Help/policy/CMP0135.rst
@@ -0,0 +1,29 @@
+CMP0135
+-------
+
+.. versionadded:: 3.24
+
+When using the ``URL`` download method with the :command:`ExternalProject_Add`
+command, CMake 3.23 and below sets the timestamps of the extracted contents
+to the same as the timestamps in the archive. When the ``URL`` changes, the
+new archive is downloaded and extracted, but the timestamps of the extracted
+contents might not be newer than the previous contents. Anything that depends
+on the extracted contents might not be rebuilt, even though the contents may
+change.
+
+CMake 3.24 and above prefers to set the timestamps of all extracted contents
+to the time of the extraction. This ensures that anything that depends on the
+extracted contents will be rebuilt whenever the ``URL`` changes.
+
+The ``DOWNLOAD_EXTRACT_TIMESTAMP`` option to the
+:command:`ExternalProject_Add` command can be used to explicitly specify how
+timestamps should be handled. When ``DOWNLOAD_EXTRACT_TIMESTAMP`` is not
+given, this policy controls the default behavior. The ``OLD`` behavior for
+this policy is to restore the timestamps from the archive. The ``NEW``
+behavior sets the timestamps of extracted contents to the time of extraction.
+
+This policy was introduced in CMake version 3.24. CMake version |release|
+warns when the policy is not set and uses ``OLD`` behavior. Use the
+:command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly.
+
+.. include:: DEPRECATED.txt
diff --git a/Help/release/3.17.rst b/Help/release/3.17.rst
index abd7463..1aa475f 100644
--- a/Help/release/3.17.rst
+++ b/Help/release/3.17.rst
@@ -272,7 +272,7 @@ Deprecated and Removed Features
of all policies are deprecated and that projects should port to the
NEW behaviors.
-* The :cpack_gen:`CPack PackageMaker Generator` generator has been
+* The CPack ``PackageMaker`` generator has been
deprecated because Xcode no longer distributes the PackageMaker tools.
The undocumented ``OSXX11`` generator has also been deprecated.
diff --git a/Help/release/3.23.rst b/Help/release/3.23.rst
index 47c4243..70a6175 100644
--- a/Help/release/3.23.rst
+++ b/Help/release/3.23.rst
@@ -187,7 +187,7 @@ CPack
* 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 ``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.
diff --git a/Help/release/dev/ExternalProject-no-extract-timestamp.rst b/Help/release/dev/ExternalProject-no-extract-timestamp.rst
new file mode 100644
index 0000000..0e8c01e
--- /dev/null
+++ b/Help/release/dev/ExternalProject-no-extract-timestamp.rst
@@ -0,0 +1,8 @@
+ExternalProject-no-extract-timestamp
+------------------------------------
+
+* The :command:`ExternalProject_Add` command gained a new
+ ``DOWNLOAD_EXTRACT_TIMESTAMP`` option for controlling whether the timestamps
+ of extracted contents are set to match those in the archive when the ``URL``
+ download method is used. A new policy :policy:`CMP0135` was added to control
+ the default behavior when the new option is not used.
diff --git a/Help/release/dev/cpack-wix-arch.rst b/Help/release/dev/cpack-wix-arch.rst
new file mode 100644
index 0000000..e7fd1ad
--- /dev/null
+++ b/Help/release/dev/cpack-wix-arch.rst
@@ -0,0 +1,6 @@
+cpack-wix-arch
+--------------
+
+* The :cpack_gen:`CPack WIX Generator` gained a new variable,
+ :variable:`CPACK_WIX_ARCHITECTURE`, to specify the installer architecture
+ in order to support computers running Windows for ARM.
diff --git a/Help/release/dev/remove-PackageMaker-generator.rst b/Help/release/dev/remove-PackageMaker-generator.rst
new file mode 100644
index 0000000..f20a08c
--- /dev/null
+++ b/Help/release/dev/remove-PackageMaker-generator.rst
@@ -0,0 +1,5 @@
+remove-PackageMaker-generator
+-----------------------------
+
+* The deprecated ``PackageMaker`` :manual:`cpack(1)` generator has
+ been removed.
diff --git a/Help/variable/ENV.rst b/Help/variable/ENV.rst
index 2b43934..6791853 100644
--- a/Help/variable/ENV.rst
+++ b/Help/variable/ENV.rst
@@ -8,5 +8,6 @@ Use the syntax ``$ENV{VAR}`` to read environment variable ``VAR``.
To test whether an environment variable is defined, use the signature
``if(DEFINED ENV{<name>})`` of the :command:`if` command.
-See the :command:`set` and :command:`unset` commands to see how to
-write or remove environment variables.
+For general information on environment variables, see the
+:ref:`Environment Variables <CMake Language Environment Variables>`
+section in the :manual:`cmake-language(7)` manual.