Commit Graph

63559 Commits

Author SHA1 Message Date
Brad King
2744f14db1 codespell: Fix typos 2023-11-17 09:58:21 -05:00
Brad King
f2776ac063 codespell: Revise release note about short-lived field to avoid misspelling 2023-11-17 09:58:21 -05:00
Brad King
7517923418 codespell: Match valgrind output without repeating a spelling error 2023-11-17 09:58:21 -05:00
Brad King
40552722c9 Utilities/Sphinx: Fix python string literal syntax warning
Python 3.12 started warning:

    conf.py:35: SyntaxWarning: invalid escape sequence '\.'

Use a raw string literal instead.
2023-11-17 09:58:21 -05:00
Brad King
bc435bc288 Tests: Update HIP.MathFunctions case for nodiscard enforcement 2023-11-17 09:58:21 -05:00
Brad King
52ce26b9d3 Merge topic 'update-kwiml' into release-3.28
f2cc0ef2ed Merge branch 'upstream-KWIML' into update-kwiml
83dd9be285 KWIML 2023-11-16 (500bc253)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8978
2023-11-17 08:18:41 -05:00
Brad King
5595976c11 Merge topic 'doc-deprecated-hanging-indent' into release-3.28
b553ac4c2f Utilities/Sphinx: Add hanging indent to deprecation notes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8976
2023-11-17 08:11:54 -05:00
Brad King
f2cc0ef2ed Merge branch 'upstream-KWIML' into update-kwiml
* upstream-KWIML:
  KWIML 2023-11-16 (500bc253)
2023-11-16 15:15:51 -05:00
Brad King
b553ac4c2f Utilities/Sphinx: Add hanging indent to deprecation notes
Extend commit 038f4c12e3 (Utilities/Sphinx: Add hanging indent to
version notes, 2023-03-14, v3.27.0-rc1~322^2) to cover `deprecated`
directives.
2023-11-16 14:27:54 -05:00
KWIML Upstream
83dd9be285 KWIML 2023-11-16 (500bc253)
Code extracted from:

    https://gitlab.kitware.com/utils/kwiml.git

at commit 500bc25359cdf9e7357315ae3a6c05d606d93ea3 (master).

Upstream Shortlog
-----------------

Brad King (1):
      500bc253 codespell: fix typos
