Skip to content
This repository was archived by the owner on Mar 12, 2021. It is now read-only.

Commit 71d9d00

Browse files
committed
Merge branch 'release' into dev
2 parents 715d4d2 + efd3714 commit 71d9d00

2 files changed

Lines changed: 59 additions & 36 deletions

File tree

Build/Common.tasks

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="12.0" DefaultTargets="Test" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
4+
<UsingTask TaskName="ExecAsync" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v12.0.dll">
5+
<ParameterGroup>
6+
<Executable ParameterType="System.String" Required="true" />
7+
<Arguments ParameterType="System.String" Required="false" />
8+
</ParameterGroup>
9+
<Task>
10+
<Using Namespace="System.IO" />
11+
<Using Namespace="System.Diagnostics" />
12+
<Code Type="Fragment" Language="cs">
13+
<![CDATA[
14+
Log.LogMessage("Executable {0}...", Executable);
15+
var name = System.IO.Path.GetFileNameWithoutExtension(Executable);
16+
Log.LogMessage("Starting {0}...", name);
17+
var processStartInfo = new ProcessStartInfo(Executable, Arguments) { UseShellExecute = true };
18+
Process.Start(processStartInfo);
19+
Log.LogMessage("Finished starting process {0}.", name);
20+
]]>
21+
</Code>
22+
</Task>
23+
</UsingTask>
24+
25+
<UsingTask TaskName="Sleep" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v12.0.dll">
26+
<ParameterGroup>
27+
<TimeoutMs ParameterType="System.Int32" Required="true" />
28+
</ParameterGroup>
29+
<Task>
30+
<Code Type="Fragment" Language="cs">
31+
<![CDATA[System.Threading.Thread.Sleep(TimeoutMs);]]>
32+
</Code>
33+
</Task>
34+
</UsingTask>
35+
36+
<UsingTask TaskName="ZipDir" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v12.0.dll">
37+
<ParameterGroup>
38+
<InputDir ParameterType="System.String" Required="true" />
39+
<OutputFileName ParameterType="System.String" Required="true" />
40+
<IncludeBaseDir ParameterType="System.Boolean" Required="false" />
41+
</ParameterGroup>
42+
<Task>
43+
<Reference Include="System.IO.Compression.FileSystem" />
44+
<Using Namespace="System.IO.Compression" />
45+
<Code Type="Fragment" Language="cs">
46+
<![CDATA[ ZipFile.CreateFromDirectory(InputDir, OutputFileName, CompressionLevel.Optimal, IncludeBaseDir); ]]>
47+
</Code>
48+
</Task>
49+
</UsingTask>
50+
51+
</Project>

Build/build.msbuild

Lines changed: 8 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project ToolsVersion="12.0" DefaultTargets="Test" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<Import Project="$(MSBuildThisFileDirectory)\Common.tasks" />
34
<Import Project="$(MSBuildThisFileDirectory)\Common.Build.Settings" />
45

56
<ItemGroup>
@@ -89,6 +90,7 @@
8990
<NuGetArtifactsPath>$(MSBuildThisFileDirectory)..\NuGet\</NuGetArtifactsPath>
9091
<NuSpecPath>$(NuGetArtifactsPath)signalrclientcpp.nuspec</NuSpecPath>
9192
<PackageOutputDir>$(SolutionDir)artifacts\build</PackageOutputDir>
93+
<PrivateSymbols>$(SolutionDir)bin\Symbols\</PrivateSymbols>
9294
</PropertyGroup>
9395

9496
<ItemGroup>
@@ -99,54 +101,24 @@
99101
<Copy SourceFiles="$(NuGetArtifactsPath)Microsoft.AspNet.SignalR.Client.Cpp.v120.WinDesktop.targets" DestinationFolder="$(PackageSourceNative)" />
100102

