Commit Graph

60360 Commits

Author SHA1 Message Date
Matthew Woehlke 746c776caf ConfigureLog: Add infrastructure for structured configure event logging
Add infrastructure for a "configure log".  Use YAML for a balance of
machine- and human-readability to records details of configure-time
events in a structured format.

Teach the RunCMake test framework to support matching the configure log.

Issue: #23200
2022-12-16 10:11:37 -05:00
Matthew Woehlke e8b8d82cbf Tests: Generalize RunCMake expectation component names
Do not assume all the component names start in "std".

Co-authored-by: Brad King <brad.king@kitware.com>
2022-12-14 11:42:29 -05:00
Brad King 8d29a0bda6 cmTryRunCommand: Factor out stdout/stderr capture conditions 2022-12-14 11:42:29 -05:00
Brad King fdda4095a3 cmCoreTryCompile: Return more semantic information from compile step
Update the `TryCompileCode` signature to allow callers to distinguish
between administrative failures and a compilation failure.  Return
results in a structure to which more information can be added later.
2022-12-14 11:42:29 -05:00
Brad King dcb1c9c080 Merge topic 'codespell-commit-message'
42445b2c04 ci: run commit messages through codespell

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !8007
2022-12-14 09:04:14 -05:00
Brad King 84c2518a7b Merge topic 'COMPILE_DEFINITIONS-property-cleanup'
7480fa0a5f COMPILE_DEFINITIONS property: ensure leading -D is removed in all cases

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8004
2022-12-14 09:03:08 -05:00
Brad King 15dcb41f20 Merge topic 'vectorfix'
6d15754814 Make vector operations more efficient

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !8010
2022-12-14 09:01:41 -05:00
Brad King 7ca90d04fc Merge topic 'find_cudatoolkit_add_nvjitlink'
d37d9c098c FindCUDAToolkit: Support the new `nvJitLink` library in CUDA 12

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8014
2022-12-14 09:00:29 -05:00
Brad King ac3b6b5f50 Merge branch 'release-3.25' 2022-12-14 08:58:55 -05:00
Brad King 29c4690e0a Merge topic 'cuda-nvcc-cuda20'
0aeeb8160c CUDA: Add support for cuda_std_20 for nvcc 12.0+

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8008
2022-12-14 08:58:55 -05:00
Brad King 2d3ed58cee Merge topic 'cuda-nvcc-cuda20' into release-3.25
0aeeb8160c CUDA: Add support for cuda_std_20 for nvcc 12.0+

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8008
2022-12-14 08:58:54 -05:00
Kitware Robot fd8c8e2103 CMake Nightly Date Stamp 2022-12-14 00:01:11 -05:00
Marc Chevrier 7480fa0a5f COMPILE_DEFINITIONS property: ensure leading -D is removed in all cases
Fixes: #24186
2022-12-13 16:54:56 +01:00
Kyle Edwards 42445b2c04 ci: run commit messages through codespell 2022-12-13 10:29:20 -05:00
Robert Maynard 0aeeb8160c CUDA: Add support for cuda_std_20 for nvcc 12.0+
CUDA 12.0 has been released with support for `-std=c++20`.
2022-12-13 10:18:15 -05:00
Kitware Robot ff875ed859 CMake Nightly Date Stamp 2022-12-13 00:01:09 -05:00
Robert Maynard d37d9c098c FindCUDAToolkit: Support the new nvJitLink library in CUDA 12 2022-12-12 13:28:50 -05:00
Kitware Robot 07fe1c9eb8 CMake Nightly Date Stamp 2022-12-12 00:01:17 -05:00
Kitware Robot 73766b5cd2 CMake Nightly Date Stamp 2022-12-11 00:01:09 -05:00
Rose 6d15754814 Make vector operations more efficient 2022-12-10 12:48:09 -05:00
Kitware Robot 192903b244 CMake Nightly Date Stamp 2022-12-10 00:01:11 -05:00
Brad King af58b6d2ad Merge topic 'cmake-clang-tidy-export-fixes-option'
b2b1faa403 CMake: add option to export clang-tidy fixes to a directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8005
2022-12-09 07:58:08 -05:00
Brad King d83b1dbac6 Merge topic 'file-make-directory-descriptive-errors'
efae1ab68b file(MAKE_DIRECTORY): Provide a more descriptive error message

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8003
2022-12-09 07:57:22 -05:00
Brad King 8e46329f35 Merge topic 'lcc-upd-warning'
b1577f7a6a LCC: Update -Wunused-variable warning number as of LCC 1.26.16

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8006
2022-12-09 07:54:00 -05:00
Brad King 1652616f95 Merge topic 'doc-add_custom_command'
303c48fbd4 Help: Add add_custom_command example with output consumed by multiple targets
5f2bf6ecc6 Help: Drop misleading add_custom_command "makefile terms" explanation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Rejected-by: BRevzin <barry.revzin@gmail.com>
Merge-request: !8002
2022-12-09 07:53:08 -05:00
Kitware Robot d1b9e03b79 CMake Nightly Date Stamp 2022-12-09 00:01:18 -05:00
Brad King 303c48fbd4 Help: Add add_custom_command example with output consumed by multiple targets
This is a common use case, so add an example demonstrating it.
2022-12-08 15:12:32 -05:00
makise-homura b1577f7a6a LCC: Update -Wunused-variable warning number as of LCC 1.26.16 2022-12-08 20:34:58 +03:00
Kyle Edwards b2b1faa403 CMake: add option to export clang-tidy fixes to a directory 2022-12-08 09:42:27 -05:00
Brad King 986fce1fa7 Merge topic 'vs-version-var'
5ce0f03cce VS: Add a variable to report the Visual Studio version build number
55529c5e93 Help: Factor out VS Build Number components document fragment

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8000
2022-12-08 08:03:20 -05:00
Brad King 239beca1e3 Merge topic 'test-FindBoost-no-system'
8b9c9e7e27 Tests: Teach RunCMake.FindBoost to avoid finding an external Boost

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7997
2022-12-08 08:00:07 -05:00
Brad King 9fc3d5905f Merge topic 'ci-cuda'
ae610be60f gitlab-ci: de-duplicate cuda job settings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7998
2022-12-08 07:59:29 -05:00
Brad King 2223155d70 Merge branch 'release-3.25' 2022-12-08 07:58:08 -05:00
Brad King d5d4c698e9 Merge topic 'ccmake-aix-curses'
d91d9ec431 ccmake: Restore compilation with AIX curses.h

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8001
2022-12-08 07:58:07 -05:00
Brad King 6db3519c41 Merge topic 'ccmake-aix-curses' into release-3.25
d91d9ec431 ccmake: Restore compilation with AIX curses.h

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8001
2022-12-08 07:58:06 -05:00
Terence Noone efae1ab68b file(MAKE_DIRECTORY): Provide a more descriptive error message
Previously, MAKE_DIRECTORY would print `problem creating directory: {}`,
which was very unhelpful for debugging.  Extend the message with the
OS error string.
2022-12-08 07:54:55 -05:00
Kitware Robot 51f5ed0a7a CMake Nightly Date Stamp 2022-12-08 00:01:11 -05:00
Brad King 5f2bf6ecc6 Help: Drop misleading add_custom_command "makefile terms" explanation
The "In makefile terms" explanation is left from very early days of
CMake to help developers migrating from hand-written makefiles.
These days it is often misinterpreted, particularly in the context
of multiple `add_custom_command` calls, to mean that we generate a
single Makefile containing rules for all custom commands.  This
leads to an incorrect mental model of the expressed build system.
The actual generated build system may spread the rules across multiple
targets that do not see the each other's file-level rules, which makes
target-level dependencies important too.
2022-12-07 18:39:37 -05:00
Brad King d91d9ec431 ccmake: Restore compilation with AIX curses.h
On AIX, including `<curses.h>` includes `<term.h>` which defines
a bunch of non-prefixed, lower-case macro names.  Undefine one
that conflicts with our source code.

