mirror of
https://github.com/Kitware/CMake.git
synced 2026-04-23 14:48:19 -05:00
VS: Add DOTNET_SDK property to generate SDK-style C# projects
Changes in cmVisualStudio10TargetGenerator::Generate to write .Net SDK-style project for VS generators VS 19 and above. Also adds documentation and tests. Issue: #20227
This commit is contained in:
@@ -191,6 +191,7 @@ Properties on Targets
|
||||
/prop_tgt/DEPLOYMENT_REMOTE_DIRECTORY
|
||||
/prop_tgt/DEPRECATION
|
||||
/prop_tgt/DISABLE_PRECOMPILE_HEADERS
|
||||
/prop_tgt/DOTNET_SDK
|
||||
/prop_tgt/DOTNET_TARGET_FRAMEWORK
|
||||
/prop_tgt/DOTNET_TARGET_FRAMEWORK_VERSION
|
||||
/prop_tgt/EchoString
|
||||
|
||||
@@ -49,6 +49,7 @@ Variables that Provide Information
|
||||
/variable/CMAKE_DEBUG_TARGET_PROPERTIES
|
||||
/variable/CMAKE_DIRECTORY_LABELS
|
||||
/variable/CMAKE_DL_LIBS
|
||||
/variable/CMAKE_DOTNET_SDK
|
||||
/variable/CMAKE_DOTNET_TARGET_FRAMEWORK
|
||||
/variable/CMAKE_DOTNET_TARGET_FRAMEWORK_VERSION
|
||||
/variable/CMAKE_EDIT_COMMAND
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
DOTNET_SDK
|
||||
----------
|
||||
|
||||
.. versionadded:: 3.23
|
||||
|
||||
Specify the .NET SDK for C# projects. For example: ``Microsoft.NET.Sdk``.
|
||||
|
||||
This property tells :ref:`Visual Studio Generators` for VS 2019 and
|
||||
above to generate a .NET SDK-style project using the specified SDK.
|
||||
The property is meaningful only to these generators, and only in C#
|
||||
targets. It is ignored for C++ projects, even if they are managed
|
||||
(e.g. using :prop_tgt:`COMMON_LANGUAGE_RUNTIME`).
|
||||
|
||||
This property must be a non-empty string to generate .NET SDK-style projects.
|
||||
CMake does not perform any validations for the value of the property.
|
||||
|
||||
This property may be initialized for all targets using the
|
||||
:variable:`CMAKE_DOTNET_SDK` variable.
|
||||
|
||||
.. note::
|
||||
|
||||
The :ref:`Visual Studio Generators` in this version of CMake have not
|
||||
yet learned to support :command:`add_custom_command` in .NET SDK-style
|
||||
projects. It is currently an error to attach a custom command to a
|
||||
target with the ``DOTNET_SDK`` property set.
|
||||
@@ -0,0 +1,9 @@
|
||||
vs-csharp-dotnet-sdk
|
||||
--------------------
|
||||
|
||||
* The :ref:`Visual Studio Generators` for VS 2019 and above learned to
|
||||
support .NET SDK-style project files (``.csproj``) for C# projects.
|
||||
See the :prop_tgt:`DOTNET_SDK` target property and corresponding
|
||||
:variable:`CMAKE_DOTNET_SDK` variable.
|
||||
However, this version of CMake does not yet support using
|
||||
:command:`add_custom_command` in .NET SDK-style projects.
|
||||
@@ -0,0 +1,9 @@
|
||||
CMAKE_DOTNET_SDK
|
||||
----------------
|
||||
|
||||
.. versionadded:: 3.23
|
||||
|
||||
Default value for :prop_tgt:`DOTNET_SDK` property of targets.
|
||||
|
||||
This variable is used to initialize the :prop_tgt:`DOTNET_SDK`
|
||||
property on all targets. See that target property for additional information.
|
||||
Reference in New Issue
Block a user