Commit Graph

67562 Commits

Author SHA1 Message Date
Brad King
4f0eb0a41e Merge topic 'FindSQLite3-pkg-config' into release-3.31
2d228201fc Help: Guard calls to pkg_check_modules in cmake-developer(7) example
674a987898 FindSQLite3: Guard calls to pkg_check_modules

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9983
2024-11-12 10:16:46 -05:00
Brad King
ab6a317cf1 Merge branch 'release-3.30' into release-3.31 2024-11-12 10:14:05 -05:00
Brad King
20a1ee1a9d Merge topic 'FindBoost-1.86' into release-3.31
f941fb6c0b FindBoost: Add support for Boost 1.86

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9988
2024-11-12 10:13:31 -05:00
Brad King
e6accf384d Merge topic 'ci-fedora-41' into release-3.31
fff8e3f6f3 ci: Rebuild Fedora 41 image with updates

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9989
2024-11-12 10:12:24 -05:00
Brad King
e097ae6478 Merge topic 'FindBoost-1.86' into release-3.30
f941fb6c0b FindBoost: Add support for Boost 1.86

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9988
2024-11-12 10:12:20 -05:00
Brad King
fff8e3f6f3 ci: Rebuild Fedora 41 image with updates
In particular, get:

* flang-19.1.0-2.fc41 to restore OpenMP support
* IWYU 0.23 for LLVM/Clang 19 support
2024-11-11 14:35:00 -05:00
Brad King
7f2dba2748 Merge topic 'doc-CMP0132' into release-3.31
aae8d604d5 Help: Add missing one-line summary to policy CMP0132

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9986
2024-11-11 13:55:18 -05:00
Brad King
f941fb6c0b FindBoost: Add support for Boost 1.86
Update the list of known versions.

Run the command

    cmake -DBOOST_DIR=/path/to/boost_1_86_0 \
      -P Utilities/Scripts/BoostScanDeps.cmake

to extract dependencies from the 1.86.0 source tree.
They are the same as 1.85's dependencies, so just update
the version check for warning about newer versions.

Fixes: #26433
2024-11-11 13:44:47 -05:00
Peter Kokot
2d228201fc Help: Guard calls to pkg_check_modules in cmake-developer(7) example
This was missed in commit 25b947589a (Modules: Guard calls to
pkg_check_modules, 2024-08-07, v3.31.0-rc1~236^2).
2024-11-11 10:53:22 -05:00
Peter Kokot
674a987898 FindSQLite3: Guard calls to pkg_check_modules
This was missed in commit 25b947589a (Modules: Guard calls to
pkg_check_modules, 2024-08-07, v3.31.0-rc1~236^2).
2024-11-11 10:53:21 -05:00
Brad King
aae8d604d5 Help: Add missing one-line summary to policy CMP0132
This was missed in commit 05e510bf0b (CMP0132: Don't set compiler
environment variables on first run, 2022-03-23, v3.24.0-rc1~380^2).
2024-11-11 09:38:51 -05:00
Brad King
e22c8383b9 CMake 3.31.0 v3.31.0 2024-11-06 08:41:37 -05:00
Brad King
76f52d6462 Merge branch 'release-3.30' into release-3.31 2024-11-01 09:10:23 -04:00
Brad King
4002b6c60a Merge topic 'ci-vcvarsall-fix' into release-3.31
c1ddff67f2 ci: use JSON to transfer environment variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9963
2024-11-01 09:09:51 -04:00
Brad King
b7d5e6848d Merge topic 'ci-vcvarsall-fix' into release-3.30
c1ddff67f2 ci: use JSON to transfer environment variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9963
2024-11-01 09:09:02 -04:00
Brad King
9e16cd5efb Merge branch 'release-3.30' into release-3.31 2024-11-01 09:06:41 -04:00
Brad King
760e0f1c03 Merge topic 'ci-use-only-needs' into release-3.31
70fd49f0cf Merge branch 'ci-use-only-needs-3.30' into ci-use-only-needs
ea31d090c7 gitlab-ci: remove `dependencies` from jobs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9964
2024-11-01 09:06:02 -04:00
Brad King
e6be67d204 Merge topic 'ci-use-only-needs' into release-3.30
ea31d090c7 gitlab-ci: remove `dependencies` from jobs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9964
2024-11-01 09:04:47 -04:00
Ben Boeckel
70fd49f0cf Merge branch 'ci-use-only-needs-3.30' into ci-use-only-needs
* ci-use-only-needs-3.30:
  gitlab-ci: remove `dependencies` from jobs
2024-10-31 14:08:26 -04:00
Ben Boeckel
ea31d090c7 gitlab-ci: remove dependencies from jobs
Historically, `needs` specifies the jobs which need to complete
successfully and `dependencies` specifies the jobs which provide
artifacts which should be used. Modern GitLab discourages using both as
`needs` now supports an `artifacts` key to say "depend on but do not use
artifacts", so remove `dependencies` and use `needs:artifacts` where
necessary.

