aboutsummaryrefslogtreecommitdiff
path: root/src/Directory.Build.targets
diff options
context:
space:
mode:
Diffstat (limited to 'src/Directory.Build.targets')
-rw-r--r--src/Directory.Build.targets41
1 files changed, 29 insertions, 12 deletions
diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets
index c426f25e..11ebc2e0 100644
--- a/src/Directory.Build.targets
+++ b/src/Directory.Build.targets
@@ -1,12 +1,14 @@
1<?xml version="1.0" encoding="utf-8"?> 1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> 2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3<!-- 3
4 Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.Build.targets
5 then update all of the repos.
6-->
7<Project> 4<Project>
5 <!-- <ItemGroup>
6 <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
7 <PackageReference Include="GitInfo" Version="2.1.2" PrivateAssets="All" />
8 </ItemGroup> -->
9
8 <PropertyGroup> 10 <PropertyGroup>
9 <SigningToolFolder>$(BaseOutputPath)obj\.tools</SigningToolFolder> 11 <SigningToolFolder>$(ToolsFolder)</SigningToolFolder>
10 <SigningToolExe>$(SigningToolFolder)\SignClient.exe</SigningToolExe> 12 <SigningToolExe>$(SigningToolFolder)\SignClient.exe</SigningToolExe>
11 <SigningFilelist>$(SigningToolFolder)\empty-filelist.txt</SigningFilelist> 13 <SigningFilelist>$(SigningToolFolder)\empty-filelist.txt</SigningFilelist>
12 <SigningConfiguration>$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), signing.json))\signing.json</SigningConfiguration> 14 <SigningConfiguration>$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), signing.json))\signing.json</SigningConfiguration>
@@ -20,11 +22,19 @@
20 </PropertyGroup> 22 </PropertyGroup>
21 </Target> 23 </Target>
22 24
23 <Target Name="__SetPropertiesFromGit" DependsOnTargets="GitVersion"> 25 <PropertyGroup>
26 <GetPackageVersionDependsOn>
27 $(GetPackageVersionDependsOn);
28 __SetPropertiesFromGit;
29 </GetPackageVersionDependsOn>
30 </PropertyGroup>
31
32 <Target Name="__SetPropertiesFromGit" DependsOnTargets="GitVersion" Condition=" '$(GitInfoImported)'=='true' ">
24 <PropertyGroup> 33 <PropertyGroup>
25 <AssemblyVersion>$(GitBaseVersionMajor).$(GitBaseVersionMinor).0.0</AssemblyVersion> 34 <AssemblyVersion>$(GitBaseVersionMajor).$(GitBaseVersionMinor).0.0</AssemblyVersion>
26 <FileVersion>$(GitBaseVersionMajor).$(GitBaseVersionMinor).$(GitBaseVersionPatch).$(GitCommits)</FileVersion> 35 <FileVersion>$(GitBaseVersionMajor).$(GitBaseVersionMinor).$(GitBaseVersionPatch).$(GitCommits)</FileVersion>
27 <PackageVersion>$(GitBaseVersionMajor).$(GitBaseVersionMinor).$(GitBaseVersionPatch)$(GitSemVerDashLabel)</PackageVersion> 36 <PackageVersion>$(GitBaseVersionMajor).$(GitBaseVersionMinor).$(GitBaseVersionPatch)$(GitSemVerDashLabel)</PackageVersion>
37 <Version>$(PackageVersion)</Version>
28 <InformationalVersion>$(GitBaseVersionMajor).$(GitBaseVersionMinor).$(GitBaseVersionPatch)$(GitSemVerDashLabel)+$(GitSha)</InformationalVersion> 38 <InformationalVersion>$(GitBaseVersionMajor).$(GitBaseVersionMinor).$(GitBaseVersionPatch)$(GitSemVerDashLabel)+$(GitSha)</InformationalVersion>
29 <!-- We already included the $(GitSha) in the informational version so do not include it again. --> 39 <!-- We already included the $(GitSha) in the informational version so do not include it again. -->
30 <IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion> 40 <IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
@@ -42,6 +52,7 @@
42 <PropertyGroup> 52 <PropertyGroup>
43 <GenerateNuspecDependsOn> 53 <GenerateNuspecDependsOn>
44 $(GenerateNuspecDependsOn); 54 $(GenerateNuspecDependsOn);
55 __SetPropertiesFromGit;
45 __SetNuspecProperties 56 __SetNuspecProperties
46 </GenerateNuspecDependsOn> 57 </GenerateNuspecDependsOn>
47 </PropertyGroup> 58 </PropertyGroup>
@@ -51,10 +62,14 @@
51 <PropertyGroup> 62 <PropertyGroup>
52 <ProjectUrl Condition=" '$(ProjectUrl)'=='' and '$(GitRepositoryUrl)'!='' ">$(GitRepositoryUrl.Replace('.git',''))</ProjectUrl> 63 <ProjectUrl Condition=" '$(ProjectUrl)'=='' and '$(GitRepositoryUrl)'!='' ">$(GitRepositoryUrl.Replace('.git',''))</ProjectUrl>
53 64
54 <NuspecFile>$(MSBuildProjectName).nuspec</NuspecFile> 65 <NuspecFile Condition=" '$(NuspecFile)'=='' ">$(MSBuildProjectName).nuspec</NuspecFile>
55 <NuspecBasePath Condition=" '$(NuspecBasePath)'=='' ">$([System.IO.Path]::GetFullPath($(OutputPath)..))\</NuspecBasePath> 66 <PackageId Condition=" '$(PackageId)'=='' ">$(MSBuildProjectName)</PackageId>
56 <NuspecProperties>$(NuspecProperties);Id=$(PackageId);Authors="$(Authors)";Configuration=$(Configuration);Copyright="$(Copyright)";Description="$(Description)";Title="$(Title)"</NuspecProperties> 67 <Title Condition=" '$(Title)'=='' ">$(Description)</Title>
57 <NuspecProperties>$(NuspecProperties);Version=$(PackageVersion);RepositoryCommit=$(GitSha);RepositoryType=git;RepositoryUrl=$(GitRepositoryUrl);ProjectFolder=$(MSBuildProjectDirectory)\;ProjectUrl=$(ProjectUrl)</NuspecProperties> 68 <NuspecBasePath Condition=" '$(NuspecBasePath)'=='' ">$(OutputPath)</NuspecBasePath>
69 <NuspecProperties>$(NuspecProperties);Id=$(PackageId);Version=$(PackageVersion);Authors=$(Authors);Configuration=$(Configuration)</NuspecProperties>
70 <NuspecProperties>$(NuspecProperties);Copyright=$(Copyright);Description=$(Description);Title=$(Title)</NuspecProperties>
71 <NuspecProperties>$(NuspecProperties);RepositoryType=git;RepositoryCommit=$(GitSha);RepositoryUrl=$(GitRepositoryUrl)</NuspecProperties>
72 <NuspecProperties>$(NuspecProperties);ProjectUrl=$(ProjectUrl);ProjectFolder=$(MSBuildProjectDirectory)</NuspecProperties>
58 <PublishRepositoryUrl>true</PublishRepositoryUrl> 73 <PublishRepositoryUrl>true</PublishRepositoryUrl>
59 <SymbolPackageFormat>snupkg</SymbolPackageFormat> 74 <SymbolPackageFormat>snupkg</SymbolPackageFormat>
60 </PropertyGroup> 75 </PropertyGroup>
@@ -69,12 +84,14 @@
69 84
70 <Target Name="PackNative" DependsOnTargets="__SetNuspecProperties" 85 <Target Name="PackNative" DependsOnTargets="__SetNuspecProperties"
71 Condition=" Exists('$(MSBuildProjectName).nuspec') "> 86 Condition=" Exists('$(MSBuildProjectName).nuspec') ">
87 <Error Text="There must be package reference to 'GitInfo'. Ensure the project was restored as well."
88 Condition=" '$(GitInfoImported)'!='true' " />
72 89
73 <Exec Command='nuget pack $(NuspecFile) -OutputDirectory "$(BaseOutputPath)$(Configuration)" -BasePath "$(NuspecBasePath)" -Properties $(NuspecProperties)' 90 <Exec Command='nuget pack $(NuspecFile) -OutputDirectory "$(PackageOutputPath.Trim(&quot;\&quot;))" -BasePath $(NuspecBasePath) -Properties "$(NuspecProperties)"'
74 WorkingDirectory="$(MSBuildProjectDirectory)" /> 91 WorkingDirectory="$(MSBuildProjectDirectory)" />
75 92
76 <ItemGroup> 93 <ItemGroup>
77 <NuGetPackOutput Include="$(BaseOutputPath)$(Configuration)\**\$(PackageId)*.nupkg" /> 94 <NuGetPackOutput Include="$(PackageOutputPath)\$(PackageId).$(PackageVersion).nupkg" />
78 </ItemGroup> 95 </ItemGroup>
79 </Target> 96 </Target>
80 97