Commit Graph

69245 Commits

Author SHA1 Message Date
KWSys Upstream
1a8650a908 KWSys 2025-02-07 (60bb82bc)
Code extracted from:

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

at commit 60bb82bcf3b0db6c7ad9a49885dbd6a072f31d11 (master).

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

Nikita Nemkin (2):
      2ab910a3 SystemTools: Improve repeated slash handling in ConvertToUnixSlashes
      22af8b25 SystemTools: Fix invalid memory access in ConvertToUnixSlashes
2025-02-07 07:16:43 -05:00
Matthew Woehlke
5ae2596027 Tests: Simplify and improve RunCMake/find_package-CPS tests
Refactor common logic out of individual RunCMake/find_package-CPS tests.
Move enabling the experimental gate to the RunCMakeTest.cmake, add a
separate test to verify the experimental warning, and suppress it
everywhere else. This will greatly simplify writing non-failure tests.
2025-02-06 15:23:09 -05:00
Matthew Woehlke
619c1bacfd Tests: Separate out CPS RunCMake/find_package tests
The set of RunCMake/find_package tests is quite large, which makes
development and management less efficient. While this could probably
stand additional refactoring, split out just the CPS tests for now, as
those are currently under active development.
2025-02-06 15:23:09 -05:00
Josef Angstenberger
83ce71dd38 Tasking: Enable WHOLE_ARCHIVE link feature
Issue: #26426
2025-02-06 10:55:31 -05:00
Josef Angstenberger
5729d6a66d Tasking: Detect ARM architecture for C++
The preprocessor switch to detect architectures on Tasking
differ for C and C++.

Issue: #26426
2025-02-06 10:55:31 -05:00
Josef Angstenberger
1241c7dbcf Tasking: Set response file flag
If not explicitly set to `-f `, the default `@` is used,
which is not supported by Tasking.

Issue: #26426
2025-02-06 10:55:31 -05:00
Josef Angstenberger
754210a3f6 Tasking: Set object extension to .o
The extension `.o` is used by the compiler itself,
and is the only one found in its documentation.

Issue: #26426
2025-02-06 10:55:31 -05:00
Brad King
ae68964f5d Merge topic 'multiline-cache-help' into release-4.0
637a0f7ed4 cmCacheManager: Prevent corruption from multiline help strings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10290
2025-02-06 10:39:11 -05:00
Brad King
95fc2b982a Merge topic 'FindArmadillo-msvc-link-transitive' into release-4.0
6745af99c8 FindArmadillo: Fix wrapper linking with MSVC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10292
2025-02-06 10:37:48 -05:00
Martin Duffy
314440c320 instrumentation: Run preBuild and postBuild hooks before and after make
Updates the preBuild and postBuild instrumentation hooks to run before and
after make is invoked.
2025-02-06 09:49:09 -05:00
Martin Duffy
6598248da7 instrumentation: Avoid busy-wait on postBuild hook 2025-02-06 07:46:09 -05:00
Martin Duffy
f8339cb944 instrumentation: Enable tests on more Makefile generators 2025-02-06 07:46:09 -05:00
Martin Duffy
0fbb927bdd instrumentation: Disable preBuild and postBuild hooks on Windows
The implementation does not work on Windows.

Issue: #26668
2025-02-06 07:46:09 -05:00
Brad King
a13be1301f Tests/RunCMake/Instrumentation: Improve quoting and escaping in CMake code 2025-02-06 07:45:02 -05:00
Brad King
0e1f3f175c curl: Set build options the way we need for CMake
Set options added by the update to curl 8.12.0.
2025-02-06 06:38:43 -05:00
Brad King
ae94c2369d curl: Clarify comments marking our local changes to the CMake code 2025-02-06 06:37:53 -05:00
Ryan Curtin
6745af99c8 FindArmadillo: Fix wrapper linking with MSVC
Transitive linking does not work with MSVC, so we must link against both
Armadillo and its dependencies directly if `ARMA_USE_WRAPPER` is enabled.
2025-02-05 13:25:28 -05:00
Brad King
11312f83ed Begin 4.0 release versioning 2025-02-05 11:42:04 -05:00
Brad King
410513d7cf Help: Drop development topic notes to prepare release
Release versions do not have the development topic section of
the CMake Release Notes index page.
2025-02-05 11:41:08 -05:00
Brad King
4148fe5487 Merge topic 'doc-4.0-relnotes'
5fdd917f8a Help: Update Sphinx versionadded directives for 4.0 release
fb69ed725e Help: Organize and revise 4.0 release notes
1191647a0e Help: Consolidate 4.0 release notes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10288
2025-02-05 11:39:52 -05:00
Brad King
7f2b2375ba Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2025-02-05 (34cf9d54)
2025-02-05 09:27:48 -05:00
Curl Upstream
48b13baebc curl 2025-02-05 (34cf9d54)
Code extracted from:

    https://github.com/curl/curl.git

