Commit Graph

74100 Commits

Author SHA1 Message Date
Craig Scott
b8af7837b3 fileapi: Add interfaceSources to the target codemodel replies
Fixes: #27489
2026-02-05 21:20:48 +09:00
Kitware Robot
88be26a600 CMake Nightly Date Stamp 2026-02-04 00:07:56 -05:00
Brad King
9e5d338dd9 Merge topic 'lang-link-flags'
98f9874703 cmake: Add per-language link flags for all target types
63858fc3e0 Tests: Factor out LINKER: reference file generation
399288871e cmLocalGenerator: Factor out link flag parsing
82913923cd try_compile: Reflow comments per `clang-format`
7b4b556e2d Help: Fix description of `CMAKE_*_LINKER_FLAGS` variables
29b1d0baa9 Help/try_compile: Remove extraneous `versionadded` policy note
5ecee0db7b cmLocalGenerator: De-duplicate static linker flags lookup
bc1847c70b cmLocalGenerator: De-duplicate target property link flags lookup
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11611
2026-02-03 11:22:36 -05:00
Brad King
e9d0fd86a4 Merge topic 'archive-leak'
9d208c5b99 cmSystemTools: Fix memory leak in `extract_tar`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11642
2026-02-03 10:43:24 -05:00
Brad King
46c3f6c2b0 Merge topic 'doc-exports-def'
3400248c1a Help: Add documentation for `<target>_EXPORTS` compile definition

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11644
2026-02-03 10:40:22 -05:00
Brad King
98f32902a5 Merge topic 'doc-marco-arguments'
69456b012a Help: Clarify argument handling for macros

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11641
2026-02-03 10:39:20 -05:00
Brad King
3308b36f84 Merge topic 'cmhsi-extras'
664d6dde4a instrumentation: Add model name to static system info
7b7fcbfbcd Help/instrumentation: Add xref to cmake_host_system_information
3ec3bc1c7d cmake_host_system_information: Add VENDOR_STRING
a6c31e0c54 cmake_host_system_information: Add VENDOR_ID
981ee81563 cmake_host_system_information: Add PROCESSOR_CLOCK_FREQUENCY
352be6b3d1 cmake_host_system_information: Add PROCESSOR_CACHE_SIZE
a84a5214cc cmake_host_system_information: Add PROCESSOR_APIC_ID
887a4cbb30 cmake_host_system_information: Add MODEL_NAME
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11625
2026-02-03 10:35:43 -05:00
Brad King
fd96e10028 Merge topic 'update-kwsys'
4a872f25b3 Merge branch 'upstream-KWSys' into update-kwsys
115d2eaaa2 KWSys 2026-02-03 (281f8c96)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11646
2026-02-03 10:33:05 -05:00
Brad King
4a872f25b3 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2026-02-03 (281f8c96)
2026-02-03 09:58:10 -05:00
KWSys Upstream
115d2eaaa2 KWSys 2026-02-03 (281f8c96)
Code extracted from:

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

at commit 281f8c96f8f2f76be95f7bb01b58ca15483cccf2 (master).

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

Matthew Woehlke (1):
      488ae2ca SystemTools: Avoid thread-unsafe `localtime` function
2026-02-03 09:58:10 -05:00
Kitware Robot
ddc80953dd CMake Nightly Date Stamp 2026-02-03 00:06:22 -05:00
Tyler Yankee
9d208c5b99 cmSystemTools: Fix memory leak in extract_tar
When the input is badly formatted, we must clean up all resources
before returning early.
2026-02-02 15:17:16 -05:00
Ralf Habacker
3400248c1a Help: Add documentation for <target>_EXPORTS compile definition
Fixes: #27554
2026-02-02 11:07:01 -05:00
Christoph Grüninger
69456b012a Help: Clarify argument handling for macros
Distinguish from similar documentation of function
2026-02-02 10:36:59 -05:00
Brad King
1565dfea99 Merge topic 'tar-encoding-errors'
ae93a9dd2d cmSystemTools: Avoid allocation in archive entry pathname wrappers
1e54c23568 tar: Fix path encoding conversion error messages
84da0e8c2c cmSystemTools: Clarify libarchive path handling wrappers
923902ceff cmSystemTools: Clarify "tar" archive argument names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Alex Overchenko <aleksandr9809@gmail.com>
Merge-request: !11643
2026-02-02 10:22:17 -05:00
Tyler Yankee
664d6dde4a instrumentation: Add model name to static system info
Add this field for consistency with `cmake_host_system_information`
options and data uploaded to CDash.
2026-02-02 07:47:43 -05:00
Tyler Yankee
7b7fcbfbcd Help/instrumentation: Add xref to cmake_host_system_information
Additionally, remove a spurious colon added by commit bf52fbfbc4
(instrumentation: Add Google trace output, 2025-08-28).
2026-02-02 07:47:43 -05:00
Tyler Yankee
3ec3bc1c7d cmake_host_system_information: Add VENDOR_STRING
Issue: #27529
2026-02-02 07:47:42 -05:00
Tyler Yankee
a6c31e0c54 cmake_host_system_information: Add VENDOR_ID
Issue: #27529
2026-02-02 07:47:41 -05:00
Tyler Yankee
981ee81563 cmake_host_system_information: Add PROCESSOR_CLOCK_FREQUENCY
Issue: #27529
2026-02-02 07:47:41 -05:00
Tyler Yankee
352be6b3d1 cmake_host_system_information: Add PROCESSOR_CACHE_SIZE
Also add HAS_L1_CACHE to check for availability.

