• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="utf-8"?>
2<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3    <PropertyGroup>
4        <ProjectGuid>{6BD53305-B03E-49DC-85FB-5551B8CCC843}</ProjectGuid>
5        <SchemaVersion>2.0</SchemaVersion>
6        <OutputName>exe</OutputName>
7        <OutputType>Package</OutputType>
8    </PropertyGroup>
9    <PropertyGroup>
10        <!-- Shortcut validation is not necessary -->
11        <SuppressICEs>ICE43</SuppressICEs>
12    </PropertyGroup>
13    <Import Project="..\msi.props" />
14    <ItemGroup>
15        <Compile Include="exe.wxs" />
16        <Compile Include="exe_files.wxs" />
17        <Compile Include="exe_reg.wxs" />
18    </ItemGroup>
19    <ItemGroup>
20        <EmbeddedResource Include="*.wxl" />
21        <WxlTemplate Include="*.wxl_template" />
22    </ItemGroup>
23
24    <Target Name="_GenerateLicense" AfterTargets="PrepareForBuild">
25        <ItemGroup>
26            <LicenseFiles Include="$(PySourcePath)LICENSE;
27                                   crtlicense.txt;
28                                   $(bz2Dir)LICENSE;
29                                   $(opensslOutDir)LICENSE;
30                                   $(tcltkDir)tcllicense.terms;
31                                   $(tcltkDir)tklicense.terms;
32                                   $(tcltkDir)tixlicense.terms" />
33            <_LicenseFiles Include="@(LicenseFiles)">
34                <Content>$([System.IO.File]::ReadAllText(%(FullPath)))</Content>
35            </_LicenseFiles>
36        </ItemGroup>
37
38        <WriteLinesToFile File="$(BuildPath)LICENSE"
39                          Overwrite="true"
40                          Lines="@(_LicenseFiles->'%(Content)')" />
41    </Target>
42
43    <Target Name="_CopyMiscNews" AfterTargets="PrepareForBuild" Condition="Exists('$(PySourcePath)Misc\NEWS')">
44        <Copy SourceFiles="$(PySourcePath)Misc\NEWS" DestinationFiles="$(BuildPath)NEWS.txt" />
45    </Target>
46
47    <Target Name="_MergeMiscNewsWithBlurb" AfterTargets="PrepareForBuild" Condition="$(Blurb) != '' and !Exists('$(PySourcePath)Misc\NEWS')">
48        <Exec Command="$(Blurb) merge -f &quot;$(BuildPath)NEWS.txt&quot;" WorkingDirectory="$(PCbuild)" />
49    </Target>
50
51    <Target Name="_MergeMiscNewsWithPython" AfterTargets="PrepareForBuild" Condition="$(Blurb) == '' and !Exists('$(PySourcePath)Misc\NEWS')">
52        <ItemGroup>
53            <HostPython Include="$(ExternalsDir)python*\tools\python.exe" />
54            <HostPython Include="@(HostPython)" Condition="Exists(%(FullPath))" />
55            <HostPython Include="py" Condition="@(HostPython) == ''" />
56        </ItemGroup>
57        <PropertyGroup>
58            <HostPython>@(HostPython)</HostPython>
59            <HostPython Condition="$(HostPython.Contains(';'))">$(HostPython.Remove($(HostPython.IndexOf(';'))))</HostPython>
60        </PropertyGroup>
61        <Exec Command="&quot;$(HostPython)&quot; -m pip install -U blurb" WorkingDirectory="$(PCbuild)" />
62        <Exec Command="&quot;$(HostPython)&quot; -m blurb merge -f &quot;$(BuildPath)NEWS.txt&quot;" WorkingDirectory="$(PCbuild)" />
63    </Target>
64
65    <Import Project="..\msi.targets" />
66</Project>