| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234 | <?xml version="1.0" encoding="utf-8"?><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>		<BuildRoot>$(MSBuildThisFileDirectory)</BuildRoot>		<NuGetExe>$(BuildRoot)target\nuget\nuget.exe</NuGetExe>		<MSBuildTasksPackageId>MSBuildTasks</MSBuildTasksPackageId>		<MSBuildTasksPackageVersion>1.5.0.214</MSBuildTasksPackageVersion>	</PropertyGroup>		<ItemGroup>		<VisualStudioVersionClassic Include="2012">			<SolutionFile>$(MSBuildThisFileDirectory)..\src\Renci.SshNet.VS2012.sln</SolutionFile>			<ToolsVersion>14.0</ToolsVersion>			<VisualStudioVersion>14.0</VisualStudioVersion>		</VisualStudioVersionClassic>		<VisualStudioVersionClassic Include="2015">			<SolutionFile>$(MSBuildThisFileDirectory)..\src\Renci.SshNet.VS2015.sln</SolutionFile>			<ToolsVersion>14.0</ToolsVersion>			<VisualStudioVersion>14.0</VisualStudioVersion>		</VisualStudioVersionClassic>	</ItemGroup>		<ItemGroup>		<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>		</TargetFrameworkClassic>		<TargetFrameworkClassic Include="Windows Phone Silverlight 8.0">			<OutputDirectory>Renci.SshNet.WindowsPhone8\bin\$(Configuration)</OutputDirectory>			<Moniker>wp8</Moniker>		</TargetFrameworkClassic>		<TargetFrameworkClassic Include="Silverlight 4">			<OutputDirectory>Renci.SshNet.Silverlight\bin\$(Configuration)</OutputDirectory>			<Moniker>sl4</Moniker>		</TargetFrameworkClassic>		<TargetFrameworkClassic Include="Silverlight 5">			<OutputDirectory>Renci.SshNet.Silverlight5\bin\$(Configuration)</OutputDirectory>			<Moniker>sl5</Moniker>		</TargetFrameworkClassic>		<TargetFrameworkClassic Include="Universal Windows Platform 10">			<OutputDirectory>Renci.SshNet.UAP10\bin\$(Configuration)</OutputDirectory>			<Moniker>uap10</Moniker>		</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="CleanClassic" DependsOnTargets="CleanSolutionClassic">		<RemoveDir Directories="$(MSBuildThisFileDirectory)target"/>	</Target>		<Target Name="CleanModern" DependsOnTargets="CleanSolutionModern">		<RemoveDir Directories="$(MSBuildThisFileDirectory)target"/>	</Target>	<Target Name="CleanSolutionClassic" Outputs="%(VisualStudioVersionClassic.Identity)">		<ItemGroup>			<ProjectToBuild Remove="@(ProjectToBuild)"/>			<ProjectToBuild Include="%(VisualStudioVersionClassic.SolutionFile)">				<Properties>Configuration=Release;VisualStudioVersion=%(VisualStudioVersionClassic.VisualStudioVersion)</Properties>			</ProjectToBuild>		</ItemGroup>		<MSBuild Projects="@(ProjectToBuild)" ToolsVersion="%(VisualStudioVersionClassic.ToolsVersion)" Targets="Clean"/>	</Target>		<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="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="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="%(VisualStudioVersionClassic.SolutionFile)">				<Properties>Configuration=Release;VisualStudioVersion=%(VisualStudioVersionClassic.VisualStudioVersion)</Properties>			</ProjectToBuild>		</ItemGroup>		<MSBuild Projects="@(ProjectToBuild)" ToolsVersion="%(VisualStudioVersionClassic.ToolsVersion)" Targets="Rebuild"/>	</Target>		<Target Name="BuildModern" DependsOnTargets="RestoreNuGetPackagesModern" Outputs="%(VisualStudioVersionModern.Identity)">		<ItemGroup>			<ProjectToBuild Remove="@(ProjectToBuild)"/>			<ProjectToBuild Include="%(VisualStudioVersionModern.SolutionFile)">				<Properties>Configuration=Release;VisualStudioVersion=%(VisualStudioVersionModern.VisualStudioVersion)</Properties>			</ProjectToBuild>		</ItemGroup>		<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" 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')"/>	</Target>	<Target Name="ValidatePackageModern" DependsOnTargets="CheckNuGetPackageDirectory" 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')"/>	</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 SHFBROOT environment variable is set." Condition="'$(SHFBROOT)'==''"/>		<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="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\%(TargetFrameworkModern.OutputDirectory)\Renci.SshNet.dll"/>			<BuildOutput Include="$(MSBuildThisFileDirectory)..\src\%(TargetFrameworkModern.OutputDirectory)\Renci.SshNet.xml"/>		</ItemGroup>		<Copy SourceFiles="@(BuildOutput)" DestinationFolder="$(NuGetPackageDirectory)\lib\%(TargetFrameworkModern.Moniker)"/>	</Target>		<Target Name="CreateBinPackage" DependsOnTargets="PrepareMSBuildTasksPackage;ValidatePackage;CheckReleaseVersion;CheckBinaryZipPackageDirectory">		<ItemGroup>			<Files Remove="@(Files)"/>			<Files Include="$(NuGetPackageDirectory)\lib\**\*.*"/>			<Files Include="$(MSBuildThisFileDirectory)..\LICENSE"/>			<Files Include="$(MSBuildThisFileDirectory)..\THIRD-PARTY-NOTICES.TXT"/>		</ItemGroup>		<Copy SourceFiles="@(Files)" DestinationFolder="$(BinaryZipPackageDirectory)\%(RecursiveDir)"/>		<ItemGroup>			<Files Remove="@(Files)"/>			<Files Include="$(BinaryZipPackageDirectory)\**"/>		</ItemGroup>		<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"/>			<FileName ParameterType="System.String" Required="true" />		</ParameterGroup>		<Task>			<Reference Include="System" />			<Code Type="Fragment" Language="cs">				<![CDATA[					// Workaround 'Could not create SSL/TLS secure channel' issue due to TLS 1.1 being					// the default on earlier versions of .NET					System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;					// Download file					new System.Net.WebClient().DownloadFile(Address, FileName);				]]>			</Code>		</Task>	</UsingTask></Project>
 |