2017-04-10 11:41:01 +00:00
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition="'$(ResolveMatchingContract)' == 'true'">
2017-06-07 13:16:24 +00:00
<AddProjectReferencesDynamicallyDependsOn>
2017-04-10 11:41:01 +00:00
ResolveMatchingContract;
2017-06-07 13:16:24 +00:00
$(AddProjectReferencesDynamicallyDependsOn);
</AddProjectReferencesDynamicallyDependsOn>
<ResolveReferencesDependsOn>
$(ResolveReferencesDependsOn);
VerifyMatchingContract
2017-04-10 11:41:01 +00:00
</ResolveReferencesDependsOn>
</PropertyGroup>
<Target Name="ResolveMatchingContract">
<PropertyGroup>
2017-06-07 13:16:24 +00:00
<ContractProject Condition="'$(ContractProject)' == ''">$(SourceDir)/$(AssemblyName)/ref/$(AssemblyName).csproj</ContractProject>
<HasMatchingContract Condition="'$(HasMatchingContract)' == '' and Exists('$(ContractProject)')">true</HasMatchingContract>
2017-04-10 11:41:01 +00:00
</PropertyGroup>
<ItemGroup Condition="'$(HasMatchingContract)' == 'true'">
2017-06-07 13:16:24 +00:00
<!-- add contract project as project reference to get target path -->
<ProjectReference Include="$(ContractProject)">
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
<OutputItemType>ResolvedMatchingContract</OutputItemType>
</ProjectReference>
2017-04-10 11:41:01 +00:00
</ItemGroup>
2017-06-07 13:16:24 +00:00
</Target>
2017-04-10 11:41:01 +00:00
2017-06-07 13:16:24 +00:00
<Target Name="VerifyMatchingContract">
2017-04-10 11:41:01 +00:00
<Error Condition="'$(HasMatchingContract)' == 'true' and !Exists('%(ResolvedMatchingContract.Identity)')" Text="ResolveMatchingContract could not find a matching contract '%(ResolvedMatchingContract.Identity)' not found." />
</Target>
</Project>