2023-11-16 11:18:55 -05:00
Brad King
0b6c6bb1ea CMake 3.28.0-rc5 v3.28.0-rc5 2023-11-15 09:54:28 -05:00
Brad King
cd74246331 Merge branch 'release-3.27' into release-3.28 2023-11-15 09:43:56 -05:00
Brad King
9cfff766eb CMake 3.27.8 v3.27.8 2023-11-15 08:55:18 -05:00
Brad King
c2a4c3915b Merge branch 'release-3.27' into release-3.28 2023-11-15 08:46:31 -05:00
Brad King
bc9ca0331b Merge branch 'backport-target-objects' into release-3.27
Merge-request: !8974
2023-11-15 08:45:45 -05:00
Brad King
49c8e89bae Merge topic 'target-objects' into release-3.28
d7988ff6b8 Merge branch 'backport-target-objects' into target-objects
1814853081 cmCommonTargetGenerator: Drop unused local variable
377b78aef9 cmComputeLinkInformation: Simplify recording OBJECT libraries as link items
50fdaf8f1f cmComputeLinkInformation: Track targets named by TARGET_OBJECTS sources
0e26bd334d cmCommonTargetGenerator: Factor out GetLinkedTargetDirectories loop body

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !8974
2023-11-15 08:44:39 -05:00
Brad King
d7988ff6b8 Merge branch 'backport-target-objects' into target-objects 2023-11-14 15:42:07 -05:00
Brad King
1814853081 cmCommonTargetGenerator: Drop unused local variable 2023-11-14 15:40:33 -05:00
Brad King
377b78aef9 cmComputeLinkInformation: Simplify recording OBJECT libraries as link items
Simplify commit 2c7acd34e2 (cmComputeLinkInformation: add `OBJECT`
libraries as link items, 2023-07-24, v3.28.0-rc1~279^2) using the
existing local variables.
2023-11-14 15:40:29 -05:00
Brad King
50fdaf8f1f cmComputeLinkInformation: Track targets named by TARGET_OBJECTS sources
Since commit b6a5382217 (Ninja: depend on language module information
files directly, 2023-02-10, v3.27.0-rc1~502^2), the return value of
`cmCommonTargetGenerator::GetLinkedTargetDirectories` must account for
linked object libraries because they may provide modules (#25112).
These were added by commit b665966933 (cmComputeLinkInformation: track
OBJECT library dependencies, 2023-07-22, v3.27.1~5^2).  However, targets
named by `$<TARGET_OBJECTS:...>` sources are also needed (#25365).

The latter were added by commit 22da18b995 (Fortran: Restore support for
TARGET_OBJECTS providing modules, 2023-10-27, v3.28.0-rc4~9^2) and
commit 035302b7e3 (cmComputeLinkDepends: also copy the target from
object link items, 2023-10-27, v3.28.0-rc4~9^2~2).  However, their
approach added link entries not actually specified by projects.  It also
incorrectly re-used `cmComputeLinkDepends::AddLinkObject` for object
library targets when it is meant for their individual object files.
These problems caused additional regressions (#25417).  Revert the
implementation parts of those commits and leave behind an assertion and
comment to help avoid the mistake in the future.  Instead, track targets
named by `$<TARGET_OBJECTS:...>` sources with a dedicated member.

Issue: #25112
Issue: #25365
Fixes: #25417
Co-authored-by: Ben Boeckel <ben.boeckel@kitware.com>
2023-11-14 14:50:08 -05:00
Brad King
0e26bd334d cmCommonTargetGenerator: Factor out GetLinkedTargetDirectories loop body
Re-use the body in multiple loops instead of allocating to combine them.
2023-11-14 13:50:13 -05:00
Brad King
baec1dac9b Merge topic 'genex-fix-short-circuit' into release-3.28
27244a8f73 cmGeneratorExpressionNode: Fix short-circuit logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8966
2023-11-14 09:07:10 -05:00
Brad King
c7c59a2862 Merge branch 'release-3.27' into release-3.28 2023-11-14 09:05:43 -05:00
Brad King
339cd47732 Merge topic 'FindOpenMP-5.1-and-5.2' into release-3.28
2859be7575 FindOpenMP: Add support for openmp 5.1 (llvm 17) and 5.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Markus Mützel <markus.muetzel@gmx.de>
Merge-request: !8965
2023-11-14 09:04:53 -05:00
Brad King
8e90b95e67 Merge branch 'FindOpenMP-5.1-and-5.2' into release-3.27
Merge-request: !8965
2023-11-13 11:17:25 -05:00
Martin Duffy
27244a8f73 cmGeneratorExpressionNode: Fix short-circuit logic
Fix logic added by commit 634079b86d (cmGeneratorExpressionEvaluator:
Short-circuit boolean operators, 2023-09-11, v3.28.0-rc1~47^2) and
add missing test cases.

Fixes: #25412
2023-11-13 11:11:18 -05:00
Christoph Reiter
2859be7575 FindOpenMP: Add support for openmp 5.1 (llvm 17) and 5.2
llvm 17 now defaults to openmp 5.1; see LLVM commit `0c6f2f629cc0`.
It makes FindOpenMP set OPENMP_FOUND and OpenMP_C_SPEC_DATE, but not
OpenMP_C_VERSION, because it doesn't know the version mapping.
Add the spec date to the version mapping for 5.1 and 5.2 to make
things work again.
2023-11-13 10:51:40 -05:00
Brad King
d36d2b9253 Merge topic 'find_cudatoolkit_cufile_name' into release-3.28
b38a8e77cb FindCUDAToolkit: Search for cufile library name being lowercase

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8955
2023-11-09 09:25:26 -05:00
Robert Maynard
b38a8e77cb FindCUDAToolkit: Search for cufile library name being lowercase
Fixes #25398
2023-11-08 10:43:30 -05:00
Brad King
56544c1874 Merge topic 'cxx23' into release-3.28
a0fabc4769 cmGlobalGeneratorFactory: Provide complete cmGlobalGenerator to deleter
85627a93c9 cmCTestBuildCommand: Avoid requiring complete cmGlobalGenerator type publicly
641c02a3ce cmList: Avoid using operator-> on input iterator
e4483b8871 Tests: Avoid compiling call to dap::optional<dap::string>(nullptr)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !8950
2023-11-08 10:32:03 -05:00
Brad King
4f26c238a6 Merge topic 'static-library-link-xcframework' into release-3.28
7d19246138 Xcode: Fix linking against .xcframework from static libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8949
2023-11-07 09:56:24 -05:00
Brad King
a0fabc4769 cmGlobalGeneratorFactory: Provide complete cmGlobalGenerator to deleter
The libc++ `unique_ptr` implementation requires this since C++23.

Fixes: #25388
2023-11-07 09:13:25 -05:00
Brad King
85627a93c9 cmCTestBuildCommand: Avoid requiring complete cmGlobalGenerator type publicly 2023-11-07 09:13:25 -05:00
Brad King
641c02a3ce cmList: Avoid using operator-> on input iterator
As of C++23, some standard library iterator types deprecate it.
2023-11-07 09:13:25 -05:00
Brad King
e4483b8871 Tests: Avoid compiling call to dap::optional<dap::string>(nullptr) 2023-11-07 09:13:24 -05:00
Kyle Edwards
7d19246138 Xcode: Fix linking against .xcframework from static libraries
Issue: #21752
2023-11-06 17:40:00 -05:00
Brad King
ed154b3896 CMake 3.28.0-rc4 v3.28.0-rc4 2023-11-06 11:50:13 -05:00
Brad King
1e7489e3ac Merge topic 'cdash-report-urls' into release-3.28
06661b1e4c gitlab-ci: pull annotations for CDash from the jobs
a518e402c5 ci: generate annotation reports

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8939
2023-11-03 10:38:47 -04:00
Kyle Edwards
86ae23b6f3 Merge topic 'cmsystemtools-runsinglecommand-stdin' into release-3.28
c4be9c914b cmSystemTools::RunSingleCommand(): Pass stdin to child process

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8941
2023-11-03 10:28:35 -04:00
Ben Boeckel
06661b1e4c gitlab-ci: pull annotations for CDash from the jobs
Only move `cdash-build-id` between stages that make sense.
2023-11-02 15:24:45 -04:00
Ben Boeckel
a518e402c5 ci: generate annotation reports
These will render links in the sidebar for each job.

See: https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportsannotations
2023-11-02 15:24:45 -04:00
Kyle Edwards
c4be9c914b cmSystemTools::RunSingleCommand(): Pass stdin to child process
Fixes: #25383
2023-11-02 10:04:00 -04:00
Brad King
ae84de5a0c Merge topic 'cuda-vs' into release-3.28
79f3f29e50 CUDA: Parse NVCC implicit compile/link information in Visual Studio generators
27e64a8498 CMakeNVCCParseImplicitInfo: Recognize link.exe line in CUDA VS integration
045399a461 CMakeParseImplicitLinkInfo: Ignore MSVC link /implib: flag

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !8938
2023-11-02 09:35:56 -04:00
Brad King
79f3f29e50 CUDA: Parse NVCC implicit compile/link information in Visual Studio generators
Refactoring in commit deff0e638d (CUDA: Factor out helper to parse NVCC
implicit compiler and linker flags, 2023-09-15, v3.28.0-rc1~63^2~6)
incorrectly dropped detection of the default CUDA architecture and
the CUDA toolkit include directories from the code path used for
Visual Studio generators.  However, CMakeNVCCParseImplicitInfo is
now general enough that we no longer need a VS-specific code path.

Fixes: #25378
2023-11-01 13:51:21 -04:00
Brad King
27e64a8498 CMakeNVCCParseImplicitInfo: Recognize link.exe line in CUDA VS integration 2023-11-01 13:51:10 -04:00
Brad King
59c3ce4c83 Merge topic 'cxxmodules-cmp0155-graceful-fallback-without-scanner' into release-3.28
1f507580a1 cmGlobalGenerator: give context about module queries
889aa0354a CMP0155: ignore scanning for sources if no scanner is available

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8925
2023-11-01 13:48:14 -04:00
Brad King
045399a461 CMakeParseImplicitLinkInfo: Ignore MSVC link /implib: flag
The flag specifies the import library for the linked binary.
It is not a linked library.
2023-11-01 13:07:43 -04:00
Brad King
8b95e3ff43 Merge topic 'ctest-windows-color' into release-3.28
2553a78aa7 ctest: Allow colored output on Windows if CLICOLOR_FORCE is set to 1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8932
2023-11-01 10:06:58 -04:00
Ben Boeckel
1f507580a1 cmGlobalGenerator: give context about module queries
Some queries are merely investigating support in order to change
behavior. Let the method know so that any internal errors can be skipped
over.
2023-11-01 09:52:13 -04:00
Ben Boeckel
889aa0354a CMP0155: ignore scanning for sources if no scanner is available
This allows for a more graceful transition for projects using C++20
without scanner support (e.g., Clang 15 or GCC 13). While newer
compilers will (needlessly) scan, it allows C++20-using projects to use
older compilers without having to set `CMAKE_CXX_SCAN_FOR_MODULES` to
support newer CMake minimum versions.

Fixes: #25357
2023-11-01 09:52:08 -04:00