Commit Graph
76853 Commits
Author SHA1 Message Date
Kitware Robot 85e06e3791 CMake Nightly Date Stamp 2026-08-07 00:05:10 -04:00
Brad King 5190a9d88e Merge branch 'release-4.4' 2026-08-06 09:24:54 -04:00
Brad King de68c0071c Merge topic 'orangec-rc'
835dfdfbac OrangeC: Fix compiling Windows Resources with only CXX enabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12373
2026-08-06 09:24:54 -04:00
Brad King 86d6c46938 Merge topic 'orangec-rc' into release-4.4
835dfdfbac OrangeC: Fix compiling Windows Resources with only CXX enabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12373
2026-08-06 09:24:52 -04:00
Brad King 1712ef9914 Merge topic 'completion-target-help-header'
0862819756 bash-completion: Fix spurious 'following' target completion candidate

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12372
2026-08-06 09:22:42 -04:00
Brad King daf52d3bec Merge topic 'windows-export-nm-response-file'
a887fda85e WINDOWS_EXPORT_ALL_SYMBOLS: Improve performance with Clang toolsets
6d6e58a15e WINDOWS_EXPORT_ALL_SYMBOLS: Fix support for Visual Studio with ClangCL
ca1dc92e36 WINDOWS_EXPORT_ALL_SYMBOLS: Fail explicitly if `nm` fails to start
03e56cd338 Tests: Add cases covering `nm` handling for WINDOWS_EXPORT_ALL_SYMBOLS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12327
2026-08-06 09:20:06 -04:00
Kitware Robot 60c1f7fe45 CMake Nightly Date Stamp 2026-08-06 00:05:36 -04:00
Brad King 60561e1337 Merge topic 'nmake-custom-command-long-comments'
79b807d185 nmake: support long comments for custom commands
e2a243ba43 fastbuild: long list of custom target deps really tested
b44db2c372 instrumentation: enable long output tests for all generators
94e37bc281 Tests: fix RunCMake_TEST_FILTER with non-matching TargetGenexEvent
0a4b5c1e36 Tests: deduplicate configure-and-build sequence

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12354
2026-08-05 15:23:19 -04:00
Brad King 2d2a1c5c7a Merge topic 'jsonstate-dyndep'
afb609ce14 cmScanDepFormat: Use cmJSONState to parse P1689 output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12366
2026-08-05 15:16:54 -04:00
Brad King 11c6315fc3 Merge topic 'jsonstate-plist'
44d8022322 cmPListParser: Use cmJSONState to read plist

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12365
2026-08-05 15:11:54 -04:00
Brad King bed4c8ba28 Merge topic 'jsonstate-string'
4678b7b34a string(JSON): Use cmJSONState to read input
76026ce818 Tests/string(JSON): Add comments to test case

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12364
2026-08-05 15:10:33 -04:00
Brad King ac513358d1 Merge topic 'FortranCInterface-NAG-Fortran'
1c84ea4953 FortranCInterface: Restore mangling detection for NAG Fortran

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12369
2026-08-05 15:05:32 -04:00
Brad King 835dfdfbac OrangeC: Fix compiling Windows Resources with only CXX enabled
Fix commit 402d72b6c0 (OrangeC: Add support for compiling Windows
Resources, 2026-03-24, v4.4.0-rc1~444^2~1) to work for both C and CXX.

Inspired-by: Arha Gatram <agatram@nvidia.com>
2026-08-05 14:21:10 -04:00
Brad King 80169accea Merge branch 'release-4.4' 2026-08-05 13:49:28 -04:00
Brad King 3541846b47 Merge topic 'FindJNI-OpenSUSE'
25efb8bf45 FindJNI: Add paths for OpenSUSE libalternatives-based packages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12368
2026-08-05 13:49:28 -04:00
Brad King 362f4ec53a Merge topic 'FindJNI-OpenSUSE' into release-4.4
25efb8bf45 FindJNI: Add paths for OpenSUSE libalternatives-based packages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12368
2026-08-05 13:49:25 -04:00
Chuck Atkins a887fda85e WINDOWS_EXPORT_ALL_SYMBOLS: Improve performance with Clang toolsets
- Separate definition files from object files while reading the
  generated input list.
