Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corefx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Mellino <erme@microsoft.com>2016-11-15 22:09:42 +0300
committerGitHub <noreply@github.com>2016-11-15 22:09:42 +0300
commite3092578e09f7aea5215e70981b1eae3c0ea2268 (patch)
treebaefa1db70491d9d17adf32eae638689297c45dd /Documentation/project-docs
parent2ffdc9427def591cb7eea4541788a7b3209095c5 (diff)
Add documentation for building a single configuration of a csproj
Add a short description of the commands to use when building individual csproj files for different configurations.
Diffstat (limited to 'Documentation/project-docs')
-rw-r--r--Documentation/project-docs/developer-guide.md18
1 files changed, 17 insertions, 1 deletions
diff --git a/Documentation/project-docs/developer-guide.md b/Documentation/project-docs/developer-guide.md
index 54557cc9ac..893642609b 100644
--- a/Documentation/project-docs/developer-guide.md
+++ b/Documentation/project-docs/developer-guide.md
@@ -126,7 +126,23 @@ src\System.Diagnostics.DiagnosticSource\tests and typing `msbuild System.Diagnos
There is also a pkg directory for each project, and if you go into it and type `msbuild`, it will build the DLL (if needed)
and then also build the NuGet package for it. The NuGet package ends up in the bin\packages directory.
-**Note:** If building in a non-Windows environment, call `./Tools/msbuild.sh` instead of just `msbuild`.
+For libraries that have multiple build configurations, the `.builds` file will have multiple binary outputs (one for each configuration). It is also possible to directly build the `.csproj` project in order to produce only a single configuration. Looking at the `.builds` file will tell you which configuration combinations are valid. For example, a builds file with these entries will have two valid combinations:
+```XML
+<Project Include="System.Net.NetworkInformation.csproj">
+ <OSGroup>Linux</OSGroup>
+</Project>
+```
+`msbuild System.Net.NetworkInformation.csproj /p:OSGroup=Linux`
+
+```XML
+<Project Include="System.Net.NetworkInformation.csproj">
+ <OSGroup>Windows_NT</OSGroup>
+ <TargetGroup>uap101</TargetGroup>
+</Project>
+```
+`msbuild System.Net.NetworkInformation.csproj /p:OSGroup=Windows_NT /p:TargetGroup=uap101`
+
+**Note:** If building in a non-Windows environment, call `<repo-root>/Tools/msbuild.sh` instead of just `msbuild`.
### Building other OSes