summaryrefslogtreecommitdiffstats
path: root/Help/manual
diff options
context:
space:
mode:
authorArctic Lampyrid <ArcticLampyrid@outlook.com>2024-03-19 03:45:58 (GMT)
committerBrad King <brad.king@kitware.com>2024-03-19 18:55:25 (GMT)
commit6116bcb0663e91fc7fa82718ab5e83a6377e5421 (patch)
tree484f6e3a16c046264376f2497dfef8ef81dda813 /Help/manual
parentf578515d0298d73552c5c2c01a8a4195862cde60 (diff)
downloadCMake-6116bcb0663e91fc7fa82718ab5e83a6377e5421.zip
CMake-6116bcb0663e91fc7fa82718ab5e83a6377e5421.tar.gz
CMake-6116bcb0663e91fc7fa82718ab5e83a6377e5421.tar.bz2
fileapi: Add CONFIGURE_DEPENDS glob info to cmakeFiles object
Fixes: #25668 Co-authored-by: Brad King <brad.king@kitware.com>
Diffstat (limited to 'Help/manual')
-rw-r--r--Help/manual/cmake-file-api.7.rst50
1 files changed, 49 insertions, 1 deletions
diff --git a/Help/manual/cmake-file-api.7.rst b/Help/manual/cmake-file-api.7.rst
index c249ee2..260030e 100644
--- a/Help/manual/cmake-file-api.7.rst
+++ b/Help/manual/cmake-file-api.7.rst
@@ -1489,7 +1489,7 @@ There is only one ``cmakeFiles`` object major version, version 1.
{
"kind": "cmakeFiles",
- "version": { "major": 1, "minor": 0 },
+ "version": { "major": 1, "minor": 1 },
"paths": {
"build": "/path/to/top-level-build-dir",
"source": "/path/to/top-level-source-dir"
@@ -1511,6 +1511,16 @@ There is only one ``cmakeFiles`` object major version, version 1.
"isExternal": true,
"path": "/path/to/cmake/Modules/CMakeGenericSystem.cmake"
}
+ ],
+ "globsDependent": [
+ {
+ "expression": "src/*.cxx",
+ "recurse": true,
+ "files": [
+ "src/foo.cxx",
+ "src/bar.cxx"
+ ]
+ }
]
}
@@ -1553,6 +1563,44 @@ The members specific to ``cmakeFiles`` objects are:
Optional member that is present with boolean value ``true``
if the path specifies a file in the CMake installation.
+``globsDependent``
+ Optional member that is present when the project calls :command:`file(GLOB)`
+ or :command:`file(GLOB_RECURSE)` with the ``CONFIGURE_DEPENDS`` option.
+ The value is a JSON array of JSON objects, each specifying a globbing
+ expression and the list of paths it matched. If the globbing expression
+ no longer matches the same list of paths, CMake considers the build system
+ to be out of date.
+
+ This field was added in ``cmakeFiles`` version 1.1.
+
+ The members of each entry are:
+
+ ``expression``
+ A string specifying the globbing expression.
+
+ ``recurse``
+ Optional member that is present with boolean value ``true``
+ if the entry corresponds to a :command:`file(GLOB_RECURSE)` call.
+ Otherwise the entry corresponds to a :command:`file(GLOB)` call.
+
+ ``listDirectories``
+ Optional member that is present with boolean value ``true`` if
+ :command:`file(GLOB)` was called without ``LIST_DIRECTORIES false`` or
+ :command:`file(GLOB_RECURSE)` was called with ``LIST_DIRECTORIES true``.
+
+ ``followSymlinks``
+ Optional member that is present with boolean value ``true`` if
+ :command:`file(GLOB)` was called with the ``FOLLOW_SYMLINKS`` option.
+
+ ``relative``
+ Optional member that is present if :command:`file(GLOB)` was called
+ with the ``RELATIVE <path>`` option. The value is a string containing
+ the ``<path>`` given.
+
+ ``paths``
+ A JSON array of strings specifying the paths matched by the call
+ to :command:`file(GLOB)` or :command:`file(GLOB_RECURSE)`.
+
Object Kind "toolchains"
------------------------