77393 Commits
Author SHA1 Message Date
Kitware Robot abf5a58ecc CMake Nightly Date Stamp 2026-09-24 00:05:26 -04:00
Brad King f4e378278b Merge topic 'cmp0181-trycompile-policy-order'
5e52f92a2a try_compile: Add support for toolchain files to query CMP0181

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12540
2026-09-23 13:47:31 -04:00
Brad King bb13ddbfe1 Merge topic 'install-name-dir-no-separator-conversion'
726e6454b5 Ninja,Makefile: Do not convert separators in the install-name directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12530
2026-09-23 13:46:15 -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 01b4728ae1 Merge topic 'CheckLanguage-timeout'
eb33b390e4 CheckLanguage: Avoid hanging forever on interactive popups

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12533
2026-09-23 13:42:33 -04:00
Brad King 2975be1a6b Merge topic 'procmetrics-command-chain'
1528113bdf instrumentation: Prevent inherited process metrics in chained commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12513
2026-09-23 13:40:51 -04:00
Brad King 6498b76d61 Merge topic 'reduce-realloc-clang-tidy-part3'
0aa1eaf506 Source: Reduce string allocations, part 4
1d2f0120be Source: Reduce string allocations, part 3
cb20c5bd89 Source: Reduce string allocations, part 2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12538
2026-09-23 13:30:55 -04:00
Brad King a399d4c1ea Merge topic 'install-TARGETS-RUNTIME_DEPENDENCY_TARGETS'
53019cd2e6 install(TARGETS): Add option to install runtime deps built as other targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12483
2026-09-23 13:22:51 -04:00
Brad King 356af0e38a Merge topic 'capabilities-instrumentation'
a2643a6db6 instrumentation: Add instrumentation version to cmake -E capabilities

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Tyler Yankee <tyler.yankee@kitware.com>
Merge-request: !12536
2026-09-23 11:41:20 -04:00
Brad King c957150f3e Merge topic 'swift-imported-include-fix'
a3ff10a963 Xcode: Propagate system include directories to Swift compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12542
2026-09-23 09:51:54 -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 e587ecb673 Merge topic 'doc-asm-att'
301307e4b8 Help: Add short description for ASM-ATT

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12537
2026-09-23 09:44:57 -04:00
Kitware Robot de8a69ce2d CMake Nightly Date Stamp 2026-09-23 00:05:37 -04:00
Florent Castelli 726e6454b5 Ninja,Makefile: Do not convert separators in the install-name directory
The Ninja and Makefile generators passed the install-name directory of a
shared library (`@rpath/` by default, or `INSTALL_NAME_DIR`) through
`ConvertToOutputFormat(SHELL)`.  That converts directory separators for
the host shell, so a Windows host cross-compiling for macOS wrote
`-install_name @rpath\libfoo.dylib`.  The install name is not a host
path: it is embedded in the Mach-O load command and read by dyld on the
target, where a backslash never matches anything.

Escape the value for the shell without converting separators, in both
generators.  Add a test to each that fakes an install-name platform and
checks the generated build files keep the forward slashes.

Fixes: #28104
2026-09-22 14:29:50 -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
Expat Upstream 8cb2e8acde expat 2026-03-17 (f31adfd5)
Code extracted from:

    https://github.com/libexpat/libexpat.git

at commit f31adfd584b7f6c50bbf4d22eb928538ffc9145a (R_2_7_5).
2026-09-22 14:02:19 -04:00
Brad King 863a712f16 expat: Update script to get Expat 2.7.5 2026-09-22 14:02:06 -04:00
jcm a3ff10a963 Xcode: Propagate system include directories to Swift compiler
Previously, only non-system include directories would be propagated to
Swift. This meant that if, for example, an IMPORTED target contained a
Swift module, that module would not be found by a Swift consumer.

Fixes: #28097
2026-09-22 12:31:00 -05:00
Julien Marrec eb33b390e4 CheckLanguage: Avoid hanging forever on interactive popups
Fixes: #28101
2026-09-22 11:47:26 -04:00
Brad King 5e52f92a2a try_compile: Add support for toolchain files to query CMP0181
Follow the approach from commit 92320466dd (try_compile: Restore
platform-default link flags in pre-CMP0210 projects, 2026-08-22)
to make the CMP0181 policy setting available in `try_compile`
projects before the toolchain file is loaded.

Fixes: #28108
2026-09-22 11:35:05 -04:00
Stepanov Igor 53019cd2e6 install(TARGETS): Add option to install runtime deps built as other targets
Add a `RUNTIME_DEPENDENCY_TARGETS` option for `install(TARGETS)`
to automatically install the necessary runtime shared libraries.