Issue: #27529
2026-02-02 07:47:39 -05:00
Tyler Yankee
a84a5214cc cmake_host_system_information: Add PROCESSOR_APIC_ID
Also add HAS_APIC to check for availability.

Issue: #27529
2026-02-02 07:47:29 -05:00
Kitware Robot
e0702518d4 CMake Nightly Date Stamp 2026-02-02 00:12:05 -05:00
Brad King
ae93a9dd2d cmSystemTools: Avoid allocation in archive entry pathname wrappers
On Windows we use UTF-8.  On other platforms we use the locale's narrow
encoding.  Reuse libarchive's allocation for each of these.
2026-02-01 15:24:35 -05:00
Brad King
1e54c23568 tar: Fix path encoding conversion error messages
Since commit 71c981a213 (Encoding: Fix potential encoding issues with
libarchive on Windows, 2014-06-12, v3.1.0-rc1~350^2) we use libarchive's
wide character APIs for entry paths.  This works well on Windows where
this conversion expects UTF-8 and produces UTF-16.  However, on
non-Windows platforms this conversion expects the locale's encoding.

Under `LANG=C` conversion may fail on paths using encodings such as
UTF-8, but we've been ignoring `ToWide` failure and passing empty paths
to libarchive.  This causes incomplete diagnostics like "Can't lstat".

Restore use of libarchive's narrow APIs on non-Windows platforms.  This
defers encoding conversions to libarchive, enabling better diagnostics
like "Can't translate Pathname '...' to UTF-8".

Issue: #26903
2026-02-01 15:24:25 -05:00
Brad King
84da0e8c2c cmSystemTools: Clarify libarchive path handling wrappers 2026-02-01 14:57:39 -05:00
Brad King
923902ceff cmSystemTools: Clarify "tar" archive argument names 2026-02-01 14:57:39 -05:00
Kitware Robot
62bcbcb19c CMake Nightly Date Stamp 2026-02-01 00:10:48 -05:00
Tyler Yankee
98f9874703 cmake: Add per-language link flags for all target types
Previously, `CMAKE_<LANG>_LINK_FLAGS` was an undocumented variable used
for linking executables only. Re-spell that variable mirroring the
existing spellings for shared and module libraries, and add policy
CMP0210 to preserve compatibility.

Then, repurpose `CMAKE_<LANG>_LINK_FLAGS` to provide a variable to be
used for per-language link flags for all target types, along with a
per-configuration variant. These are added to the `<LINK_FLAGS>` rule
placeholder in the generators.

Fixes: #21934
Relates: #25620