- Add batch bindexplib interfaces.
- Preserve native Windows COFF parsing for ordinary objects.
- Collect objects requiring nm and pass them to one nm process through a
  response file. On non-Windows hosts, pass every object to nm.
- Request --print-file-name so single- and multi-object output use the
  same format.
- Recognize text, data, and MSVC vftable symbols; ignore known
  non-exported types and warn about unknown types.
- Capture nm stderr separately so diagnostics cannot corrupt stdout
  symbol records.

Closes: #27995
2026-08-05 10:58:20 -04:00
Chuck Atkins 6d6e58a15e WINDOWS_EXPORT_ALL_SYMBOLS: Fix support for Visual Studio with ClangCL
Thread `CMAKE_NM` to the generated `__create_def` commands.

Closes: #27994
2026-08-05 10:58:20 -04:00
Chuck Atkins ca1dc92e36 WINDOWS_EXPORT_ALL_SYMBOLS: Fail explicitly if nm fails to start
Previously, when process creation failed, the initialized exit code
remained zero and `__create_def` silently wrote an empty export file.

Closes: #27993
2026-08-05 10:58:20 -04:00
Chuck Atkins 03e56cd338 Tests: Add cases covering nm handling for WINDOWS_EXPORT_ALL_SYMBOLS
Add `__create_def` coverage for:

- missing nm tools
- generator selection
- single- and multi-object inputs
- object paths containing spaces
- mixed object and definition inputs
- nm symbol classification
2026-08-05 10:58:08 -04:00
Kitware Robot b4091767ca CMake Nightly Date Stamp 2026-08-05 00:09:54 -04:00
Daksh Mamodiya 0862819756 bash-completion: Fix spurious 'following' target completion candidate
The '--target' completion parsed 'cmake --build --target help'
with a sed pattern whose leading '...' matched any three
characters, so the header line yielded a bogus 'following'
candidate.  Anchor the pattern to literal dots.

Also note in the user-interaction guide that 'make' target
tab-completion is provided by the external bash-completion
package, which may hide the plain '<target>' name when a
'<target>/fast' variant exists, and recommend
'cmake --build --target' completion instead.

Fixes: #27873
2026-08-05 05:51:19 +02:00
Alex Overchenko 79b807d185 nmake: support long comments for custom commands
Fixes: #27980
2026-08-04 20:16:42 +03:00
Alex Overchenko e2a243ba43 fastbuild: long list of custom target deps really tested
Relates: #27984
2026-08-04 20:10:24 +03:00
Alex Overchenko b44db2c372 instrumentation: enable long output tests for all generators
Relates: #27942
2026-08-04 20:06:35 +03:00
Alex Overchenko 94e37bc281 Tests: fix RunCMake_TEST_FILTER with non-matching TargetGenexEvent 2026-08-04 20:06:35 +03:00
Alex Overchenko 0a4b5c1e36 Tests: deduplicate configure-and-build sequence 2026-08-04 20:06:35 +03:00
Brad King a0d1a037ec Merge topic 'preset-errors'
b1f15344c9 Presets: Clarify workflow step error messages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !12349
2026-08-04 10:59:20 -04:00
Brad King fc5ff503cf Merge topic 'ctest-json-test-prop-raw'
572e4b5d2a ctest: Add --show-only=json-v1-raw option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !12288
2026-08-04 10:53:33 -04:00
Brad King 0a3a4c7293 Merge topic 'update-kwsys'
763b72fbbd Merge branch 'upstream-KWSys' into update-kwsys
3d95494391 KWSys 2026-08-04 (ea24baf0)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12363
2026-08-04 09:56:38 -04:00
Brad King 1c84ea4953 FortranCInterface: Restore mangling detection for NAG Fortran
Since commit cb616d43d6 (FortranCInterface: Fix failure with gfortran 12
and Clang, 2022-05-16, v3.23.2~10^2) we add LTO flags for C symbols when
using the GNU C compiler.  However, they are only needed when detecting
mangling of the GNU Fortran compiler, as was originally written in
commit 6a0ce19ce1 (FortranCInterface: Fix compatibility with GCC
gfortran 12 LTO, 2022-01-19, v3.22.2~5^2).

