Commit Graph

34149 Commits

Author SHA1 Message Date
Marc Chevrier
1cfaed0684 list(): restore SUBLIST behavior
Fixes: #25002
2023-06-16 15:14:03 +02:00
Brad King
66f7d9e6e0 CMake 3.27.0-rc2 2023-06-12 13:24:29 -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
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
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
Brad King
5b39465ff1 CMake 3.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
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
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
c01091d2cf Begin 3.27 release versioning 2023-06-06 13:36:58 -04:00
Kyle Edwards
af69d59b09 Merge topic 'verify-interface-header-sets-skip-linting'
36ec89639a VERIFY_INTERFACE_HEADER_SETS: Skip header files that have SKIP_LINTING

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8540
2023-06-06 10:51:27 -04:00
Kyle Edwards
36ec89639a VERIFY_INTERFACE_HEADER_SETS: Skip header files that have SKIP_LINTING
Fixes: #24972
2023-06-06 10:45:22 -04:00
Brad King
53d9234395 Merge topic 'Apple-tbd-runpath-handling'
bfa5b430b3 Apple text-based stubs: ensure runpath is correctly defined

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8536
2023-06-06 09:55:34 -04:00
Kyle Edwards
0eada92663 Merge topic 'cmuvprocesschain-status-getexception'
154fe00ca5 cmUVProcessChain: Add Status::GetException() method

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8528
2023-06-06 08:41:58 -04:00
Kitware Robot
722c801da7 CMake Nightly Date Stamp 2023-06-06 00:01:11 -04:00
Kyle Edwards
154fe00ca5 cmUVProcessChain: Add Status::GetException() method 2023-06-05 11:27:45 -04:00
Brad King
3760ac9845 Merge topic 'file-api-query-command'
99b2ccf80d cmake_file_api: New project command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8530
2023-06-05 09:45:02 -04:00
Brad King
da6bb1621d Merge topic 'hip-usr-include'
f4d28d9e27 HIP: Fix implicit include directory detection under /usr/include

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8534
2023-06-05 06:42:37 -04:00
Brad King
7838ae4fd8 Merge topic 'ctest-timeout-signal'
54c5654f7d ctest: Optionally terminate tests with a custom signal on timeout
e38c05688e CTest/cmProcess: Adopt field tracking reason for the process timeout
25c1468314 cmCTestTestHandler: Remove outdated comment
41e8507ab7 IWYU: Add mapping for bits/chrono.h to chrono

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8472
2023-06-05 06:33:36 -04:00
Craig Scott
99b2ccf80d cmake_file_api: New project command
Projects can use the new command to request file API replies for the current
run. No query files are generated, the query is tracked internally. Replies are
created in the file system at generation time in the usual way.

Fixes: #24951
2023-06-05 06:20:50 -04:00
Kitware Robot
8f8a5e56f4 CMake Nightly Date Stamp 2023-06-05 00:01:35 -04:00
Marc Chevrier
bfa5b430b3 Apple text-based stubs: ensure runpath is correctly defined
This is a complement to !8204.
2023-06-04 15:29:42 +02:00
Kitware Robot
326bd503ed CMake Nightly Date Stamp 2023-06-04 00:01:08 -04:00
Kitware Robot
b0cda51ff1 CMake Nightly Date Stamp 2023-06-03 00:01:09 -04:00
Cordell Bloor
f4d28d9e27 HIP: Fix implicit include directory detection under /usr/include
The `CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES` are computed using
`try_compile` in `CMAKE_DETERMINE_COMPILER_ABI`, but the implicit
include directories are not known during that `try_compile`.  This can
be a problem when the HIP runtime include path is `/usr/include`,
because the runtime include path is always added to the userDirs and the
compiler automatically includes standard library headers via
`__clang_hip_runtime_wrapper.h`.

Issue: #24562
2023-06-02 11:25:06 -04:00
Brad King
a67743392b Merge topic 'cxxmodules-remove-dyndep-variable'
0183e1bca3 cxxmodules: remove `CMAKE_EXPERIMENTAL_CXX_MODULE_DYNDEP` variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8524
2023-06-02 09:39:28 -04:00
Brad King
54c5654f7d ctest: Optionally terminate tests with a custom signal on timeout
CTest normally terminates test processes on timeout using `SIGKILL`.
Offer tests a chance to exit gracefully, on platforms supporting POSIX
signals, by setting `TIMEOUT_SIGNAL_{NAME,GRACE_PERIOD}` properties.

