Tyler
7c38e6bb52
Add CMAKE_<LANG>_STANDARD_LATEST variables
...
Add a variable to indicate the latest standard known to be supported for
each language:
* `CMAKE_C_STANDARD_LATEST`
* `CMAKE_CXX_STANDARD_LATEST`
* `CMAKE_CUDA_STANDARD_LATEST`
* `CMAKE_HIP_STANDARD_LATEST`
* `CMAKE_OBJC_STANDARD_LATEST`
* `CMAKE_OBJCXX_STANDARD_LATEST`
These variables, more generally referred to as
`CMAKE_<LANG>_STANDARD_LATEST`, are assigned an integer value which
represents the minimum between the latest version of the associated
language standard supported by the current compiler and the latest
version supported by CMake.
Add documentation for these variables in a new page called
`CMAKE_<LANG>_STANDARD_LATEST` was added under the "Variables for
Languages" section of the `cmake-variables(7)` page.
Update each compiler-specific CMake script under
`${CMAKE_ROOT}\Modules\Compiler` to manually define the relevant
`CMAKE_<LANG>_STANDARD_LATEST` variable as necessary. This will
require updating and maintaining as newer compiler versions become
recognized by CMake.
Closes : #25717
2024-04-30 11:05:03 -04:00
Craig Scott
d40e119acb
Merge topic 'help-fix-cmake_path-example'
...
769866163a Help: Fix cmake_path example
Acked-by: Kitware Robot <kwrobot@kitware.com >
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com >
Merge-request: !9467
2024-04-28 04:21:16 -04:00
Craig Scott
9b61a7147d
Help: CMP0135 applies to FetchContent as well
...
This updates the CMP0135 documentation, which should have been
done as part of c2044fdf3f (FetchContent: Respect the CMP0135 policy
setting, 2022-06-02).
Issue: #23560
2024-04-27 11:01:45 +10:00
Juan Ramos
769866163a
Help: Fix cmake_path example
...
Fixes : #25938
2024-04-26 08:49:07 -07:00
Brad King
a4b7a13c23
Merge topic 'doc-genex'
...
263f6b888c Help: Document TARGET_PROPERTY genex handling of transitive properties
f70eb84be7 Help: Clarify role of TARGET_NAME generator expression
36145e2680 Help: Organize target-dependent generator expressions into subsections
50eadd794e Help: Clarify cross-references to target-dependent generator expressions
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9460
2024-04-25 11:25:30 -04:00
Brad King
263f6b888c
Help: Document TARGET_PROPERTY genex handling of transitive properties
2024-04-25 10:53:47 -04:00
Brad King
f70eb84be7
Help: Clarify role of TARGET_NAME generator expression
2024-04-25 10:49:16 -04:00
Brad King
36145e2680
Help: Organize target-dependent generator expressions into subsections
2024-04-25 10:49:16 -04:00
Brad King
50eadd794e
Help: Clarify cross-references to target-dependent generator expressions
2024-04-25 10:49:16 -04:00
Brad King
2c3a9d5385
Merge topic 'help.file'
...
d2d2ffe1c1 Help: file: document GET_RUNTIME_DEPENDENCIES separately
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Acked-by: Juan Ramos <juan.ramos@kitware.com >
Merge-request: !9456
2024-04-25 10:28:36 -04:00
Brad King
dea9daa6df
Help: Fix link in cmake-buildsystem(7)
...
One local cross-reference added by commit 835f34949e (Help: Update
cmake-buildsystem(7) build and usage requirements, 2024-04-23) had
incorrect syntax.
2024-04-25 08:39:42 -04:00
Joachim Wuttke (h)
d2d2ffe1c1
Help: file: document GET_RUNTIME_DEPENDENCIES separately
...
Moved documentation of file(GET_RUNTIME_DEPENDENCIES ...) from
the 'Reading' section to a separate section at the bottom of
the page. Because it is a very long text, and because this
signature is quite different from all the others in the
'Reading' section.
2024-04-24 15:28:39 +02:00
Brad King
835f34949e
Help: Update cmake-buildsystem(7) build and usage requirements
...
Re-organize the section to explicitly describe target-specific
commands, build properties, and usage requirement properties.
Add builtin transitive properties that have been created since
the document was first written.
2024-04-24 09:06:32 -04:00
Brad King
f19949db77
Help: Document when AUTOUIC_OPTIONS properties were added
2024-04-23 12:57:49 -04:00
Brad King
ad98b352ba
Merge topic 'doc-install-prefix-override-default'
...
062c9dda89 Help: update CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9445
2024-04-22 08:26:28 -04:00
Etienne Doms
062c9dda89
Help: update CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT
...
Suggests to override CMAKE_INSTALL_PREFIX value with set_property(CACHE)
instead of set(FORCE).
2024-04-19 18:31:12 +02:00
Brad King
bf8c0d625d
Merge topic 'doc-objc-lang-flags'
...
31e6017bb6 Help: Document ObjC/ObjC++ flag variables
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !9437
2024-04-19 08:57:28 -04:00
Alexander Borsuk
31e6017bb6
Help: Document ObjC/ObjC++ flag variables
...
Signed-off-by: Alexander Borsuk <me@alex.bio >
2024-04-18 17:48:59 +02:00
Ben Boeckel
678717f3e4
cxxmodules: provide a detection variable for import std
2024-04-18 09:53:21 -04:00
Brad King
048221add9
Merge topic 'doc-ObjC-17-23'
...
84f1eb64f3 Help/OBJC_STANDARD: Document Objective C17 and C23 support
Acked-by: Kitware Robot <kwrobot@kitware.com >
Reviewed-by: Raul Tambre <raul@tambre.ee >
Merge-request: !9439
2024-04-17 08:43:16 -04:00
Raul Tambre
84f1eb64f3
Help/OBJC_STANDARD: Document Objective C17 and C23 support
...
This was missed in
* commit 93b7d3d292 (C17 support, 2021-02-06, v3.21.0-rc1~587^2~10)
* commit dcd599757f (C23 support, 2021-02-06, v3.21.0-rc1~587^2~9)
Fixes : #25746
2024-04-16 15:24:20 -04:00
Brad King
d550a1ebea
Merge topic 'cpack-innosetup-linux'
...
d4a46314ac CPack: Enable Inno Setup generator on non-Windows hosts
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !9431
2024-04-16 08:55:57 -04:00
Brad King
f494bbaf8f
Merge topic 'FindBacktrace-imported-library'
...
9433755e5d FindBacktrace: Add imported library
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9406
2024-04-16 08:51:59 -04:00
Andreas Oetken
d4a46314ac
CPack: Enable Inno Setup generator on non-Windows hosts
...
Innosetup tools can be run on Linux using Wine, thus there is no reason
to block this in CMake.
2024-04-15 16:34:22 -04:00
David Faure
9433755e5d
FindBacktrace: Add imported library
...
This is to avoid (a future version of) Qt from having to wrap
FindBacktrace like [1].
[1] https://code.qt.io/cgit/qt/qtbase.git/tree/cmake/FindWrapBacktrace.cmake
2024-04-15 13:27:23 -04:00
Brad King
ca449572ef
Merge topic 'cxxmodules-import-std'
...
429902ebad Clang: support creating a target for imported modules
4617f272b4 MSVC: support `import std`
62a71047bb cmGraphVizWriter: ignore `__cmake_`-prefixed targets
442086c1dc fileapi: ignore `__cmake_`-prefixed targets
ffe74289b3 CMakeDetermineCompilerId: extract C++ standard library impl
15bbd1d9b8 Experimental: add an experimental feature gate for `import std`
f80c60df02 CMakeDetermineCompilerSupport: construct C++ modules targets
19341e2582 ci: enable `import_std23` C++ module tests on MSVC
...
Acked-by: Kitware Robot <kwrobot@kitware.com >
Tested-by: buildbot <buildbot@kitware.com >
Merge-request: !9337
2024-04-15 09:56:53 -04:00
Ben Boeckel
429902ebad
Clang: support creating a target for imported modules
2024-04-12 11:46:40 -04:00
Ben Boeckel
4617f272b4
MSVC: support import std
2024-04-12 11:46:40 -04:00
Ben Boeckel
15bbd1d9b8
Experimental: add an experimental feature gate for import std
2024-04-12 11:46:39 -04:00
Brad King
a2efb32667
Merge topic 'doc-regex-classes'
...
dc7a810a75 Help: Clarify documentation on regex character classes
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9419
2024-04-12 09:27:38 -04:00
Brad King
96a9dd7544
Merge branch 'release-3.29'
2024-04-11 10:45:02 -04:00
Ben Boeckel
2c8361f923
cxxmodules: link to std-providing targets when available
2024-04-11 10:19:44 -04:00
Ben Boeckel
7146cf9248
cmTarget: support the CXX_MODULE_STD property
2024-04-11 10:19:44 -04:00
Ben Boeckel
5bbd2c12db
Help/cmake-cxxmodules: describe the compilation strategy
2024-04-11 10:19:43 -04:00
Brad King
d3190d6a73
CMake 3.29.2
2024-04-11 10:12:19 -04:00
Martin Stadler
dc7a810a75
Help: Clarify documentation on regex character classes
...
In particular, give an example of matching `]`.
2024-04-11 08:46:37 -04:00
Raul Tambre
f21dbf8f26
C++26: Fix C++/CUDA/HIP compile feature support
...
In commit f808d8afb9 (CMake: Support upcoming C++26 language level,
2022-08-19, v3.25.0-rc1~218^2) we forgot some necessary scaffolding.
Fixes : #25819
2024-04-09 11:38:59 +03:00
Brad King
de6d9a46cb
Merge branch 'release-3.29'
2024-04-03 12:18:51 -04:00
Brad King
a4774b0c10
CMake 3.29.1
2024-04-03 11:45:14 -04:00
Brad King
7fde843527
Merge topic 'enable_language-before-project'
...
97464aa970 enable_language(): Fail if called before project()
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !9396
2024-04-03 09:38:46 -04:00
Brad King
3c8d4ed51a
Merge topic 'swift-linker-selection'
...
3fb4092826 Swift: Add CMAKE_LINKER_TYPE support
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9380
2024-04-03 09:34:06 -04:00
Evan Wilde
3fb4092826
Swift: Add CMAKE_LINKER_TYPE support
...
Extend commit 96a953b1ed (Add options to specify linker tool, 2023-09-27,
v3.29.0-rc1~577^2) with the `CMAKE_Swift_USING_LINKER_*` variables
needed to support `CMAKE_LINKER_TYPE` for Swift.
2024-04-02 10:42:12 -04:00
Craig Scott
97464aa970
enable_language(): Fail if called before project()
...
Fixes : #25550
2024-04-02 23:00:38 +11:00
Brad King
b0315c83dc
ci: package .zip source archives using LF newlines
...
Previously we provided a `.zip` archive with CRLF newlines and a
`.tar.gz` archive with LF newlines. This is no longer consistent
with modern conventions. Use LF newlines in both.
Fixes : #25467
2024-04-01 10:53:11 -04:00
Brad King
dea9982990
Merge topic 'patch-help-manually-added-dependencies'
...
e722f73e40 Help: Document MANUALLY_ADDED_DEPENDENCIES in add_dependencies
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9388
2024-04-01 09:42:32 -04:00
Brad King
16dd3b79dc
Merge topic 'check-Werror-CMP0066'
...
cebcc07a80 CheckSymbolExists: Remove -Werror from per-config flags
06c99ce73b CheckSymbolExists: Avoid removing the flag after -Werror
e60281e968 CMakeDetermineCompilerABI: Remove -Werror from per-config flags
6abd25e7fd Help: Fix a typo
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !9377
2024-04-01 09:38:57 -04:00
Brad King
252c2a6fcb
Merge topic 'add_library-no-static-fallback'
...
a61c9afdf8 add_library: Reject shared libraries on platforms that do not support them
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: buildbot <buildbot@kitware.com >
Merge-request: !9347
2024-04-01 09:38:14 -04:00
Brad King
554a9b00c8
Merge topic 'tls-verify'
...
7139944264 ctest: Fall back to CMake environment variable for TLS server verification
c295df53c6 ctest: Test fallback to CMake options for TLS server verification
0d250dd021 ExternalProject: Honor CMAKE_TLS_VERIFY environment variable
e8404502b1 ExternalProject: Revise TLS_VERIFY wording to use TLS_VERSION pattern
46faaf9667 file(DOWNLOAD|UPLOAD): Add CMAKE_TLS_VERIFY environment variable
8b0169fe2b file(DOWNLOAD|UPLOAD): Add test covering CMAKE_TLS_VERIFY cmake variable
93886f5c7d file(DOWNLOAD|UPLOAD): Avoid unnecessary CMAKE_TLS_VERIFY variable lookup
bed32f400e file(DOWNLOAD|UPLOAD): Document TLS_VERSION fallback to environment variable
...
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: scivision <michael@scivision.dev >
Merge-request: !9389
2024-04-01 09:37:20 -04:00
Brad King
5ebd5daa93
Merge topic 'rel-win-PATH'
...
2e5330591d Utilities/Release/WiX: Modify PATH by default when installing on Windows
32388821e2 Utilities/Release/WiX: Save PATH modification preference persistently
Acked-by: Kitware Robot <kwrobot@kitware.com >
Acked-by: Nazar Mokrynskyi <nazar@mokrynskyi.com >
Merge-request: !9386
2024-04-01 09:36:27 -04:00
Brad King
622e17a0f0
Merge topic 'doc-vsfortran'
...
7fa0057c74 Help: emphasize need for VS Integrations with oneAPI Fortran
Acked-by: Kitware Robot <kwrobot@kitware.com >
Merge-request: !9387
2024-04-01 09:33:45 -04:00