Since libuv commit `83efa3dd71` (Reland "macos: use posix_spawn instead
of fork", 2022-03-02, v1.44.0~10), `uv_spawn` on macOS < 10.8
has been observed to cause kernel panics and/or resource exhaustion.
This became particularly noticeable in CMake since commit 5420639a8d
(cmExecuteProcessCommand: Replace cmsysProcess with cmUVProcessChain,
2023-06-01, v3.28.0-rc1~138^2~8). Prefer `fork` over `posix_spawn` in
libuv when targeting macOS < 10.8.
Fixes: #25414Fixes: #25818
Inspired-by: Ken Cunningham <kencu@macports.org>
b024732b19 ci: Explicitly enable CPackWiXGenerator test only in specific jobs
bb261818f4 ci: Explicitly build WiX custom action in packaging jobs
ac5aa7f1bf ci: Explicitly specify WiX architecture in packaging jobs
c1616c98bf ci: Move job settings away from unrelated comment
beecda4ddd Utilities/Release: Replace tabs with spaces in WiX input files
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9330
Our vendored zstd does not include the assembly language file from
upstream (huf_decompress_amd64.S), so it's fine to completely disable
assembly language.
Fixes: #25744
077a1d5769 libuv: win/spawn: optionally run executable paths with no file extension
f02ac51150 libuv: Revert "win/spawn: run executables with no file extension"
58a271e60b cmUVProcessChain: Implement no-extension-on-Windows support with libuv 1.48
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9238
077a1d5769 libuv: win/spawn: optionally run executable paths with no file extension
f02ac51150 libuv: Revert "win/spawn: run executables with no file extension"
58a271e60b cmUVProcessChain: Implement no-extension-on-Windows support with libuv 1.48
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9238
Backport libuv commit `3f7191e5` (win/spawn: optionally run executable
paths with no file extension, 2024-02-05, v1.48.0~8) to add the
`UV_PROCESS_WINDOWS_FILE_PATH_EXACT_NAME` option we now use.
Issue: #25450
This reverts commit fc6231bee5 (libuv: win/spawn: run executables with
no file extension, 2023-12-04, v3.28.0~9^2) to make room for the
corresponding fix from upstream libuv 1.48.
Record this as a merge from the last-imported upstream libuv snapshot
branch so that future `git blame` points to the upstream for the
original code instead of this commit.
Issue: #25450
Wide use of CMake 3.28.{1,0[-rcN]} has uncovered some hangs and crashes
in libuv SIGCHLD handling on some platforms, particularly in virtualization
environments on macOS hosts. Although the bug does not seem to be in CMake,
we can restore stability in the CMake 3.28 release series for users of such
platforms by reverting our new uses of libuv for process execution.
Revert implementation changes merged by commit 4771544386 (Merge topic
'replace-cmsysprocess-with-cmuvprocesschain', 2023-09-06, v3.28.0-rc1~138),
but keep test suite updates.
Issue: #25414, #25500, #25562, #25589
Previously, installers displayed extra text on some Windows versions:
File: [1], Directory: [9], Size [6]
Add an option to our WiX templates to suppress that.
Fixes: #25634
std::is_same<>() is not const instead of std::is_same<>::value
at least on LCC 1.21, so this produces an error. Still ()-notation
seems to be fairly equivalent functionally to ::value-notation.
Backport this commit from libuv PR 4241 to restore `execute_process()`
support for running executables on Windows with no file extension.
Fixes: #25450
This reverts commit da9df7425a (libuv: win/spawn: run executables with
no file extension, 2023-11-29, v3.28.0-rc6~1^2~1). It incorrectly
searched the `PATH` for extension-less command names. Another fix will
be needed for the regression motivating it.
Record this as a merge from the last-imported upstream libuv snapshot
branch so that future `git blame` points to the upstream for the
original code instead of this commit.
Fixes: #25473
Issue: #25450
6a5a9278fa librhash: Update build within CMake for rhash 1.4.4
54eafb156f librhash: aligned_alloc is not available with IBM XLClang on Linux
838bdb4b37 librhash: aligned_alloc is not available on Solaris
33e9e3438c librhash: Remove source fragments not needed for CMake
15bb13bc51 Merge branch 'upstream-librhash' into update-librhash
71d86c4e98 librhash 2023-07-14 (cfe77846)
1fb7ebeb4d librhash: Update import script to get rhash 1.4.4
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9012
f6d2efa752 Tests: Add case to cover execute_process support for no extension on Windows
da9df7425a libuv: win/spawn: run executables with no file extension
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9017
Backport this commit from libuv PR 4241 to restore `execute_process()`
support for running executables on Windows with no file extension.
Fixes: #25450
Extend commit 53048afa8d (librhash: Remove source fragments not needed
for CMake, 2016-11-03, v3.8.0-rc1~262^2~9) for fragments new after
updating to librhash 1.4.4.