summaryrefslogtreecommitdiff
path: root/tests/override.targets
blob: 8bdff51b63f464c1e76606fbca5e195cf02b3fd5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <!--
    Overrides for all other targets (including build tools) can go in this file.
  -->

  <Import Project="mono.targets" Condition="'$(OsEnvironment)'=='Unix'" />
  <Import Project="roslyn.xplat.targets" Condition="'$(OsEnvironment)'=='Unix'" />
  <!-- Contains overrides for the nuget reference resolution.  The regular nuget reference resolution will not 
       copy references local, which we need in order to correctly execute the xunit project -->
  <Import Project="xunitwrapper.targets" Condition="'$(IsXunitWrapperProject)'=='true'" />
  
  <!-- Override the AddDesignTimeFacadeReferences target to add the ability to reference the local version of mscorlib.
       Some tests use functionality not available in the portable reference assemblies.
       For portability reasons it's generally a good idea to reference the facades instead of the 
       raw implementation assemblies.  However, these tests are useful. -->
  <Target Name="AddDesignTimeFacadeReferences"
      Condition="'$(TargetingDefaultPlatform)' == 'true'"
      BeforeTargets="ResolveReferences"
      DependsOnTargets="GetReferenceAssemblyPaths"
  >
    <PropertyGroup>
      <_resolvedMscorlib Condition="'%(ReferencePath.FileName)' == 'mscorlib'">true</_resolvedMscorlib>
    </PropertyGroup>

    <!-- TODO_SPC: ? -->
    <ItemGroup>
      <PossibleTargetFrameworks Include="$(_TargetFrameworkDirectories)" />
      <ReferencePath Include="%(PossibleTargetFrameworks.Identity)mscorlib.dll" 
                     Condition="'$(ReferenceLocalMscorlib)' != 'true' and '$(_resolvedMscorlib)' != 'true' and '%(PossibleTargetFrameworks.Identity)' != '' and Exists('%(PossibleTargetFrameworks.Identity)mscorlib.dll')" />
      <ReferencePath Include="$(ProjectDir)\..\bin\Product\$(BuildOS).$(BuildArch).$(BuildType)\ref\mscorlib.dll" 
                     Condition="'$(ReferenceLocalMscorlib)' == 'true' and '$(_resolvedMscorlib)' != 'true'" />
    </ItemGroup>
  </Target>
</Project>