Переглянути джерело

Help: Improve VS_SETTINGS and VS_TOOL_OVERRIDE documentation

Reorder paragraphs, adjust version notes, add cross-references,
note the ability to exclude files from the build.

Fixes: #11902
Nikita Nemkin 10 місяців тому
батько
коміт
8fa9858e20
2 змінених файлів з 31 додано та 13 видалено
  1. 21 11
      Help/prop_sf/VS_SETTINGS.rst
  2. 10 2
      Help/prop_sf/VS_TOOL_OVERRIDE.rst

+ 21 - 11
Help/prop_sf/VS_SETTINGS.rst

@@ -3,15 +3,11 @@ VS_SETTINGS
 
 .. versionadded:: 3.18
 
-Set any item metadata on a file.
+Add arbitrary MSBuild item metadata to a file.
 
-.. versionadded:: 3.22
-
-  This property is honored for all source file types.
-  Previously it worked only for non-built files.
-
-Takes a list of ``Key=Value`` pairs. Tells the Visual Studio generator to set
-``Key`` to ``Value`` as item metadata on the file.
+This property accepts a list of ``Key=Value`` pairs. The Visual Studio
+generator will add these key-value pairs as item metadata to the file.
+:manual:`Generator expressions <cmake-generator-expressions(7)>` are supported.
 
 For example:
 
@@ -19,7 +15,21 @@ For example:
 
   set_property(SOURCE file.hlsl PROPERTY VS_SETTINGS "Key=Value" "Key2=Value2")
 
-will set ``Key`` to ``Value`` and ``Key2`` to ``Value2`` on the
-``file.hlsl`` item as metadata.
+will set the ``file.hlsl`` item metadata as follows:
 
-:manual:`Generator expressions <cmake-generator-expressions(7)>` are supported.
+.. code-block:: xml
+
+  <FXCompile Include="source_path\file.hlsl">
+    <Key>Value</Key>
+    <Key2>Value2</Key2>
+  </FXCompile>
+
+Together with :prop_sf:`VS_TOOL_OVERRIDE`, this property can be used to
+configure items for custom MSBuild tasks.
+
+Adding the metadata ``ExcludedFromBuild=true`` will exclude the file from
+the build.
+
+.. versionchanged:: 3.22
+  This property is honored for all source file types.
+  Previously, it only worked for source types unknown to CMake.

+ 10 - 2
Help/prop_sf/VS_TOOL_OVERRIDE.rst

@@ -3,5 +3,13 @@ VS_TOOL_OVERRIDE
 
 .. versionadded:: 3.7
 
-Override the default Visual Studio tool that will be applied to the source file
-with a new tool not based on the extension of the file.
+Override the MSBuild item type of a source file in a Visual Studio project.
+
+Together with :prop_sf:`VS_SETTINGS`, this property can be used to configure
+items for custom MSBuild tasks.
+
+Setting the item type to ``None`` will exclude the file from the build.
+
+.. versionchanged:: 3.31
+  This property is honored for all source file types.
+  Previously, it only worked for source types unknown to CMake.