Closes: #23505
2026-09-22 10:40:52 -04:00
Brad King ec85176fbe Merge topic 'if-RULE-operator'
d4dc18c01b if() command: add RULE operator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12529
2026-09-22 10:16:47 -04:00
Tyler Yankee 301307e4b8 Help: Add short description for ASM-ATT 2026-09-22 10:15:18 -04:00
Brad King d37a1fc335 Merge topic 'automoc-predefs-msvc'
7c3ca57b91 MSVC,Clang: Set CMAKE_CXX_COMPILER_PREDEFINES_COMMAND for the MSVC ABI
0fd711348c Autogen: Pass WIN32 to moc when targeting the MSVC ABI
4a4a654814 Autogen: Keep stderr out of the generated moc_predefs.h
1c1258ad95 cmWorkerPool: Allow capturing process stderr separately

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !12517
2026-09-22 10:14:46 -04:00
Brad King 6e1b603032 Merge topic 'cmctg-launcher-vector-cleanup'
721eb8a5a2 cmCommonTargetGenerator: Improve launcher shell conversion
bf1a2de409 cmCommonTargetGenerator: Improve style

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12528
2026-09-22 10:08:26 -04:00
Brad King 2020c66db9 Merge topic 'ctest-fixture-repeat'
5cced02b9d CTest: Repeat test fixtures with the tests that require them
4fcf3dd296 CTest: Ignore a checkpoint entry for a test that is not pending
32b25b94d6 CTest: Track one run number for a repeating test

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !11638
2026-09-22 10:01:43 -04:00
Brad King 3a8d7c8e8c Merge topic 'new-fuzzer-3'
8932f356bd OSS-Fuzz: Add new fuzzer targets pkg Config Resolver

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vito Gamberini <vito.gamberini@kitware.com>
Merge-request: !12531
2026-09-22 09:58:04 -04:00
Brad King 7bf7964905 Merge topic 'emit_deprecate_wawrning_on_h_cmd_arg'
00388f8576 cmake-cli: Deprecate -H

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12520
2026-09-22 09:55:26 -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
Brad King 2bee290f5e Merge branch 'release-4.4' 2026-09-22 09:39:45 -04:00
Brad King 0d570939b8 Merge topic 'export-ignore-pvs-config'
7abae1fc24 gitattributes: Do not export pvs-studio config in source archives

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12532
2026-09-22 09:39:45 -04:00
Brad King 76395764c7 Merge topic 'export-ignore-pvs-config' into release-4.4
7abae1fc24 gitattributes: Do not export pvs-studio config in source archives

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12532
2026-09-22 09:39:43 -04:00
Martin Duffy 1528113bdf instrumentation: Prevent inherited process metrics in chained commands
Shells may exec the final chained command instead of forking it,
preserving resource usage accumulated from earlier children.

When processMetrics is enabled, append a shell builtin to generated
command chains and scripts for Ninja, Makefiles, and FASTBuild to prevent
this optimization while preserving command exit status.
2026-09-22 09:36:44 -04:00
Martin Duffy a2643a6db6 instrumentation: Add instrumentation version to cmake -E capabilities 2026-09-22 08:39:58 -04:00
AJIOB 0aa1eaf506 Source: Reduce string allocations, part 4 2026-09-22 11:37:41 +03:00
AJIOB 1d2f0120be Source: Reduce string allocations, part 3 2026-09-22 11:37:41 +03:00
AJIOB cb20c5bd89 Source: Reduce string allocations, part 2 2026-09-22 11:37:41 +03: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
Kitware Robot 509ac6160a CMake Nightly Date Stamp 2026-09-22 00:06:57 -04:00
Arthur Chan 8932f356bd OSS-Fuzz: Add new fuzzer targets pkg Config Resolver
Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>
2026-09-21 18:02:35 -04:00
Brad King 7abae1fc24 gitattributes: Do not export pvs-studio config in source archives
This was missed in commit 3748deda58 (pvs-studio: Add .pvsconfig
exclusion file, 2026-04-27, v4.4.0-rc1~244^2~2).
2026-09-21 17:57:30 -04:00
Robert Maynard 00388f8576 cmake-cli: Deprecate -H
Fixes: #18341
2026-09-21 14:35:51 -04:00
Tyler Yankee 721eb8a5a2 cmCommonTargetGenerator: Improve launcher shell conversion
Encapsulate the shell escaping logic in `cmCommonTargetGenerator` and
represent launchers via a vector of strings (as is done with custom
commands, execute process commands, etc.) to make them easier to work
with.

This facilitates work in a future commit which will reuse this pathway.

Issue: #27598, #27402
2026-09-21 13:45:54 -04:00
Brad King 90e71f4286 Merge branch 'release-4.4' 2026-09-21 13:43:28 -04:00
Brad King b75a8d76ae Merge branch 'release-4.3' 2026-09-21 13:43:26 -04:00
Brad King 03c6ed2d65 Merge branch 'release-4.3' into release-4.4 2026-09-21 13:43:20 -04:00
Brad King 2ad6bcbb08 Merge branch 'release-4.4' 2026-09-21 13:41:59 -04:00
Brad King 106b5b5fd7 Merge topic 'cmp0210-trycompile-policy-order'
af7a370bf1 Merge branch 'backport-4.3-cmp0210-trycompile-policy-order'
92320466dd try_compile: Restore platform-default link flags in pre-CMP0210 projects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12525
2026-09-21 13:41:59 -04:00
Brad King f511735756 Merge topic 'cmp0210-trycompile-policy-order' into release-4.4
af7a370bf1 Merge branch 'backport-4.3-cmp0210-trycompile-policy-order'
92320466dd try_compile: Restore platform-default link flags in pre-CMP0210 projects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12525
2026-09-21 13:41:57 -04:00