2520 Commits
Author SHA1 Message Date
Brad King 6eadd08f47 Utilities/Release: Update Linux build images to ncurses 6.6
Also switch to the wide character ABI, now built by default.

Fixes: #28175
2026-10-22 13:44:12 -04:00
Brad King b6122c6180 Utilities/Release: Update Linux build images to OpenSSL 3.6.5 2026-10-22 13:30:31 -04:00
Brad King 4461f9f8bb curl: Set build options the way we need for CMake
Drop options removed by the update to curl 8.23.0.
2026-10-14 10:35:54 -04:00
Brad King 6c00ab5ed8 Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2026-10-14 (3163ec06)
2026-10-14 10:33:17 -04:00
Brad King 68b621b5bb curl: Update script to get curl 8.23.0 2026-10-14 10:32:43 -04:00
Cristian Adam 2c480ea4ff Utilities/Sphinx: Give the Qt Help output a color scheme
The `qthelp` builder renders with Sphinx's `nonav` theme, so the color
scheme that `cmake.css` picks up from the `default` theme in the html
build is never generated for it.  The workaround that inlines the
`@import` in `cmake.css` silently falls back to `basic.css`, which
carries layout rules only, leaving the `.qch` pages with no styling of
their own.

Supply one, generated from a single template and two palettes.  Qt
Creator serves a documentation set's own `offline-dark.css` in place of
its `offline.css` or `offline-simple.css` when the Qt Creator theme is
dark, so link the stylesheet under one of those names and ship a dark
counterpart next to it.  Qt Creator 20 and older substitute only for
`offline-simple.css`, and request `offline.css` instead when the theme
is light, so install the light palette under both names.

The html build is unaffected: the extra stylesheet is linked, and its
static directory is added, only under the `qthelp` tag.
2026-10-10 11:27:53 +02:00
Brad King 23c086ba31 Merge topic 'update-libuv'
8411f680e3 libuv: Fix clang-analyzer diagnostics
65bf6958a3 libuv: Restore support for SunOS 5.10
436a2745dd libuv: Avoid posix_spawn on Solaris
61158e2377 libuv: Avoid posix_spawn on macOS < 10.8
ea45d99691 libuv: Restore support for macOS 10.10
b85b6ded3b libuv: Restore support for setting child process affinity
d9f518e897 libuv: Restore support for Windows 7
1ddc97e901 libuv: Restore support for glibc < 2.24
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12562
2026-10-08 10:38:59 -04:00
Brad King 8411f680e3 libuv: Fix clang-analyzer diagnostics 2026-10-08 09:01:28 -04:00
Brad King 65bf6958a3 libuv: Restore support for SunOS 5.10
The `<paths.h>` header does not exist, but libuv already
has a workaround for defining `_PATH_DEFPATH` on Solaris.
2026-10-08 09:01:28 -04:00
Brad King 436a2745dd libuv: Avoid posix_spawn on Solaris
It seems to cause hangs running certain child processes, like `make`.
2026-10-08 09:01:28 -04:00
Brad King 61158e2377 libuv: Avoid posix_spawn on macOS < 10.8
Restore the effect of commit e3e2ef1964 (libuv: Avoid posix_spawn on
macOS < 10.8, 2024-03-25, v3.28.5~6^2) after it was removed by merge
conflicts with libuv's switch to preferring `posix_spawn`.
2026-10-08 09:01:28 -04:00
Brad King ea45d99691 libuv: Restore support for macOS 10.10
Upstream libuv no longer supports this version.
2026-10-08 09:01:28 -04:00
Brad King b85b6ded3b libuv: Restore support for setting child process affinity
libuv now prefers `posix_spawn` to launch processes on unix.
It does not offer a way to set the child process affinity on
startup, so fall back to `fork` and `exec` if we need affinity.

This restores commit 24de561a1a (libuv: unix,win: add uv_spawn option
to set child CPU affinity mask, 2017-09-06, v3.12.0-rc1~412^2~2).
2026-10-08 09:01:28 -04:00
Brad King d9f518e897 libuv: Restore support for Windows 7
Upstream libuv no longer supports this version.
2026-10-08 09:01:24 -04:00
Brad King 1ddc97e901 libuv: Restore support for glibc < 2.24
libuv now prefers `posix_spawn` to launch processes on unix.
However, the fork/exec-based implementation on glibc < 2.24
seems to always exit the child with code 127.
2026-10-07 11:54:39 -04:00
Brad King ef0a053582 libuv: Update build within CMake for 1.53.0
libuv currently requires Windows 8 APIs.
2026-10-07 11:54:14 -04:00
Brad King 6833881c82 Merge branch 'upstream-libuv' into update-libuv
* upstream-libuv:
  libuv 2026-09-24 (840404ce)
2026-10-07 11:54:01 -04:00
Brad King 2559fd06f4 libuv: Update script to get libuv 1.53.0 2026-10-07 11:53:37 -04:00
Brad King 218def4153 expat: Restore support for POSIX platforms older than 2008 2026-10-07 09:43:10 -04:00
Brad King c8b204d77f expat: Update CMake build for 2.9.0 2026-10-06 09:10:35 -04:00
Brad King a3cf5af54b Merge branch 'upstream-expat' into update-expat
# By Expat Upstream
* upstream-expat:
  expat 2026-10-05 (a76b1174)