See: https://docs.gitlab.com/ee/ci/yaml/#needsartifacts
2024-10-31 14:07:32 -04:00
Ben Boeckel
c1ddff67f2 ci: use JSON to transfer environment variables
The `set` command in `cmd` has terrible properties in that there's no
real structure to it. Sensitive sequences in values or variable names
that are escaping sequences can be interpreted at the wrong time or
things like newlines in values are not escaped at all and cause
ambiguities in parsing. Avoid all of that and use PowerShell to use JSON
as a communication mechanism.
2024-10-31 08:52:52 -04:00
Brad King
356e3adc71 CMake 3.31.0-rc3 v3.31.0-rc3 2024-10-29 10:18:41 -04:00
Brad King
baceeb2c18 Merge topic 'aix-archive-shared-libraries' into release-3.31
4207687a5f Help: Update AIX_SHARED_LIBRARY_ARCHIVE for versioned shared objects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9954
2024-10-29 10:16:07 -04:00
Aditya Vidyadhar Kamath
4207687a5f Help: Update AIX_SHARED_LIBRARY_ARCHIVE for versioned shared objects
This was missed in commit dc8e4f8f0c (AIX: Enable versioned shared
objects with CMAKE_AIX_SHARED_LIBRARY_ARCHIVE, 2024-10-10,
v3.31.0-rc2~8^2).
2024-10-29 09:45:36 -04:00
Brad King
7b47da6e5d Merge topic 'updated-workflow-bash-completion' into release-3.31
3ae031992a bash-completion: Complete a workflow name after the --workflow option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9943
2024-10-29 09:40:38 -04:00
Brad King
f4712b8af7 Merge topic 'doc-CMP0174' into release-3.31
6aa2e22300 Help: Add 3.31 release note for cmake_parse_arguments CMP0174

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9955
2024-10-29 09:39:24 -04:00
Brad King
9b3d66bf91 Merge topic 'CMP0174-OLD-regression-repeated-keyword' into release-3.31
c8567acc32 cmake_parse_arguments: Restore capture of value after repeated keyword

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9953
2024-10-29 09:38:14 -04:00
Peter Kokot
6aa2e22300 Help: Add 3.31 release note for cmake_parse_arguments CMP0174
This was left out by commit ceeea4e511 (cmake_parse_arguments: Set
variable if empty string given after keyword, 2024-08-18,
v3.31.0-rc1~175^2).
2024-10-28 09:51:27 -04:00
Craig Scott
c8567acc32 cmake_parse_arguments: Restore capture of value after repeated keyword
When a single-value keyword is repeated, and the first instance is
missing a value, it prevents the value from the second instance from
being stored in a variable. This was a regression introduced by
commit ceeea4e511 (cmake_parse_arguments: Set variable if empty string
given after keyword, 2024-08-18). That change also didn't create a
variable if the keyword was given but without a value. The purpose
of the change was to always define a variable if a keyword was given.
Lastly, that change didn't protect the CMP0174 logic to make it only
apply to the PARSE_ARGV form.

The first two of the above problems are fixed here by tracking the
keywords given instead of checking which keywords were missing
values. The third problem is also fixed here, being tightly coupled
to the same logic as the first two problems.

Fixes: #26397
2024-10-28 09:47:21 -04:00
Brad King
fcff1dcb06 Merge topic 'FindCUDAToolkit-remove-debug-message' into release-3.31
fb0b3d1585 FindCUDAToolkit: Remove debug message

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !9946
2024-10-28 09:28:00 -04:00
Brad King
f42962bfbf Merge topic 'link-strategy' into release-3.31
39fd396421 LINK_LIBRARIES_STRATEGY: Rename strategies to clarify expectations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !9949
2024-10-28 09:14:39 -04:00
Brad King
7e7d1c6a46 Merge topic 'ci-fedora-41' into release-3.31
566b07bbf7 ci: Restore cmake.org html documentation search results for index entries
c8591c61d8 ci: use Fedora 41 images and environments
46d89b8524 ci: update Linux image to Fedora 41
e6da61fcd9 ci: Run Fedora + Makefiles job on x86_64-v3 hosts for mpich+libfabric
92d5c48b14 CTestCustom: Suppress clang-analyzer warning in libuv
5c7a55edc2 cmStringAlgorithms: Fix core.NonNullParamChecker diagnostic in cmAlphaNum
51ed0eba18 KWSys: SystemInformation: Add missing EOF check when reading /proc/cpuinfo
f60b4c553e Utilities/Sphinx: Tell linkcheck to not treat timeouts as broken
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9947
2024-10-28 08:25:25 -04:00
Alex Turbov
3ae031992a bash-completion: Complete a workflow name after the --workflow option
Update bash completion for commit b80aa1d3a3 (preset: Easier command
line interface for Workflow Presets, 2024-09-30, v3.31.0-rc1~17^2).

