forked from IronLanguages/ironpython2
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathVersioning.targets
More file actions
53 lines (44 loc) · 3.13 KB
/
Copy pathVersioning.targets
File metadata and controls
53 lines (44 loc) · 3.13 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
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<CurrentVersionFile>$(RootDir)\CurrentVersion.props</CurrentVersionFile>
</PropertyGroup>
<!-- Do not re-import this if already imported. -->
<Import Project="$(CurrentVersionFile)" Condition="'$(MajorVersion)' == ''" />
<PropertyGroup>
<ShortReleaseLevel Condition="'$(ReleaseLevel)' == 'alpha'">a</ShortReleaseLevel>
<ShortReleaseLevel Condition="'$(ReleaseLevel)' == 'beta'">b</ShortReleaseLevel>
<ShortReleaseLevel Condition="'$(ReleaseLevel)' == 'candidate'">rc</ShortReleaseLevel>
<ShortReleaseLevel Condition="'$(ReleaseLevel)' == 'final'">f</ShortReleaseLevel>
<DisplayVersion Condition="'$(ReleaseLevel)' == 'final' and '$(MicroVersion)' == '0'">$(MajorVersion).$(MinorVersion)</DisplayVersion>
<DisplayVersion Condition="'$(ReleaseLevel)' == 'final' and '$(MicroVersion)' != '0'">$(MajorVersion).$(MinorVersion).$(MicroVersion)</DisplayVersion>
<DisplayVersion Condition="'$(ReleaseLevel)' != 'final'">$(MajorVersion).$(MinorVersion).$(MicroVersion)$(ShortReleaseLevel)$(ReleaseSerial)</DisplayVersion>
<PackageVersion Condition="'$(ReleaseLevel)' == 'final'">$(MajorVersion).$(MinorVersion).$(MicroVersion)</PackageVersion>
<PackageVersion Condition="'$(ReleaseLevel)' != 'final' or '$(ReleaseSerial)' != '0'">$(MajorVersion).$(MinorVersion).$(MicroVersion)-$(ReleaseLevel)$(ReleaseSerial)</PackageVersion>
<AssemblyFileRevision Condition="'$(ReleaseLevel)' == 'alpha'">000$(ReleaseSerial)</AssemblyFileRevision>
<AssemblyFileRevision Condition="'$(ReleaseLevel)' == 'beta'">00$(ReleaseSerial)0</AssemblyFileRevision>
<AssemblyFileRevision Condition="'$(ReleaseLevel)' == 'candidate'">0$(ReleaseSerial)00</AssemblyFileRevision>
<AssemblyFileRevision Condition="'$(ReleaseLevel)' == 'final'">1000</AssemblyFileRevision>
</PropertyGroup>
<Import Project="$(BuildSysDir)\Bootstrap.targets" />
<ItemGroup>
<BuildInfoTemplate Include="$(BuildSysDir)\Templates\BuildInfo.Template.cs" />
<CurrentVersionTemplate Include="$(BuildSysDir)\Templates\CurrentVersion.Template.cs" />
</ItemGroup>
<Target Name="GenerateCurrentVersion"
DependsOnTargets="Bootstrap"
Inputs="$(CurrentVersionFile);@(CurrentVersionTemplate);$(MSBuildThisFileFullPath)"
Outputs="Properties\CurrentVersion.Generated.cs">
<FormatTemplate TemplateFile="@(CurrentVersionTemplate)"
OutputFile="Properties\CurrentVersion.Generated.cs"
Parameters="$(MajorVersion);$(MinorVersion);$(MicroVersion);$(ReleaseLevel);$(ReleaseSerial);$(ShortReleaseLevel);$(DisplayVersion);$(AssemblyRevision);$(AssemblyFileRevision)" />
</Target>
<Target Name="GenerateBuildInfo"
DependsOnTargets="Bootstrap"
Inputs="$(CurrentVersionFile);@(BuildInfoTemplate);$(MSBuildThisFileFullPath)"
Outputs="Properties\BuildInfo.Generated.cs">
<FormatTemplate TemplateFile="@(BuildInfoTemplate)"
OutputFile="Properties\BuildInfo.Generated.cs"
Parameters="$(Configuration)" />
</Target>
</Project>