Commit Graph

66242 Commits

Author SHA1 Message Date
Brad King
69eab2c4bc Merge branch 'release-3.29' 2024-05-29 08:30:11 -04:00
Brad King
631934633d Merge topic 'update-kwsys'
b2081e3810 Merge branch 'backport-kwsys-ConsoleBuf-windows-terminal' into update-kwsys
98dd754b62 KWSys: ConsoleBuf: Fix test case when running under Windows Terminal
a151fdda01 Merge branch 'upstream-KWSys' into update-kwsys
c6ef3299d0 KWSys 2024-05-28 (0d6eac1f)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9553
2024-05-29 08:30:11 -04:00
Brad King
f2ea85f516 Merge topic 'update-kwsys' into release-3.29
98dd754b62 KWSys: ConsoleBuf: Fix test case when running under Windows Terminal

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9553
2024-05-29 08:30:10 -04:00
Kitware Robot
d636cd2ba9 CMake Nightly Date Stamp 2024-05-29 00:01:17 -04:00
Brad King
b2081e3810 Merge branch 'backport-kwsys-ConsoleBuf-windows-terminal' into update-kwsys 2024-05-28 09:12:56 -04:00
Brad King
98dd754b62 KWSys: ConsoleBuf: Fix test case when running under Windows Terminal
Our test case writes a NUL byte to the console to test its behavior.
The behavior of Windows Terminal differs from Windows Console Host
(conhost.exe).  Detect which of these is in use at runtime and adjust
our expected result accordingly.
2024-05-28 09:11:56 -04:00
Brad King
a151fdda01 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2024-05-28 (0d6eac1f)
2024-05-28 09:07:40 -04:00
KWSys Upstream
c6ef3299d0 KWSys 2024-05-28 (0d6eac1f)
Code extracted from:

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

at commit 0d6eac1feb8615fe59e8f972d41d1eaa8bc9baf8 (master).

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

Brad King (1):
      beaf1ca1 ConsoleBuf: Fix test case when running under Windows Terminal
2024-05-28 09:07:39 -04:00
Brad King
6b2171d94e Merge branch 'release-3.29' 2024-05-28 09:01:15 -04:00
Brad King
9edaf10834 Merge branch 'release-3.28' 2024-05-28 09:01:13 -04:00
Brad King
0b2c781cb7 Merge branch 'release-3.28' into release-3.29 2024-05-28 09:00:55 -04:00
Brad King
efe62205a6 Merge branch 'release-3.29' 2024-05-28 08:56:42 -04:00
Brad King
374716a47a Merge topic 'execute_process-child-startup-info'
fa8c04b421 Tests/RunCMake/execute_process: Check STARTUPINFOW reserved members
d98df689ab Merge branch 'libuv-win-process-no-extra-stdio'
a590382850 libuv: win/spawn: disable extra-file-descriptor support not needed by CMake

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9541
2024-05-28 08:56:42 -04:00
Brad King
522925206c Merge topic 'execute_process-child-startup-info' into release-3.29
fa8c04b421 Tests/RunCMake/execute_process: Check STARTUPINFOW reserved members
d98df689ab Merge branch 'libuv-win-process-no-extra-stdio'
a590382850 libuv: win/spawn: disable extra-file-descriptor support not needed by CMake

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9541
2024-05-28 08:56:41 -04:00
Brad King
49c7a718de Merge topic 'libuv-win-process-no-extra-stdio' into release-3.28
a590382850 libuv: win/spawn: disable extra-file-descriptor support not needed by CMake

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9541
2024-05-28 08:56:07 -04:00
Craig Scott
46d00d425c Merge topic 'fetchcontent_policies_block'
a837f15ebf FetchContent: Set policies for most commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9551
2024-05-28 06:43:32 -04:00
Kitware Robot
50dcac2b67 CMake Nightly Date Stamp 2024-05-28 00:01:12 -04:00
Craig Scott
a837f15ebf FetchContent: Set policies for most commands
Previously, FetchContent was relying on the policies of the
includer being compatible with the module. That made the
module vulnerable to subtle problems where policy settings
might lead to unexpected behavior.

