diff options
author | Brad King <brad.king@kitware.com> | 2018-09-13 12:18:22 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2018-12-12 11:39:30 (GMT) |
commit | eb2ec41a0422e9acd4961e32f6f28c20846a292a (patch) | |
tree | 48257a71b127bb947f9bdaabaa1d2d1e605ec6fd /Source/cmake.h | |
parent | c3635e502c9804fc0ab781b9f20e07449d4e6c23 (diff) | |
download | CMake-eb2ec41a0422e9acd4961e32f6f28c20846a292a.zip CMake-eb2ec41a0422e9acd4961e32f6f28c20846a292a.tar.gz CMake-eb2ec41a0422e9acd4961e32f6f28c20846a292a.tar.bz2 |
fileapi: Add protocol v1 infrastructure with support for shared query files
Add a file-based API that clients may use to get semantic information
about the buildsystem that CMake generates. Clients will write query
files under a designated location in the build tree, and CMake will
write reply files for clients to read.
Start with support for shared stateless query files. These allow
clients to share requests for major object versions and get all those
recognized by CMake. Once any client has written a shared request to a
build tree it will persist. Other clients will not need to overwrite
the request (since it is stateless) and should not remove it either.
For now we add only an undocumented object kind to use for testing the
query and reply infrastructure. Object kinds providing real semantic
information will be added later.
Issue: #18398
Diffstat (limited to 'Source/cmake.h')
-rw-r--r-- | Source/cmake.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/cmake.h b/Source/cmake.h index d3d0e80..d00acc7 100644 --- a/Source/cmake.h +++ b/Source/cmake.h @@ -6,6 +6,7 @@ #include "cmConfigure.h" // IWYU pragma: keep #include <map> +#include <memory> // IWYU pragma: keep #include <set> #include <string> #include <unordered_set> @@ -21,6 +22,7 @@ #endif class cmExternalMakefileProjectGeneratorFactory; +class cmFileAPI; class cmFileTimeComparison; class cmGlobalGenerator; class cmGlobalGeneratorFactory; @@ -528,6 +530,7 @@ private: #if defined(CMAKE_BUILD_WITH_CMAKE) cmVariableWatch* VariableWatch; + std::unique_ptr<cmFileAPI> FileAPI; #endif cmState* State; |