2490 Commits
Author SHA1 Message Date
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
Brad King 46ccf27ae3 libarchive: Update script to get 3.8.9
Issue: #28037
2026-08-11 12:12:02 -04:00
Sergey Fedorov 6910a0e8cd libuv: Restore support for macOS 10.5 and 10.6
Upstream libuv no longer supports these versions.

Follow up commit abac34eda2 (libuv: Restore support for macOS 10.x,
2026-03-05, v4.4.0-rc1~571^2~3).  This leaves out macOS 10.4, since
a) it needs a lot more invasive changes, b) neither MacPorts nor my
PPCPorts support 10.4 anymore.

Signed-off-by: Sergey Fedorov <vital.had@gmail.com>
2026-08-11 11:53:09 -04:00
Brad King 6fa0c6114b Merge topic 'fix-missing-rst-roles'
a9e89fec6d cmRST: Add missing roles

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12348
2026-07-30 11:52:27 -04:00
Matthew Woehlke a9e89fec6d cmRST: Add missing roles
Our Sphinx extensions recognize several roles that missed being added to
our internal C++ parser (`cmRST`). Update the latter with the missing
roles, bringing the two back in sync. This addresses several roles that
`cmRST` was previously leaving as inline markup that more appropriately
should be converted to literal text.
2026-07-29 15:00:40 -04:00
Brad King 99ba33f9d7 Merge topic 'rapidhash'
ed7a690e83 String: Use rapidhash for hashing
bc23835e45 rapidhash: Make vendored header available to CMake sources
b6837dc4c3 rapidhash: Fix compilation as C++14 with GCC 5.5
6bf80fd430 Merge branch 'upstream-rapidhash' into rapidhash
169c604ada rapidhash 2025-07-23 (bc4b4baa)
e34e4d1a88 rapidhash: Add import script to get rapidhash v3

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !12263
2026-07-24 10:04:01 -04:00
Tim Blechmann ed7a690e83 String: Use rapidhash for hashing
Rapidhash is a better hash function than FNV-1a (also used in some stl
implementations): it is faster and has a reduced number of hash
collisions.

Closes: #27937
2026-07-23 10:28:41 -04:00
Tim Blechmann bc23835e45 rapidhash: Make vendored header available to CMake sources 2026-07-23 10:28:35 -04:00
Brad King b6837dc4c3 rapidhash: Fix compilation as C++14 with GCC 5.5
Enable `inline constexpr` markup only for specific compilers
to avoid `error: call to non-constexpr function ...`.
2026-07-23 10:28:11 -04:00
Brad King 6bf80fd430 Merge branch 'upstream-rapidhash' into rapidhash
# By rapidhash upstream
* upstream-rapidhash:
  rapidhash 2025-07-23 (bc4b4baa)
2026-07-23 10:28:01 -04:00
Brad King e34e4d1a88 rapidhash: Add import script to get rapidhash v3 2026-07-23 10:27:37 -04:00
Tyler Yankee 1255d1b9fb curl: Restore check for BoringSSL in vendored build
As of commit 15266bf2a4 (Utilities: Avoid OpenSSL version check under
forks, 2026-07-21) we do, in fact, need this info.

Fixes: #27978
2026-07-23 08:47:53 -04:00
Brad King f2dcada8ac Merge topic 'boringssl-3-curl'
15266bf2a4 Utilities: Avoid OpenSSL version check under forks

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !12304
2026-07-22 11:34:26 -04:00
Brad King fcd200ab3b Merge topic 'diagnose-deprecated-commands'
75161b34b6 bootstrap: Remove deprecated commands
664eb8412a cmake: Don't use deprecated commands to build
3745af331a Add deprecation diagnostics to deprecated commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12277
2026-07-22 11:27:01 -04:00
Tyler Yankee 15266bf2a4 Utilities: Avoid OpenSSL version check under forks
When finding BoringSSL, LibreSSL, or AWS-LC, version information may be
unavailable. Amend commit 54686cae64 (Utilities: Require OpenSSL >=
3.0.0 at configure time, 2026-06-26) by using the checks from upstream
curl to only error if we're using OpenSSL proper.

