Xamarin Public Jenkins (auto-signing) 6bdd276d05 Imported Upstream version 5.0.0.42
Former-commit-id: fd56571888259555122d8a0f58c68838229cea2b
2017-04-10 11:41:01 +00:00

40 lines
2.5 KiB
XML

<Project DefaultTargets="Build" InitialTargets="ValidateMSBuildToolsVersion" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<!-- The UsingTask, UseSharedCompilation, and ToolPath/Exe variables all interact to
choose which compiler path to use and whether or not to use the compiler server.
If UsingTask and UseSharedCompilation are set then the compiler server next to the
task will be used (i.e., the one in this package).
If UseSharedCompilation is false or ToolPath/Exe are set the compiler server will
not be used and the compiler exe at the ToolPath, if set, will be executed, otherwise
the executable in the MSBuild install path will be executed. -->
<Target Name="ValidateMSBuildToolsVersion" Condition="'$(BuildingProject)' == 'true'">
<Error Text="Microsoft.Net.Compilers is only supported on MSBuild v14.0 and above"
Condition="'$(MSBuildToolsVersion)' == '2.0'
OR '$(MSBuildToolsVersion)' == '3.5'
OR '$(MSBuildToolsVersion)' == '4.0'
OR '$(MSBuildToolsVersion)' == '12.0'" />
</Target>
<!-- Always use the local build task, even if we just shell out to an exe in case there are
new properties in the local build task. -->
<UsingTask TaskName="Microsoft.CodeAnalysis.BuildTasks.Csc"
AssemblyFile="$(MSBuildThisFileDirectory)..\tools\Microsoft.Build.Tasks.CodeAnalysis.dll" />
<UsingTask TaskName="Microsoft.CodeAnalysis.BuildTasks.Vbc"
AssemblyFile="$(MSBuildThisFileDirectory)..\tools\Microsoft.Build.Tasks.CodeAnalysis.dll" />
<PropertyGroup>
<!-- By default don't use the compiler server in Visual Studio. -->
<UseSharedCompilation Condition="'$(UseSharedCompilation)' == ''">false</UseSharedCompilation>
<CSharpCoreTargetsPath>$(MSBuildThisFileDirectory)..\tools\Microsoft.CSharp.Core.targets</CSharpCoreTargetsPath>
<VisualBasicCoreTargetsPath>$(MSBuildThisFileDirectory)..\tools\Microsoft.VisualBasic.Core.targets</VisualBasicCoreTargetsPath>
</PropertyGroup>
<!-- If we're not using the compiler server, set ToolPath/Exe to direct to
the exes in this package -->
<PropertyGroup Condition="'$(UseSharedCompilation)' != 'true'">
<CscToolPath>$(MSBuildThisFileDirectory)..\tools</CscToolPath>
<CscToolExe>csc.exe</CscToolExe>
<VbcToolPath>$(MSBuildThisFileDirectory)..\tools</VbcToolPath>
<VbcToolExe>vbc.exe</VbcToolExe>
</PropertyGroup>
</Project>