at commit 34cf9d54a46598c44938aa7598820484d7af7133 (curl-8_12_0).
2025-02-05 09:19:13 -05:00
Brad King
e8c41f4780 curl: Update script to get curl 8.12.0 2025-02-05 09:18:57 -05:00
Brad King
5fdd917f8a Help: Update Sphinx versionadded directives for 4.0 release
Run the script:

    Utilities/Sphinx/update_versions.py --since v3.31.0 --overwrite

Manually renumber `3.32` to `4.0` since the script is meant for
minor version increments.  Also filter out changes to documents
that were added for long-existing variables.
2025-02-05 09:17:06 -05:00
Brad King
fb69ed725e Help: Organize and revise 4.0 release notes
Add section headers similar to the 3.31release notes and move each
individual bullet into an appropriate section.  Revise a few bullets.
2025-02-05 09:15:16 -05:00
Brad King
1191647a0e Help: Consolidate 4.0 release notes
Run the `Utilities/Release/consolidate-relnotes.bash` script to move
notes from `Help/release/dev/*` into `Help/release/4.0.rst`.
2025-02-05 09:11:41 -05:00
Brad King
bf47158d50 Merge topic 'cuda_add_12.8_new_sm_support'
a745b6869e CUDA/Clang: Update architectures supported by CUDA 12.8

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10289
2025-02-05 09:09:51 -05:00
Brad King
7065e7a555 Merge topic 'instrumentation-build-hooks'
2680f30caf instrumentation: Allow multiple CALLBACK arguments
fc1d55f6a5 instrumentation: Add preBuild and postBuild hooks for ninja
f62a4ab2ee instrumentation: Refactor cmInstrumentation constructor and usage
c57d1752d4 cmUVProcessChain: Add Detached option for spawning daemons

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10230
2025-02-05 09:08:33 -05:00
Brad King
0a17f39596 Merge topic 'cpack-archive-name'
7c825fd15f cpack: Respect CPACK_ARCHIVE_FILE_NAME for non-component packages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Turbov <i.zaufi@gmail.com>
Merge-request: !10287
2025-02-05 09:06:47 -05:00
Brad King
5723863444 Merge topic 'ctest-configure-refactoring'
b0e92f4a70 cmCTestConfigureCommand: Remove handler usage
c78d714ecc cmCTestConfigureCommand: Refactor command execution
e52eada2c2 cmCTestConfigureCommand: Refactor command line construction
fda055c260 cmCTestConfigureHandler: Move class into cmCTestConfigureCommand.cxx
509b2cca66 cmCTest: Extract utility functions from cmCTestGenericHandler
8d4743b9e9 cmCTestBuildHandler: Store path of temporary log file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10253
2025-02-05 09:05:23 -05:00
Brad King
bc093eefab Merge topic 'ctest-subprocess'
cb5f136c66 ctest: Prevent infinite loop in ctest_run_script(NEW_PROCESS)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10286
2025-02-05 09:03:08 -05:00
Brad King
06278ed352 Merge topic 'llvm-rc'
a25a4abc01 llvm-rc: Fix regression on .rc sources with LLVM/Clang tooling

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10285
2025-02-05 09:00:30 -05:00
Kitware Robot
b11085c2be CMake Nightly Date Stamp 2025-02-05 00:06:31 -05:00
Nikita Nemkin
637a0f7ed4 cmCacheManager: Prevent corruption from multiline help strings
Corruption happens when a multiline help string starts with
a newline. This causes an overflow in substr() and the whole,
unescaped help string is written to the cache file.

Multiline strings are escaped line by line. The fix is to start
searching for line break points from position 1. A break point
at zero, which triggers the overflow, could only produce
a redundant empty line.

Fixes: #9098
2025-02-05 01:26:11 +05:00
Robert Maynard
a745b6869e
CUDA/Clang: Update architectures supported by CUDA 12.8 2025-02-04 12:21:16 -05:00
Martin Duffy
2680f30caf instrumentation: Allow multiple CALLBACK arguments
Don't require quotes around CALLBACK argument and allow it to be passed
multiple times.
2025-02-04 11:15:20 -05:00
Martin Duffy
fc1d55f6a5 instrumentation: Add preBuild and postBuild hooks for ninja
Allows instrumentation indexing and callbacks to occur at the start or end of
every `ninja` invocation.
2025-02-04 11:15:11 -05:00
Nikita Nemkin
7c825fd15f cpack: Respect CPACK_ARCHIVE_FILE_NAME for non-component packages
The variable CPACK_ARCHIVE_FILE_NAME (added in 9e06e97d30)
only works if per-component packaging is enabled. This isn't obvious
from the documentation.

