Commit Graph

2137 Commits

Author SHA1 Message Date
Brad King
a0e6360639 Merge topic 'librhash-glibc-version' into release-3.30
628a807730 librhash: aligned_alloc is not available with glibc < 2.16

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9804
2024-09-10 08:06:07 -04:00
Dilshod Mukhtarov
628a807730 librhash: aligned_alloc is not available with glibc < 2.16
Revise the version check from commit e14300816b (librhash: aligned_alloc
is not available with glibc < 2.15, 2024-02-14, v3.29.0-rc2~30^2).

Issue: #25679
2024-09-09 09:45:04 -04:00
Brad King
0cbb3a4e9c Merge topic 'cppdap-gcc-15' into release-3.30
f742c298a0 cppdap: include/dap/network.h: add <stdint.h> include for GCC 15

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9713
2024-08-15 10:07:51 -04:00
Christoph Grüninger
f742c298a0 cppdap: include/dap/network.h: add <stdint.h> include for GCC 15
GCC 15 requires the include for the declaration of `uint32_t`.
Backport [cppdap PR 133](https://github.com/google/cppdap/pull/133).
2024-08-13 15:42:40 -04:00
Brad King
890beb19e6 libuv: backport IDNA input/output hardening fixes
Backport libuv commit `0f2d7e78` (fix: always zero-terminate idna
output, 2024-01-18, `v1.48.0~4`) and libuv commit `3530bcc3` (fix:
reject zero-length idna inputs, 2024-01-18, `v1.48.0~3`).

Fixes: #26112
2024-07-15 15:55:23 -04:00
Brad King
d1c614d87e Merge topic 'libuv-macos-kqueue' into release-3.30
422c1de564 libuv: macos: restore use of kqueue instead of posix poll
7e3519e705 libuv: macos: reap child processes more reliably when using kqueue

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9619
2024-06-24 09:38:41 -04:00
Brad King
422c1de564 libuv: macos: restore use of kqueue instead of posix poll
Revert commit f54ec4e7f9 (libuv: macos: use posix poll instead of
kqueue, 2024-03-31, v3.29.1~7^2) and its parent.  It is not necessary
after the kqueue-based implementation was fixed to reap child processes
more reliably.

Issue: #25839
2024-06-21 16:45:55 -04:00
Brad King
7e3519e705 libuv: macos: reap child processes more reliably when using kqueue
Backport libuv commit `42cc412c4a` (darwin,process: feed kevent the
signal to reap children, 2023-02-01, `v1.45.0~55`) from libuv PR 3893.

Fixes: #25839
2024-06-21 15:01:15 -04:00
Brad King
f6c2f64d04 Utilities/Release: Update MSI generation to use WIX 4 2024-06-10 11:22:15 -04:00
Brad King
b731398a1a curl: Set build options the way we need for CMake
Set options added by the update to curl 8.8.0.
2024-05-29 14:06:29 -04:00
Brad King
6badc712e1 Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2024-05-22 (fd567d4f)
2024-05-29 14:04:11 -04:00
Brad King
f336868146 curl: Update script to get curl 8.8.0 2024-05-29 13:59:31 -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
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
Brad King
1d8848c4ce Merge topic 'FindOpenMP-runtime-msvc'
b07c637e42 FindOpenMP: Add option to control OpenMP runtime with MSVC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9475
2024-05-02 09:34:29 -04:00
Axel Huebl
b07c637e42 FindOpenMP: Add option to control OpenMP runtime with MSVC
The MSVC compiler's `-openmp` flag accepts `:{experimental,llvm}`
values.  Add an option to specify one.

Closes: #25570
2024-05-01 08:25:14 -04:00
Brad King
7f9817b7cb Remove unnecessary executable permission from .ps1 scripts
Powershell scripts cannot be launched as commands on Windows.
They must be run through the `powershell` or `pwsh` tool.
2024-04-30 09:33:44 -04:00
Brad King
21ef873660 clang-tidy module: Update to build against LLVM/Clang 18 2024-04-24 16:43:00 -04:00
Brad King
dc7fceb200 Utilities/Sphinx: Ignore warning in generated texinfo documentation 2024-04-24 16:42:59 -04:00
Brad King
9f399e741c curl: Set build options the way we need for CMake
Set options added by the update to curl 8.7.1.
2024-04-05 15:50:32 -04:00
Brad King
7fef14d8e0 Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2024-03-27 (de7b3e89)
2024-04-05 12:59:16 -04:00
Brad King
7ceb6e6c0b curl: Update script to get curl 8.7.1 2024-04-05 12:54:37 -04:00
Brad King
c09126cb5b Merge topic 'libuv-macos-posix-poll'
f54ec4e7f9 libuv: macos: use posix poll instead of kqueue
af330faaf1 libuv: darwin: group kqueue-specific definitions together
0db6402687 libuv: process: de-duplicate conditions for using kqueue

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9392
2024-04-01 11:04:03 -04:00
Brad King
f54ec4e7f9 libuv: macos: use posix poll instead of kqueue
Since commit 5420639a8d (cmExecuteProcessCommand: Replace cmsysProcess
with cmUVProcessChain, 2023-06-01, v3.28.0-rc1~138^2~8) we've observed
spurious process hangs in `uv__io_poll` waiting for `kqueue` to deliver
events on macOS.

Issue: #25839
2024-04-01 09:56:50 -04:00
Brad King
af330faaf1 libuv: darwin: group kqueue-specific definitions together 2024-04-01 09:55:49 -04:00
Brad King
0db6402687 libuv: process: de-duplicate conditions for using kqueue
Its platform-specific headers provide a dedicated indicator.

Backport libuv PR 4378.
2024-04-01 09:55:03 -04:00
Brad King
2e5330591d Utilities/Release/WiX: Modify PATH by default when installing on Windows
If the PATH modification choice has not been saved persistently by an
existing installation of CMake, default to modifying the system PATH
environment variable to make our command-line tools available for all
users.  This is a common expectation.

Fixes: #21465
2024-03-29 09:32:27 -04:00
Brad King
32388821e2 Utilities/Release/WiX: Save PATH modification preference persistently
Our Windows installer provides an interactive dialog to choose whether
the PATH should be modified.  It may also be specified on the `msiexec`
command-line as an `ADD_CMAKE_TO_PATH={0,1}` property.  Save the choice
persistently in the Windows Registry and use the same choice by default
in future installations.

Issue: #21465
2024-03-29 09:32:27 -04:00
Brad King
7bd68cf381 Utilities/Release/WiX: Convert PATH modification preference to checkbox
Add explicit support for passing a `ADD_CMAKE_TO_PATH={0,1}` property to
`msiexec` command-line installations to control the checkbox.  Also
preserve compatibility with the old `ADD_CMAKE_TO_PATH={None,System}`
property, which previously controlled the radio button group, by mapping
the values to the checkbox.

Remove the "Add CMake to the system PATH for the current user" option.
It actually added CMake to the installing user's PATH, not the system
PATH, even though CMake is installed to a system location.

Also revise the wording of the desktop shortcut checkbox to match
the style of the PATH checkbox wording.

Issue: #21465
2024-03-28 16:20:04 -04:00
Brad King
d320c76257 Utilities/Release/WiX: Clarify UI options dialog name 2024-03-28 15:19:18 -04:00
Brad King
cde0b7c131 Utilities/Release/WiX: Clarify UI dialog order 2024-03-28 15:19:18 -04:00
Brad King
48d2a7ac62 Utilities/Release/WiX: Backport UI dialog condition fix from WiX 3.11
See WiX issue 4737 and wix3 PR 284.
2024-03-28 15:19:17 -04:00
Brad King
36ae046ed1 Utilities/Release/WiX: Simplify desktop shortcut condition 2024-03-28 15:19:17 -04:00
Brad King
9e831a6211 Utilities/Release/WiX: Simplify specification of CMake registry value 2024-03-28 15:19:17 -04:00
Brad King
68e9454abe Utilities/Release/WiX: Require Windows Installer 5.0
This version comes with Windows 7, the oldest our binaries support.
2024-03-28 15:19:17 -04:00
Brad King
e6f1dd3106 Merge topic 'libuv-macos-10.5'
e3e2ef1964 libuv: Avoid posix_spawn on macOS < 10.8

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9371
2024-03-26 09:06:21 -04:00
Brad King
8b832b353c Merge topic 'libuv-macos-10.5' into release-3.29
e3e2ef1964 libuv: Avoid posix_spawn on macOS < 10.8

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9371
2024-03-26 09:06:20 -04:00
Brad King
e3e2ef1964 libuv: Avoid posix_spawn on macOS < 10.8
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: #25414
Fixes: #25818
Inspired-by: Ken Cunningham <kencu@macports.org>
2024-03-25 12:11:57 -04:00
Brad King
caad68ac97 Merge topic 'ci-wix'
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
2024-03-12 08:52:26 -04:00
Brad King
bb261818f4 ci: Explicitly build WiX custom action in packaging jobs
Drop the environment-based heuristic.
2024-03-11 11:59:19 -04:00
Brad King
beecda4ddd Utilities/Release: Replace tabs with spaces in WiX input files 2024-03-11 11:59:17 -04:00
Brad King
8584f6dd15 Merge branch 'upstream-zlib' into update-zlib
* upstream-zlib:
  zlib 2024-01-22 (51b7f2ab)
2024-03-11 09:57:46 -04:00
Brad King
e0672cefb1 zlib: Update script to get zlib 1.3.1
Issue: #25755
2024-03-11 09:52:22 -04:00
Kyle Edwards
4d3331c63c
cmzstd: Explicitly disable ASM
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
2024-03-08 14:35:49 -05:00
Brad King
11a3d4fce4 Merge topic 'update-zstd'
9365455c78 zstd: Fix compilation with Oracle Studio compiler on Solaris
2ee2aa7074 zstd: Suppress clang-analyzer warnings
3db63973b3 Merge branch 'upstream-zstd' into update-zstd
cd0b9e547a zstd 2023-04-04 (63779c79)
fb82a882f6 zstd: Update script to get zstd 1.5.5

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9253
2024-02-16 09:51:12 -05:00
Brad King
eeb315f772 Merge topic 'librhash-glibc-version'
e14300816b librhash: aligned_alloc is not available with glibc < 2.15

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9255
2024-02-15 12:53:15 -05:00
Brad King
9365455c78 zstd: Fix compilation with Oracle Studio compiler on Solaris
The compiler does not have `<stdalign.h>`, but does have `_Alignof`:

* https://docs.oracle.com/cd/E77782_01/html/E77788/gnxfh.html#OSSCGgnyfx
2024-02-15 08:56:03 -05:00
Brad King
2ee2aa7074 zstd: Suppress clang-analyzer warnings 2024-02-15 08:43:12 -05:00
Brad King
e14300816b librhash: aligned_alloc is not available with glibc < 2.15 2024-02-14 09:47:47 -05:00