summaryrefslogtreecommitdiffstats
path: root/tools/DotNetOpenAuth.Versioning.targets
diff options
context:
space:
mode:
Diffstat (limited to 'tools/DotNetOpenAuth.Versioning.targets')
-rw-r--r--tools/DotNetOpenAuth.Versioning.targets18
1 files changed, 15 insertions, 3 deletions
diff --git a/tools/DotNetOpenAuth.Versioning.targets b/tools/DotNetOpenAuth.Versioning.targets
index f4b12b0..9ba295d 100644
--- a/tools/DotNetOpenAuth.Versioning.targets
+++ b/tools/DotNetOpenAuth.Versioning.targets
@@ -5,16 +5,26 @@
<PropertyGroup>
<ProjectRoot Condition="'$(ProjectRoot)' == ''">$(MSBuildProjectDirectory)\..\..</ProjectRoot>
<VersionCsFile>$(ProjectRoot)\obj\$(Configuration)\$(AssemblyName).Version.cs</VersionCsFile>
+ <NoWarn>$(NoWarn);1607</NoWarn>
</PropertyGroup>
<Import Project="$(ProjectRoot)\lib\DotNetOpenAuth.BuildTasks.targets" />
<UsingTask AssemblyFile="$(ProjectRoot)\lib\MSBuild.Community.Tasks.dll" TaskName="AssemblyInfo"/>
<Target Name="GetBuildVersion">
- <GetBuildVersion VersionFile="$(ProjectRoot)\src\version.txt" Condition=" '$(BuildVersion)' == '' ">
+ <GetBuildVersion Condition=" '$(BuildVersion)' == '' "
+ VersionFile="$(ProjectRoot)\src\version.txt"
+ GitRepoRoot="$(ProjectRoot)\">
<Output TaskParameter="Version" PropertyName="BuildVersion" />
+ <Output TaskParameter="GitCommitId" PropertyName="AssemblyInformationalVersion" />
</GetBuildVersion>
- <Message Text="Building version $(BuildVersion)"/>
+ <PropertyGroup>
+ <!-- In TeamCity, the build agent doesn't get the .git directory, but the commit id is available by other means. -->
+ <AssemblyInformationalVersion Condition=" '$(AssemblyInformationalVersion)' == '' ">$(BUILD_VCS_NUMBER)</AssemblyInformationalVersion>
+ </PropertyGroup>
+ <Warning Condition=" '$(AssemblyInformationalVersion)' == '' " Text="Unable to determine the git HEAD commit ID to use for informational version number." />
+ <Message Condition=" '$(AssemblyInformationalVersion)' != '' " Text="Building version $(BuildVersion) from commit $(AssemblyInformationalVersion)"/>
+ <Message Condition=" '$(AssemblyInformationalVersion)' == '' " Text="Building version $(BuildVersion)"/>
</Target>
<Target Name="BeforeBuild" DependsOnTargets="GetBuildVersion">
@@ -22,7 +32,9 @@
<NewVersionCsFile>$(VersionCsFile).new</NewVersionCsFile>
</PropertyGroup>
<MakeDir Directories="$(ProjectRoot)\obj\$(Configuration)"/>
- <AssemblyInfo OutputFile="$(NewVersionCsFile)" CodeLanguage="C#" AssemblyVersion="$(BuildVersion)" />
+ <AssemblyInfo OutputFile="$(NewVersionCsFile)" CodeLanguage="C#"
+ AssemblyVersion="$(BuildVersion)"
+ AssemblyInformationalVersion="$(AssemblyInformationalVersion)" />
<!-- Avoid applying the newly generated AssemblyInfo.cs file to the build
unless it has changed in order to allow for incremental building. -->
<CompareFiles OriginalItems="$(VersionCsFile)" NewItems="$(NewVersionCsFile)">