|
|
@@ -1,5 +1,5 @@
|
|
|
<?xml version="1.0" encoding="utf-8"?>
|
|
|
-<Project ToolsVersion="14.0" DefaultTargets="Clean;Build;Package" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
|
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
|
<UsingTask TaskName="Zip" AssemblyFile="$(MSBuildThisFileDirectory)target\nuget\packages\$(MSBuildTasksPackageId).$(MSBuildTasksPackageVersion)\tools\MSBuild.Community.Tasks.dll"/>
|
|
|
<PropertyGroup>
|
|
|
<Configuration Condition="'$(Configuration)' == ''">Release</Configuration>
|
|
|
@@ -8,136 +8,214 @@
|
|
|
<MSBuildTasksPackageId>MSBuildTasks</MSBuildTasksPackageId>
|
|
|
<MSBuildTasksPackageVersion>1.5.0.214</MSBuildTasksPackageVersion>
|
|
|
</PropertyGroup>
|
|
|
+
|
|
|
<ItemGroup>
|
|
|
- <VisualStudioVersion Include="2012">
|
|
|
+ <VisualStudioVersionClassic Include="2012">
|
|
|
<SolutionFile>$(MSBuildThisFileDirectory)..\src\Renci.SshNet.VS2012.sln</SolutionFile>
|
|
|
<ToolsVersion>14.0</ToolsVersion>
|
|
|
<VisualStudioVersion>14.0</VisualStudioVersion>
|
|
|
- </VisualStudioVersion>
|
|
|
- <VisualStudioVersion Include="2015">
|
|
|
+ </VisualStudioVersionClassic>
|
|
|
+ <VisualStudioVersionClassic Include="2015">
|
|
|
<SolutionFile>$(MSBuildThisFileDirectory)..\src\Renci.SshNet.VS2015.sln</SolutionFile>
|
|
|
<ToolsVersion>14.0</ToolsVersion>
|
|
|
<VisualStudioVersion>14.0</VisualStudioVersion>
|
|
|
- </VisualStudioVersion>
|
|
|
- <VisualStudioVersion Include="2017">
|
|
|
- <SolutionFile>$(MSBuildThisFileDirectory)..\src\Renci.SshNet.VS2017.sln</SolutionFile>
|
|
|
- <ToolsVersion>15.0</ToolsVersion>
|
|
|
- <VisualStudioVersion>15.0</VisualStudioVersion>
|
|
|
- </VisualStudioVersion>
|
|
|
+ </VisualStudioVersionClassic>
|
|
|
</ItemGroup>
|
|
|
+
|
|
|
<ItemGroup>
|
|
|
- <TargetFramework Include=".NET Framework 3.5">
|
|
|
- <OutputDirectory>Renci.SshNet.NET35\bin\$(Configuration)</OutputDirectory>
|
|
|
- <Moniker>net35</Moniker>
|
|
|
- </TargetFramework>
|
|
|
- <TargetFramework Include=".NET Framework 4.0">
|
|
|
- <OutputDirectory>Renci.SshNet\bin\$(Configuration)</OutputDirectory>
|
|
|
- <Moniker>net40</Moniker>
|
|
|
- </TargetFramework>
|
|
|
- <TargetFramework Include=".NETStandard 1.3">
|
|
|
- <OutputDirectory>Renci.SshNet.NETCore\bin\$(Configuration)\netstandard1.3</OutputDirectory>
|
|
|
- <Moniker>netstandard1.3</Moniker>
|
|
|
- </TargetFramework>
|
|
|
- <TargetFramework Include=".NETStandard 2.0">
|
|
|
- <OutputDirectory>Renci.SshNet.NETCore\bin\$(Configuration)\netstandard2.0</OutputDirectory>
|
|
|
- <Moniker>netstandard2.0</Moniker>
|
|
|
- </TargetFramework>
|
|
|
- <TargetFramework Include="Windows Phone Silverlight 7.1">
|
|
|
+ <VisualStudioVersionModern Include="2019">
|
|
|
+ <SolutionFile>$(MSBuildThisFileDirectory)..\src\Renci.SshNet.VS2019.sln</SolutionFile>
|
|
|
+ <VisualStudioVersion>16.0</VisualStudioVersion>
|
|
|
+ </VisualStudioVersionModern>
|
|
|
+ </ItemGroup>
|
|
|
+
|
|
|
+ <ItemGroup>
|
|
|
+ <TargetFrameworkClassic Include="Windows Phone Silverlight 7.1">
|
|
|
<OutputDirectory>Renci.SshNet.WindowsPhone\bin\$(Configuration)</OutputDirectory>
|
|
|
<Moniker>wp71</Moniker>
|
|
|
- </TargetFramework>
|
|
|
- <TargetFramework Include="Windows Phone Silverlight 8.0">
|
|
|
+ </TargetFrameworkClassic>
|
|
|
+ <TargetFrameworkClassic Include="Windows Phone Silverlight 8.0">
|
|
|
<OutputDirectory>Renci.SshNet.WindowsPhone8\bin\$(Configuration)</OutputDirectory>
|
|
|
<Moniker>wp8</Moniker>
|
|
|
- </TargetFramework>
|
|
|
- <TargetFramework Include="Silverlight 4">
|
|
|
+ </TargetFrameworkClassic>
|
|
|
+ <TargetFrameworkClassic Include="Silverlight 4">
|
|
|
<OutputDirectory>Renci.SshNet.Silverlight\bin\$(Configuration)</OutputDirectory>
|
|
|
<Moniker>sl4</Moniker>
|
|
|
- </TargetFramework>
|
|
|
- <TargetFramework Include="Silverlight 5">
|
|
|
+ </TargetFrameworkClassic>
|
|
|
+ <TargetFrameworkClassic Include="Silverlight 5">
|
|
|
<OutputDirectory>Renci.SshNet.Silverlight5\bin\$(Configuration)</OutputDirectory>
|
|
|
<Moniker>sl5</Moniker>
|
|
|
- </TargetFramework>
|
|
|
- <TargetFramework Include="Universal Windows Platform 10">
|
|
|
+ </TargetFrameworkClassic>
|
|
|
+ <TargetFrameworkClassic Include="Universal Windows Platform 10">
|
|
|
<OutputDirectory>Renci.SshNet.UAP10\bin\$(Configuration)</OutputDirectory>
|
|
|
<Moniker>uap10</Moniker>
|
|
|
- </TargetFramework>
|
|
|
+ </TargetFrameworkClassic>
|
|
|
+ </ItemGroup>
|
|
|
+
|
|
|
+ <ItemGroup>
|
|
|
+ <TargetFrameworkModern Include=".NET Framework 3.5">
|
|
|
+ <OutputDirectory>Renci.SshNet\bin\$(Configuration)\net35</OutputDirectory>
|
|
|
+ <Moniker>net35</Moniker>
|
|
|
+ </TargetFrameworkModern>
|
|
|
+ <TargetFrameworkModern Include=".NET Framework 4.0">
|
|
|
+ <OutputDirectory>Renci.SshNet\bin\$(Configuration)\net40</OutputDirectory>
|
|
|
+ <Moniker>net40</Moniker>
|
|
|
+ </TargetFrameworkModern>
|
|
|
+ <TargetFrameworkModern Include=".NETStandard 1.3">
|
|
|
+ <OutputDirectory>Renci.SshNet\bin\$(Configuration)\netstandard1.3</OutputDirectory>
|
|
|
+ <Moniker>netstandard1.3</Moniker>
|
|
|
+ </TargetFrameworkModern>
|
|
|
+ <TargetFrameworkModern Include=".NETStandard 2.0">
|
|
|
+ <OutputDirectory>Renci.SshNet\bin\$(Configuration)\netstandard2.0</OutputDirectory>
|
|
|
+ <Moniker>netstandard2.0</Moniker>
|
|
|
+ </TargetFrameworkModern>
|
|
|
</ItemGroup>
|
|
|
- <Target Name="Clean" DependsOnTargets="CleanSolution">
|
|
|
+
|
|
|
+ <Target Name="CleanClassic" DependsOnTargets="CleanSolutionClassic">
|
|
|
<RemoveDir Directories="$(MSBuildThisFileDirectory)target"/>
|
|
|
</Target>
|
|
|
- <Target Name="CleanSolution" Outputs="%(VisualStudioVersion.Identity)">
|
|
|
-
|
|
|
+
|
|
|
+ <Target Name="CleanModern" DependsOnTargets="CleanSolutionModern">
|
|
|
+ <RemoveDir Directories="$(MSBuildThisFileDirectory)target"/>
|
|
|
+ </Target>
|
|
|
+
|
|
|
+ <Target Name="CleanSolutionClassic" Outputs="%(VisualStudioVersionClassic.Identity)">
|
|
|
<ItemGroup>
|
|
|
<ProjectToBuild Remove="@(ProjectToBuild)"/>
|
|
|
- <ProjectToBuild Include="%(VisualStudioVersion.SolutionFile)">
|
|
|
- <Properties>Configuration=Release;VisualStudioVersion=%(VisualStudioVersion.VisualStudioVersion)</Properties>
|
|
|
+ <ProjectToBuild Include="%(VisualStudioVersionClassic.SolutionFile)">
|
|
|
+ <Properties>Configuration=Release;VisualStudioVersion=%(VisualStudioVersionClassic.VisualStudioVersion)</Properties>
|
|
|
</ProjectToBuild>
|
|
|
</ItemGroup>
|
|
|
- <MSBuild Projects="@(ProjectToBuild)" ToolsVersion="%(VisualStudioVersion.ToolsVersion)" Targets="Clean"/>
|
|
|
+ <MSBuild Projects="@(ProjectToBuild)" ToolsVersion="%(VisualStudioVersionClassic.ToolsVersion)" Targets="Clean"/>
|
|
|
</Target>
|
|
|
- <Target Name="DownloadNuGet">
|
|
|
- <MakeDir Directories="$(MSBuildThisFileDirectory)target\nuget"/>
|
|
|
- <DownloadFile
|
|
|
- Address="https://dist.nuget.org/win-x86-commandline/latest/nuget.exe"
|
|
|
- FileName="$(MSBuildThisFileDirectory)target\nuget\nuget.exe"/>
|
|
|
+
|
|
|
+ <Target Name="CleanSolutionModern" Outputs="%(VisualStudioVersionModern.Identity)">
|
|
|
+ <ItemGroup>
|
|
|
+ <ProjectToBuild Remove="@(ProjectToBuild)"/>
|
|
|
+ <ProjectToBuild Include="%(VisualStudioVersionModern.SolutionFile)">
|
|
|
+ <Properties>Configuration=Release;VisualStudioVersion=%(VisualStudioVersionModern.VisualStudioVersion)</Properties>
|
|
|
+ </ProjectToBuild>
|
|
|
+ </ItemGroup>
|
|
|
+ <MSBuild Projects="@(ProjectToBuild)" Targets="Clean"/>
|
|
|
</Target>
|
|
|
- <Target Name="RestoreNuGetPackages" DependsOnTargets="DownloadNuGet" Outputs="%(VisualStudioVersion.Identity)">
|
|
|
- <Message Text="Restoring nuget packages for '%(VisualStudioVersion.SolutionFile)'..." Importance="High"/>
|
|
|
- <Exec Command="$(NuGetExe) restore "%(VisualStudioVersion.SolutionFile)""/>
|
|
|
+
|
|
|
+ <Target Name="RestoreNuGetPackagesClassic" DependsOnTargets="DownloadNuGet" Outputs="%(VisualStudioVersionClassic.Identity)">
|
|
|
+ <Message Text="Restoring nuget packages for '%(VisualStudioVersionClassic.SolutionFile)'..." Importance="High"/>
|
|
|
+ <Exec Command="$(NuGetExe) restore "%(VisualStudioVersionClassic.SolutionFile)""/>
|
|
|
</Target>
|
|
|
- <Target Name="Build" DependsOnTargets="RestoreNuGetPackages" Outputs="%(VisualStudioVersion.Identity)">
|
|
|
+
|
|
|
+ <Target Name="RestoreNuGetPackagesModern" DependsOnTargets="DownloadNuGet" Outputs="%(VisualStudioVersionModern.Identity)">
|
|
|
+ <Message Text="Restoring nuget packages for '%(VisualStudioVersionModern.SolutionFile)'..." Importance="High"/>
|
|
|
+ <Exec Command="$(NuGetExe) restore "%(VisualStudioVersionModern.SolutionFile)""/>
|
|
|
+ </Target>
|
|
|
+
|
|
|
+ <Target Name="BuildClassic" DependsOnTargets="RestoreNuGetPackagesClassic" Outputs="%(VisualStudioVersionClassic.Identity)">
|
|
|
<ItemGroup>
|
|
|
<ProjectToBuild Remove="@(ProjectToBuild)"/>
|
|
|
- <ProjectToBuild Include="%(VisualStudioVersion.SolutionFile)">
|
|
|
- <Properties>Configuration=Release;VisualStudioVersion=%(VisualStudioVersion.VisualStudioVersion)</Properties>
|
|
|
+ <ProjectToBuild Include="%(VisualStudioVersionClassic.SolutionFile)">
|
|
|
+ <Properties>Configuration=Release;VisualStudioVersion=%(VisualStudioVersionClassic.VisualStudioVersion)</Properties>
|
|
|
</ProjectToBuild>
|
|
|
</ItemGroup>
|
|
|
- <MSBuild Projects="@(ProjectToBuild)" ToolsVersion="%(VisualStudioVersion.ToolsVersion)" Targets="Rebuild"/>
|
|
|
- </Target>
|
|
|
- <Target Name="Package" DependsOnTargets="CreateNuGetPackage;CreateBinPackage;GenerateHelpFile"/>
|
|
|
- <Target Name="CreateNuGetPackage" DependsOnTargets="CopyBuildOutputToPackage">
|
|
|
- <Exec Command="$(NuGetExe) pack $(MSBuildThisFileDirectory)nuget\SSH.NET.nuspec -OutputDirectory "$(MSBuildThisFileDirectory)target" -BasePath "$(MSBuildThisFileDirectory)target\package" -NonInteractive"/>
|
|
|
+ <MSBuild Projects="@(ProjectToBuild)" ToolsVersion="%(VisualStudioVersionClassic.ToolsVersion)" Targets="Rebuild"/>
|
|
|
</Target>
|
|
|
- <Target Name="CopyBuildOutputToPackage" Outputs="%(TargetFramework.Identity)">
|
|
|
+
|
|
|
+ <Target Name="BuildModern" DependsOnTargets="RestoreNuGetPackagesModern" Outputs="%(VisualStudioVersionModern.Identity)">
|
|
|
<ItemGroup>
|
|
|
- <BuildOutput Remove="@(BuildOutput)"/>
|
|
|
- <BuildOutput Include="$(MSBuildThisFileDirectory)..\src\%(TargetFramework.OutputDirectory)\Renci.SshNet.dll"/>
|
|
|
- <BuildOutput Include="$(MSBuildThisFileDirectory)..\src\%(TargetFramework.OutputDirectory)\Renci.SshNet.xml"/>
|
|
|
+ <ProjectToBuild Remove="@(ProjectToBuild)"/>
|
|
|
+ <ProjectToBuild Include="%(VisualStudioVersionModern.SolutionFile)">
|
|
|
+ <Properties>Configuration=Release;VisualStudioVersion=%(VisualStudioVersionModern.VisualStudioVersion)</Properties>
|
|
|
+ </ProjectToBuild>
|
|
|
</ItemGroup>
|
|
|
- <Copy SourceFiles="@(BuildOutput)" DestinationFolder="$(MSBuildThisFileDirectory)target\package\lib\%(TargetFramework.Moniker)"/>
|
|
|
+ <MSBuild Projects="@(ProjectToBuild)" ToolsVersion="%(VisualStudioVersionModern.ToolsVersion)" Targets="Rebuild"/>
|
|
|
</Target>
|
|
|
+
|
|
|
+ <Target Name="Package" DependsOnTargets="CreateNuGetPackage;CreateBinPackage;GenerateHelpFile"/>
|
|
|
+
|
|
|
+ <Target Name="ValidatePackage" DependsOnTargets="ValidatePackageClassic;ValidatePackageModern"/>
|
|
|
+
|
|
|
+ <Target Name="ValidatePackageClassic" DependsOnTargets="CheckNuGetPackageDirectory;CheckBinaryZipPackageDirectory" Outputs="%(TargetFrameworkClassic.Identity)">
|
|
|
+ <Error Text="The 'Renci.SshNet.dll' file is not available for %(TargetFrameworkClassic.Identity) in $(NuGetPackageDirectory)\lib\%(TargetFrameworkClassic.Moniker)." Condition="!Exists('$(NuGetPackageDirectory)\lib\%(TargetFrameworkClassic.Moniker)\Renci.SshNet.dll')"/>
|
|
|
+ <Error Text="The 'Renci.SshNet.xml' file is not available for %(TargetFrameworkClassic.Identity) in $(NuGetPackageDirectory)\lib\%(TargetFrameworkClassic.Moniker)." Condition="!Exists('$(NuGetPackageDirectory)\lib\%(TargetFrameworkClassic.Moniker)\Renci.SshNet.xml')"/>
|
|
|
+ <Error Text="The 'Renci.SshNet.dll' file is not available for %(TargetFrameworkClassic.Identity) in $(BinaryZipPackageDirectory)\lib\%(TargetFrameworkClassic.Moniker)" Condition="!Exists('$(BinaryZipPackageDirectory)\lib\%(TargetFrameworkClassic.Moniker)\Renci.SshNet.dll')"/>
|
|
|
+ <Error Text="The 'Renci.SshNet.xml' file is not available for %(TargetFrameworkClassic.Identity) in $(BinaryZipPackageDirectory)\lib\%(TargetFrameworkClassic.Moniker)" Condition="!Exists('$(BinaryZipPackageDirectory)\lib\%(TargetFrameworkClassic.Moniker)\Renci.SshNet.xml')"/>
|
|
|
+ </Target>
|
|
|
+
|
|
|
+ <Target Name="ValidatePackageModern" DependsOnTargets="CheckNuGetPackageDirectory;CheckBinaryZipPackageDirectory" Outputs="%(TargetFrameworkModern.Identity)">
|
|
|
+ <Error Text="The 'Renci.SshNet.dll' file is not available for %(TargetFrameworkModern.Identity) in $(NuGetPackageDirectory)\lib\%(TargetFrameworkModern.Moniker)." Condition="!Exists('$(NuGetPackageDirectory)\lib\%(TargetFrameworkModern.Moniker)\Renci.SshNet.dll')"/>
|
|
|
+ <Error Text="The 'Renci.SshNet.xml' file is not available for %(TargetFrameworkModern.Identity) in $(NuGetPackageDirectory)\lib\%(TargetFrameworkModern.Moniker)." Condition="!Exists('$(NuGetPackageDirectory)\lib\%(TargetFrameworkModern.Moniker)\Renci.SshNet.xml')"/>
|
|
|
+ <Error Text="The 'Renci.SshNet.dll' file is not available for %(TargetFrameworkModern.Identity) in $(BinaryZipPackageDirectory)\lib\%(TargetFrameworkModern.Moniker)." Condition="!Exists('$(BinaryZipPackageDirectory)\lib\%(TargetFrameworkModern.Moniker)\Renci.SshNet.dll')"/>
|
|
|
+ <Error Text="The 'Renci.SshNet.xml' file is not available for %(TargetFrameworkModern.Identity) in $(BinaryZipPackageDirectory)\lib\%(TargetFrameworkModern.Moniker)." Condition="!Exists('$(BinaryZipPackageDirectory)\lib\%(TargetFrameworkModern.Moniker)\Renci.SshNet.xml')"/>
|
|
|
+ </Target>
|
|
|
+
|
|
|
+ <Target Name="CreateNuGetPackage" DependsOnTargets="ValidatePackage;CheckNuGetPackageDirectory;CheckReleaseVersion">
|
|
|
+ <Exec Command="$(NuGetExe) pack $(MSBuildThisFileDirectory)nuget\SSH.NET.nuspec -OutputDirectory "$(MSBuildThisFileDirectory)target" -Version "$(ReleaseVersion)" -Properties "copyright=2012-$([System.DateTime]::Now.Year), RENCI" -BasePath "$(NuGetPackageDirectory)" -NonInteractive"/>
|
|
|
+ </Target>
|
|
|
+
|
|
|
<Target Name="GenerateHelpFile" DependsOnTargets="CheckReleaseVersion">
|
|
|
<Error Text="Please install Sandcastle, and ensure the SHFBFolder environment variable is set." Condition="'$(SHFBFolder)'==''"/>
|
|
|
<MSBuild Projects="$(MSBuildThisFileDirectory)sandcastle\SSH.NET.shfbproj"/>
|
|
|
<Move SourceFiles="$(MSBuildThisFileDirectory)target\help\SshNet.Help.chm" DestinationFiles="$(MSBuildThisFileDirectory)target\SSH.NET-$(ReleaseVersion)-help.chm"/>
|
|
|
</Target>
|
|
|
- <Target Name="CopyBuildOutputToBin" Outputs="%(TargetFramework.Identity)">
|
|
|
+
|
|
|
+ <Target Name="PreparePackageClassic" DependsOnTargets="BuildClassic;CheckNuGetPackageDirectory;CheckBinaryZipPackageDirectory" Outputs="%(TargetFrameworkClassic.Identity)">
|
|
|
+ <ItemGroup>
|
|
|
+ <BuildOutput Remove="@(BuildOutput)"/>
|
|
|
+ <BuildOutput Include="$(MSBuildThisFileDirectory)..\src\%(TargetFrameworkClassic.OutputDirectory)\Renci.SshNet.dll"/>
|
|
|
+ <BuildOutput Include="$(MSBuildThisFileDirectory)..\src\%(TargetFrameworkClassic.OutputDirectory)\Renci.SshNet.xml"/>
|
|
|
+ </ItemGroup>
|
|
|
+ <Copy SourceFiles="@(BuildOutput)" DestinationFolder="$(NuGetPackageDirectory)\lib\%(TargetFrameworkClassic.Moniker)"/>
|
|
|
+ <Copy SourceFiles="@(BuildOutput)" DestinationFolder="$(BinPackageDirectory)\lib\%(TargetFrameworkClassic.Moniker)"/>
|
|
|
+ </Target>
|
|
|
+
|
|
|
+ <Target Name="PreparePackageModern" DependsOnTargets="BuildModern;CheckNuGetPackageDirectory" Outputs="%(TargetFrameworkModern.Identity)">
|
|
|
<ItemGroup>
|
|
|
<BuildOutput Remove="@(BuildOutput)"/>
|
|
|
- <BuildOutput Include="$(MSBuildThisFileDirectory)..\src\%(TargetFramework.OutputDirectory)\*.dll"/>
|
|
|
- <BuildOutput Include="$(MSBuildThisFileDirectory)..\src\%(TargetFramework.OutputDirectory)\*.xml"/>
|
|
|
+ <BuildOutput Include="$(MSBuildThisFileDirectory)..\src\%(TargetFrameworkModern.OutputDirectory)\Renci.SshNet.dll"/>
|
|
|
+ <BuildOutput Include="$(MSBuildThisFileDirectory)..\src\%(TargetFrameworkModern.OutputDirectory)\Renci.SshNet.xml"/>
|
|
|
</ItemGroup>
|
|
|
- <Copy SourceFiles="@(BuildOutput)" DestinationFolder="$(MSBuildThisFileDirectory)target\bin\lib\%(TargetFramework.Moniker)"/>
|
|
|
+ <Copy SourceFiles="@(BuildOutput)" DestinationFolder="$(NuGetPackageDirectory)\lib\%(TargetFrameworkModern.Moniker)"/>
|
|
|
</Target>
|
|
|
- <Target Name="CreateBinPackage" DependsOnTargets="PrepareMSBuildTasksPackage;CopyBuildOutputToBin;CheckReleaseVersion">
|
|
|
+
|
|
|
+ <Target Name="CreateBinPackage" DependsOnTargets="PrepareMSBuildTasksPackage;ValidatePackage;CheckReleaseVersion;CheckBinaryZipPackageDirectory">
|
|
|
<ItemGroup>
|
|
|
<Files Remove="@(Files)"/>
|
|
|
<Files Include="$(MSBuildThisFileDirectory)..\LICENSE"/>
|
|
|
+ <Files Include="$(MSBuildThisFileDirectory)..\THIRD-PARTY-NOTICES.TXT"/>
|
|
|
</ItemGroup>
|
|
|
- <Copy SourceFiles="@(Files)" DestinationFolder="$(MSBuildThisFileDirectory)target\bin\%(RecursiveDir)"/>
|
|
|
+ <Copy SourceFiles="@(Files)" DestinationFolder="$(BinaryZipPackageDirectory)\%(RecursiveDir)"/>
|
|
|
<ItemGroup>
|
|
|
<Files Remove="@(Files)"/>
|
|
|
- <Files Include="$(MSBuildThisFileDirectory)target\bin\**"/>
|
|
|
+ <Files Include="$(BinaryZipPackageDirectory)\**"/>
|
|
|
</ItemGroup>
|
|
|
- <Zip ZipFileName="$(MSBuildThisFileDirectory)target\SSH.NET-$(ReleaseVersion)-bin.zip" Files="@(Files)" WorkingDirectory="$(MSBuildThisFileDirectory)target\bin"/>
|
|
|
+ <Zip ZipFileName="$(MSBuildThisFileDirectory)target\SSH.NET-$(ReleaseVersion)-bin.zip" Files="@(Files)" WorkingDirectory="$(BinaryZipPackageDirectory)"/>
|
|
|
+ </Target>
|
|
|
+
|
|
|
+ <Target Name="DownloadNuGet">
|
|
|
+ <MakeDir Directories="$(MSBuildThisFileDirectory)target\nuget"/>
|
|
|
+ <DownloadFile
|
|
|
+ Address="https://dist.nuget.org/win-x86-commandline/latest/nuget.exe"
|
|
|
+ FileName="$(MSBuildThisFileDirectory)target\nuget\nuget.exe"/>
|
|
|
</Target>
|
|
|
<Target Name="PrepareMSBuildTasksPackage" DependsOnTargets="DownloadNuGet">
|
|
|
<Exec Command="$(NuGetExe) install $(MSBuildTasksPackageId) -Version $(MSBuildTasksPackageVersion) -OutputDirectory "$(MSBuildThisFileDirectory)target\nuget\packages" -Verbosity quiet"/>
|
|
|
</Target>
|
|
|
+
|
|
|
<Target Name="CheckReleaseVersion" Condition="'$(ReleaseVersion)'==''">
|
|
|
<Error Text= "Please specify the version number of the release (using the "ReleaseVersion" property)."/>
|
|
|
</Target>
|
|
|
+
|
|
|
+ <Target Name="CheckNuGetPackageDirectory" DependsOnTargets="CheckReleaseVersion">
|
|
|
+ <PropertyGroup>
|
|
|
+ <NuGetPackageDirectory>$(MSBuildThisFileDirectory)target\nuget-$(ReleaseVersion)</NuGetPackageDirectory>
|
|
|
+ </PropertyGroup>
|
|
|
+ </Target>
|
|
|
+
|
|
|
+ <Target Name="CheckBinaryZipPackageDirectory" DependsOnTargets="CheckReleaseVersion">
|
|
|
+ <PropertyGroup>
|
|
|
+ <BinaryZipPackageDirectory>$(MSBuildThisFileDirectory)target\bin-$(ReleaseVersion)</BinaryZipPackageDirectory>
|
|
|
+ </PropertyGroup>
|
|
|
+ </Target>
|
|
|
+
|
|
|
<UsingTask TaskName="DownloadFile" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
|
|
|
<ParameterGroup>
|
|
|
<Address ParameterType="System.String" Required="true"/>
|