Fixes: #17288
2023-06-02 06:51:13 -04:00
Kitware Robot
17a43ee192 CMake Nightly Date Stamp 2023-06-02 00:01:16 -04:00
Ben Boeckel
0183e1bca3 cxxmodules: remove CMAKE_EXPERIMENTAL_CXX_MODULE_DYNDEP variable
It is now subsumed by the UUID setting completely.
2023-06-01 14:43:26 -04:00
Brad King
f6435f799e Merge topic 'automoc-moc-options-test'
1f4b374d6e cmQtAutoGenInitializer: Reduce string copies
b6f66b445a cmQtAutoGenInitializer: Remove no-op calls
55d93bdabf cmQtAutoGenInitializer: Improve const correctness
feb56a666f cmTarget: Improve const correctness of AddUtility
5e513e562f Help: Add AUTOMOC_MOC_OPTIONS example
5380ad9d58 Tests: Add test for AUTOMOC_MOC_OPTIONS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8523
2023-06-01 11:19:19 -04:00
Kyle Edwards
99e80ea0ac Merge topic 'cmuvprocesschain-finished'
22e5775cde cmUVProcessChain: Add Finished() method

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8526
2023-06-01 10:30:02 -04:00
Brad King
64a4d1f104 Merge topic 'remove-header-unit-fileset-type'
7b62a83c6f cxxmodules: update the experimental UUID
6ff5cdc533 cxxmodules: remove support for `CXX_MODULE_HEADER_UNITS` filesets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8510
2023-06-01 09:53:34 -04:00
Brad King
54a4aa5779 Merge topic 'cuda-ipo-arch'
45584508fa CUDA/NVIDIA: fix LTO with explicit architectures

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !8508
2023-06-01 09:49:15 -04:00
Brad King
aa3675d281 Merge topic 'cmake-compile-no-warning-as-error'
da27ff1e96 Preserve --compile-no-warning-as-error in automatic CMake re-runs
e0b48284a1 Xcode: Internally uses -S instead of -H to specify source directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8522
2023-06-01 09:45:56 -04:00
Kitware Robot
1606184460 CMake Nightly Date Stamp 2023-06-01 00:01:18 -04:00
Kyle Edwards
22e5775cde cmUVProcessChain: Add Finished() method 2023-05-31 17:21:52 -04:00
Orkun Tokdemir
1f4b374d6e cmQtAutoGenInitializer: Reduce string copies 2023-05-31 13:04:49 -04:00
Orkun Tokdemir
b6f66b445a cmQtAutoGenInitializer: Remove no-op calls 2023-05-31 13:03:37 -04:00
Orkun Tokdemir
55d93bdabf cmQtAutoGenInitializer: Improve const correctness 2023-05-31 13:02:45 -04:00
Orkun Tokdemir
feb56a666f cmTarget: Improve const correctness of AddUtility 2023-05-31 13:01:29 -04:00
Rafael Stahl
45584508fa CUDA/NVIDIA: fix LTO with explicit architectures 2023-05-31 11:44:10 -04:00
Ben Boeckel
7b62a83c6f cxxmodules: update the experimental UUID
Syntactic support for C++ header units has been removed, so a new UUID
is warranted.
2023-05-31 10:57:11 -04:00
Ben Boeckel
6ff5cdc533 cxxmodules: remove support for CXX_MODULE_HEADER_UNITS filesets
There's no backing implementation for header units anyways, so just
remove it for now.
2023-05-31 10:57:11 -04:00
Brad King
e38c05688e CTest/cmProcess: Adopt field tracking reason for the process timeout
A test process may timeout either because the test timeout was reached,
or the overall stop time was reached.  Shorten the lifetime for which
we track this state in `cmCTestRunTest`.
2023-05-31 09:43:03 -04:00
Brad King
25c1468314 cmCTestTestHandler: Remove outdated comment
Remove a comment that has not been relevant since commit 177edc5ed1
(Fixed ctest -N segfault issue.  Further refactored ctest.  Enabled
failover for ctest, 2009-08-27, v2.8.0~250).
2023-05-31 09:43:03 -04:00
Brad King
c4f273e722 Merge topic 'AddCacheEntry-suppress-raw-pointer-usage'
4fc322bab4 AddCacheEntry: Suppress raw pointer usage

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8520
2023-05-31 09:35:25 -04:00
Brad King
826825fe34 Merge topic 'orkun_24848_19_05_2023'
2bb3d9b644 Autogen: Fix multi-config generated file issue
3bd605f3d0 Autogen: Optimize cmake_autogen execution for CROSS_CONFIG usage
f2f21c5752 Improve Const Correctness

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8507
2023-05-31 09:34:23 -04:00
Brad King
5b063510f9 Merge topic 'cmake-verbose-print-build-tool-command'
8451a3f0b5 cmGlobalGenerator: use a stream for output in `Build`
e060666531 cmake: write the build command itself with `--verbose`
b017c9f127 cmGlobalGenerator: fix off-by-one for `&&` command joining
c715fd8d76 cmGlobalGenerator: quote commands in `::Build` output
d6c0e827bc cmGlobalGenerator: add a `QuotedPrintable` method for commands
28ee3bef34 cmGlobalGenerator: add missing spaces in output
465ab8d872 cmGlobalGenerator: use `cmStrCat` in `::Build`
81d45dabc4 cmOutputConverter: add a `static` version of `EscapeForShell`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !8183
2023-05-31 09:33:26 -04:00