diff options
author | Michael Stürmer <michael.stuermer@schaeffler.com> | 2017-01-17 15:09:38 (GMT) |
---|---|---|
committer | Michael Stürmer <michael.stuermer@schaeffler.com> | 2017-01-18 14:51:22 (GMT) |
commit | 90cb40832375fa880b792ca9bf5cdd3071912f9d (patch) | |
tree | b3611ff2d49746cf01caee5c0407b3918e9034d6 /Help | |
parent | cab8f26211051a24ceb0e512660f022c9960f241 (diff) | |
download | CMake-90cb40832375fa880b792ca9bf5cdd3071912f9d.zip CMake-90cb40832375fa880b792ca9bf5cdd3071912f9d.tar.gz CMake-90cb40832375fa880b792ca9bf5cdd3071912f9d.tar.bz2 |
VS: improve handling of source files with special extensions in .csproj
Mainly <Link> and <DependentUpon> tags are added to connect generated
and manually edited files. Special file extensions that are take care
of are:
- .Designer.cs
- .xaml.cs
- .settings
- .resx
- .xaml
Diffstat (limited to 'Help')
-rw-r--r-- | Help/manual/cmake-properties.7.rst | 3 | ||||
-rw-r--r-- | Help/prop_sf/VS_COPY_TO_OUT_DIR.rst | 6 | ||||
-rw-r--r-- | Help/prop_sf/VS_INCLUDE_IN_VSIX.rst | 6 | ||||
-rw-r--r-- | Help/prop_sf/VS_RESOURCE_GENERATOR.rst | 8 | ||||
-rw-r--r-- | Help/release/dev/vs-advanced-source-properties.rst | 12 | ||||
-rw-r--r-- | Help/release/dev/vs-csharp-support.rst | 13 |
6 files changed, 46 insertions, 2 deletions
diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst index 864d1dc..03178a1 100644 --- a/Help/manual/cmake-properties.7.rst +++ b/Help/manual/cmake-properties.7.rst @@ -362,8 +362,11 @@ Properties on Source Files /prop_sf/SKIP_AUTORCC /prop_sf/SKIP_AUTOUIC /prop_sf/SYMBOLIC + /prop_sf/VS_COPY_TO_OUT_DIR /prop_sf/VS_DEPLOYMENT_CONTENT /prop_sf/VS_DEPLOYMENT_LOCATION + /prop_sf/VS_INCLUDE_IN_VSIX + /prop_sf/VS_RESOURCE_GENERATOR /prop_sf/VS_SHADER_ENTRYPOINT /prop_sf/VS_SHADER_FLAGS /prop_sf/VS_SHADER_MODEL diff --git a/Help/prop_sf/VS_COPY_TO_OUT_DIR.rst b/Help/prop_sf/VS_COPY_TO_OUT_DIR.rst new file mode 100644 index 0000000..16c8d83 --- /dev/null +++ b/Help/prop_sf/VS_COPY_TO_OUT_DIR.rst @@ -0,0 +1,6 @@ +VS_COPY_TO_OUT_DIR +------------------ + +Sets the ``<CopyToOutputDirectory>`` tag for a source file in a +Visual Studio project file. Valid values are ``Never``, ``Always`` +and ``PreserveNewest``. diff --git a/Help/prop_sf/VS_INCLUDE_IN_VSIX.rst b/Help/prop_sf/VS_INCLUDE_IN_VSIX.rst new file mode 100644 index 0000000..30f471d --- /dev/null +++ b/Help/prop_sf/VS_INCLUDE_IN_VSIX.rst @@ -0,0 +1,6 @@ +VS_INCLUDE_IN_VSIX +------------------ + +Boolean property to specify if the file should be included within a VSIX +extension package. This is needed for development of Visual Studio +extensions. diff --git a/Help/prop_sf/VS_RESOURCE_GENERATOR.rst b/Help/prop_sf/VS_RESOURCE_GENERATOR.rst new file mode 100644 index 0000000..97e5aac --- /dev/null +++ b/Help/prop_sf/VS_RESOURCE_GENERATOR.rst @@ -0,0 +1,8 @@ +VS_RESOURCE_GENERATOR +--------------------- + +This property allows to specify the resource generator to be used +on this file. It defaults to ``PublicResXFileCodeGenerator`` if +not set. + +This property only applies to C# projects. diff --git a/Help/release/dev/vs-advanced-source-properties.rst b/Help/release/dev/vs-advanced-source-properties.rst new file mode 100644 index 0000000..dd391e0 --- /dev/null +++ b/Help/release/dev/vs-advanced-source-properties.rst @@ -0,0 +1,12 @@ +vs-advanced-source-properties +----------------------------- + +* The :ref:`Visual Studio Generators` for VS 2010 and above + learned some more source file properties: + + - :prop_sf:`VS_RESOURCE_GENERATOR` (C# only): allows setting the resource + generator + - :prop_sf:`VS_COPY_TO_OUT_DIR`: parameter to set if file should be copied + to output directory (values: ``Never``, ``Always``, ``PreserveNewest``) + - :prop_sf:`VS_INCLUDE_IN_VSIX`: boolean property to include file include + Visual Studio extension package diff --git a/Help/release/dev/vs-csharp-support.rst b/Help/release/dev/vs-csharp-support.rst index 26d8574..46b235a 100644 --- a/Help/release/dev/vs-csharp-support.rst +++ b/Help/release/dev/vs-csharp-support.rst @@ -19,7 +19,16 @@ vs-native-csharp-support that specifically targets C# contains ``CSharp`` as a part of their names. -* More finetuning of C# targets can be done using target - properties. Specifically the Visual Studio related target +* More finetuning of C# targets can be done using target and source + file properties. Specifically the Visual Studio related target properties (``VS_*``) are worth a look (for setting toolset versions, root namespaces, assembly icons, ...). + +* **Auto-"linking"** in .csproj files: In C#/.NET development with + Visual Studio there is a number of visual editors used which + generate code. Both the generated files and the ones edited + with the UI are connected in the ``.csproj`` file using + ``<DependentUpon>`` tags. If CMake finds within a C# project + any source file with extension ``.Designer.cs`` or ``.xaml.cs``, + it checks sibling files with extension ``.xaml``, ``.settings``, + ``.resx`` or ``.cs`` and establishes the dependency connection. |