With this change, we now specify the policies for as much of
the module as we can without breaking backward compatibility.
Only a few specific implementation details of the
FetchContent_MakeAvailable() macro have to remain uncontrolled
due to the way those parts can invoke user or project code which
may be relying on the includer's policy settings (intentionally or not).
2024-05-27 20:52:16 +10:00
Kitware Robot
ffa5d7d497 CMake Nightly Date Stamp 2024-05-27 00:02:47 -04:00
Craig Scott
a8fe825ffb Merge topic 'cmp0168_fetchcontent_populate'
2efceb290e FetchContent: Make FetchContent_Populate() honor CMP0168

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9550
2024-05-26 18:22:54 -04:00
Kitware Robot
a2b3d3c592 CMake Nightly Date Stamp 2024-05-26 00:01:15 -04:00
Craig Scott
2efceb290e FetchContent: Make FetchContent_Populate() honor CMP0168 2024-05-25 19:01:10 +10:00
Kitware Robot
36733882be CMake Nightly Date Stamp 2024-05-25 00:01:14 -04:00
Brad King
47ba19f346 Merge branch 'release-3.29' 2024-05-24 10:35:51 -04:00
Brad King
f94ef8c0c4 Merge topic 'cuda-vs-17.10'
69f26d8156 VS: Fix compiler identification of nvcc with unsupported host compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9546
2024-05-24 10:35:51 -04:00
Brad King
3242f4cffc Merge topic 'cuda-vs-17.10' into release-3.29
69f26d8156 VS: Fix compiler identification of nvcc with unsupported host compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9546
2024-05-24 10:35:50 -04:00
Brad King
5427884f01 Merge topic 'doc-test-RunCMake'
0dbf2c24bf Tests/RunCMake: Document how to write multi-step test cases
61a08b0856 Tests/RunCMake: Document commands/variables available to RunCMakeTest scripts
aebf6b8b29 Tests/RunCMake: Clarify documentation of platform-specific output matching
c2f8a6729f Tests/RunCMake: Rename "sub-test" terminology to "case"
0add7a802f Tests/RunCMake: Organize README as multiple sections
aff4dc47c4 Tests/RunCMake: Cross-reference README from main Tests/README

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9548
2024-05-24 10:34:57 -04:00
Brad King
7b38a1dee7 Merge topic 'genex-compiler-frontend-variant'
af81b8667e GenEx: Add generator expr. for CMAKE_<LANG>_COMPILER_FRONTEND_VARIANT
8a11a39c51 Help: Use correct programming language names in docs of generator expr.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9538
2024-05-24 10:31:52 -04:00
Brad King
88f30da5a0 Merge topic 'qcc-ipo'
95cac24867 QCC: Enable IPO support, inheriting from GNU Compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9545
2024-05-24 10:30:52 -04:00
Brad King
1d519cf796 Merge topic 'ninja-parallel'
0e5250e63c Ninja: Add option for parallel install
daeb8fffa2 Help: Add Builtin Targets section to Ninja help

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9505
2024-05-24 10:29:57 -04:00
Brad King
dfe0a10777 Merge topic 'add-test-macro-doc'
190cdce7d5 Tests: Improve documentation of ADD_TEST_MACRO

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9542
2024-05-24 10:25:00 -04:00
Brad King
fa8c04b421 Tests/RunCMake/execute_process: Check STARTUPINFOW reserved members
Verify that `execute_process` launches processes on Windows such that
`GetStartupInfoW` in the child does not populate `STARTUPINFOW` members
reserved for the MSVC C run-time.

