-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuild.proj
More file actions
132 lines (110 loc) · 8.01 KB
/
build.proj
File metadata and controls
132 lines (110 loc) · 8.01 KB
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<!--Default Configuration-->
<BuildDir Condition=" '$(BuildDir)' == ''">BuildOutput</BuildDir>
<Configuration Condition=" '$(Configuration)' == '' ">Integration</Configuration>
<MSBuildExtensionsPath>$([MSBuild]::Unescape('$(MSBuildProjectDirectory)'))\lib</MSBuildExtensionsPath>
<ExtensionTasksPath>$(MSBuildExtensionsPath)\MSBuildExtensions\</ExtensionTasksPath>
<!--Solution file-->
<SolutionFileName>$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk.sln</SolutionFileName>
<DoxyGen>"C:\Program Files\doxygen\bin\doxygen.exe"</DoxyGen>
<SplitVersion>$(BUILD_NUMBER.Split('.'))</SplitVersion>
</PropertyGroup>
<!--Import MSBuild.ExtensionPack Tasks-->
<Import Project="$(ExtensionTasksPath)MSBuild.ExtensionPack.tasks"/>
<!--Import MSBuildCommunityTasks Tasks-->
<Import Project="$(MSBuildExtensionsPath)\msbuild\MSBuild.Community.Tasks.Targets"/>
<Target Name="Version">
<Message Text="$(SplitVersion)" />
<MSBuild.ExtensionPack.Framework.MsBuildHelper TaskAction="GetItem" InputItems1="$(SplitVersion)" Position="0">
<Output TaskParameter="OutputItems" ItemName="major"/>
</MSBuild.ExtensionPack.Framework.MsBuildHelper>
<MSBuild.ExtensionPack.Framework.MsBuildHelper TaskAction="GetItem" InputItems1="$(SplitVersion)" Position="1">
<Output TaskParameter="OutputItems" ItemName="minor"/>
</MSBuild.ExtensionPack.Framework.MsBuildHelper>
<MSBuild.ExtensionPack.Framework.MsBuildHelper TaskAction="GetItem" InputItems1="$(SplitVersion)" Position="2">
<Output TaskParameter="OutputItems" ItemName="build"/>
</MSBuild.ExtensionPack.Framework.MsBuildHelper>
<MSBuild.ExtensionPack.Framework.MsBuildHelper TaskAction="GetItem" InputItems1="$(SplitVersion)" Position="3">
<Output TaskParameter="OutputItems" ItemName="revision"/>
</MSBuild.ExtensionPack.Framework.MsBuildHelper>
<PropertyGroup>
<MajorVersion>%(major.Identity)</MajorVersion>
<MinorVersion>%(minor.Identity)</MinorVersion>
<BuildVersion>%(build.Identity)</BuildVersion>
<RevisionNumber>%(revision.Identity)</RevisionNumber>
</PropertyGroup>
<!--Version the CommonAssemblyInfo.cs file-->
<MSBuild.ExtensionPack.Framework.AssemblyInfo AssemblyInfoFiles="$(MSBuildProjectDirectory)\CommonAssemblyInfo.cs"
AssemblyFileMajorVersion="$(MajorVersion)"
AssemblyFileMinorVersion="$(MinorVersion)"
AssemblyFileBuildNumber="$(BuildVersion)"
AssemblyFileRevision="$(RevisionNumber)"
AssemblyMajorVersion="$(MajorVersion)"
AssemblyMinorVersion="$(MinorVersion)"
AssemblyBuildNumber="$(BuildVersion)"
AssemblyRevision="$(RevisionNumber)"
AssemblyFileVersion="$(MajorVersion).$(MinorVersion).$(BuildVersion).$(RevisionNumber)"
AssemblyVersion="$(MajorVersion).$(MinorVersion).$(BuildVersion).$(RevisionNumber)">
<Output TaskParameter="MaxAssemblyVersion" PropertyName="MaxAssemblyVersion" />
</MSBuild.ExtensionPack.Framework.AssemblyInfo>
<Message Text="----current version---: '$(MaxAssemblyVersion)'" />
</Target>
<Target Name="Clean">
<Message Text="Clean Solution" />
<ItemGroup>
<FilesToDelete Include="$(BuildDir)\**\*"/>
</ItemGroup>
<ItemGroup>
<MoreFilesToDelete Include="$(MSBuildProjectDirectory)\**\*.nupkg"/>
</ItemGroup>
<Delete Files="@(FilesToDelete)" />
<Delete Files="@(MoreFilesToDelete)" />
<RemoveDir Directories="$(BuildDir)" />
<MakeDir Directories="$(BuildDir)"/>
<MSBuild Projects="$(SolutionFileName)" Targets="Clean" Properties="Configuration=$(Configuration)" />
</Target>
<Target Name="Compile" DependsOnTargets="Version">
<Message Text="Build Version" />
<MSBuild Projects="$(SolutionFileName)" Targets="Build" Properties="Configuration=$(Configuration);MaxAssemblyVersion=$(MaxAssemblyVersion)" />
</Target>
<Target Name="Test" DependsOnTargets="Clean;Compile">
<Message Text="Test Build" />
</Target>
<Target Name="Setup" DependsOnTargets="Clean;Compile">
<Message Text="Build Setup Projects" />
</Target>
<Target Name="Build" DependsOnTargets="Clean;Compile;GenerateDocs;PrepareForZip;Test;Setup;BuildZip">
<Message Text="Build Complete" />
</Target>
<Target Name="GenerateDocs" DependsOnTargets="Compile">
<!-- <Exec Command="type $(MSBuildProjectDirectory)\documentation\doxyfile & echo PROJECT_NUMBER=$(BuildVersion)" /> -->
<Exec Command="echo PROJECT_NUMBER=$(MajorVersion).$(MinorVersion).$(BuildVersion).$(RevisionNumber) >> $(MSBuildProjectDirectory)\documentation\doxyfile" />
<Exec Command="$(DoxyGen) $(MSBuildProjectDirectory)\documentation\doxyfile" />
</Target>
<Target Name="PrepareForZip">
<ItemGroup>
<LibFiles Include="$(MSBuildProjectDirectory)\lib\**\*.*" Exclude="$(MSBuildProjectDirectory)\lib\**\.svn\**" />
<SDKSrcFiles Include="$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk\**\*.*" Exclude="$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk\**\.svn\**;$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk\**\bin\**;$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk\**\obj\**" />
<ExampleSrcFiles Include="$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk.Example.Console\**\*.*" Exclude="$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk.Example.Console\**\.svn\**;$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk.Example.Console\**\bin\**;$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk.Example.Console\**\obj\**" />
<StreamingExampleSrcFiles Include="$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk.StreamingExample.Console\**\*.*" Exclude="$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk.StreamingExample.Console\**\.svn\**;$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk.StreamingExample.Console\**\bin\**;$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk.StreamingExample.Console\**\obj\**" />
<!--TestSrcFiles Include="$(MSBuildProjectDirectory)\SPIN.Wholesale.SDK.Tests\**\*.*" Exclude="$(MSBuildProjectDirectory)\SPIN.Wholesale.SDK.Tests\**\.svn\**;$(MSBuildProjectDirectory)\SPIN.Wholesale.SDK.Tests\**\bin\**;$(MSBuildProjectDirectory)\SPIN.Wholesale.SDK.Tests\**\obj\**" /-->
<SlnSrcFiles Include="$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk.sln" />
<Docs Include="$(MSBuildProjectDirectory)\documentation\html\**" />
<SDKBinaries Include="$(MSBuildProjectDirectory)\SportingSolutions.Udapi.Sdk\**\bin\**" />
</ItemGroup>
<Copy SourceFiles="@(LibFiles)" DestinationFolder="$(BuildDir)\\Src\\lib\\%(RecursiveDir)"/>
<Copy SourceFiles="@(SDKSrcFiles)" DestinationFolder="$(BuildDir)\\Src\\SportingSolutions.Udapi.Sdk\\%(RecursiveDir)"/>
<Copy SourceFiles="@(ExampleSrcFiles)" DestinationFolder="$(BuildDir)\\Src\\SportingSolutions.Udapi.Sdk.Example.Console\\%(RecursiveDir)"/>
<Copy sourceFiles="@(StreamingExampleSrcFiles)" DestinationFolder="$(BuildDir)\\Src\\SportingSolutions.Udapi.Sdk.StreamingExample.Console\\%(RecursiveDir)"/>
<Copy SourceFiles="@(SlnSrcFiles)" DestinationFolder="$(BuildDir)\\Src"/>
<Copy SourceFiles="@(Docs)" DestinationFolder="$(BuildDir)\\docs\\%(RecursiveDir)" />
<Copy SourceFiles="@(SDKBinaries)" DestinationFolder="$(BuildDir)\\bin" />
</Target>
<Target Name="BuildZip" >
<ItemGroup>
<ZipFiles Include="$(BuildDir)\**\*.*" Exclude="*.zip" />
</ItemGroup>
<MSBuild.ExtensionPack.Compression.DNZip TaskAction="Create" CompressFiles="@(ZipFiles)" ZipFileName="$(BuildDir)\SportingSolutions.Udapi.Sdk-$(MaxAssemblyVersion).zip" RemoveRoot="$(BuildDir)"/>
</Target>
</Project>