Commit Graph

62193 Commits

Author SHA1 Message Date
Brad King 0b8f3718a4 Merge branch 'release-3.27' 2023-06-12 14:02:11 -04:00
Brad King 66f7d9e6e0 CMake 3.27.0-rc2 v3.27.0-rc2 2023-06-12 13:24:29 -04:00
Brad King a1dd02e9dc Merge branch 'release-3.27' 2023-06-12 13:19:18 -04:00
Brad King 3cd9b804d3 Merge topic 'restore-check-module-deps'
4a2b708144 Modules: Restore unnecessary inclusions for compatibility

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8554
2023-06-12 13:19:18 -04:00
Brad King 0e4d93f9d7 Merge topic 'restore-check-module-deps' into release-3.27
4a2b708144 Modules: Restore unnecessary inclusions for compatibility

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8554
2023-06-12 13:19:17 -04:00
Brad King 4a2b708144 Modules: Restore unnecessary inclusions for compatibility
Since commit 03c6ebf2b5 (Modules:Check,GenerateExportHeader: include
only what's needed, 2023-03-09, v3.27.0-rc1~327^2) some existing
projects broke because they were accidentally relying on indirect
inclusion of some check modules.  For now, restore the unnecessary
includes for compatibility.  They can be removed with a policy later.

Fixes: #24991
Issue: #24994
2023-06-12 09:59:23 -04:00
Brad King 9fdea179d7 Merge branch 'release-3.27' 2023-06-12 06:41:41 -04:00
Brad King eec017cf8b Merge topic 'add_test-empty-args'
1df3287bf6 add_test: Restore support for empty test arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8551
2023-06-12 06:41:41 -04:00
Brad King a70fe8ec82 Merge topic 'add_test-empty-args' into release-3.27
1df3287bf6 add_test: Restore support for empty test arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8551
2023-06-12 06:41:40 -04:00
Kitware Robot 6bbbd01f75 CMake Nightly Date Stamp 2023-06-12 00:01:30 -04:00
Kitware Robot f15ab882b1 CMake Nightly Date Stamp 2023-06-11 00:01:10 -04:00
Kitware Robot 0b4e9ddfc8 CMake Nightly Date Stamp 2023-06-10 00:01:13 -04:00
Brad King 3b0a90968e Merge topic 'cmuvprocesschain-spawn-result'
891b60d691 cmUVProcessChain: Add Status::SpawnResult field
5be0cd9f3c cmUVProcessChain: Manually create pipes between processes
bb5ec5c9b4 cmUVProcessChain: Do some internal refactoring

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8542
2023-06-09 10:00:28 -04:00
Brad King 765d4b354e Merge branch 'release-3.27' 2023-06-09 09:59:18 -04:00
Brad King 5b004905bf Merge topic 'bootstrap-system-cppdap'
e4a9227360 bootstrap: Add --(no-)system-cppdap configuration switch

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8550
2023-06-09 09:59:18 -04:00
Brad King bebb2abb4b Merge topic 'bootstrap-system-cppdap' into release-3.27
e4a9227360 bootstrap: Add --(no-)system-cppdap configuration switch

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8550
2023-06-09 09:59:17 -04:00
Brad King ea1b230182 Merge branch 'release-3.27' 2023-06-09 09:58:26 -04:00
Brad King 507f04af11 Merge topic 'Makefiles-safer-COLOR-usage'
8195aa3026 Makefiles: quote `$(COLOR)` expansions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8548
2023-06-09 09:58:26 -04:00
Brad King 5741965586 Merge topic 'Makefiles-safer-COLOR-usage' into release-3.27
8195aa3026 Makefiles: quote `$(COLOR)` expansions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8548
2023-06-09 09:58:25 -04:00
Brad King 8761cfa0bf Merge topic 'post-rel-dev'
1b11f48741 Configure CMake itself with policies through CMake 3.26
ee80960f78 export: Increase maximum policy version in exported files to 3.26
9ba9b6c658 Add deprecation warnings for policies CMP0120 and below

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8546
2023-06-09 09:57:21 -04:00
Marc Chevrier 1df3287bf6 add_test: Restore support for empty test arguments
This was regressed by refactoring in commit e08ba229ee (CMake code rely
on cmList class for CMake lists management (part. 1), 2023-04-14,
v3.27.0-rc1~174^2).  Fix it and add a test case.

Fixes: #24986
2023-06-09 09:47:52 -04:00
Kitware Robot f3c5fd98d8 CMake Nightly Date Stamp 2023-06-09 00:01:13 -04:00
Kyle Edwards 891b60d691 cmUVProcessChain: Add Status::SpawnResult field 2023-06-08 14:56:27 -04:00
Kyle Edwards 5be0cd9f3c cmUVProcessChain: Manually create pipes between processes
Previously, we were letting libuv create the output pipe for each
process. However, in order to facilitate use cases where process
spawn is expected to fail (in the case of a missing executable), we
want pipe creation to be separate from process creation. Manually
create all of the pipes.
2023-06-08 14:56:27 -04:00
Kyle Edwards bb5ec5c9b4 cmUVProcessChain: Do some internal refactoring
Move most of cmUVProcessChain::InternalData::Finish() to Prepare()
so that error codes can be checked before attepting to spawn any
processes. Check some error codes that weren't being checked before.
Change return type of Finish() to void as it can't fail.
2023-06-08 14:56:26 -04:00
Björn Esser e4a9227360 bootstrap: Add --(no-)system-cppdap configuration switch
This was accidentally left out of commit 5ec69eb58c (cppdap: Build as
part of CMake or use external installation, 2023-05-19,
v3.27.0-rc1~45^2~1).
2023-06-08 14:56:07 -04:00
Brad King 6fe39cdfed Merge branch 'release-3.27' 2023-06-08 11:38:50 -04:00
Brad King 5b39465ff1 CMake 3.27.0-rc1 v3.27.0-rc1 2023-06-08 11:10:11 -04:00
Ben Boeckel 8195aa3026 Makefiles: quote $(COLOR) expansions
This handles the case where `COLOR` is set to some ANSI-like color
sequence in the ambient environment. These sequences tend to include `;`
which terminates the command and tries to use the next component
(typically an integer, possibly with a trailing `m`) with errors like:

    /bin/sh: line 1: 2: command not found
    /bin/sh: line 1: 255: command not found
    /bin/sh: line 1: 221: command not found
    /bin/sh: line 1: 255m: command not found

Also add a test that sets `COLOR` in the environment which affects the
generated Makefiles behavior.

See: https://discourse.cmake.org/t/cmake-failing-gcc-compiler-checks/8277
2023-06-08 11:05:11 -04:00
Brad King 042ee6c7fd Merge branch 'release-3.27' 2023-06-08 10:48:11 -04:00
Brad King db92b8d401 Merge topic 'FindCUDAToolkit-cupti-nvperf'
f9579ffaa6 FindCUDAToolkit: Add cupti nvperf and pcsampling targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8545
2023-06-08 10:48:10 -04:00
Brad King abc93ff511 Merge topic 'FindCUDAToolkit-cupti-nvperf' into release-3.27
f9579ffaa6 FindCUDAToolkit: Add cupti nvperf and pcsampling targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8545
2023-06-08 10:48:09 -04:00
Brad King 7eed87d82e Merge branch 'release-3.27' 2023-06-08 10:45:47 -04:00
Brad King 515f9e44a7 Merge topic 'cmcldeps-rc'
0e1abf7afa cmcldeps: Avoid passing /nologo more than once to RC compiler
f694e8d9c8 cmcldeps: Do not pass linker flags to cl
8600fb263b cmcldeps: Remove unused C and CXX support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8541
2023-06-08 10:45:47 -04:00
Brad King aebf8ad1aa Merge topic 'cmcldeps-rc' into release-3.27
0e1abf7afa cmcldeps: Avoid passing /nologo more than once to RC compiler
f694e8d9c8 cmcldeps: Do not pass linker flags to cl
8600fb263b cmcldeps: Remove unused C and CXX support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8541
2023-06-08 10:45:45 -04:00
Brad King d9e3783cb7 Merge branch 'release-3.27' 2023-06-08 10:44:39 -04:00
Brad King 71893bf757 Merge topic 'target-system-variables'
e4c53cdc15 BinUtils: Drop now-unnecessary cross-compiling workaround for Apple hosts
1373373823 enable_language: Establish target platform identification variables earlier
1d916bf3d2 kFreeBSD,GNU: Provide multiarch library directory regex earlier

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !8544
2023-06-08 10:44:39 -04:00
Brad King 52970dcaba Merge topic 'target-system-variables' into release-3.27
e4c53cdc15 BinUtils: Drop now-unnecessary cross-compiling workaround for Apple hosts
1373373823 enable_language: Establish target platform identification variables earlier
1d916bf3d2 kFreeBSD,GNU: Provide multiarch library directory regex earlier

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !8544
2023-06-08 10:44:38 -04:00
Kitware Robot ccb866448f CMake Nightly Date Stamp 2023-06-08 00:01:11 -04:00
Brad King 1b11f48741 Configure CMake itself with policies through CMake 3.26 2023-06-07 14:32:04 -04:00
Brad King ee80960f78 export: Increase maximum policy version in exported files to 3.26
The files generatd by `install(EXPORT)` and `export()` commands
are known to work with policies as of CMake 3.26, so enable them
in sufficiently new CMake versions.
2023-06-07 14:32:03 -04:00
Brad King 9ba9b6c658 Add deprecation warnings for policies CMP0120 and below
The OLD behaviors of all policies are deprecated, but only by
documentation.  Add an explicit deprecation diagnostic for policies
introduced in CMake 3.20 and below to encourage projects to port
away from setting policies to OLD.
2023-06-07 14:31:50 -04:00
Robert Maynard f9579ffaa6 FindCUDAToolkit: Add cupti nvperf and pcsampling targets 2023-06-07 13:58:09 -04:00
Brad King 0e1abf7afa cmcldeps: Avoid passing /nologo more than once to RC compiler
`rc /nologo /nologo ...` fails:

    fatal error RC1106: invalid option: -ologo

Fixes: #24974
Inspired-by: Benjamin Buch <benjamin.buch@technoteam.de>
2023-06-07 10:12:57 -04:00
Benjamin Buch f694e8d9c8 cmcldeps: Do not pass linker flags to cl
Avoid cl `Command line warning D9035`.

Fixes: #24906
Co-authored-by: Brad King <brad.king@kitware.com>
2023-06-07 10:05:39 -04:00
Benjamin Buch 8600fb263b cmcldeps: Remove unused C and CXX support
We never set `CMAKE_NINJA_CMCLDEPS_{C,CXX}` anymore.
2023-06-07 08:16:40 -04:00
Brad King e4c53cdc15 BinUtils: Drop now-unnecessary cross-compiling workaround for Apple hosts
Previously we added fallbacks to `llvm-{ar,strip}` on Apple hosts
in case of cross-compiling because the `APPLE` platform variable
was not set w.r.t. the target platform.  The platform variable
has been fixed, so remove the fallbacks.

Issue: #23333
2023-06-07 07:02:20 -04:00
Brad King 1373373823 enable_language: Establish target platform identification variables earlier
Set target platform identification variables like `APPLE` and `LINUX`
as soon as the target system is identified.  This makes them available
during toolchain and binutils selection.

Fixes: #23333
2023-06-07 07:02:20 -04:00
Kitware Robot 883ff2b2c0 CMake Nightly Date Stamp 2023-06-07 00:01:13 -04:00
Brad King 1d916bf3d2 kFreeBSD,GNU: Provide multiarch library directory regex earlier
Make `CMAKE_LIBRARY_ARCHITECTURE_REGEX` available while determining
compilers before `Platform/{kFreeBSD,GNU}` is loaded.

Follow up commit cc737ae829 (Linux: Provide multiarch library directory
regex earlier, 2023-05-31).
2023-06-06 15:35:20 -04:00