-
Notifications
You must be signed in to change notification settings - Fork 15
/
Build.proj
41 lines (41 loc) · 1.63 KB
/
Build.proj
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
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Root>$(MSBuildThisFileDirectory)</Root>
<SolutionDir>$(Root)</SolutionDir>
<FAKE>$(Root)/packages/FAKE.2.1.204-alpha/tools/FAKE.exe</FAKE>
<FakeTemp>$(Root)/.build/FAKE.tmp</FakeTemp>
</PropertyGroup>
<Target Name="InstallNuGet">
<MakeDir Directories="$(Root)/.nuget" />
<MSBuild Projects="$(Root)/.nuget/NuGet.targets"
Properties="DownloadNuGetExe=true;ProjectDir=$(Root);SolutionDir=$(Root)"
Targets="RestorePackages" />
</Target>
<Target Name="InstallFake"
DependsOnTargets="InstallNuGet"
Condition="!Exists('$(FakeTemp)')">
<MakeDir Directories=".build" />
<Exec Command='"$(Root)/.nuget/nuget.exe" install FAKE -out .build'
WorkingDirectory="$(Root)"
LogStandardErrorAsError="true"/>
<ItemGroup>
<FAKEExe Include="$(Root)/.build/FAKE*/tools/FAKE.exe" />
</ItemGroup>
<Copy SourceFiles="@(FAKEExe)" DestinationFiles="$(FakeTemp)" />
</Target>
<Target Name="LocateFake" DependsOnTargets="InstallFake">
<ItemGroup>
<FAKE Include="$(Root)/.build/FAKE*/tools/FAKE.exe" />
</ItemGroup>
</Target>
<Target Name="Build" DependsOnTargets="LocateFake">
<Exec Command=""@(FAKE)" boot auto"
WorkingDirectory="$(Root)"
LogStandardErrorAsError="true" />
</Target>
<Target Name="Clean" DependsOnTargets="LocateFake">
<Exec Command=""$(FAKE)" build.fsx Clean"
WorkingDirectory="$(Root)"
LogStandardErrorAsError="true" />
</Target>
</Project>