aboutsummaryrefslogtreecommitdiff
path: root/src/tools/publish_t.proj
blob: cbe67768b4286aa4ac537cd8a770236019acce70 (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
<Project Sdk="Microsoft.Build.Traversal">
  <PropertyGroup>
    <StagePublishX86>$(BaseIntermediateOutputPath)$(Configuration)\net472\x86\</StagePublishX86>
    <StagePublishX64>$(BaseIntermediateOutputPath)$(Configuration)\net472\x64\</StagePublishX64>
    <StagePublishDnc>$(BaseIntermediateOutputPath)$(Configuration)\net6.0\</StagePublishDnc>

    <PublishBuildFolder>$(PublishRoot)WixToolset.Heat\build\</PublishBuildFolder>
    <PublishHere>$(PublishRoot)WixToolset.Heat\tools\net472\</PublishHere>
    <PublishX86>$(PublishRoot)WixToolset.Heat\tools\net472\x86\</PublishX86>
    <PublishX64>$(PublishRoot)WixToolset.Heat\tools\net472\x64\</PublishX64>
    <PublishDnc>$(PublishRoot)WixToolset.Heat\tools\net6.0\</PublishDnc>
  </PropertyGroup>

  <ItemGroup>
    <ProjectReference Include="WixToolset.HeatTasks\WixToolset.HeatTasks.csproj" Properties="TargetFramework=net472;PublishDir=$(StagePublishX86)WixToolset.HeatTasks" Targets="Publish" />
    <ProjectReference Include="WixToolset.HeatTasks\WixToolset.HeatTasks.csproj" Properties="TargetFramework=net6.0;UseAppHost=false;PublishDir=$(StagePublishDnc)WixToolset.HeatTasks" Targets="Publish" />

    <!-- heat.exe doesn't need to filter any files so publish it straight into its final location -->
    <ProjectReference Include="heat\heat.csproj" Properties="TargetFramework=net472;RuntimeIdentifier=win-x86;PublishDir=$(PublishX86)" Targets="Publish" />
    <ProjectReference Include="heat\heat.csproj" Properties="TargetFramework=net472;RuntimeIdentifier=win-x64;PublishDir=$(PublishX64)" Targets="Publish" />
    <ProjectReference Include="heat\heat.csproj" Properties="TargetFramework=net6.0-windows;UseAppHost=false;PublishDir=$(PublishDnc)" Targets="Publish" />
  </ItemGroup>

  <Target Name="CopyToFinalPublishFolder" AfterTargets="Build">
    <ItemGroup>
      <From Include="WixToolset.Heat\WixToolset.Heat.targets" To="$(PublishBuildFolder)" />
      <From Include="$(StagePublishX86)\WixToolset.HeatTasks\*.*" Exclude="$(StagePublishx86)\WixToolset.HeatTasks\Microsoft.Build.*.dll" To="$(PublishHere)" />
      <From Include="$(StagePublishDnc)\WixToolset.HeatTasks\*.*" Exclude="$(StagePublishDnc)\WixToolset.HeatTasks\Microsoft.Build.*.dll" To="$(PublishDnc)" />
    </ItemGroup>

    <Copy SourceFiles="@(From)"
      DestinationFiles="%(To)%(RecursiveDir)%(Filename)%(Extension)"
      SkipUnchangedFiles="true"
      UseHardlinksIfPossible="true" />
  </Target>
</Project>