blob: b77646bec46ed1d7adf8f2235208b3ee63b3fbee [file] [log] [blame]
Steve Dowerbb240872015-02-05 22:08:48 -08001<?xml version="1.0" encoding="utf-8"?>
Steve Dower3468a062015-02-06 09:59:05 -08002<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" TreatAsLocalProperty="DownloadUrl">
Steve Dowerbb240872015-02-05 22:08:48 -08003 <PropertyGroup>
4 <SchemaVersion>2.0</SchemaVersion>
5 <OutputType>Bundle</OutputType>
6
7 <BootstrapConfiguration Condition="'$(BootstrapConfiguration)' == ''">Release</BootstrapConfiguration>
8 <LinkerSuppressSpecificWarnings>1132;1135;1140</LinkerSuppressSpecificWarnings>
9 <OutputName Condition="$(BuildForRelease)">$(OutputName)-$(PythonVersion)</OutputName>
10 <OutputName Condition="!$(BuildForRelease)">$(OutputName)-$(MajorVersionNumber).$(MinorVersionNumber).$(MicroVersionNumber).$(RevisionNumber)</OutputName>
11 <OutputName Condition="$(Platform) == 'x64'">$(OutputName)-amd64</OutputName>
12 <OutputName Condition="'$(OutputSuffix)' != ''">$(OutputName)-$(OutputSuffix)</OutputName>
Steve Dowere4969f52015-02-28 19:53:50 -080013 <OutputName Condition="'$(Configuration)' == 'Debug'">$(OutputName)-d</OutputName>
14 <TargetName>$(OutputName)</TargetName>
Steve Dowerbb240872015-02-05 22:08:48 -080015
16 <OutputPath>$(OutputPath)en-us\</OutputPath>
17 <OutDir>$(OutputPath)</OutDir>
18
Steve Dower312cef02015-02-07 22:20:48 -080019 <DownloadUrl Condition="'$(DownloadUrl)' == '' and '$(DownloadUrlBase)' != ''">$(DownloadUrlBase.TrimEnd(`/`))/$(MajorVersionNumber).$(MinorVersionNumber).$(MicroVersionNumber)/$(ArchName)$(ReleaseLevelName)/</DownloadUrl>
20 <DefineConstants Condition="'$(DownloadUrl)' != ''">$(DefineConstants);DownloadUrl=$(DownloadUrl){2}</DefineConstants>
Steve Dowerbb240872015-02-05 22:08:48 -080021 <DefineConstants Condition="'$(DownloadUrl)' == ''">$(DefineConstants);DownloadUrl={2}</DefineConstants>
22 </PropertyGroup>
23
24 <ItemGroup>
25 <WixExtension Include="WixUtilExtension">
26 <HintPath>WixUtilExtension</HintPath>
27 <Name>WixUtilExtension</Name>
28 </WixExtension>
29 <WixExtension Include="WixDependencyExtension">
30 <HintPath>WixDependencyExtension</HintPath>
31 <Name>WixDependencyExtension</Name>
32 </WixExtension>
33 <WixExtension Include="WixBalExtension">
34 <HintPath>WixBalExtension</HintPath>
35 <Name>WixBalExtension</Name>
36 </WixExtension>
37 </ItemGroup>
38 <ItemGroup>
39 <Compile Include="bundle.wxs" />
40 <Compile Include="packagegroups\*.wxs" />
41 </ItemGroup>
42 <ItemGroup>
43 <Content Include="Default.thm" />
44 <Content Include="Default.wxl" />
45 <Content Include="SideBar.png" />
46 </ItemGroup>
47 <ItemGroup>
Steve Dowere4969f52015-02-28 19:53:50 -080048 <EmbeddedResource Include="bundle.wxl" />
Steve Dowerbb240872015-02-05 22:08:48 -080049 <WxlTemplate Include="*_en-US.wxl_template" />
50 </ItemGroup>
51 <ItemGroup>
52 <LinkerBindInputPaths Include="$(OutputPath)">
53 <BindName></BindName>
54 </LinkerBindInputPaths>
55 </ItemGroup>
56
57 <ItemDefinitionGroup>
58 <Package>
59 <Properties>BuildForRelease=$(BuildForRelease)</Properties>
60 </Package>
61 </ItemDefinitionGroup>
62 <ItemGroup>
63 <Package Include="..\core\core*.wixproj" />
Steve Dowerbb240872015-02-05 22:08:48 -080064 <Package Include="..\dev\dev*.wixproj" />
65 <Package Include="..\doc\doc*.wixproj" />
66 <Package Include="..\exe\exe*.wixproj" />
67 <Package Include="..\lib\lib*.wixproj" />
68 <Package Include="..\path\path*.wixproj" />
69 <Package Include="..\pip\pip*.wixproj" />
70 <Package Include="..\tcltk\tcltk*.wixproj" />
71 <Package Include="..\test\test*.wixproj" />
72 <Package Include="..\tools\tools*.wixproj" />
73 </ItemGroup>
74
Steve Dowerb85b4272015-07-08 22:43:48 -070075 <PropertyGroup>
76 <BuildPackagesTargets>Build</BuildPackagesTargets>
77 </PropertyGroup>
78
79 <Target Name="_SetRebuildTarget" BeforeTargets="BeforeRebuild">
80 <PropertyGroup>
81 <BuildPackagesTargets>Rebuild</BuildPackagesTargets>
82 </PropertyGroup>
83 </Target>
84
Steve Dowerbb240872015-02-05 22:08:48 -080085 <Target Name="BuildPackages" BeforeTargets="BeforeBuild" Condition="'$(RebuildAll)' != 'false'">
Steve Dowerb85b4272015-07-08 22:43:48 -070086 <MSBuild Projects="@(Package)" Targets="$(BuildPackagesTargets)" BuildInParallel="true" />
Steve Dowerbb240872015-02-05 22:08:48 -080087 </Target>
88
89 <Target Name="BuildLauncher" BeforeTargets="BeforeBuild" Condition="'$(RebuildAll)' != 'false'">
90 <!-- Build the launcher MSI using Exec rather than MSBuild -->
Steve Dower2237bdc2015-07-16 16:33:55 -070091 <Exec Command='msbuild ..\launcher\launcher.wixproj /p:Platform=x86 /p:OutputPath="$(BuildPath.TrimEnd(`\`))" /p:OutputSuffix=$(Platform) /p:BuildForRelease=$(BuildForRelease) /p:UseTestMarker=$(UseTestMarker)'
Steve Dowerbb240872015-02-05 22:08:48 -080092 ContinueOnError="false" />
93 </Target>
94
95 <Target Name="BuildBootstrapApplication" BeforeTargets="BeforeBuild">
96 <Message Text="Building bootstrap app" Importance="high" />
97
98 <MSBuild Projects="bootstrap\pythonba.vcxproj"
99 Targets="Build;GetNativeTargetPath"
100 UseResultsCache="true"
101 Properties="Configuration=$(BootstrapConfiguration);Platform=Win32">
102 <Output TaskParameter="TargetOutputs" PropertyName="BootstrapAppPath" />
103 </MSBuild>
104
105 <PropertyGroup>
106 <DefineConstants>$(DefineConstants);BootstrapApp=$(BootstrapAppPath)</DefineConstants>
107 </PropertyGroup>
108 </Target>
109
110 <Import Project="..\msi.targets" />
111</Project>