2026-10-06 09:10:25 -04:00
Brad King 4aa7076e60 expat: Update script to get Expat 2.9.0 2026-10-06 09:10:20 -04:00
Brad King d668dd8e85 expat: Update CMake build for 2.8.5 2026-10-06 09:09:19 -04:00
Brad King eb0f5f4da8 Merge branch 'upstream-expat' into update-expat
* upstream-expat:
  expat 2026-09-22 (4b3f0b06)
2026-10-05 18:19:08 -04:00
Brad King 76fa9b774f expat: Update script to get Expat 2.8.5 2026-10-05 18:18:33 -04:00
Brad King 3484e463ea expat: Revert "Fix compilation on systems without stdint.h"
Revert commit d5afb178f1 (expat: Fix compilation on systems without
stdint.h, 2017-06-20, v3.9.0-rc4~6^2).  We now require `stdint.h`.
2026-10-05 18:17:54 -04:00
AJIOB 9b607f9fd6 ast-grep: add rule to effective string appending 2026-09-29 08:50:54 -04:00
AJIOB 12fdbce3f6 ast-grep: add rule to move cmStrCat arguments 2026-09-29 08:50:54 -04:00
AJIOB c42dcf0301 ast-grep: add test case for few sequential string views merging 2026-09-29 08:50:54 -04:00
AJIOB 0243ae5ce5 ast-grep: fix tests passing on 0.45.3 2026-09-29 08:50:54 -04:00
Brad King 68538a78c8 Merge topic 'update-expat'
4915573522 expat: Remove unused try_compile check
a3be099700 Merge branch 'upstream-expat' into update-expat
8cb2e8acde expat 2026-03-17 (f31adfd5)
863a712f16 expat: Update script to get Expat 2.7.5

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12543
2026-09-23 13:44:30 -04:00
Brad King 92b5b99974 Merge topic 'reduce-realloc-clang-tidy-part1'
182473210f clang-tidy: not suggest cmStrCat for short appends and concats

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12523
2026-09-23 09:48:14 -04:00
Brad King 4915573522 expat: Remove unused try_compile check
Restore commit f408cc2c40 (expat: Remove unused try_compile checks,
2020-06-03, v3.18.0-rc1~16^2~6) after it was partially reverted while
resolving conflicts.
2026-09-22 14:06:53 -04:00
Brad King a3be099700 Merge branch 'upstream-expat' into update-expat
* upstream-expat:
  expat 2026-03-17 (f31adfd5)
2026-09-22 14:04:58 -04:00
Brad King 863a712f16 expat: Update script to get Expat 2.7.5 2026-09-22 14:02:06 -04:00
Brad King b469bddbfc Merge topic 'clang-tidy-fix-warning'
92ac288113 clang-tidy: fix module warnings for LLVM 22

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12526
2026-09-22 09:53:51 -04:00
AJIOB 182473210f clang-tidy: not suggest cmStrCat for short appends and concats
We rely, that standard library have really effective `+=` and `+` operators
for `std::string` with any paired arguments: `std::string`, `const char *` and `char`.
So, that change just blocks `c = a + b` and `c += a` replacements,
but still replaces the `c = a + b + d` and `c += a + b` and longer (with more `+` operators).
2026-09-22 10:31:17 +03:00
Marc Chevrier 386d1d874c Add support of custom rules
Fixes: #27383
2026-09-20 11:43:10 +02:00
AJIOB 92ac288113 clang-tidy: fix module warnings for LLVM 22 2026-09-20 06:12:52 +00:00
Brad King cdc74967a9 curl: Set build options the way we need for CMake
Set options added by the update to curl 8.22.0.
2026-09-02 17:19:19 -04:00
Brad King 1b1456cfcf Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2026-09-02 (01346829)
2026-09-02 17:14:49 -04:00
Brad King 23f4096ead curl: Update script to get curl 8.22.0 2026-09-02 17:14:17 -04:00
Tyler Yankee be415ecb74 Source: Add std::unreachable from C++23 2026-08-26 13:24:34 -04:00
Tyler Yankee ad5a65dd34 Utilities/Sphinx: Add option to build with copybutton
The copy button is convenient for copying code blocks from CMake's
documentation pages, and can be especially helpful when following the
CMake tutorial. It is implemented optionally so that developers without
the extension installed locally can still preview the site.

Fixes: #28046
2026-08-21 09:43:48 -04:00
Brad King 9fdcbaae06 Merge branch 'upstream-libuv' into update-libuv
# By libuv upstream
* upstream-libuv:
  libuv 2026-03-11 (d2a45ce3)
2026-08-13 09:52:24 -04:00
Brad King 4c61484f5c libuv: Update script to get libuv 1.52.1
Use a commit just after the v1.52.1 tag to get some compilation fixes.
2026-08-13 09:52:19 -04:00
Brad King d882f429c5 Merge topic 'libuv-macos-10.5'
6910a0e8cd libuv: Restore support for macOS 10.5 and 10.6

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !12397
2026-08-12 11:45:10 -04:00
Brad King e420259ecc libarchive: Restore compilation of archive_parse_date within CMakeLib 2026-08-11 12:13:33 -04:00
Brad King dbcd6402c3 Utilities: Update hard-coded try_compile results for libarchive 3.8.9 2026-08-11 12:13:22 -04:00
Brad King 357710687f Merge branch 'upstream-LibArchive' into update-libarchive
* upstream-LibArchive:
  LibArchive 2026-07-28 (27cbc782)
2026-08-11 12:13:05 -04:00