Issue: #26270
2024-10-27 21:08:12 +04:00
Brad King
566b07bbf7 ci: Restore cmake.org html documentation search results for index entries
Sphinx 7.3 fixes the problem motivating commit fbed0431c2 (ci: Suppress
cmake.org html documentation search results for index entries,
2023-08-09, v3.27.2~2^2).  Revert the workaround.

Fixes: #25175
2024-10-26 06:01:10 -04:00
Brad King
c8591c61d8 ci: use Fedora 41 images and environments 2024-10-26 06:01:10 -04:00
Brad King
46d89b8524 ci: update Linux image to Fedora 41 2024-10-26 06:01:10 -04:00
Brad King
e6da61fcd9 ci: Run Fedora + Makefiles job on x86_64-v3 hosts for mpich+libfabric
Similar to commit 18145e8745 (ci: Update FindMPI test environment for
mpich on Fedora 39, 2023-11-16, v3.28.0-rc6~19^2~1), libfabric fails
with SIGILL on older hardware.
2024-10-26 06:01:10 -04:00
Brad King
92d5c48b14 CTestCustom: Suppress clang-analyzer warning in libuv
This is third-party code.
2024-10-26 06:01:09 -04:00
Brad King
5c7a55edc2 cmStringAlgorithms: Fix core.NonNullParamChecker diagnostic in cmAlphaNum 2024-10-26 06:01:09 -04:00
Brad King
51ed0eba18 KWSys: SystemInformation: Add missing EOF check when reading /proc/cpuinfo
Backport KWSys upstream commit `6e847d08b` (SystemInformation: Add
missing EOF check when reading /proc/cpuinfo, 2024-10-23) to the
CMake 3.31 release branch.
2024-10-26 06:01:09 -04:00
Brad King
f60b4c553e Utilities/Sphinx: Tell linkcheck to not treat timeouts as broken
Sphinx 7.3 warns:

    sphinx/builders/linkcheck.py:86: RemovedInSphinx80Warning:
    The default value for 'linkcheck_report_timeouts_as_broken'
    will change to False in Sphinx 8, ...

Configure that behavior explicitly.
2024-10-26 06:01:09 -04:00
Brad King
92272c4a17 Tests/RunCMake/BuildDepends: Skip LinkDepends with broken GNU ld 2.43
Issue: #26401
2024-10-26 06:01:09 -04:00
Brad King
be540dbe19 Tests: Fix FILE stream leaks in helper programs 2024-10-26 05:47:19 -04:00
Brad King
39fd396421 LINK_LIBRARIES_STRATEGY: Rename strategies to clarify expectations
Since commit 7abd3137b7 (Linking: Optionally reorder direct dependencies
from LINK_LIBRARIES, 2024-09-19, v3.31.0-rc1~53^2) the strategy name
`PRESERVE_ORDER` has led users to expect that it strictly preserves
order.  While the part of the link line generation logic controlled by
`LINK_LIBRARIES_STRATEGY` does preserve order, it is not the last step.
Toolchain-specific de-duplication can cause the order to change on the
actual link line generated in the build system.

Rename the strategies:

* `PRESERVE_ORDER` => `REORDER_MINIMALLY`
* `REORDER`        => `REORDER_FREELY`

The new names make it clear that reordering is always possible, just to
varying degrees.  Update the `LINK_LIBRARIES_STRATEGY` documentation to
clarify that the strategies do not directly control the final link line.

Fixes: #26400
Issue: #26271
2024-10-25 10:23:37 -04:00
Brad King
6fdb15672d Tests: Update FindBoost.TestPython for Python 3.13 and 3.14
Follow up the python 3.13 and 3.14 support from:

* commit be958c8f35 (FindPython: Add support for Python 3.14, 2024-10-17)
* commit dfab044c44 (FindPython: add support for Python 3.13, 2023-08-14)

with an update for the FindBoost test.
2024-10-25 08:43:05 -04:00
Brad King
570f54c8f7 clang-tidy: ignore warnings new in version 19
These warnings can be fixed in the future.  Ignore them for now.
Also drop some suppressions we no longer need.
2024-10-25 08:43:04 -04:00
Brad King
7605228f5e codespell: Fix typos 2024-10-25 08:43:04 -04:00
Seth R Johnson
fb0b3d1585 FindCUDAToolkit: Remove debug message
This was left accidentally by commit 587c0443cc (FindCUDAToolkit:
Support CUDA version extraction from version.json, 2023-05-02,
v3.26.4~3^2).
2024-10-25 08:32:00 -04:00
Brad King
ebd038613e Merge topic 'windows-kernel-mode-driver' into release-3.31
54bbd00448 WindowsKernelModeDriver: Switch to appending to variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9941
2024-10-25 08:21:32 -04:00
Brad King
0a37acc607 Merge topic 'lfortran-link-info' into release-3.31
34067963cc LFortran: Improve detection of implicit link information for lfortran 0.40+

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9939
2024-10-25 08:19:54 -04:00