summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/DotNetOpenAuth/DotNetOpenAuth.csproj7
-rw-r--r--tools/DotNetOpenAuth.props1
-rw-r--r--tools/DotNetOpenAuth.targets29
3 files changed, 28 insertions, 9 deletions
diff --git a/src/DotNetOpenAuth/DotNetOpenAuth.csproj b/src/DotNetOpenAuth/DotNetOpenAuth.csproj
index 9f29d4b..70b2710 100644
--- a/src/DotNetOpenAuth/DotNetOpenAuth.csproj
+++ b/src/DotNetOpenAuth/DotNetOpenAuth.csproj
@@ -729,6 +729,13 @@ http://opensource.org/licenses/ms-pl.html
<Content Include="DotNetOpenAuth.ico" />
</ItemGroup>
+ <ItemGroup>
+ <SignDependsOn Include="BuildUnifiedProduct" />
+ <DelaySignedAssemblies Include="$(ILMergeOutputAssembly);
+ $(OutputPath)$(ProductName).Contracts.dll;
+ " />
+ </ItemGroup>
+
<Target Name="BuildUnifiedProduct"
DependsOnTargets="Build"
Inputs="@(ILMergeInputAssemblies)"
diff --git a/tools/DotNetOpenAuth.props b/tools/DotNetOpenAuth.props
index d9b36a0..91a5e5e 100644
--- a/tools/DotNetOpenAuth.props
+++ b/tools/DotNetOpenAuth.props
@@ -27,6 +27,7 @@
</PropertyGroup>
<ItemGroup>
+ <SignDependsOn Include="Build" />
<ILMergeInputAssemblies Include="$(OutputPath)$(ProductName).dll;
$(ProjectRoot)lib\Microsoft.Contracts.dll; "/>
</ItemGroup>
diff --git a/tools/DotNetOpenAuth.targets b/tools/DotNetOpenAuth.targets
index 12f00a7..34aa424 100644
--- a/tools/DotNetOpenAuth.targets
+++ b/tools/DotNetOpenAuth.targets
@@ -10,11 +10,7 @@
</PropertyGroup>
<ItemGroup>
- <DelaySignedAssemblies Include="$(ILMergeOutputAssembly);
- $(OutputPath)$(ProductName).dll;
- $(OutputPath)$(ProductName).Contracts.dll;
- $(OutputPath)$(ProductName).Test.dll;
- $(ProjectRoot)samples\OpenIdOfflineProvider\bin\$(Configuration)\OpenIdOfflineProvider.exe" />
+ <DelaySignedAssemblies Include="$(TargetPath)" />
</ItemGroup>
<ItemGroup Condition=" '$(ClrVersion)' != '4' ">
@@ -58,15 +54,30 @@
</Publicize>
</Target>
- <Target Name="ReSignDelaySignedAssemblies" DependsOnTargets="BuildProduct">
+ <Target Name="Sign" DependsOnTargets="@(SignDependsOn)" Condition=" '@(DelaySignedAssemblies)' != '' ">
+ <!-- Add the resource assemblies. -->
+ <PropertyGroup>
+ <DelaySignedSatelliteAssembliesPattern>@(DelaySignedAssemblies->'%(RootDir)%(Directory)*\%(FileName).resources.*')</DelaySignedSatelliteAssembliesPattern>
+ </PropertyGroup>
<ItemGroup>
- <!-- Add the resource assemblies that only just now are known to exist. -->
- <DelaySignedAssemblies Include="$(OutputPath)**\$(ProductName).resources.dll" />
+ <DelaySignedSatelliteAssemblies Include="$(DelaySignedSatelliteAssembliesPattern)" />
</ItemGroup>
+
<Message Text="Signing delay-signed assemblies using key pair container $(KeyPairContainer)." />
<ReSignDelaySignedAssemblies
KeyContainer="$(KeyPairContainer)"
- Assemblies="@(DelaySignedAssemblies)"
+ Assemblies="@(DelaySignedAssemblies);@(DelaySignedSatelliteAssemblies)"
Condition="Exists(%(Identity))" />
</Target>
+
+ <Target Name="ResignDelaySignedAssemblies">
+ <ItemGroup>
+ <DelaySignedProjects Include="
+ $(ProjectRoot)src\dotnetopenauth\dotnetopenauth.csproj;
+ $(ProjectRoot)src\dotnetopenauth.test\dotnetopenauth.test.csproj;
+ $(ProjectRoot)samples\openidofflineprovider\openidofflineprovider.csproj;
+ " />
+ </ItemGroup>
+ <MSBuild Projects="@(DelaySignedProjects)" Targets="Sign" BuildInParallel="$(BuildInParallel)" />
+ </Target>
</Project>