Fixes: #27978
2026-07-21 18:51:08 -04:00
Matthew Woehlke 664eb8412a cmake: Don't use deprecated commands to build
Avoid use of deprecated commands when building CMake itself.
Fortunately, the only instance thereof was a use of `subdirs`, which is
replaced by `add_subdirectory` since so long ago that the latter is
already used everywhere else, so there is no danger of this newly
requiring a newer version of CMake to build CMake itself.
2026-07-16 12:35:23 -04:00
Vito Gamberini 391b44f37e llpkgc: update to 0.0.7 2026-07-14 11:37:39 -04:00
Vito Gamberini d4f638ee04 Merge branch 'upstream-llpkgc' into pkgc-update
* upstream-llpkgc:
  llpkgc 2026-07-07 (12b80381)
2026-07-14 11:37:12 -04:00
Brad King 2c597215d3 Merge branch 'upstream-bzip2' into update-bzip2
# By bzip2 upstream
* upstream-bzip2:
  bzip2 2026-06-30 (af355617)
2026-07-08 10:23:15 -04:00
Brad King 3babae3dc0 bzip2: Update import script to get bzip2-1.0.8-19-gaf35561
In particular, post-1.0.8 development removed use of `sprintf`.

Issue: #27925
2026-07-08 10:22:49 -04:00
權少 7e319339b8 Presets: Teach regenerate-presets.py to support UTF-8 text 2026-07-01 10:51:47 -04:00
Brad King b2d7c9a1f0 Merge topic 'update-curl'
d781e3b477 Tests: Update https-is-disabled error message for curl 8.21
b5b8651a68 curl: Set build options the way we need for CMake
0ac4d03eca Merge branch 'upstream-curl' into update-curl
ecbccb29a7 curl 2026-06-24 (68720b48)
25d2d31002 curl: Update script to get curl 8.21.0

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12230
2026-07-01 09:39:09 -04:00
Brad King b5b8651a68 curl: Set build options the way we need for CMake
Set options added by the update to curl 8.21.0.
2026-06-29 17:14:49 -04:00
Brad King 0ac4d03eca Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2026-06-24 (68720b48)
2026-06-29 17:13:25 -04:00
Brad King 25d2d31002 curl: Update script to get curl 8.21.0 2026-06-29 17:07:19 -04:00
Tyler Yankee 54686cae64 Utilities: Require OpenSSL >= 3.0.0 at configure time
The currently-vendored version of curl, when using OpenSSL, errors at
build time without at least version 3. Fail-fast at configure instead.

Fixes: #27902
2026-06-26 19:57:25 -04:00
NihilDigit 8f94e20abc liblzma: Enable ARM64 BCJ filters in bundled build
CMake's bundled libarchive can request the ARM64 BCJ filter when
extracting 7-Zip archives that use the ARM64 method.  The bundled
liblzma build already carries the ARM64 simple filter implementation,
but CMake's reduced build configuration did not enable it or compile
its source file.

Enable the ARM64 encoder and decoder declarations and include
liblzma/simple/arm64.c in the bundled liblzma build.
2026-06-24 00:02:43 +08:00
Brad King 16eae4759d Merge topic 'doc-sphinx-pre-5.0'
01b94f5702 Help: Restore sphinx pre-5.0 compatibility

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12175
2026-06-16 10:02:07 -04:00
John Parent 01b94f5702 Help: Restore sphinx pre-5.0 compatibility
Revise commit 97d13c3053 (Help: Improve diagnostics documentation,
2026-04-30, v4.4.0-rc1~227^2~2) to switch `cmake.py`'s sphinx api usage
from 7.4+ features to 4.0+ features.

Replace `parse_text_to_nodes` and `parse_content_to_nodes` with
equivalent, backwards compatible sphinx code using existing api calls.

Signed-off-by: John Parent <john.parent@kitware.com>
2026-06-15 11:35:41 -04:00
Brad King 7c1e4fbf0b Configure CMake itself with policies through CMake 4.3 2026-06-05 11:34:36 -04:00
Tyler Yankee 1bc30bd30d Help/ctest: Improve formatting of dashboard options
We must differentiate between the `ctest -D` dashboard and `ctest -D`
variable options.
2026-06-02 13:49:16 -04:00