Fixes: #28008
2026-08-04 09:44:08 -04:00
Brad King 763b72fbbd Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2026-08-04 (ea24baf0)
2026-08-04 09:24:36 -04:00
KWSys Upstream 3d95494391 KWSys 2026-08-04 (ea24baf0)
Code extracted from:

    https://gitlab.kitware.com/utils/kwsys.git

at commit ea24baf09785b45775850c26e6ddf0aea51450d6 (master).

Upstream Shortlog
-----------------

Zachary Wassall (7):
      373da385 SystemTools: Deduplicate file read block size constant
      9ef82eae SystemTools: Produce a 64-bit result from `FileLength`
      2fc8d097 SystemTools: Use a larger, heap-allocated buffer to compare/copy large files
      0ee2e909 SystemTools: Quickly exit `FilesDiffer` for early differences
      08e59762 SystemTools: Gradually scale up the comparison block size in `FilesDiffer`
      ebc72d7d SystemTools: Use C I/O to avoid `fstream`'s internal buffer
      ba9c9877 SystemTools: Improve error checking
2026-08-04 09:24:35 -04:00
Brad King 1704cd267e Merge topic 'jsonstate-ctest-submit'
c0e1d332af cmCTestSubmitHandler: Use cmJSONState to read responses

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12355
2026-08-04 09:08:21 -04:00
Brad King 7c4eb5f109 Merge topic 'jsonstate-vswhere'
7b7e9c162c VS: Use cmJSONState to read vswhere output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12356
2026-08-04 09:02:42 -04:00
Brad King 44bb4c069a Merge branch 'release-4.4' 2026-08-04 09:00:30 -04:00
Brad King 17eb093d35 Merge topic 'FindPython-fix-ARCHITECTURE_ID-check'
7fc60e733d FindPython: Fix CMAKE_LANG_COMPILER_ARCHITECTURE_ID check

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12362
2026-08-04 09:00:30 -04:00
Brad King 6ded06cb1d Merge topic 'FindPython-fix-ARCHITECTURE_ID-check' into release-4.4
7fc60e733d FindPython: Fix CMAKE_LANG_COMPILER_ARCHITECTURE_ID check

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12362
2026-08-04 09:00:27 -04:00
Brad King 25efb8bf45 FindJNI: Add paths for OpenSUSE libalternatives-based packages
Fixes: #28015
2026-08-04 08:31:53 -04:00
Kitware Robot ba6f9b5bfc CMake Nightly Date Stamp 2026-08-04 00:05:27 -04:00
Tyler Yankee afb609ce14 cmScanDepFormat: Use cmJSONState to parse P1689 output
This approach will be more portable.
2026-08-03 19:59:19 -04:00
Tyler Yankee 4678b7b34a string(JSON): Use cmJSONState to read input
This approach will be more portable.
2026-08-03 19:52:53 -04:00
Tyler Yankee 76026ce818 Tests/string(JSON): Add comments to test case
Verify that our current JSON parsing allows comments (but throws them
away).
2026-08-03 19:52:53 -04:00
Tyler Yankee 44d8022322 cmPListParser: Use cmJSONState to read plist
This approach will be more portable.
2026-08-03 19:18:20 -04:00
Arha Gatram 572e4b5d2a ctest: Add --show-only=json-v1-raw option
This option changes the JSON value field for test properties to use the
unparsed string value.

Fixes: #27958
2026-08-03 09:36:11 -07:00
Brad King 7e4e036531 Merge topic 'import-std-refactor'
ab1bd6f6c6 c++modules: Remove CXX_MODULE_STD and CMAKE_CXX_COMPILER_IMPORT_STD
00d8e23414 c++modules: use synthetic interface objects for import std

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12347
2026-08-03 10:18:23 -04:00
Vito Gamberini ab1bd6f6c6 c++modules: Remove CXX_MODULE_STD and CMAKE_CXX_COMPILER_IMPORT_STD
Fixes: #27966, #27992, #28000
2026-08-03 10:05:34 -04:00
Kitware Robot 493c52cbdd CMake Nightly Date Stamp 2026-08-03 00:05:53 -04:00
Marc Chevrier 7fc60e733d FindPython: Fix CMAKE_LANG_COMPILER_ARCHITECTURE_ID check
Fixes: #28012
2026-08-02 15:54:33 +02:00
Kitware Robot 4970297e50 CMake Nightly Date Stamp 2026-08-02 00:05:37 -04:00