summaryrefslogtreecommitdiffstats
path: root/Help/release/dev
diff options
context:
space:
mode:
Diffstat (limited to 'Help/release/dev')
-rw-r--r--Help/release/dev/Linker-user-selection.rst6
-rw-r--r--Help/release/dev/cmake-E-cat-stdin.rst5
-rw-r--r--Help/release/dev/compiler-linker.rst8
-rw-r--r--Help/release/dev/export-find_dependency-calls.rst16
-rw-r--r--Help/release/dev/if-check-file-permissions.rst5
-rw-r--r--Help/release/dev/install-export-xcframework.rst9
-rw-r--r--Help/release/dev/link-deduplicate-libs.rst5
-rw-r--r--Help/release/dev/make-test-depend-on-all.rst6
-rw-r--r--Help/release/dev/project-include-multiple.rst11
-rw-r--r--Help/release/dev/unity-build-objc.rst5
-rw-r--r--Help/release/dev/vs-ifx.rst7
-rw-r--r--Help/release/dev/wix-installscope.rst13
12 files changed, 96 insertions, 0 deletions
diff --git a/Help/release/dev/Linker-user-selection.rst b/Help/release/dev/Linker-user-selection.rst
new file mode 100644
index 0000000..ed78099
--- /dev/null
+++ b/Help/release/dev/Linker-user-selection.rst
@@ -0,0 +1,6 @@
+Linker-user-selection
+---------------------
+
+* The linker tool can now be specified for a selection of compilers/platforms
+ by setting :variable:`CMAKE_LINKER_TYPE` variable or :prop_tgt:`LINKER_TYPE`
+ target property.
diff --git a/Help/release/dev/cmake-E-cat-stdin.rst b/Help/release/dev/cmake-E-cat-stdin.rst
new file mode 100644
index 0000000..43a8aed
--- /dev/null
+++ b/Help/release/dev/cmake-E-cat-stdin.rst
@@ -0,0 +1,5 @@
+cmake-E-cat-stdin
+-----------------
+
+* :manual:`cmake(1)` :option:`-E cat <cmake-E cat>` can now print the standard
+ input by passing the ``-`` argument.
diff --git a/Help/release/dev/compiler-linker.rst b/Help/release/dev/compiler-linker.rst
new file mode 100644
index 0000000..4783656
--- /dev/null
+++ b/Help/release/dev/compiler-linker.rst
@@ -0,0 +1,8 @@
+compiler-linker
+---------------
+
+* The linker effectively used for the link step is now documented with the
+ :variable:`CMAKE_<LANG>_COMPILER_LINKER`,
+ :variable:`CMAKE_<LANG>_COMPILER_LINKER_ID`,
+ :variable:`CMAKE_<LANG>_COMPILER_LINKER_VERSION` and
+ :variable:`CMAKE_<LANG>_COMPILER_LINKER_FRONTEND_VARIANT` variables.
diff --git a/Help/release/dev/export-find_dependency-calls.rst b/Help/release/dev/export-find_dependency-calls.rst
new file mode 100644
index 0000000..58064b7
--- /dev/null
+++ b/Help/release/dev/export-find_dependency-calls.rst
@@ -0,0 +1,16 @@
+export-find_dependency-calls
+----------------------------
+
+* :command:`install(EXPORT)` and :command:`export(EXPORT)` learned a new
+ ``EXPORT_PACKAGE_DEPENDENCIES`` argument, which can be used to generate
+ :command:`find_dependency` calls based on what targets the exported targets
+ depend on.
+* A new :command:`export(SETUP)` signature was created to configure export
+ sets. This can be used to configure how :command:`find_dependency` calls are
+ exported.
+* A new :prop_tgt:`EXPORT_FIND_PACKAGE_NAME` target property was created to
+ allow targets to specify what package name to pass when exporting
+ :command:`find_dependency` calls. This property is initialized with a new
+ :variable:`CMAKE_EXPORT_FIND_PACKAGE_NAME` variable.
+* :command:`FetchContent_MakeAvailable` now sets the
+ :variable:`CMAKE_EXPORT_FIND_PACKAGE_NAME` variable for CMake projects.
diff --git a/Help/release/dev/if-check-file-permissions.rst b/Help/release/dev/if-check-file-permissions.rst
new file mode 100644
index 0000000..ec69b00
--- /dev/null
+++ b/Help/release/dev/if-check-file-permissions.rst
@@ -0,0 +1,5 @@
+if-check-file-permissions
+-------------------------
+
+* The :command:`if` command gained new tests ``IS_READABLE``, ``IS_WRITABLE``
+ and ``IS_EXECUTABLE`` to check file or directory permissions.
diff --git a/Help/release/dev/install-export-xcframework.rst b/Help/release/dev/install-export-xcframework.rst
new file mode 100644
index 0000000..513a552
--- /dev/null
+++ b/Help/release/dev/install-export-xcframework.rst
@@ -0,0 +1,9 @@
+install-export-xcframework
+--------------------------
+
+* The :command:`export(SETUP)` command gained a new ``XCFRAMEWORK_LOCATION``
+ argument, which can be used to specify the location of a ``.xcframework``
+ that can be substituted for the installed library.
+* The :module:`CMakePackageConfigHelpers` module gained a new
+ :command:`generate_apple_platform_selection_file` function, which can be
+ used to generate a file that includes another Apple-platform-specific file.
diff --git a/Help/release/dev/link-deduplicate-libs.rst b/Help/release/dev/link-deduplicate-libs.rst
new file mode 100644
index 0000000..4a03f2c
--- /dev/null
+++ b/Help/release/dev/link-deduplicate-libs.rst
@@ -0,0 +1,5 @@
+link-deduplicate-libs
+---------------------
+
+* CMake learned to de-duplicate libraries on link lines based on linker
+ capabilities. See policy :policy:`CMP0156`.
diff --git a/Help/release/dev/make-test-depend-on-all.rst b/Help/release/dev/make-test-depend-on-all.rst
new file mode 100644
index 0000000..ef43faf
--- /dev/null
+++ b/Help/release/dev/make-test-depend-on-all.rst
@@ -0,0 +1,6 @@
+make-test-depend-on-all
+-----------------------
+
+* The :variable:`CMAKE_SKIP_TEST_ALL_DEPENDENCY` variable was added
+ to control whether the ``test`` (or ``RUN_TESTS``) buildsystem
+ target depends on the ``all`` (or ``ALL_BUILD``) target.
diff --git a/Help/release/dev/project-include-multiple.rst b/Help/release/dev/project-include-multiple.rst
new file mode 100644
index 0000000..3f7b360
--- /dev/null
+++ b/Help/release/dev/project-include-multiple.rst
@@ -0,0 +1,11 @@
+project-include-multiple
+------------------------
+
+* The :variable:`CMAKE_PROJECT_INCLUDE`,
+ :variable:`CMAKE_PROJECT_INCLUDE_BEFORE`,
+ :variable:`CMAKE_PROJECT_<PROJECT-NAME>_INCLUDE`, and
+ :variable:`CMAKE_PROJECT_<PROJECT-NAME>_INCLUDE_BEFORE` variables learned
+ to support a :ref:`semicolon-separated list <CMake Language Lists>` of
+ CMake language files to be included sequentially. These variables can also
+ reference module names to be found in :variable:`CMAKE_MODULE_PATH` or
+ builtin to CMake.
diff --git a/Help/release/dev/unity-build-objc.rst b/Help/release/dev/unity-build-objc.rst
new file mode 100644
index 0000000..ce6460b
--- /dev/null
+++ b/Help/release/dev/unity-build-objc.rst
@@ -0,0 +1,5 @@
+unity-build-objc
+----------------
+
+* The :prop_tgt:`UNITY_BUILD` target property now supports the
+ Objective C (``OBJC``) and Objective C++ (``OBJCXX``) languages.
diff --git a/Help/release/dev/vs-ifx.rst b/Help/release/dev/vs-ifx.rst
new file mode 100644
index 0000000..9e72cc7
--- /dev/null
+++ b/Help/release/dev/vs-ifx.rst
@@ -0,0 +1,7 @@
+vs-ifx
+------
+
+* :ref:`Visual Studio Generators` now support selecting between the
+ Intel oneAPI Fortran compiler (``ifx``) and the Intel classic Fortran
+ compiler (``ifort``) using a ``fortran=`` field in
+ :variable:`CMAKE_GENERATOR_TOOLSET`.
diff --git a/Help/release/dev/wix-installscope.rst b/Help/release/dev/wix-installscope.rst
new file mode 100644
index 0000000..1978698
--- /dev/null
+++ b/Help/release/dev/wix-installscope.rst
@@ -0,0 +1,13 @@
+wix-installscope
+----------------
+
+* The :cpack_gen:`CPack WIX Generator` gained a new variable,
+ :variable:`CPACK_WIX_INSTALL_SCOPE`, to control the
+ ``InstallScope`` property of WiX MSI installers.
+
+* The :cpack_gen:`CPack WIX Generator` now produces WiX MSI installers
+ that create start menu and uninstall entries for all users by default,
+ as documented by the :variable:`CPACK_WIX_INSTALL_SCOPE` variable
+ ``perMachine`` value. Previously, without a custom WiX template,
+ it produced installers that would only create start menu and uninstall
+ entries for the current user, even though they install for all users.