Commit Graph

34167 Commits

Author SHA1 Message Date
Kyle Edwards ec81d40be4 cmUVPipeIStream: Add cmUVPipeIStream 2023-06-14 11:53:55 -04:00
Brad King 09028bed4c Merge topic 'cmuvprocesschain-input-file'
e329704546 cmUVProcessChain: Add support for SetExternalStream(Stream_INPUT)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8552
2023-06-13 11:13:08 -04:00
Kitware Robot 704c9b5a81 CMake Nightly Date Stamp 2023-06-13 00:01:11 -04:00
Kyle Edwards e329704546 cmUVProcessChain: Add support for SetExternalStream(Stream_INPUT) 2023-06-12 10:34:04 -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
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 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 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
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 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
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
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
Kitware Robot 883ff2b2c0 CMake Nightly Date Stamp 2023-06-07 00:01:13 -04:00
Brad King bb08c70e01 Begin post-3.27 development 2023-06-06 13:38:04 -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