Merge topic 'doc-file-api-omissions' into release-4.1

da73f6b058 Help: Add cxxModuleBmi details missing from file API and release notes
bef17abc09 Help: Add file API fileSet... fields missed in the 3.23 release notes
094436db98 Help: The fileSets item in a codemodel target object is optional
1398ef18c2 Help: Add missing backtrace property to compileCommandFragments
74d70d13cd Help: Fix repeated word in file API docs for sourceFileExtensions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10913
This commit is contained in:
Brad King
2025-07-07 15:12:12 +00:00
committed by Kitware Robot
3 changed files with 39 additions and 4 deletions

View File

@@ -822,6 +822,13 @@ with members:
This type was added in codemodel version 2.4.
``cxxModuleBmi``
An :command:`install(TARGETS)` call with ``CXX_MODULES_BMI``.
The ``destination`` member is populated and the ``isOptional`` member
may exist. This type has an additional ``cxxModuleBmiTarget`` member.
This type was added in codemodel version 2.5.
``isExcludeFromAll``
Optional member that is present with boolean value ``true`` when
:command:`install` is called with the ``EXCLUDE_FROM_ALL`` option.
@@ -934,6 +941,21 @@ with members:
This field was added in codemodel version 2.4.
``cxxModuleBmiTarget``
Optional member that is present when ``type`` is ``cxxModuleBmi``.
The value is a JSON object with members:
``id``
A string uniquely identifying the target. This matches
the ``id`` member of the target in the main "codemodel"
object's ``targets`` array.
``index``
An unsigned integer 0-based index into the main "codemodel"
object's ``targets`` array for the target.
This field was added in codemodel version 2.5.
``scriptFile``
Optional member that is present when ``type`` is ``script``.
The value is a string specifying the path to the script file on disk,
@@ -1180,8 +1202,9 @@ with members:
the ``backtraceGraph`` member's ``nodes`` array.
``fileSets``
A JSON array of entries corresponding to the target's file sets. Each entry
is a JSON object with members:
An optional member that is present when a target defines one or more
file sets. The value is a JSON array of entries corresponding to the
target's file sets. Each entry is a JSON object with members:
``name``
A string specifying the name of the file set.
@@ -1301,6 +1324,12 @@ with members:
A string specifying a fragment of the compile command line invocation.
The value is encoded in the build system's native shell format.
``backtrace``
Optional member that is present when a CMake language backtrace to
the command invocation that added this fragment is available.
The value is an unsigned integer 0-based index into the
``backtraceGraph`` member's ``nodes`` array.
``includes``
Optional member that is present when there are include directories.
The value is a JSON array with an entry for each directory. Each
@@ -1828,6 +1857,6 @@ The members specific to ``toolchains`` objects are:
``sourceFileExtensions``
Optional member that is present when the
:variable:`CMAKE_<LANG>_SOURCE_FILE_EXTENSIONS` variable is defined for
the current language. Its value is a JSON array of JSON strings where each
the current language. Its value is a JSON array of JSON strings where
each string holds a file extension (without the leading dot) for the
language.

View File

@@ -78,7 +78,9 @@ File-Based API
has been updated to ``2.4``.
* The :manual:`cmake-file-api(7)` "codemodel" version 2 ``directory``
object ``installers`` field gained a new ``fileSet`` installer type.
object ``installers`` field gained a new ``fileSet`` installer type
and associated ``fileSetName``, ``fileSetType``, ``fileSetDirectories``,
and ``fileSetTarget`` fields.
Commands
--------

View File

@@ -42,6 +42,10 @@ File-Based API
gained a new ``fileSets`` field and associated ``fileSetIndex``
field to ``sources`` objects.
* The :manual:`cmake-file-api(7)` "codemodel" version 2 "directory"
object ``installers`` field gained a new ``cxxModuleBmi`` installer type
and an associated ``cxxModuleBmiTarget`` field.
* The :manual:`cmake-file-api(7)` gained a new "configureLog" object kind
that enables stable access to the :manual:`cmake-configure-log(7)`.