Make it also work for non-component packages and adjust documentation.

Fixes: #8769
2025-02-04 20:36:10 +05:00
Nikita Nemkin
cb5f136c66 ctest: Prevent infinite loop in ctest_run_script(NEW_PROCESS)
ctest passes an internal -SR argument to inform a subprocess which
script to run. Because all arguments are propagated to the subprocess,
nested subprocess receives multiple -SR arguments and re-runs
the parent script in addition to its own, leading to a loop.

Ignore redundant -SR arguments on input and also filter out parent's
-SR argument when constructing a child process.

Fixes: #8837
2025-02-04 20:19:10 +05:00
Daniel Pfeifer
b0e92f4a70
cmCTestConfigureCommand: Remove handler usage 2025-02-04 15:59:50 +01:00
Daniel Pfeifer
c78d714ecc
cmCTestConfigureCommand: Refactor command execution 2025-02-04 15:59:50 +01:00
Daniel Pfeifer
e52eada2c2
cmCTestConfigureCommand: Refactor command line construction 2025-02-04 15:59:50 +01:00
Daniel Pfeifer
fda055c260
cmCTestConfigureHandler: Move class into cmCTestConfigureCommand.cxx
Place declaration and definitions into places where following
refactoring will cause minimal deltas.
2025-02-04 15:57:39 +01:00
Daniel Pfeifer
509b2cca66
cmCTest: Extract utility functions from cmCTestGenericHandler 2025-02-04 15:57:38 +01:00
Daniel Pfeifer
8d4743b9e9
cmCTestBuildHandler: Store path of temporary log file 2025-02-04 15:57:38 +01:00
Alex Overchenko
a25a4abc01 llvm-rc: Fix regression on .rc sources with LLVM/Clang tooling
Refactoring in commit 2b2344b412 (MSVC: Add abstraction for runtime
checks, 2025-01-22) switched to using local compiler id variables to
recognize compilers that target the MSVC ABI.  However, those variables
may be modified modified in a special case for `lang == "RC"` that does
not apply to the ABI check.  Check the target ABI before applying the
special case.

Fixes: #26663
2025-02-04 09:16:02 -05:00
Brad King
8dfb1f40b7 Merge topic 'execute_process-cmd-bat'
74c9d40876 execute_process: Fix invocation of .cmd/.bat with spaces
104ca10208 cmWorkerPool: Adopt MaybePrependCmdExe calls to reduce duplication
cf7ba6d43d cmWorkerPool: Convert RunCommand signature to move semantics
c091fd1420 cmUVProcessChain: Convert AddCommand signature to move semantics
c1f6b04176 cmSystemTools: Teach MaybePrependCmdExe to always use backslashes
817b3967f8 cmSystemTools: Teach MaybePrependCmdExe to return GetShortPathNameW failure
611a3000f7 cmSystemTools: Make MaybePrependCmdExe case-insensitive
98fed0f116 cmSystemTools: Adopt MaybePrependCmdExe

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10270
2025-02-04 09:02:48 -05:00
Brad King
568a9795a6 Merge topic 'ci-fedora41-dnf-cache'
f398a517be ci: Update to rebuilt Fedora base images
e9fb64f3b7 Source: Drop incorrect class documentation that had typos
2844296c7b FindMPI: Fix typo in comment
72cce810ce ci(fedora41-hip): update the image in sync w/ `fedora41`
fa08bd803d ci(fedora41): refactor tests removal from Python packages
0e5159656a ci(fedora41): split install prerequisites and build for Rust packages
88c5cf809a ci(fedora41): split install prerequisites and build RBEnv into separate phases
86e96322eb ci(fedora41): tune RVM build to speedup and minimize the final image
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10283
2025-02-04 09:00:59 -05:00
Brad King
796db3a229 Merge topic 'ExternalData-add-httpheader'
5106f34eed ExternalData: Add option to specify HTTP headers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10275
2025-02-04 08:59:42 -05:00
Brad King
b0849dfa4f Merge topic 'FindRuby-comments'
21a5ca5fc2 FindRuby: Update comments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10280
2025-02-04 08:57:59 -05:00