Fixes: #24229
2022-12-07 17:57:28 -05:00
Brad King 5ce0f03cce VS: Add a variable to report the Visual Studio version build number
VS 2017 and above come with a Visual Studio Installer tool that tracks
four-component Visual Studio version numbers.  We already detect the VS
version number because it is needed to make some generation decisions.
Provide the number to projects in a `CMAKE_VS_VERSION_BUILD_NUMBER`
variable so they can use it similarly.

Fixes: #24230
2022-12-07 17:49:04 -05:00
Brad King 55529c5e93 Help: Factor out VS Build Number components document fragment 2022-12-07 17:46:07 -05:00
Brad King ae610be60f gitlab-ci: de-duplicate cuda job settings 2022-12-07 09:41:04 -05:00
Brad King 8b9c9e7e27 Tests: Teach RunCMake.FindBoost to avoid finding an external Boost
The `ConfigModeNotFound` case does not expect to find a Boost.
Avoid accidentally finding one on the host.
2022-12-07 08:21:39 -05:00
Brad King 127fa54808 Merge topic 'vs-dotnet-sdk-xaml-resx'
c445dd2797 VS: Add Xaml and Resx files to .Net SDK style projects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7991
2022-12-07 08:20:46 -05:00
Brad King 3b4337adc7 Merge topic 'clang-tidy-export-fixes-dir'
232467eb1c clang-tidy: add <LANG>_CLANG_TIDY_EXPORT_FIXES_DIR property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7982
2022-12-07 08:19:53 -05:00
Brad King 6bae244ad2 Merge topic 'cmstrcat-any-rvalue-arg'
1cca051470 cmStrCat(): allow any argument to be an rvalue string

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !7993
2022-12-07 08:19:08 -05:00
Brad King e544f2427d Merge topic 'stop_parsing_after_first_script_arg'
08aa516880 cmake: Stop parsing after `--` when detecting script mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7992
2022-12-07 08:17:14 -05:00
Brad King 602c24f778 Merge topic 'ci-nvhpc'
12d032b265 gitlab-ci: Update NVHPC to version 22.11

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7994
2022-12-07 08:15:13 -05:00
Brad King 5f94655808 Merge topic 'ci-cuda-no-static'
004f954401 ci: Add job to test minimal CUDA install (no static libs)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7996
2022-12-07 08:13:48 -05:00
Brad King 3be32a73cc Merge branch 'release-3.25' 2022-12-07 08:12:05 -05:00