summaryrefslogtreecommitdiffstats
path: root/Help/variable
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2021-03-23 15:20:12 (GMT)
committerKitware Robot <kwrobot@kitware.com>2021-03-23 15:20:18 (GMT)
commit03100973771411229315b0b7b4f4253b625084ef (patch)
treee84c4f292eeb3123752582947a6f260f6b9a6dca /Help/variable
parent6dbf1770c62d5128bae10c2f6b34d571c6c6ddca (diff)
parent608ef8a6fcbdd3d1a8419ff774109b8f9e5ebafb (diff)
downloadCMake-03100973771411229315b0b7b4f4253b625084ef.zip
CMake-03100973771411229315b0b7b4f4253b625084ef.tar.gz
CMake-03100973771411229315b0b7b4f4253b625084ef.tar.bz2
Merge topic 'vs-custom-flag-table'
608ef8a6fc VS: Add a mostly-undocumented hook to load custom JSON flag tables 8dd8d63665 Tests: Add RunCMake hook to describe test variants Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5895
Diffstat (limited to 'Help/variable')
-rw-r--r--Help/variable/CMAKE_GENERATOR_TOOLSET.rst24
1 files changed, 24 insertions, 0 deletions
diff --git a/Help/variable/CMAKE_GENERATOR_TOOLSET.rst b/Help/variable/CMAKE_GENERATOR_TOOLSET.rst
index 53ad2f3..45f2d32 100644
--- a/Help/variable/CMAKE_GENERATOR_TOOLSET.rst
+++ b/Help/variable/CMAKE_GENERATOR_TOOLSET.rst
@@ -63,3 +63,27 @@ Supported pairs are:
Specify an alternative ``VCTargetsPath`` value for Visual Studio
project files. This allows use of VS platform extension configuration
files (``.props`` and ``.targets``) that are not installed with VS.
+
+Visual Studio Toolset Customization
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+**These are unstable interfaces with no compatibility guarantees**
+because they hook into undocumented internal CMake implementation details.
+Institutions may use these to internally maintain support for non-public
+Visual Studio platforms and toolsets, but must accept responsibility to
+make updates as changes are made to CMake.
+
+Additional ``key=value`` pairs are available:
+
+``customFlagTableDir=<path>``
+ .. versionadded:: 3.21
+
+ Specify the absolute path to a directory from which to load custom
+ flag tables stored as JSON documents with file names of the form
+ ``<platform>_<toolset>_<tool>.json`` or ``<platform>_<tool>.json``,
+ where ``<platform>`` is the :variable:`CMAKE_VS_PLATFORM_NAME`,
+ ``<toolset>`` is the :variable:`CMAKE_VS_PLATFORM_TOOLSET`,
+ and ``<tool>`` is the tool for which the flag table is meant.
+ **This naming pattern is an internal CMake implementation detail.**
+ The ``<tool>`` names are undocumented. The format of the ``.json``
+ flag table files is undocumented.