Co-authored-by: Brad King <brad.king@kitware.com>
2026-01-31 19:37:09 -05:00
Tyler Yankee
887a4cbb30 cmake_host_system_information: Add MODEL_NAME
Issue: #27529
2026-01-31 15:51:43 -05:00
Tyler Yankee
ea05d94d43 cmake_host_system_information: Add MODEL_ID
Issue: #27529
2026-01-31 15:51:43 -05:00
Tyler Yankee
fef72791bf cmake_host_system_information: Add FAMILY_ID
Issue: #27529
2026-01-31 15:51:43 -05:00
Tyler Yankee
d793a3f11d cmake_host_system_information: Improve numeric to string conversion 2026-01-31 15:51:43 -05:00
Brad King
1d28c07dbc Merge topic 'update-expat'
b08cb30f2e Merge branch 'upstream-expat' into update-expat
60f52ff4c5 expat 2025-09-24 (4575e52f)
c03fa7349c expat: Update script to get Expat 2.7.3

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11639
2026-01-31 09:55:47 -05:00
Brad King
3b24f1701b Merge topic 'ci-intel-compiler'
800a520f01 ci: add job testing Intel oneAPI 2025.3.0 compilers on Linux
01ccdc35b3 ci: Fix Intel compiler test job conditions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11640
2026-01-31 07:25:59 -05:00
Kitware Robot
2c6c232d71 CMake Nightly Date Stamp 2026-01-31 00:08:13 -05:00
Brad King
800a520f01 ci: add job testing Intel oneAPI 2025.3.0 compilers on Linux
There is no corresponding Intel classic C/C++ compiler version.
2026-01-30 19:50:45 -05:00
Brad King
01ccdc35b3 ci: Fix Intel compiler test job conditions
These these jobs depend on a job in the build stage that is already
marked for manual start, so they can run automatically when it finishes.
2026-01-30 19:50:45 -05:00
Brad King
b08cb30f2e Merge branch 'upstream-expat' into update-expat
* upstream-expat:
  expat 2025-09-24 (4575e52f)
2026-01-30 11:47:53 -05:00
Expat Upstream
60f52ff4c5 expat 2025-09-24 (4575e52f)
Code extracted from:

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

at commit 4575e52f83e0d6d7bd24939eab8952bbc7bc358f (R_2_7_3).
2026-01-30 11:42:25 -05:00
Brad King
c03fa7349c expat: Update script to get Expat 2.7.3 2026-01-30 11:42:11 -05:00
Brad King
c838c1ab90 Merge topic 'preset-test-jobs'
23615b7ca4 presets: Allow jobs to match `ctest -j` with no value
71ff5a9d6f presets: Disallow negative values for "jobs" fields
c2b773cb97 cmake: Prefer named constant for jobs
68bd63c856 Help/presets: Document behavior for unbounded parallelism
25641fe8d5 Help/presets: Document behavior for native build tool parallelism

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Overchenko <aleksandr9809@gmail.com>
Merge-request: !11508
2026-01-30 11:37:49 -05:00
Brad King
4efe6d3a18 Merge topic 'cps-modules'
3771471310 CPS: Support C++20 modules
b080922be6 cmake-cxxmodules: Note config limitations
e4cbf1c153 cmCxxModuleMetadata: Update PopulateTarget

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11633
2026-01-30 11:35:19 -05:00
Brad King
9cfd8d379c Merge topic 'elf-large'
e47f7c8af4 cmELF: Avoid out-of-bounds access on zero-section ELF binary
5954145e0d cmELF: Handle error loading first section header
698c762d40 cmELF: Use size_t for container size

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11637
2026-01-30 11:18:51 -05:00
Brad King
4676ba1643 Merge topic 'GenEx-FILE_SET_PROPERTY'
209d86c5fe GenEx FILE_SET_PROPERTY

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11636
2026-01-30 11:03:16 -05:00
Brad King
13fef30cfa Merge topic 'fix-AUTOGEN_BETTER_GRAPH_MULTI_CONFIG-rcc-paths'
d05bb5e3c7 Autogen: Fix AUTOGEN_BETTER_GRAPH_MULTI_CONFIG with VS generators
33ea2fed94 ci: Tell valgrind to skip Qt Autogen test binaries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11626
2026-01-30 10:09:48 -05:00
Brad King
dd0b44ef31 Merge topic 'inst-sys-checks'
98eca860d4 instrumentation: Null unknown static system info
7867a36fdc instrumentation: Run system checks for static system info

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11627
2026-01-30 10:04:30 -05:00
Kitware Robot
788800810b CMake Nightly Date Stamp 2026-01-30 00:08:41 -05:00
Tyler Yankee
23615b7ca4 presets: Allow jobs to match ctest -j with no value
Allow an empty string for the "jobs" field of test presets to mirror
the `ctest --parallel` option without a number specified, which
corresponds to setting the parallelism to the maximum of the number of
processors or 2.

Issue: #27070
2026-01-29 16:25:08 -05:00
Tyler Yankee
71ff5a9d6f presets: Disallow negative values for "jobs" fields
Jobs should never be negative, to mirror the behavior on the command
line for both `cmake --build` and `ctest`. This fixes unintended
behaviors where "-1" would lead to `cmake::NO_BUILD_PARALLEL_LEVEL`
being used for build presets and an integer overflow occurring for test
presets.

Bump to presets version 11 to signify the change.
2026-01-29 16:25:07 -05:00