Issue: #25996
2024-05-24 10:12:27 -04:00
Kitware Robot
97b1401c3e CMake Nightly Date Stamp 2024-05-24 00:01:11 -04:00
Brad King
0dbf2c24bf Tests/RunCMake: Document how to write multi-step test cases 2024-05-23 16:11:46 -04:00
Brad King
61a08b0856 Tests/RunCMake: Document commands/variables available to RunCMakeTest scripts 2024-05-23 16:11:40 -04:00
Brad King
aebf6b8b29 Tests/RunCMake: Clarify documentation of platform-specific output matching 2024-05-23 15:51:34 -04:00
Brad King
c2f8a6729f Tests/RunCMake: Rename "sub-test" terminology to "case"
We've long used the latter term in commit messages and comments.
2024-05-23 15:19:36 -04:00
Brad King
0add7a802f Tests/RunCMake: Organize README as multiple sections 2024-05-23 14:38:51 -04:00
Brad King
aff4dc47c4 Tests/RunCMake: Cross-reference README from main Tests/README 2024-05-23 14:36:49 -04:00
Brad King
69f26d8156 VS: Fix compiler identification of nvcc with unsupported host compiler
`nvcc` from CUDA < 12.4 does support the MSVC 14.40.17.10 toolset.
Users may specify `CUDAFLAGS=-allow-unsupported-compiler` to bypass the
check.  However, we do not use arbitrary user-specified flags during
compiler identification in the VS generator because escaping them for
the `AdditionalOptions` of the `.vcxproj` file requires non-trivial
logic that we currently only implement in the C++ generator code.
Instead, just always pass `-allow-unsupported-compiler` during CUDA
compiler identification in the VS generator.

Fixes: #26003
2024-05-23 13:22:34 -04:00
Pablo Romero
95cac24867 QCC: Enable IPO support, inheriting from GNU Compiler
Fixes: #26007
2024-05-23 11:44:39 -04:00
Martin Duffy
0e5250e63c Ninja: Add option for parallel install
Adds the global property ``INSTALL_PARALLEL`` to enable a parallel install
target for Ninja.

Fixes: #25459
2024-05-23 09:54:19 -04:00
Dave Abrahams
190cdce7d5 Tests: Improve documentation of ADD_TEST_MACRO 2024-05-23 08:51:52 -04:00
Brad King
1f8bcd0a7c Merge topic 'adsp-asm-support'
23c91b55d6 ADSP: Treat .s files as asm sources
43b5e88fe6 ADSP: Preserve ASM output ext and flags as we do for C and CXX

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9530
2024-05-23 08:28:47 -04:00
Brad King
44133f86b7 Merge topic 'ohos'
93a1a17d4c OHOS: Add support for OpenHarmony OS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9540
2024-05-23 08:28:02 -04:00
Kitware Robot
f0074159d7 CMake Nightly Date Stamp 2024-05-23 00:01:10 -04:00
Martin Duffy
daeb8fffa2 Help: Add Builtin Targets section to Ninja help 2024-05-22 16:07:35 -04:00
Brad King
d98df689ab Merge branch 'libuv-win-process-no-extra-stdio' 2024-05-22 14:58:43 -04:00
Brad King
a590382850 libuv: win/spawn: disable extra-file-descriptor support not needed by CMake
Upstream libuv supports passing file descriptors >= 3 to child processes
via `STARTUPINFOW` members reserved by the MSVC C run-time.  However,
some programs use `GetStartupInfoW` to initialize a `STARTUPINFOW`
structure to pass to `CreateProcessW` without clearing the reserved
members.  If we launch such programs with non-zero values in the
reserved members, the MSVC C run-time in *their* children may not
correctly associate the stdin/stdout/stderr streams' file descriptors
with the corresponding `HANDLE`s.

Patch our copy of libuv to avoid using the reserved members.  This
restores `execute_process` support for the above-described programs as
we had prior to commit 5420639a8d (cmExecuteProcessCommand: Replace
cmsysProcess with cmUVProcessChain, 2023-06-01, v3.28.0-rc1~138^2~8).
It also enables support for such programs when launched by `ctest`.

Fixes: #25996
Fixes: #25889
2024-05-22 14:58:06 -04:00
Deniz Bahadir
af81b8667e GenEx: Add generator expr. for CMAKE_<LANG>_COMPILER_FRONTEND_VARIANT 2024-05-22 16:43:33 +02:00