Skip to content

Commit 02c3dc6

Browse files
authored
Merge pull request #189 from AArnott/UseCsProjPackaging
Switch out nuproj for csproj packaging
2 parents 9b7d4ec + 430494e commit 02c3dc6

File tree

16 files changed

+145
-162
lines changed

16 files changed

+145
-162
lines changed

build.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Param(
1515
[string]$MsBuildVerbosity = 'minimal'
1616
)
1717

18-
$msbuildCommandLine = "msbuild `"$PSScriptRoot\src\Nerdbank.GitVersioning.sln`" /m /verbosity:$MsBuildVerbosity /nologo /p:Platform=`"Any CPU`""
18+
$msbuildCommandLine = "msbuild `"$PSScriptRoot\src\Nerdbank.GitVersioning.sln`" /m /verbosity:$MsBuildVerbosity /nologo /p:Platform=`"Any CPU`" /t:build,pack"
1919

2020
if (Test-Path "C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll") {
2121
$msbuildCommandLine += " /logger:`"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll`""

src/MSBuildExtensionTask/MSBuildExtensionTask.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
<PropertyGroup>
44
<TargetFrameworks>netcoreapp1.0;net45</TargetFrameworks>
5+
<IsPackable>false</IsPackable>
56
</PropertyGroup>
67

78
<ItemGroup>

src/NerdBank.GitVersioning.Tests/NerdBank.GitVersioning.Tests.csproj

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,10 @@
55
<GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
66
<DebugType>full</DebugType>
77
<SignAssembly>false</SignAssembly>
8+
<IsPackable>false</IsPackable>
89
</PropertyGroup>
910
<ItemGroup>
10-
<EmbeddedResource Include="..\Nerdbank.GitVersioning.NuGet\build\*.targets">
11+
<EmbeddedResource Include="..\Nerdbank.GitVersioning.Tasks\build\Nerdbank.GitVersioning.targets">
1112
<Visible>false</Visible>
1213
<Link>Targets\%(FileName)%(Extension)</Link>
1314
</EmbeddedResource>

src/NerdBank.GitVersioning/NerdBank.GitVersioning.csproj

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,11 @@
33
<TargetFrameworks>netcoreapp1.0;net45</TargetFrameworks>
44
<GenerateDocumentationFile>true</GenerateDocumentationFile>
55
<DebugType>Full</DebugType>
6+
<IsPackable>false</IsPackable>
7+
<PackageId>Nerdbank.GitVersioning.Core</PackageId>
68
</PropertyGroup>
79
<ItemGroup>
8-
<PackageReference Include="LibGit2Sharp" Version="0.24.7-g9fca61fdda" />
10+
<PackageReference Include="LibGit2Sharp" Version="0.24.7-g9fca61fdda" PrivateAssets="None" />
911
<PackageReference Include="Newtonsoft.Json" Version="10.0.2" />
1012
<PackageReference Include="System.Diagnostics.Process" Version="4.3.0" Condition=" '$(TargetFramework)' == 'netstandard1.3' " />
1113
<PackageReference Include="Validation" Version="2.3.7" />

src/Nerdbank.GitVersioning.NuGet/Nerdbank.GitVersioning.NuGet.nuproj

Lines changed: 0 additions & 127 deletions
This file was deleted.

src/Nerdbank.GitVersioning.NuGet/project.json

Lines changed: 0 additions & 20 deletions
This file was deleted.

src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.Tasks.csproj

Lines changed: 85 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,93 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
33
<TargetFrameworks>netcoreapp1.0;net45</TargetFrameworks>
4-
<IsTool>true</IsTool>
54
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
5+
6+
<NuSpecFile>Nerdbank.GitVersioning.nuspec</NuSpecFile>
7+
8+
<NoPackageAnalysis>true</NoPackageAnalysis>
9+
10+
<!-- Note that https://github.com/NuGet/Home/issues/4694 prevents this from actually working. -->
11+
<developmentDependency>true</developmentDependency>
12+
13+
<!-- We're going to include it by virtue of sending the whole bin dir to the build folder. -->
14+
<IncludeBuildOutput>false</IncludeBuildOutput>
15+
<TargetsForTfmSpecificContentInPackage>$(TargetsForTfmSpecificContentInPackage);PackBuildOutputs</TargetsForTfmSpecificContentInPackage>
16+
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
617
</PropertyGroup>
18+
19+
<Target Name="SetNuSpecProperties" BeforeTargets="GenerateNuspec" DependsOnTargets="GetBuildVersion">
20+
<PropertyGroup>
21+
<PackageLicenseUrl>https://raw.githubusercontent.com/AArnott/Nerdbank.GitVersioning/$(GitCommitIdShort)/LICENSE.txt</PackageLicenseUrl>
22+
<LibGit2SharpNativeBinaries>$(NuGetPackageRoot)libgit2sharp.nativebinaries\1.0.165\</LibGit2SharpNativeBinaries>
23+
<NuspecProperties>$(NuspecProperties);LicenseUrl=$(PackageLicenseUrl);Version=$(Version);BaseOutputPath=$(OutputPath);LibGit2SharpNativeBinaries=$(LibGit2SharpNativeBinaries)</NuspecProperties>
24+
</PropertyGroup>
25+
</Target>
26+
27+
<Target Name="PackBuildOutputs" DependsOnTargets="SatelliteDllsProjectOutputGroup;DebugSymbolsProjectOutputGroup">
28+
<PropertyGroup>
29+
<BuildSubDir Condition=" '$(TargetFramework)' == 'netcoreapp1.0' ">MSBuildCore\</BuildSubDir>
30+
<BuildSubDir Condition=" '$(TargetFramework)' == 'net45' ">MSBuildFull\</BuildSubDir>
31+
</PropertyGroup>
32+
<Error Text="Unrecognized TargetFramework" Condition=" '$(BuildSubDir)' == '' " />
33+
<ItemGroup>
34+
<TfmSpecificPackageFile Include="
35+
$(OutputPath)LibGit2Sharp.dll*;
36+
$(OutputPath)MSBuildExtensionTask.dll;
37+
$(OutputPath)Nerdbank.GitVersioning.*dll;
38+
$(OutputPath)Newtonsoft.Json.dll;
39+
$(OutputPath)Validation.dll;
40+
">
41+
<PackagePath>build\$(BuildSubDir)</PackagePath>
42+
</TfmSpecificPackageFile>
43+
<!-- Package up the libgit2 native binaries -->
44+
<TfmSpecificPackageFile Include="@(None)" Condition=" '%(None.CopyToOutputDirectory)' == 'PreserveNewest' ">
45+
<PackagePath>build\$(BuildSubDir)%(None.Link)</PackagePath>
46+
</TfmSpecificPackageFile>
47+
</ItemGroup>
48+
</Target>
49+
50+
<Target Name="ExpandForNpmPackage" DependsOnTargets="GenerateNuSpec" AfterTargets="GenerateNuSpec">
51+
<PropertyGroup>
52+
<NpmPackageLayoutDir>..\nerdbank-gitversioning.npm\out\nbgv.nuget\</NpmPackageLayoutDir>
53+
</PropertyGroup>
54+
<ItemGroup>
55+
<NpmPackageLayout Include="@(_PackageFiles)">
56+
<TargetPath Condition=" '%(_PackageFiles.PackagePath)' != '' ">$(NpmPackageLayoutDir)$([System.IO.Path]::GetDirectoryName('%(_PackageFiles.PackagePath)'))\%(FileName)%(Extension)</TargetPath>
57+
<TargetPath Condition=" '%(_PackageFiles.PackagePath)' == '' ">$(NpmPackageLayoutDir)%(FileName)%(Extension)</TargetPath>
58+
</NpmPackageLayout>
59+
</ItemGroup>
60+
<Copy SourceFiles="@(NpmPackageLayout)" DestinationFiles="@(NpmPackageLayout->'%(TargetPath)')" />
61+
</Target>
62+
63+
<ItemGroup>
64+
<None Include="build\**">
65+
<Pack>true</Pack>
66+
<PackagePath>build\</PackagePath>
67+
</None>
68+
<None Include="buildCrossTargeting\**">
69+
<Pack>true</Pack>
70+
<PackagePath>buildCrossTargeting\</PackagePath>
71+
</None>
72+
<None Include="tools\**">
73+
<Pack>true</Pack>
74+
<PackagePath>tools\</PackagePath>
75+
</None>
76+
<None Include="readme.txt">
77+
<Pack>true</Pack>
78+
<PackagePath>readme.txt</PackagePath>
79+
</None>
80+
</ItemGroup>
81+
82+
<ItemDefinitionGroup>
83+
<PackageReference>
84+
<PrivateAssets>all</PrivateAssets>
85+
</PackageReference>
86+
<ProjectReference>
87+
<PrivateAssets>all</PrivateAssets>
88+
</ProjectReference>
89+
</ItemDefinitionGroup>
90+
791
<ItemGroup>
892
<PackageReference Include="Nerdbank.GitVersioning.LKG" Version="1.6.20-beta-gfea83a8c9e" />
993
<PackageReference Include="NuProj.Common" Version="0.11.14-beta" />
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
3+
<metadata>
4+
<id>Nerdbank.GitVersioning</id>
5+
<version>$version$</version>
6+
<title>Nerdbank.GitVersioning</title>
7+
<authors>Andrew Arnott</authors>
8+
<owners>aarnott</owners>
9+
<requireLicenseAcceptance>false</requireLicenseAcceptance>
10+
<developmentDependency>true</developmentDependency>
11+
<licenseUrl>$LicenseUrl$</licenseUrl>
12+
<projectUrl>http://github.com/aarnott/Nerdbank.GitVersioning</projectUrl>
13+
<description>Stamps your assemblies with semver 2.0 compliant git commit specific version information and provides NuGet versioning information as well.</description>
14+
<tags>git commit versioning version assemblyinfo</tags>
15+
</metadata>
16+
<files>
17+
<file src="$BaseOutputPath$net45\LibGit2Sharp.dll" target="build\MSBuildFull\LibGit2Sharp.dll" />
18+
<file src="$BaseOutputPath$net45\LibGit2Sharp.dll.config" target="build\MSBuildFull\LibGit2Sharp.dll.config" />
19+
<file src="$BaseOutputPath$net45\MSBuildExtensionTask.dll" target="build\MSBuildFull\MSBuildExtensionTask.dll" />
20+
<file src="$BaseOutputPath$net45\NerdBank.GitVersioning.dll" target="build\MSBuildFull\NerdBank.GitVersioning.dll" />
21+
<file src="$BaseOutputPath$net45\Nerdbank.GitVersioning.Tasks.dll" target="build\MSBuildFull\Nerdbank.GitVersioning.Tasks.dll" />
22+
<file src="$BaseOutputPath$net45\Newtonsoft.Json.dll" target="build\MSBuildFull\Newtonsoft.Json.dll" />
23+
<file src="$BaseOutputPath$net45\Validation.dll" target="build\MSBuildFull\Validation.dll" />
24+
<file src="$LibGit2SharpNativeBinaries$runtimes\win7-x64\native\git2-1196807.dll" target="build\MSBuildFull\lib\win32\x64\git2-1196807.dll" />
25+
<file src="$LibGit2SharpNativeBinaries$runtimes\win7-x64\native\git2-1196807.dll" target="build\MSBuildCore\lib\win32\x64\git2-1196807.dll" />
26+
<file src="$LibGit2SharpNativeBinaries$runtimes\win7-x64\native\git2-1196807.pdb" target="build\MSBuildFull\lib\win32\x64\git2-1196807.pdb" />
27+
<file src="$LibGit2SharpNativeBinaries$runtimes\win7-x64\native\git2-1196807.pdb" target="build\MSBuildCore\lib\win32\x64\git2-1196807.pdb" />
28+
<file src="$LibGit2SharpNativeBinaries$runtimes\win7-x86\native\git2-1196807.dll" target="build\MSBuildFull\lib\win32\x86\git2-1196807.dll" />
29+
<file src="$LibGit2SharpNativeBinaries$runtimes\win7-x86\native\git2-1196807.dll" target="build\MSBuildCore\lib\win32\x86\git2-1196807.dll" />
30+
<file src="$LibGit2SharpNativeBinaries$runtimes\win7-x86\native\git2-1196807.pdb" target="build\MSBuildFull\lib\win32\x86\git2-1196807.pdb" />
31+
<file src="$LibGit2SharpNativeBinaries$runtimes\win7-x86\native\git2-1196807.pdb" target="build\MSBuildCore\lib\win32\x86\git2-1196807.pdb" />
32+
<file src="$LibGit2SharpNativeBinaries$runtimes\osx\native\libgit2-1196807.dylib" target="build\MSBuildFull\lib\osx\libgit2-1196807.dylib" />
33+
<file src="$LibGit2SharpNativeBinaries$runtimes\osx\native\libgit2-1196807.dylib" target="build\MSBuildCore\lib\osx\libgit2-1196807.dylib" />
34+
<file src="$LibGit2SharpNativeBinaries$runtimes\linux-x64\native\libgit2-1196807.so" target="build\MSBuildFull\lib\linux\x86_64\libgit2-1196807.so" />
35+
<file src="$LibGit2SharpNativeBinaries$runtimes\linux-x64\native\libgit2-1196807.so" target="build\MSBuildCore\lib\linux\x86_64\libgit2-1196807.so" />
36+
<file src="$LibGit2SharpNativeBinaries$libgit2\LibGit2Sharp.dll.config" target="build\MSBuildCore\LibGit2Sharp.dll.config" />
37+
<file src="$BaseOutputPath$netcoreapp1.0\LibGit2Sharp.dll" target="build\MSBuildCore\LibGit2Sharp.dll" />
38+
<file src="$BaseOutputPath$netcoreapp1.0\MSBuildExtensionTask.dll" target="build\MSBuildCore\MSBuildExtensionTask.dll" />
39+
<file src="$BaseOutputPath$netcoreapp1.0\NerdBank.GitVersioning.dll" target="build\MSBuildCore\NerdBank.GitVersioning.dll" />
40+
<file src="$BaseOutputPath$netcoreapp1.0\Nerdbank.GitVersioning.Tasks.dll" target="build\MSBuildCore\Nerdbank.GitVersioning.Tasks.dll" />
41+
<file src="$BaseOutputPath$netcoreapp1.0\Newtonsoft.Json.dll" target="build\MSBuildCore\Newtonsoft.Json.dll" />
42+
<file src="$BaseOutputPath$netcoreapp1.0\Validation.dll" target="build\MSBuildCore\Validation.dll" />
43+
44+
<file src="build\Nerdbank.GitVersioning.targets" target="build\Nerdbank.GitVersioning.targets" />
45+
<file src="buildCrossTargeting\Nerdbank.GitVersioning.targets" target="buildCrossTargeting\Nerdbank.GitVersioning.targets" />
46+
<file src="tools\Create-VersionFile.ps1" target="tools\Create-VersionFile.ps1" />
47+
<file src="tools\Get-CommitId.ps1" target="tools\Get-CommitId.ps1" />
48+
<file src="tools\Get-Version.ps1" target="tools\Get-Version.ps1" />
49+
<file src="tools\Install.ps1" target="tools\Install.ps1" />
50+
<file src="readme.txt" target="readme.txt" />
51+
</files>
52+
</package>

src/Nerdbank.GitVersioning.NuGet/build/Nerdbank.GitVersioning.targets renamed to src/Nerdbank.GitVersioning.Tasks/build/Nerdbank.GitVersioning.targets

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
GetBuildVersion;
3333
$(GetPackageVersionDependsOn)
3434
</GetPackageVersionDependsOn>
35-
35+
3636
<!-- Suppress assembly version info generation if not obviously compiling an assembly. -->
3737
<GenerateAssemblyVersionInfo Condition=" '$(GenerateAssemblyVersionInfo)' == '' and '$(TargetExt)' != '.dll' and '$(TargetExt)' != '.exe'">false</GenerateAssemblyVersionInfo>
3838

src/Nerdbank.GitVersioning.NuGet/buildCrossTargeting/Nerdbank.GitVersioning.targets renamed to src/Nerdbank.GitVersioning.Tasks/buildCrossTargeting/Nerdbank.GitVersioning.targets

File renamed without changes.

0 commit comments

Comments
 (0)