OXIESEC PANEL
- Current Dir:
/
/
usr
/
local
/
doc
/
cmake
/
html
/
release
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
π
..
-
04/04/2023 07:10:48 PM
rwxr-xr-x
π
3.0.html
83.45 KB
04/04/2023 07:05:27 PM
rw-r--r--
π
3.1.html
70.92 KB
04/04/2023 07:05:27 PM
rw-r--r--
π
3.10.html
48.32 KB
04/04/2023 07:05:27 PM
rw-r--r--
π
3.11.html
60.09 KB
04/04/2023 07:05:27 PM
rw-r--r--
π
3.12.html
55.96 KB
04/04/2023 07:05:27 PM
rw-r--r--
π
3.13.html
46.76 KB
04/04/2023 07:05:28 PM
rw-r--r--
π
3.14.html
76.84 KB
04/04/2023 07:05:28 PM
rw-r--r--
π
3.15.html
68.25 KB
04/04/2023 07:05:28 PM
rw-r--r--
π
3.16.html
60.81 KB
04/04/2023 07:05:28 PM
rw-r--r--
π
3.17.html
65.15 KB
04/04/2023 07:05:28 PM
rw-r--r--
π
3.18.html
64.02 KB
04/04/2023 07:05:28 PM
rw-r--r--
π
3.19.html
74.24 KB
04/04/2023 07:05:28 PM
rw-r--r--
π
3.2.html
44.62 KB
04/04/2023 07:05:29 PM
rw-r--r--
π
3.20.html
63.14 KB
04/04/2023 07:05:29 PM
rw-r--r--
π
3.21.html
62.32 KB
04/04/2023 07:05:29 PM
rw-r--r--
π
3.22.html
34.04 KB
04/04/2023 07:05:29 PM
rw-r--r--
π
3.23.html
58.94 KB
04/04/2023 07:05:29 PM
rw-r--r--
π
3.24.html
71.01 KB
04/04/2023 07:05:29 PM
rw-r--r--
π
3.25.html
49.46 KB
04/04/2023 07:05:29 PM
rw-r--r--
π
3.26.html
34.8 KB
04/04/2023 07:05:29 PM
rw-r--r--
π
3.3.html
49.11 KB
04/04/2023 07:05:29 PM
rw-r--r--
π
3.4.html
53.38 KB
04/04/2023 07:05:30 PM
rw-r--r--
π
3.5.html
33.65 KB
04/04/2023 07:05:30 PM
rw-r--r--
π
3.6.html
56.32 KB
04/04/2023 07:05:30 PM
rw-r--r--
π
3.7.html
59.04 KB
04/04/2023 07:05:30 PM
rw-r--r--
π
3.8.html
80.81 KB
04/04/2023 07:05:30 PM
rw-r--r--
π
3.9.html
64.52 KB
04/04/2023 07:05:30 PM
rw-r--r--
π
index.html
7.43 KB
04/04/2023 07:05:30 PM
rw-r--r--
Editing: 3.23.html
Close
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" /> <title>CMake 3.23 Release Notes — CMake 3.26.3 Documentation</title> <link rel="stylesheet" type="text/css" href="../_static/pygments.css" /> <link rel="stylesheet" type="text/css" href="../_static/cmake.css" /> <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script> <script src="../_static/jquery.js"></script> <script src="../_static/underscore.js"></script> <script src="../_static/_sphinx_javascript_frameworks_compat.js"></script> <script src="../_static/doctools.js"></script> <link rel="shortcut icon" href="../_static/cmake-favicon.ico"/> <link rel="index" title="Index" href="../genindex.html" /> <link rel="search" title="Search" href="../search.html" /> <link rel="next" title="CMake 3.22 Release Notes" href="3.22.html" /> <link rel="prev" title="CMake 3.24 Release Notes" href="3.24.html" /> </head><body> <div class="related" role="navigation" aria-label="related navigation"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="../genindex.html" title="General Index" accesskey="I">index</a></li> <li class="right" > <a href="3.22.html" title="CMake 3.22 Release Notes" accesskey="N">next</a> |</li> <li class="right" > <a href="3.24.html" title="CMake 3.24 Release Notes" accesskey="P">previous</a> |</li> <li> <img src="../_static/cmake-logo-16.png" alt="" style="vertical-align: middle; margin-top: -2px" /> </li> <li> <a href="https://cmake.org/">CMake</a> » </li> <li> <a href="../index.html">3.26.3 Documentation</a> » </li> <li class="nav-item nav-item-1"><a href="index.html" accesskey="U">CMake Release Notes</a> »</li> <li class="nav-item nav-item-this"><a href="">CMake 3.23 Release Notes</a></li> </ul> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body" role="main"> <section id="cmake-3-23-release-notes"> <h1><a class="toc-backref" href="#id4" role="doc-backlink">CMake 3.23 Release Notes</a><a class="headerlink" href="#cmake-3-23-release-notes" title="Permalink to this heading">ΒΆ</a></h1> <nav class="contents" id="contents"> <p class="topic-title">Contents</p> <ul class="simple"> <li><p><a class="reference internal" href="#cmake-3-23-release-notes" id="id4">CMake 3.23 Release Notes</a></p> <ul> <li><p><a class="reference internal" href="#new-features" id="id5">New Features</a></p> <ul> <li><p><a class="reference internal" href="#presets" id="id6">Presets</a></p></li> <li><p><a class="reference internal" href="#generators" id="id7">Generators</a></p></li> <li><p><a class="reference internal" href="#command-line" id="id8">Command-Line</a></p></li> <li><p><a class="reference internal" href="#compilers" id="id9">Compilers</a></p></li> <li><p><a class="reference internal" href="#file-based-api" id="id10">File-Based API</a></p></li> <li><p><a class="reference internal" href="#commands" id="id11">Commands</a></p></li> <li><p><a class="reference internal" href="#variables" id="id12">Variables</a></p></li> <li><p><a class="reference internal" href="#properties" id="id13">Properties</a></p></li> <li><p><a class="reference internal" href="#modules" id="id14">Modules</a></p></li> <li><p><a class="reference internal" href="#ctest" id="id15">CTest</a></p></li> <li><p><a class="reference internal" href="#cpack" id="id16">CPack</a></p></li> </ul> </li> <li><p><a class="reference internal" href="#deprecated-and-removed-features" id="id17">Deprecated and Removed Features</a></p></li> <li><p><a class="reference internal" href="#other-changes" id="id18">Other Changes</a></p></li> <li><p><a class="reference internal" href="#updates" id="id19">Updates</a></p> <ul> <li><p><a class="reference internal" href="#id1" id="id20">3.23.1</a></p></li> <li><p><a class="reference internal" href="#id2" id="id21">3.23.2</a></p></li> <li><p><a class="reference internal" href="#id3" id="id22">3.23.3, 3.23.4, 3.23.5</a></p></li> </ul> </li> </ul> </li> </ul> </nav> <p>Changes made since CMake 3.22 include the following.</p> <section id="new-features"> <h2><a class="toc-backref" href="#id5" role="doc-backlink">New Features</a><a class="headerlink" href="#new-features" title="Permalink to this heading">ΒΆ</a></h2> <section id="presets"> <h3><a class="toc-backref" href="#id6" role="doc-backlink">Presets</a><a class="headerlink" href="#presets" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p><span class="target" id="index-0-manual:cmake-presets(7)"></span><a class="reference internal" href="../manual/cmake-presets.7.html#manual:cmake-presets(7)" title="cmake-presets(7)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake-presets(7)</span></code></a> files now support schema version <code class="docutils literal notranslate"><span class="pre">4</span></code>.</p></li> <li><p><span class="target" id="index-1-manual:cmake-presets(7)"></span><a class="reference internal" href="../manual/cmake-presets.7.html#manual:cmake-presets(7)" title="cmake-presets(7)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake-presets(7)</span></code></a> files now have an optional <code class="docutils literal notranslate"><span class="pre">include</span></code> field, which allows the files to include other files.</p></li> <li><p><span class="target" id="index-2-manual:cmake-presets(7)"></span><a class="reference internal" href="../manual/cmake-presets.7.html#manual:cmake-presets(7)" title="cmake-presets(7)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake-presets(7)</span></code></a> files now support a <code class="docutils literal notranslate"><span class="pre">${fileDir}</span></code> macro, which contains the directory containing the preset file.</p></li> <li><p><span class="target" id="index-3-manual:cmake-presets(7)"></span><a class="reference internal" href="../manual/cmake-presets.7.html#manual:cmake-presets(7)" title="cmake-presets(7)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake-presets(7)</span></code></a> gained support for specifying the <code class="docutils literal notranslate"><span class="pre">resolvePackageReferences</span></code> command line option in a build preset to control restoration behavior of package references from external package managers. Currently this is only supported by the Visual Studio generator to support restoring packages from NuGet. Other generators ignore this option.</p></li> </ul> </section> <section id="generators"> <h3><a class="toc-backref" href="#id7" role="doc-backlink">Generators</a><a class="headerlink" href="#generators" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The <a class="reference internal" href="../manual/cmake-generators.7.html#visual-studio-generators"><span class="std std-ref">Visual Studio Generators</span></a> for VS 2019 and above learned to support .NET SDK-style project files (<code class="docutils literal notranslate"><span class="pre">.csproj</span></code>) for C# projects. See the <span class="target" id="index-0-prop_tgt:DOTNET_SDK"></span><a class="reference internal" href="../prop_tgt/DOTNET_SDK.html#prop_tgt:DOTNET_SDK" title="DOTNET_SDK"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">DOTNET_SDK</span></code></a> target property and corresponding <span class="target" id="index-0-variable:CMAKE_DOTNET_SDK"></span><a class="reference internal" href="../variable/CMAKE_DOTNET_SDK.html#variable:CMAKE_DOTNET_SDK" title="CMAKE_DOTNET_SDK"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_DOTNET_SDK</span></code></a> variable. <span class="target" id="index-0-command:add_custom_command"></span><a class="reference internal" href="../command/add_custom_command.html#command:add_custom_command" title="add_custom_command"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">add_custom_command()</span></code></a> is not yet supported in .NET SDK-style projects.</p></li> <li><p>The <a class="reference internal" href="../manual/cmake-generators.7.html#visual-studio-generators"><span class="std std-ref">Visual Studio Generators</span></a> for VS 2017 and above learned to use portable instances of Visual Studio not known to the VS installer. See the <span class="target" id="index-0-variable:CMAKE_GENERATOR_INSTANCE"></span><a class="reference internal" href="../variable/CMAKE_GENERATOR_INSTANCE.html#variable:CMAKE_GENERATOR_INSTANCE" title="CMAKE_GENERATOR_INSTANCE"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_GENERATOR_INSTANCE</span></code></a> variable.</p></li> </ul> </section> <section id="command-line"> <h3><a class="toc-backref" href="#id8" role="doc-backlink">Command-Line</a><a class="headerlink" href="#command-line" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The <span class="target" id="index-0-manual:cmake(1)"></span><a class="reference internal" href="../manual/cmake.1.html#manual:cmake(1)" title="cmake(1)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake(1)</span></code></a> <a class="reference internal" href="../manual/cmake.1.html#cmdoption-cmake-build"><code class="xref std std-option docutils literal notranslate"><span class="pre">--build</span></code></a> command, when used with <a class="reference internal" href="../manual/cmake-generators.7.html#visual-studio-generators"><span class="std std-ref">Visual Studio Generators</span></a> on projects that set the <span class="target" id="index-0-prop_tgt:VS_PACKAGE_REFERENCES"></span><a class="reference internal" href="../prop_tgt/VS_PACKAGE_REFERENCES.html#prop_tgt:VS_PACKAGE_REFERENCES" title="VS_PACKAGE_REFERENCES"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">VS_PACKAGE_REFERENCES</span></code></a> target property, now automatically restores package references from NuGet. The cache variable <span class="target" id="index-0-variable:CMAKE_VS_NUGET_PACKAGE_RESTORE"></span><a class="reference internal" href="../variable/CMAKE_VS_NUGET_PACKAGE_RESTORE.html#variable:CMAKE_VS_NUGET_PACKAGE_RESTORE" title="CMAKE_VS_NUGET_PACKAGE_RESTORE"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_VS_NUGET_PACKAGE_RESTORE</span></code></a> may be set to toggle this behavior in a build tree. Use the <a class="reference internal" href="../manual/cmake.1.html#cmdoption-cmake-build-resolve-package-references"><code class="xref std std-option docutils literal notranslate"><span class="pre">--resolve-package-references</span></code></a> command-line option to control the behavior on one invocation.</p></li> <li><p>The <span class="target" id="index-1-manual:cmake(1)"></span><a class="reference internal" href="../manual/cmake.1.html#manual:cmake(1)" title="cmake(1)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake(1)</span></code></a> command line tool gained a <a class="reference internal" href="../manual/cmake.1.html#cmdoption-cmake-debug-find-pkg"><code class="xref std std-option docutils literal notranslate"><span class="pre">--debug-find-pkg</span></code></a> option to enable debug messages under specific <span class="target" id="index-0-command:find_package"></span><a class="reference internal" href="../command/find_package.html#command:find_package" title="find_package"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">find_package()</span></code></a> calls.</p></li> <li><p>The <span class="target" id="index-2-manual:cmake(1)"></span><a class="reference internal" href="../manual/cmake.1.html#manual:cmake(1)" title="cmake(1)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake(1)</span></code></a> command line tool gained a <a class="reference internal" href="../manual/cmake.1.html#cmdoption-cmake-debug-find-var"><code class="xref std std-option docutils literal notranslate"><span class="pre">--debug-find-var</span></code></a> option to enable debug messages for <code class="docutils literal notranslate"><span class="pre">find_*</span></code> calls that use specific result variables.</p></li> </ul> </section> <section id="compilers"> <h3><a class="toc-backref" href="#id9" role="doc-backlink">Compilers</a><a class="headerlink" href="#compilers" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The IBM Open XL C/C++ compiler, based on LLVM, is now supported with compiler id <code class="docutils literal notranslate"><span class="pre">IBMClang</span></code>.</p></li> <li><p>The MCST LCC compiler is now supported with compiler id <code class="docutils literal notranslate"><span class="pre">LCC</span></code>. See policy <span class="target" id="index-0-policy:CMP0129"></span><a class="reference internal" href="../policy/CMP0129.html#policy:CMP0129" title="CMP0129"><code class="xref cmake cmake-policy docutils literal notranslate"><span class="pre">CMP0129</span></code></a>.</p></li> </ul> </section> <section id="file-based-api"> <h3><a class="toc-backref" href="#id10" role="doc-backlink">File-Based API</a><a class="headerlink" href="#file-based-api" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The <span class="target" id="index-0-manual:cmake-file-api(7)"></span><a class="reference internal" href="../manual/cmake-file-api.7.html#manual:cmake-file-api(7)" title="cmake-file-api(7)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake-file-api(7)</span></code></a> "codemodel" version 2 <code class="docutils literal notranslate"><span class="pre">version</span></code> field has been updated to <code class="docutils literal notranslate"><span class="pre">2.4</span></code>.</p></li> <li><p>The <span class="target" id="index-1-manual:cmake-file-api(7)"></span><a class="reference internal" href="../manual/cmake-file-api.7.html#manual:cmake-file-api(7)" title="cmake-file-api(7)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake-file-api(7)</span></code></a> "codemodel" version 2 <code class="docutils literal notranslate"><span class="pre">directory</span></code> object <code class="docutils literal notranslate"><span class="pre">installers</span></code> field gained a new <code class="docutils literal notranslate"><span class="pre">fileSet</span></code> installer type.</p></li> </ul> </section> <section id="commands"> <h3><a class="toc-backref" href="#id11" role="doc-backlink">Commands</a><a class="headerlink" href="#commands" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The <span class="target" id="index-0-command:define_property"></span><a class="reference internal" href="../command/define_property.html#command:define_property" title="define_property"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">define_property()</span></code></a> command gained a new <code class="docutils literal notranslate"><span class="pre">INITIALIZE_FROM_VARIABLE</span></code> option to cause a target property to be initialized from a variable when a target is created.</p></li> <li><p>The <span class="target" id="index-0-command:install"></span><a class="reference internal" href="../command/install.html#command:install" title="install"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">install(TARGETS)</span></code></a> command gained a new <code class="docutils literal notranslate"><span class="pre">FILE_SET</span></code> argument, which can be used to install header file sets associated with a target.</p></li> <li><p>The <span class="target" id="index-0-command:string"></span><a class="reference internal" href="../command/string.html#command:string" title="string"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">string(TIMESTAMP)</span></code></a> and <span class="target" id="index-0-command:file"></span><a class="reference internal" href="../command/file.html#command:file" title="file"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">file(TIMESTAMP)</span></code></a> commands now support the <code class="docutils literal notranslate"><span class="pre">%f</span></code> specifier for microseconds.</p></li> <li><p>The <span class="target" id="index-0-command:target_sources"></span><a class="reference internal" href="../command/target_sources.html#command:target_sources" title="target_sources"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">target_sources()</span></code></a> command gained a new <code class="docutils literal notranslate"><span class="pre">FILE_SET</span></code> mode, which can be used to add headers as header-only source files of a target.</p></li> </ul> </section> <section id="variables"> <h3><a class="toc-backref" href="#id12" role="doc-backlink">Variables</a><a class="headerlink" href="#variables" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The <span class="target" id="index-0-variable:CMAKE_CUDA_ARCHITECTURES"></span><a class="reference internal" href="../variable/CMAKE_CUDA_ARCHITECTURES.html#variable:CMAKE_CUDA_ARCHITECTURES" title="CMAKE_CUDA_ARCHITECTURES"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_CUDA_ARCHITECTURES</span></code></a> variable and associated <span class="target" id="index-0-prop_tgt:CUDA_ARCHITECTURES"></span><a class="reference internal" href="../prop_tgt/CUDA_ARCHITECTURES.html#prop_tgt:CUDA_ARCHITECTURES" title="CUDA_ARCHITECTURES"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">CUDA_ARCHITECTURES</span></code></a> target property now support the <code class="docutils literal notranslate"><span class="pre">all</span></code>, and <code class="docutils literal notranslate"><span class="pre">all-major</span></code> values for CUDA toolkit 7.0+.</p></li> <li><p>The <span class="target" id="index-0-variable:CMAKE_IGNORE_PREFIX_PATH"></span><a class="reference internal" href="../variable/CMAKE_IGNORE_PREFIX_PATH.html#variable:CMAKE_IGNORE_PREFIX_PATH" title="CMAKE_IGNORE_PREFIX_PATH"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_IGNORE_PREFIX_PATH</span></code></a> and <span class="target" id="index-0-variable:CMAKE_SYSTEM_IGNORE_PREFIX_PATH"></span><a class="reference internal" href="../variable/CMAKE_SYSTEM_IGNORE_PREFIX_PATH.html#variable:CMAKE_SYSTEM_IGNORE_PREFIX_PATH" title="CMAKE_SYSTEM_IGNORE_PREFIX_PATH"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_SYSTEM_IGNORE_PREFIX_PATH</span></code></a> variables were added to tell the <span class="target" id="index-1-command:find_package"></span><a class="reference internal" href="../command/find_package.html#command:find_package" title="find_package"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">find_package()</span></code></a>, <span class="target" id="index-0-command:find_program"></span><a class="reference internal" href="../command/find_program.html#command:find_program" title="find_program"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">find_program()</span></code></a>, <span class="target" id="index-0-command:find_library"></span><a class="reference internal" href="../command/find_library.html#command:find_library" title="find_library"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">find_library()</span></code></a>, <span class="target" id="index-0-command:find_path"></span><a class="reference internal" href="../command/find_path.html#command:find_path" title="find_path"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">find_path()</span></code></a>, and <span class="target" id="index-0-command:find_file"></span><a class="reference internal" href="../command/find_file.html#command:find_file" title="find_file"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">find_file()</span></code></a> commands to ignore specified prefixes.</p></li> <li><p>The <span class="target" id="index-0-variable:CMAKE_LINK_LIBRARIES_ONLY_TARGETS"></span><a class="reference internal" href="../variable/CMAKE_LINK_LIBRARIES_ONLY_TARGETS.html#variable:CMAKE_LINK_LIBRARIES_ONLY_TARGETS" title="CMAKE_LINK_LIBRARIES_ONLY_TARGETS"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_LINK_LIBRARIES_ONLY_TARGETS</span></code></a> variable and corresponding <span class="target" id="index-0-prop_tgt:LINK_LIBRARIES_ONLY_TARGETS"></span><a class="reference internal" href="../prop_tgt/LINK_LIBRARIES_ONLY_TARGETS.html#prop_tgt:LINK_LIBRARIES_ONLY_TARGETS" title="LINK_LIBRARIES_ONLY_TARGETS"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">LINK_LIBRARIES_ONLY_TARGETS</span></code></a> target property were added to optionally require that all link items that can be target names are actually names of existing targets.</p></li> </ul> </section> <section id="properties"> <h3><a class="toc-backref" href="#id13" role="doc-backlink">Properties</a><a class="headerlink" href="#properties" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The <span class="target" id="index-0-prop_tgt:HEADER_SETS"></span><a class="reference internal" href="../prop_tgt/HEADER_SETS.html#prop_tgt:HEADER_SETS" title="HEADER_SETS"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">HEADER_SETS</span></code></a> and <span class="target" id="index-0-prop_tgt:INTERFACE_HEADER_SETS"></span><a class="reference internal" href="../prop_tgt/INTERFACE_HEADER_SETS.html#prop_tgt:INTERFACE_HEADER_SETS" title="INTERFACE_HEADER_SETS"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">INTERFACE_HEADER_SETS</span></code></a> read-only target properties were added to list header sets associated with a target.</p></li> <li><p>The <span class="target" id="index-0-prop_tgt:HEADER_SET"></span><a class="reference internal" href="../prop_tgt/HEADER_SET.html#prop_tgt:HEADER_SET" title="HEADER_SET"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">HEADER_SET</span></code></a> and <span class="target" id="index-0-prop_tgt:HEADER_SET_<NAME>"></span><a class="reference internal" href="../prop_tgt/HEADER_SET_NAME.html#prop_tgt:HEADER_SET_<NAME>" title="HEADER_SET_<NAME>"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">HEADER_SET_<NAME></span></code></a> target properties were added to list files in the default header set and named header sets, respectively.</p></li> <li><p>The <span class="target" id="index-0-prop_tgt:HEADER_DIRS"></span><a class="reference internal" href="../prop_tgt/HEADER_DIRS.html#prop_tgt:HEADER_DIRS" title="HEADER_DIRS"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">HEADER_DIRS</span></code></a> and <span class="target" id="index-0-prop_tgt:HEADER_DIRS_<NAME>"></span><a class="reference internal" href="../prop_tgt/HEADER_DIRS_NAME.html#prop_tgt:HEADER_DIRS_<NAME>" title="HEADER_DIRS_<NAME>"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">HEADER_DIRS_<NAME></span></code></a> target properties were added to specify the base directories of the default header set and named header sets, respectively.</p></li> <li><p>The <span class="target" id="index-0-prop_tgt:IMPORTED_NO_SYSTEM"></span><a class="reference internal" href="../prop_tgt/IMPORTED_NO_SYSTEM.html#prop_tgt:IMPORTED_NO_SYSTEM" title="IMPORTED_NO_SYSTEM"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">IMPORTED_NO_SYSTEM</span></code></a> target property was added to specify that an <a class="reference internal" href="../manual/cmake-buildsystem.7.html#imported-targets"><span class="std std-ref">Imported Target</span></a> should not be treated as a system library (i.e. its include directories are not automatically <code class="docutils literal notranslate"><span class="pre">SYSTEM</span></code>).</p></li> <li><p>The <span class="target" id="index-0-prop_tgt:XCODE_EMBED_<type>"></span><a class="reference internal" href="../prop_tgt/XCODE_EMBED_type.html#prop_tgt:XCODE_EMBED_<type>" title="XCODE_EMBED_<type>"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">XCODE_EMBED_PLUGINS</span></code></a> target property was added to tell the <span class="target" id="index-0-generator:Xcode"></span><a class="reference internal" href="../generator/Xcode.html#generator:Xcode" title="Xcode"><code class="xref cmake cmake-generator docutils literal notranslate"><span class="pre">Xcode</span></code></a> generator what targets to put in the <code class="docutils literal notranslate"><span class="pre">Embed</span> <span class="pre">PlugIns</span></code> build phase.</p></li> <li><p>The <span class="target" id="index-0-prop_tgt:XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE"></span><a class="reference internal" href="../prop_tgt/XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE.html#prop_tgt:XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE" title="XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE</span></code></a> target property and supporting <span class="target" id="index-0-variable:CMAKE_XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE"></span><a class="reference internal" href="../variable/CMAKE_XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE.html#variable:CMAKE_XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE" title="CMAKE_XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_XCODE_SCHEME_ENABLE_GPU_FRAME_CAPTURE_MODE</span></code></a> variable were added to tell the <span class="target" id="index-1-generator:Xcode"></span><a class="reference internal" href="../generator/Xcode.html#generator:Xcode" title="Xcode"><code class="xref cmake cmake-generator docutils literal notranslate"><span class="pre">Xcode</span></code></a> generator to enable specifying the Xcode scheme option property <code class="docutils literal notranslate"><span class="pre">GPU</span> <span class="pre">Frame</span> <span class="pre">Capture</span></code>.</p></li> </ul> </section> <section id="modules"> <h3><a class="toc-backref" href="#id14" role="doc-backlink">Modules</a><a class="headerlink" href="#modules" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The <span class="target" id="index-0-module:CheckPIESupported"></span><a class="reference internal" href="../module/CheckPIESupported.html#module:CheckPIESupported" title="CheckPIESupported"><code class="xref cmake cmake-module docutils literal notranslate"><span class="pre">CheckPIESupported</span></code></a> module now supports the <code class="docutils literal notranslate"><span class="pre">OBJC</span></code>, <code class="docutils literal notranslate"><span class="pre">OBJCXX</span></code>, <code class="docutils literal notranslate"><span class="pre">CUDA</span></code>, and <code class="docutils literal notranslate"><span class="pre">HIP</span></code> languages. It also now honors <span class="target" id="index-0-variable:CMAKE_SYSROOT"></span><a class="reference internal" href="../variable/CMAKE_SYSROOT.html#variable:CMAKE_SYSROOT" title="CMAKE_SYSROOT"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_SYSROOT</span></code></a> and <span class="target" id="index-0-variable:CMAKE_OSX_SYSROOT"></span><a class="reference internal" href="../variable/CMAKE_OSX_SYSROOT.html#variable:CMAKE_OSX_SYSROOT" title="CMAKE_OSX_SYSROOT"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_OSX_SYSROOT</span></code></a>.</p></li> <li><p>The <span class="target" id="index-0-module:ExternalProject"></span><a class="reference internal" href="../module/ExternalProject.html#module:ExternalProject" title="ExternalProject"><code class="xref cmake cmake-module docutils literal notranslate"><span class="pre">ExternalProject</span></code></a> module's <span class="target" id="index-0-command:externalproject_add"></span><a class="reference internal" href="../module/ExternalProject.html#command:externalproject_add" title="externalproject_add"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">ExternalProject_Add()</span></code></a> command gained support for a <code class="docutils literal notranslate"><span class="pre">USES_TERMINAL_PATCH</span></code> option to give the patch step exclusive terminal access.</p></li> <li><p>The <span class="target" id="index-0-module:FindCUDAToolkit"></span><a class="reference internal" href="../module/FindCUDAToolkit.html#module:FindCUDAToolkit" title="FindCUDAToolkit"><code class="xref cmake cmake-module docutils literal notranslate"><span class="pre">FindCUDAToolkit</span></code></a> module now provides a target for <code class="docutils literal notranslate"><span class="pre">libcufft_static_nocallback</span></code>, if found.</p></li> <li><p>The <span class="target" id="index-0-module:FindGLUT"></span><a class="reference internal" href="../module/FindGLUT.html#module:FindGLUT" title="FindGLUT"><code class="xref cmake cmake-module docutils literal notranslate"><span class="pre">FindGLUT</span></code></a> module now provides the <code class="docutils literal notranslate"><span class="pre">GLUT_INCLUDE_DIRS</span></code> result variable to conform with naming conventions documented in the <span class="target" id="index-0-manual:cmake-developer(7)"></span><a class="reference internal" href="../manual/cmake-developer.7.html#manual:cmake-developer(7)" title="cmake-developer(7)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake-developer(7)</span></code></a> manual. This supersedes the legacy <code class="docutils literal notranslate"><span class="pre">GLUT_INCLUDE_DIR</span></code> variable.</p></li> <li><p>The <span class="target" id="index-0-module:FindGTest"></span><a class="reference internal" href="../module/FindGTest.html#module:FindGTest" title="FindGTest"><code class="xref cmake cmake-module docutils literal notranslate"><span class="pre">FindGTest</span></code></a> module now provides a target for GMock, if found.</p></li> <li><p>The <span class="target" id="index-0-module:FindVulkan"></span><a class="reference internal" href="../module/FindVulkan.html#module:FindVulkan" title="FindVulkan"><code class="xref cmake cmake-module docutils literal notranslate"><span class="pre">FindVulkan</span></code></a> module now provides a <code class="docutils literal notranslate"><span class="pre">Vulkan_VERSION</span></code> result variable reporting the version number.</p></li> </ul> </section> <section id="ctest"> <h3><a class="toc-backref" href="#id15" role="doc-backlink">CTest</a><a class="headerlink" href="#ctest" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p><span class="target" id="index-0-manual:ctest(1)"></span><a class="reference internal" href="../manual/ctest.1.html#manual:ctest(1)" title="ctest(1)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">ctest(1)</span></code></a> gained a new <span class="target" id="index-0-variable:CTEST_SUBMIT_INACTIVITY_TIMEOUT"></span><a class="reference internal" href="../variable/CTEST_SUBMIT_INACTIVITY_TIMEOUT.html#variable:CTEST_SUBMIT_INACTIVITY_TIMEOUT" title="CTEST_SUBMIT_INACTIVITY_TIMEOUT"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CTEST_SUBMIT_INACTIVITY_TIMEOUT</span></code></a> variable, which can be used to specify a timeout for submission inactivity.</p></li> </ul> </section> <section id="cpack"> <h3><a class="toc-backref" href="#id16" role="doc-backlink">CPack</a><a class="headerlink" href="#cpack" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The <span class="target" id="index-0-cpack_gen:CPack productbuild Generator"></span><a class="reference internal" href="../cpack_gen/productbuild.html#cpack_gen:CPack productbuild Generator" title="CPack productbuild Generator"><code class="xref cmake cmake-cpack_gen docutils literal notranslate"><span class="pre">CPack</span> <span class="pre">productbuild</span> <span class="pre">Generator</span></code></a> gained the new <span class="target" id="index-0-variable:CPACK_PRODUCTBUILD_DOMAINS"></span><a class="reference internal" href="../cpack_gen/productbuild.html#variable:CPACK_PRODUCTBUILD_DOMAINS" title="CPACK_PRODUCTBUILD_DOMAINS"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_PRODUCTBUILD_DOMAINS</span></code></a>, <span class="target" id="index-0-variable:CPACK_PRODUCTBUILD_DOMAINS_ANYWHERE"></span><a class="reference internal" href="../cpack_gen/productbuild.html#variable:CPACK_PRODUCTBUILD_DOMAINS_ANYWHERE" title="CPACK_PRODUCTBUILD_DOMAINS_ANYWHERE"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_PRODUCTBUILD_DOMAINS_ANYWHERE</span></code></a>, <span class="target" id="index-0-variable:CPACK_PRODUCTBUILD_DOMAINS_USER"></span><a class="reference internal" href="../cpack_gen/productbuild.html#variable:CPACK_PRODUCTBUILD_DOMAINS_USER" title="CPACK_PRODUCTBUILD_DOMAINS_USER"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_PRODUCTBUILD_DOMAINS_USER</span></code></a>, and <span class="target" id="index-0-variable:CPACK_PRODUCTBUILD_DOMAINS_ROOT"></span><a class="reference internal" href="../cpack_gen/productbuild.html#variable:CPACK_PRODUCTBUILD_DOMAINS_ROOT" title="CPACK_PRODUCTBUILD_DOMAINS_ROOT"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_PRODUCTBUILD_DOMAINS_ROOT</span></code></a> variables for adding the domains element to the Distribution XML. With these variables, it is now possible to install products to the user's home directory without requiring administrative privileges.</p></li> <li><p>The <span class="target" id="index-1-cpack_gen:CPack productbuild Generator"></span><a class="reference internal" href="../cpack_gen/productbuild.html#cpack_gen:CPack productbuild Generator" title="CPack productbuild Generator"><code class="xref cmake cmake-cpack_gen docutils literal notranslate"><span class="pre">CPack</span> <span class="pre">productbuild</span> <span class="pre">Generator</span></code></a> gained a new variable, <span class="target" id="index-0-variable:CPACK_PRODUCTBUILD_IDENTIFIER"></span><a class="reference internal" href="../cpack_gen/productbuild.html#variable:CPACK_PRODUCTBUILD_IDENTIFIER" title="CPACK_PRODUCTBUILD_IDENTIFIER"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_PRODUCTBUILD_IDENTIFIER</span></code></a>, used to customize the unique product identifier associated with the product.</p></li> <li><p>The <code class="docutils literal notranslate"><span class="pre">CPack.distribution.dist.in</span></code> template used by the <span class="target" id="index-2-cpack_gen:CPack productbuild Generator"></span><a class="reference internal" href="../cpack_gen/productbuild.html#cpack_gen:CPack productbuild Generator" title="CPack productbuild Generator"><code class="xref cmake cmake-cpack_gen docutils literal notranslate"><span class="pre">CPack</span> <span class="pre">productbuild</span> <span class="pre">Generator</span></code></a> and CPack <code class="docutils literal notranslate"><span class="pre">PackageMaker</span></code> generator was updated to use a new <code class="docutils literal notranslate"><span class="pre">CPACK_APPLE_PKG_INSTALLER_CONTENT</span></code> variable for its main content. This replaced the previously undocumented and now deprecated <code class="docutils literal notranslate"><span class="pre">CPACK_PACKAGEMAKER_CHOICES</span></code> variable.</p></li> <li><p>The <span class="target" id="index-0-cpack_gen:CPack IFW Generator"></span><a class="reference internal" href="../cpack_gen/ifw.html#cpack_gen:CPack IFW Generator" title="CPack IFW Generator"><code class="xref cmake cmake-cpack_gen docutils literal notranslate"><span class="pre">CPack</span> <span class="pre">IFW</span> <span class="pre">Generator</span></code></a> gained the new <span class="target" id="index-0-variable:CPACK_IFW_ARCHIVE_FORMAT"></span><a class="reference internal" href="../cpack_gen/ifw.html#variable:CPACK_IFW_ARCHIVE_FORMAT" title="CPACK_IFW_ARCHIVE_FORMAT"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_IFW_ARCHIVE_FORMAT</span></code></a> and <span class="target" id="index-0-variable:CPACK_IFW_ARCHIVE_COMPRESSION"></span><a class="reference internal" href="../cpack_gen/ifw.html#variable:CPACK_IFW_ARCHIVE_COMPRESSION" title="CPACK_IFW_ARCHIVE_COMPRESSION"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_IFW_ARCHIVE_COMPRESSION</span></code></a> variables for setting the format used when packaging new component data archives, and choosing the compression level used. These features are available for QtIFW 4.2 and newer.</p></li> <li><p>The <span class="target" id="index-1-cpack_gen:CPack IFW Generator"></span><a class="reference internal" href="../cpack_gen/ifw.html#cpack_gen:CPack IFW Generator" title="CPack IFW Generator"><code class="xref cmake cmake-cpack_gen docutils literal notranslate"><span class="pre">CPack</span> <span class="pre">IFW</span> <span class="pre">Generator</span></code></a> gained new <span class="target" id="index-0-variable:CPACK_IFW_PACKAGE_DISABLE_COMMAND_LINE_INTERFACE"></span><a class="reference internal" href="../cpack_gen/ifw.html#variable:CPACK_IFW_PACKAGE_DISABLE_COMMAND_LINE_INTERFACE" title="CPACK_IFW_PACKAGE_DISABLE_COMMAND_LINE_INTERFACE"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_IFW_PACKAGE_DISABLE_COMMAND_LINE_INTERFACE</span></code></a> variable to prevent the user from passing any consumer command to the installer, like <code class="docutils literal notranslate"><span class="pre">install</span></code>, <code class="docutils literal notranslate"><span class="pre">update</span></code>, and <code class="docutils literal notranslate"><span class="pre">remove</span></code>. This feature is available for QtIFW 4.0 and newer.</p></li> <li><p>The <span class="target" id="index-2-cpack_gen:CPack IFW Generator"></span><a class="reference internal" href="../cpack_gen/ifw.html#cpack_gen:CPack IFW Generator" title="CPack IFW Generator"><code class="xref cmake cmake-cpack_gen docutils literal notranslate"><span class="pre">CPack</span> <span class="pre">IFW</span> <span class="pre">Generator</span></code></a> gained the new <span class="target" id="index-0-variable:CPACK_IFW_PACKAGE_PRODUCT_IMAGES"></span><a class="reference internal" href="../cpack_gen/ifw.html#variable:CPACK_IFW_PACKAGE_PRODUCT_IMAGES" title="CPACK_IFW_PACKAGE_PRODUCT_IMAGES"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_IFW_PACKAGE_PRODUCT_IMAGES</span></code></a> variable for adding a list of images to be shown on the <code class="docutils literal notranslate"><span class="pre">PerformInstallationPage</span></code>. This feature is available for QtIFW 4.0 and newer.</p></li> <li><p>The <span class="target" id="index-3-cpack_gen:CPack IFW Generator"></span><a class="reference internal" href="../cpack_gen/ifw.html#cpack_gen:CPack IFW Generator" title="CPack IFW Generator"><code class="xref cmake cmake-cpack_gen docutils literal notranslate"><span class="pre">CPack</span> <span class="pre">IFW</span> <span class="pre">Generator</span></code></a> gained the new <span class="target" id="index-0-variable:CPACK_IFW_PACKAGE_RUN_PROGRAM"></span><a class="reference internal" href="../cpack_gen/ifw.html#variable:CPACK_IFW_PACKAGE_RUN_PROGRAM" title="CPACK_IFW_PACKAGE_RUN_PROGRAM"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_IFW_PACKAGE_RUN_PROGRAM</span></code></a>, <span class="target" id="index-0-variable:CPACK_IFW_PACKAGE_RUN_PROGRAM_ARGUMENTS"></span><a class="reference internal" href="../cpack_gen/ifw.html#variable:CPACK_IFW_PACKAGE_RUN_PROGRAM_ARGUMENTS" title="CPACK_IFW_PACKAGE_RUN_PROGRAM_ARGUMENTS"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_IFW_PACKAGE_RUN_PROGRAM_ARGUMENTS</span></code></a>, and <span class="target" id="index-0-variable:CPACK_IFW_PACKAGE_RUN_PROGRAM_DESCRIPTION"></span><a class="reference internal" href="../cpack_gen/ifw.html#variable:CPACK_IFW_PACKAGE_RUN_PROGRAM_DESCRIPTION" title="CPACK_IFW_PACKAGE_RUN_PROGRAM_DESCRIPTION"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_IFW_PACKAGE_RUN_PROGRAM_DESCRIPTION</span></code></a> variables for executing a command after the installer is done if the user accepts the action. This feature is available for QtIFW 4.0 and newer.</p></li> <li><p>The <span class="target" id="index-4-cpack_gen:CPack IFW Generator"></span><a class="reference internal" href="../cpack_gen/ifw.html#cpack_gen:CPack IFW Generator" title="CPack IFW Generator"><code class="xref cmake cmake-cpack_gen docutils literal notranslate"><span class="pre">CPack</span> <span class="pre">IFW</span> <span class="pre">Generator</span></code></a> gained the new <span class="target" id="index-0-variable:CPACK_IFW_PACKAGE_SIGNING_IDENTITY"></span><a class="reference internal" href="../cpack_gen/ifw.html#variable:CPACK_IFW_PACKAGE_SIGNING_IDENTITY" title="CPACK_IFW_PACKAGE_SIGNING_IDENTITY"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_IFW_PACKAGE_SIGNING_IDENTITY</span></code></a> variable for specifying a code signing identity to be used for signing the generated app bundle. This feature is available on macOS only, and for QtIFW 3.0 and newer.</p></li> <li><p>The <span class="target" id="index-0-cpack_gen:CPack WIX Generator"></span><a class="reference internal" href="../cpack_gen/wix.html#cpack_gen:CPack WIX Generator" title="CPack WIX Generator"><code class="xref cmake cmake-cpack_gen docutils literal notranslate"><span class="pre">CPack</span> <span class="pre">WIX</span> <span class="pre">Generator</span></code></a> gained a new variable, <span class="target" id="index-0-variable:CPACK_WIX_SKIP_WIX_UI_EXTENSION"></span><a class="reference internal" href="../cpack_gen/wix.html#variable:CPACK_WIX_SKIP_WIX_UI_EXTENSION" title="CPACK_WIX_SKIP_WIX_UI_EXTENSION"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_WIX_SKIP_WIX_UI_EXTENSION</span></code></a>, to skip the inclusion of WixUIExtensions.</p></li> </ul> </section> </section> <section id="deprecated-and-removed-features"> <h2><a class="toc-backref" href="#id17" role="doc-backlink">Deprecated and Removed Features</a><a class="headerlink" href="#deprecated-and-removed-features" title="Permalink to this heading">ΒΆ</a></h2> <ul class="simple"> <li><p><span class="target" id="index-3-manual:cmake(1)"></span><a class="reference internal" href="../manual/cmake.1.html#manual:cmake(1)" title="cmake(1)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cmake(1)</span></code></a> now warns when multiple source paths are specified, as in <code class="docutils literal notranslate"><span class="pre">cmake</span> <span class="pre">-S</span> <span class="pre">src1</span> <span class="pre">src2</span></code>. This has never been officially documented or supported, but older versions accidentally accepted multiple source paths and used the last path specified. Update scripts to avoid passing multiple source path arguments.</p></li> <li><p>The <span class="target" id="index-0-manual:cpack(1)"></span><a class="reference internal" href="../manual/cpack.1.html#manual:cpack(1)" title="cpack(1)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">cpack(1)</span></code></a> undocumented <code class="docutils literal notranslate"><span class="pre">OSXX11</span></code> generator has been removed.</p></li> <li><p>The previously undocumented <code class="docutils literal notranslate"><span class="pre">CPACK_PACKAGEMAKER_CHOICES</span></code> variable used in the <code class="docutils literal notranslate"><span class="pre">CPack.distribution.dist.in</span></code> template has been replaced by a new <code class="docutils literal notranslate"><span class="pre">CPACK_APPLE_PKG_INSTALLER_CONTENT</span></code> variable. This only affects projects that were providing their own custom <code class="docutils literal notranslate"><span class="pre">CPack.distribution.dist.in</span></code> template file, but still relied on <code class="docutils literal notranslate"><span class="pre">CPACK_PACKAGEMAKER_CHOICES</span></code> being set. Those custom template files should be updated to use <code class="docutils literal notranslate"><span class="pre">CPACK_APPLE_PKG_INSTALLER_CONTENT</span></code> instead, or to fully define all the template file's contents without relying on substitution of either variable.</p></li> </ul> </section> <section id="other-changes"> <h2><a class="toc-backref" href="#id18" role="doc-backlink">Other Changes</a><a class="headerlink" href="#other-changes" title="Permalink to this heading">ΒΆ</a></h2> <ul class="simple"> <li><p>The <span class="target" id="index-0-cpack_gen:CPack DragNDrop Generator"></span><a class="reference internal" href="../cpack_gen/dmg.html#cpack_gen:CPack DragNDrop Generator" title="CPack DragNDrop Generator"><code class="xref cmake cmake-cpack_gen docutils literal notranslate"><span class="pre">CPack</span> <span class="pre">DragNDrop</span> <span class="pre">Generator</span></code></a> no longer attaches <span class="target" id="index-0-variable:CPACK_RESOURCE_FILE_LICENSE"></span><a class="reference internal" href="../module/CPack.html#variable:CPACK_RESOURCE_FILE_LICENSE" title="CPACK_RESOURCE_FILE_LICENSE"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_RESOURCE_FILE_LICENSE</span></code></a> as the license agreement in the generated <code class="docutils literal notranslate"><span class="pre">.dmg</span></code> unless explicitly activated by a <span class="target" id="index-0-variable:CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE"></span><a class="reference internal" href="../cpack_gen/dmg.html#variable:CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE" title="CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE</span></code></a> option. In CMake projects, the <span class="target" id="index-0-module:CPack"></span><a class="reference internal" href="../module/CPack.html#module:CPack" title="CPack"><code class="xref cmake cmake-module docutils literal notranslate"><span class="pre">CPack</span></code></a> module enables the option by default for compatibility.</p></li> <li><p><code class="docutils literal notranslate"><span class="pre">CUDA</span></code> targets may now enable both <span class="target" id="index-0-prop_tgt:CUDA_SEPARABLE_COMPILATION"></span><a class="reference internal" href="../prop_tgt/CUDA_SEPARABLE_COMPILATION.html#prop_tgt:CUDA_SEPARABLE_COMPILATION" title="CUDA_SEPARABLE_COMPILATION"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">CUDA_SEPARABLE_COMPILATION</span></code></a> and <span class="target" id="index-0-prop_tgt:CUDA_PTX_COMPILATION"></span><a class="reference internal" href="../prop_tgt/CUDA_PTX_COMPILATION.html#prop_tgt:CUDA_PTX_COMPILATION" title="CUDA_PTX_COMPILATION"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">CUDA_PTX_COMPILATION</span></code></a>.</p></li> <li><p><code class="docutils literal notranslate"><span class="pre">CUDA</span></code> compiler detection now:</p> <ul> <li><p>issues an error in all cases when it's unable to compute the default architecture(s) if required (see <span class="target" id="index-0-policy:CMP0104"></span><a class="reference internal" href="../policy/CMP0104.html#policy:CMP0104" title="CMP0104"><code class="xref cmake cmake-policy docutils literal notranslate"><span class="pre">CMP0104</span></code></a>),</p></li> <li><p>handles <code class="docutils literal notranslate"><span class="pre">OFF</span></code> for <span class="target" id="index-1-variable:CMAKE_CUDA_ARCHITECTURES"></span><a class="reference internal" href="../variable/CMAKE_CUDA_ARCHITECTURES.html#variable:CMAKE_CUDA_ARCHITECTURES" title="CMAKE_CUDA_ARCHITECTURES"><code class="xref cmake cmake-variable docutils literal notranslate"><span class="pre">CMAKE_CUDA_ARCHITECTURES</span></code></a> on Clang,</p></li> <li><p>supports the theoretical case of multiple default architectures, and</p></li> <li><p>tries to detect invalid architectures and issue an error.</p></li> </ul> </li> <li><p><code class="docutils literal notranslate"><span class="pre">CUDA</span></code> with Clang now implements policy <span class="target" id="index-0-policy:CMP0105"></span><a class="reference internal" href="../policy/CMP0105.html#policy:CMP0105" title="CMP0105"><code class="xref cmake cmake-policy docutils literal notranslate"><span class="pre">CMP0105</span></code></a> and the <span class="target" id="index-0-genex:DEVICE_LINK"></span><a class="reference internal" href="../manual/cmake-generator-expressions.7.html#genex:DEVICE_LINK" title="DEVICE_LINK"><code class="xref cmake cmake-genex docutils literal notranslate"><span class="pre">$<DEVICE_LINK:...></span></code></a> and <span class="target" id="index-0-genex:HOST_LINK"></span><a class="reference internal" href="../manual/cmake-generator-expressions.7.html#genex:HOST_LINK" title="HOST_LINK"><code class="xref cmake cmake-genex docutils literal notranslate"><span class="pre">$<HOST_LINK:...></span></code></a> generator expressions.</p></li> <li><p>The <span class="target" id="index-1-command:define_property"></span><a class="reference internal" href="../command/define_property.html#command:define_property" title="define_property"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">define_property()</span></code></a> command's <code class="docutils literal notranslate"><span class="pre">BRIEF_DOCS</span></code> and <code class="docutils literal notranslate"><span class="pre">FULL_DOCS</span></code> arguments are now optional.</p></li> <li><p><span class="target" id="index-0-manual:ccmake(1)"></span><a class="reference internal" href="../manual/ccmake.1.html#manual:ccmake(1)" title="ccmake(1)"><code class="xref cmake cmake-manual docutils literal notranslate"><span class="pre">ccmake(1)</span></code></a> may now be enabled on Windows when building CMake from source. This is experimental, and so is not included in official distributions.</p></li> </ul> </section> <section id="updates"> <h2><a class="toc-backref" href="#id19" role="doc-backlink">Updates</a><a class="headerlink" href="#updates" title="Permalink to this heading">ΒΆ</a></h2> <p>Changes made since CMake 3.23.0 include the following.</p> <section id="id1"> <h3><a class="toc-backref" href="#id20" role="doc-backlink">3.23.1</a><a class="headerlink" href="#id1" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The <span class="target" id="index-1-command:target_sources"></span><a class="reference internal" href="../command/target_sources.html#command:target_sources" title="target_sources"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">target_sources()</span></code></a> <code class="docutils literal notranslate"><span class="pre">FILE_SET</span></code> feature added in CMake 3.23.0 does not yet place header files properly in Apple <span class="target" id="index-0-prop_tgt:FRAMEWORK"></span><a class="reference internal" href="../prop_tgt/FRAMEWORK.html#prop_tgt:FRAMEWORK" title="FRAMEWORK"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">FRAMEWORK</span></code></a> targets. Pending further work in a future version of CMake, it is now an error to add a <code class="docutils literal notranslate"><span class="pre">FILE_SET</span></code> of type <code class="docutils literal notranslate"><span class="pre">HEADERS</span></code> to such targets on Apple platforms.</p></li> <li><p>The <span class="target" id="index-1-prop_tgt:HEADER_SETS"></span><a class="reference internal" href="../prop_tgt/HEADER_SETS.html#prop_tgt:HEADER_SETS" title="HEADER_SETS"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">HEADER_SETS</span></code></a> and <span class="target" id="index-1-prop_tgt:INTERFACE_HEADER_SETS"></span><a class="reference internal" href="../prop_tgt/INTERFACE_HEADER_SETS.html#prop_tgt:INTERFACE_HEADER_SETS" title="INTERFACE_HEADER_SETS"><code class="xref cmake cmake-prop_tgt docutils literal notranslate"><span class="pre">INTERFACE_HEADER_SETS</span></code></a> target properties added in CMake 3.23.0 are now read-only records of the header sets created by the <span class="target" id="index-2-command:target_sources"></span><a class="reference internal" href="../command/target_sources.html#command:target_sources" title="target_sources"><code class="xref cmake cmake-command docutils literal notranslate"><span class="pre">target_sources()</span></code></a> command.</p></li> </ul> </section> <section id="id2"> <h3><a class="toc-backref" href="#id21" role="doc-backlink">3.23.2</a><a class="headerlink" href="#id2" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>The <code class="docutils literal notranslate"><span class="pre">CPACK_PACKAGEMAKER_CHOICES</span></code> variable used in the <code class="docutils literal notranslate"><span class="pre">CPack.distribution.dist.in</span></code> template file was replaced by a new <code class="docutils literal notranslate"><span class="pre">CPACK_APPLE_PKG_INSTALLER_CONTENT</span></code> variable in CMake 3.23.0. This broke projects that provided their own template file but still expected the <code class="docutils literal notranslate"><span class="pre">CPACK_PACKAGEMAKER_CHOICES</span></code> variable to be defined. The old <code class="docutils literal notranslate"><span class="pre">CPACK_PACKAGEMAKER_CHOICES</span></code> variable is now also set to the same content as it was before, but it is formally deprecated.</p></li> </ul> </section> <section id="id3"> <h3><a class="toc-backref" href="#id22" role="doc-backlink">3.23.3, 3.23.4, 3.23.5</a><a class="headerlink" href="#id3" title="Permalink to this heading">ΒΆ</a></h3> <ul class="simple"> <li><p>These versions made no changes to documented features or interfaces. Some implementation updates were made to support ecosystem changes and/or fix regressions.</p></li> </ul> </section> </section> </section> <div class="clearer"></div> </div> </div> </div> <div class="sphinxsidebar" role="navigation" aria-label="main navigation"> <div class="sphinxsidebarwrapper"> <div> <h3><a href="../index.html">Table of Contents</a></h3> <ul> <li><a class="reference internal" href="#">CMake 3.23 Release Notes</a><ul> <li><a class="reference internal" href="#new-features">New Features</a><ul> <li><a class="reference internal" href="#presets">Presets</a></li> <li><a class="reference internal" href="#generators">Generators</a></li> <li><a class="reference internal" href="#command-line">Command-Line</a></li> <li><a class="reference internal" href="#compilers">Compilers</a></li> <li><a class="reference internal" href="#file-based-api">File-Based API</a></li> <li><a class="reference internal" href="#commands">Commands</a></li> <li><a class="reference internal" href="#variables">Variables</a></li> <li><a class="reference internal" href="#properties">Properties</a></li> <li><a class="reference internal" href="#modules">Modules</a></li> <li><a class="reference internal" href="#ctest">CTest</a></li> <li><a class="reference internal" href="#cpack">CPack</a></li> </ul> </li> <li><a class="reference internal" href="#deprecated-and-removed-features">Deprecated and Removed Features</a></li> <li><a class="reference internal" href="#other-changes">Other Changes</a></li> <li><a class="reference internal" href="#updates">Updates</a><ul> <li><a class="reference internal" href="#id1">3.23.1</a></li> <li><a class="reference internal" href="#id2">3.23.2</a></li> <li><a class="reference internal" href="#id3">3.23.3, 3.23.4, 3.23.5</a></li> </ul> </li> </ul> </li> </ul> </div> <div> <h4>Previous topic</h4> <p class="topless"><a href="3.24.html" title="previous chapter">CMake 3.24 Release Notes</a></p> </div> <div> <h4>Next topic</h4> <p class="topless"><a href="3.22.html" title="next chapter">CMake 3.22 Release Notes</a></p> </div> <div role="note" aria-label="source link"> <h3>This Page</h3> <ul class="this-page-menu"> <li><a href="../_sources/release/3.23.rst.txt" rel="nofollow">Show Source</a></li> </ul> </div> <div id="searchbox" style="display: none" role="search"> <h3 id="searchlabel">Quick search</h3> <div class="searchformwrapper"> <form class="search" action="../search.html" method="get"> <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/> <input type="submit" value="Go" /> </form> </div> </div> <script>document.getElementById('searchbox').style.display = "block"</script> </div> </div> <div class="clearer"></div> </div> <div class="related" role="navigation" aria-label="related navigation"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="../genindex.html" title="General Index" >index</a></li> <li class="right" > <a href="3.22.html" title="CMake 3.22 Release Notes" >next</a> |</li> <li class="right" > <a href="3.24.html" title="CMake 3.24 Release Notes" >previous</a> |</li> <li> <img src="../_static/cmake-logo-16.png" alt="" style="vertical-align: middle; margin-top: -2px" /> </li> <li> <a href="https://cmake.org/">CMake</a> » </li> <li> <a href="../index.html">3.26.3 Documentation</a> » </li> <li class="nav-item nav-item-1"><a href="index.html" >CMake Release Notes</a> »</li> <li class="nav-item nav-item-this"><a href="">CMake 3.23 Release Notes</a></li> </ul> </div> <div class="footer" role="contentinfo"> © Copyright 2000-2023 Kitware, Inc. and Contributors. Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 5.0.2. </div> </body> </html>