101103
<MSBuild Targets="RestorePackages" Projects="@(Projects)" />
102-
104+
103105
<MSBuild Targets="BuildForNuget"
104-
Projects="$(MSBuildThisFile)"
105-
Properties="PackageSourceNative=$(PackageSourceNative);Configuration=%(ProjectConfiguration.Configuration);Platform=%(ProjectConfiguration.Platform);PlatformToolset=$(PlatformToolset);SignalrClientTargetName=$(SignalrClientTargetName)" />
106+
Projects="$(MSBuildThisFile)" Properties="PackageSourceNative=$(PackageSourceNative);PrivateSymbols=$(PrivateSymbols);Configuration=%(ProjectConfiguration.Configuration);Platform=%(ProjectConfiguration.Platform);PlatformToolset=$(PlatformToolset);SignalrClientTargetName=$(SignalrClientTargetName)" />
106107

107108
<MakeDir Directories="$(PackageOutputDir)" />
108109
<Exec Command="$(NuGetCommand) pack $(NuSpecPath) -BasePath $(PackageSource) -OutputDirectory $(PackageOutputDir) -Version $(SignalRClientCppVersionString)" LogStandardErrorAsError="true" />
110+
111+
<ZipDir InputDir="$(PrivateSymbols)" OutputFileName="$(PackageOutputDir)\Symbols.zip" IncludeBaseDir="false"/>
109112
</Target>
110113

111114
<Target Name="BuildForNuget">
112115
<MSBuild Targets="$(BuildTargets)"
113116
Projects="@(Projects)"
114117
Properties="Configuration=$(Configuration);Platform=$(Platform);PlatformToolset=$(PlatformToolset)" />
115-
116118
<Copy SourceFiles="$(OutputPath)dll\$(SignalrClientTargetName).lib" DestinationFolder="$(PackageSourceNative)lib\$(Platform)\$(PlatformToolset)\$(Configuration)" />
119+
117120
<Copy SourceFiles="$(OutputPath)dll\$(SignalrClientTargetName).dll" DestinationFolder="$(PackageSourceNative)dll\$(Platform)\$(PlatformToolset)\$(Configuration)" />
118121
<Copy SourceFiles="$(OutputPath)dll\$(SignalrClientTargetName).pub.pdb" DestinationFiles="$(PackageSourceNative)dll\$(Platform)\$(PlatformToolset)\$(Configuration)\$(SignalrClientTargetName).pdb" />
122+
<Copy SourceFiles="$(OutputPath)dll\$(SignalrClientTargetName).pdb" DestinationFiles="$(PrivateSymbols)$(Platform)\$(PlatformToolset)\$(Configuration)\$(SignalrClientTargetName).pdb" />
119123
</Target>
120-
121-
<UsingTask TaskName="ExecAsync" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
122-
<ParameterGroup>
123-
<Executable ParameterType="System.String" Required="true" />
124-
<Arguments ParameterType="System.String" Required="false" />
125-
</ParameterGroup>
126-
<Task>
127-
<Using Namespace="System.IO" />
128-
<Using Namespace="System.Diagnostics" />
129-
<Code Type="Fragment" Language="cs">
130-
<![CDATA[
131-
Log.LogMessage("Executable {0}...", Executable);
132-
var name = System.IO.Path.GetFileNameWithoutExtension(Executable);
133-
Log.LogMessage("Starting {0}...", name);
134-
var processStartInfo = new ProcessStartInfo(Executable, Arguments) { UseShellExecute = true };
135-
Process.Start(processStartInfo);
136-
Log.LogMessage("Finished starting process {0}.", name);
137-
]]>
138-
</Code>
139-
</Task>
140-
</UsingTask>
141-
142-
<UsingTask TaskName="Sleep" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
143-
<ParameterGroup>
144-
<TimeoutMs ParameterType="System.Int32" Required="true" />
145-
</ParameterGroup>
146-
<Task>
147-
<Code Type="Fragment" Language="cs">
148-
<![CDATA[System.Threading.Thread.Sleep(TimeoutMs);]]>
149-
</Code>
150-
</Task>
151-
</UsingTask>
152124
</Project>

0 commit comments

Comments
 (0)