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

dir.targets « external - github.com/mono/corefx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: c713f4c770eb90738a1ceb44f5a2c284b8f3b147 (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
35
36
37
38
39
40
41
42
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <ProjectJsonTemplate Condition="'$(ProjectJsonTemplate)' == ''">$(MSBuildThisProjectDirectory)project.json.template</ProjectJsonTemplate>
    <ProjectJson Condition="Exists('$(ProjectJsonTemplate)')">$(IntermediateOutputPath)project.json</ProjectJson>
    <ProjectLockJson Condition="Exists('$(ProjectJsonTemplate)')">$(IntermediateOutputPath)project.lock.json</ProjectLockJson>
  </PropertyGroup>

  <Import Project="..\dir.targets" />

  <PropertyGroup>
    <RestorePackages>true</RestorePackages>
    <PrereleaseResolveNuGetPackages>true</PrereleaseResolveNuGetPackages>
  </PropertyGroup>

  <Target
    Name="GenerateProjectJsonFromTemplates"
    BeforeTargets="RestorePackages"
    Inputs="$(ProjectJsonTemplate)"
    Outputs="$(ProjectJson)"
    Condition="Exists('$(ProjectJsonTemplate)')"
    >
    <MakeDir Directories="$([System.IO.Path]::GetDirectoryName('$(ProjectJson)'))" />
    <!-- Update project.json template -->
    <WriteLinesToFile
      File="$(ProjectJson)"
      Lines="$([System.IO.File]::ReadAllText('$(ProjectJsonTemplate)').Replace('{RID}', $(NuGetRuntimeIdentifier)).Replace('{TFM}', $(NuGetTargetMoniker)).Replace('{PackageId}', $(TargetingPackNugetPackageId)))"
      Overwrite="true"
                      />
  </Target>

  <!-- Override build and GetTargetPath to return all items deployed -->
  <Target Name="Build"
          Condition=" '$(_InvalidConfigurationWarning)' != 'true' "
          DependsOnTargets="$(BuildDependsOn)"
          Returns="@(BinPlaceItem)" />

  <!-- Depprojs need to run Compile in order to populate items that will be copied to output -->
  <Target Name="GetTargetPath"
          DependsOnTargets="Compile;GetBinPlaceItems"
          Returns="@(BinPlaceItem)" />

</Project>