summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWes Haggard <weshaggard@users.noreply.github.com>2017-05-19 10:22:49 -0700
committerGitHub <noreply@github.com>2017-05-19 10:22:49 -0700
commit61722c9b0b1eb4d49432b8ba77934d5a1dcfb600 (patch)
tree9150488666fd80808a84594386c1bb7456d098fb
parentef108aed7ba01e916b3b13c78f4641d6df2c3919 (diff)
parentbf28e963adf6b162e6cab58a09d81f675d2f68c9 (diff)
downloadcoreclr-61722c9b0b1eb4d49432b8ba77934d5a1dcfb600.tar.gz
coreclr-61722c9b0b1eb4d49432b8ba77934d5a1dcfb600.tar.bz2
coreclr-61722c9b0b1eb4d49432b8ba77934d5a1dcfb600.zip
Merge pull request #11747 from weshaggard/UpdateSigning
Update signing for coreclr repo
-rw-r--r--src/ToolBox/SOS/NETCore/SOS.NETCore.csproj4
-rw-r--r--src/mscorlib/System.Private.CoreLib.csproj3
-rw-r--r--src/mscorlib/Tools/Signing/mscorlib.snkbin160 -> 0 bytes
-rw-r--r--src/sign.builds53
4 files changed, 26 insertions, 34 deletions
diff --git a/src/ToolBox/SOS/NETCore/SOS.NETCore.csproj b/src/ToolBox/SOS/NETCore/SOS.NETCore.csproj
index ec3602e66d..c579b59dc0 100644
--- a/src/ToolBox/SOS/NETCore/SOS.NETCore.csproj
+++ b/src/ToolBox/SOS/NETCore/SOS.NETCore.csproj
@@ -12,7 +12,7 @@
<NoStdLib>true</NoStdLib>
<NoCompilerStandardLib>true</NoCompilerStandardLib>
<IsDotNetFrameworkProductAssembly>true</IsDotNetFrameworkProductAssembly>
- <UseOpenKey Condition="'$(UseOpenKey)'==''">true</UseOpenKey>
+ <AssemblyKey>Open</AssemblyKey>
<ExcludeMscorlibFacade>true</ExcludeMscorlibFacade>
<ContainsPackageReferences>true</ContainsPackageReferences>
@@ -71,7 +71,7 @@
UseHardlinksIfPossible="false">
</Copy>
- <Copy
+ <Copy
SourceFiles="$(OutputPath)$(AssemblyName).pdb"
DestinationFolder="$(BinDir)\PDB"
SkipUnchangedFiles="false"
diff --git a/src/mscorlib/System.Private.CoreLib.csproj b/src/mscorlib/System.Private.CoreLib.csproj
index b17b1becb1..928726ea52 100644
--- a/src/mscorlib/System.Private.CoreLib.csproj
+++ b/src/mscorlib/System.Private.CoreLib.csproj
@@ -725,7 +725,8 @@
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
<PropertyGroup>
<!-- Overwrite the key that we are going to use for signing -->
- <AssemblyOriginatorKeyFile>$(MSBuildThisFileDirectory)Tools\Signing\mscorlib.snk</AssemblyOriginatorKeyFile>
+ <AssemblyOriginatorKeyFile>$(ToolsDir)SilverlightPlatformPublicKey.snk</AssemblyOriginatorKeyFile>
+ <StrongNameSig>Silverlight</StrongNameSig>
<!-- Use a different nativeresource file to avoid conflicts with mscorlib-->
<Win32Resource Condition="'$(GenerateNativeVersionInfo)'=='true'">$(IntermediateOutputPath)\System.Private.CoreLib.res</Win32Resource>
</PropertyGroup>
diff --git a/src/mscorlib/Tools/Signing/mscorlib.snk b/src/mscorlib/Tools/Signing/mscorlib.snk
deleted file mode 100644
index 60146e8891..0000000000
--- a/src/mscorlib/Tools/Signing/mscorlib.snk
+++ /dev/null
Binary files differ
diff --git a/src/sign.builds b/src/sign.builds
index a8652b3ff4..831fe668c7 100644
--- a/src/sign.builds
+++ b/src/sign.builds
@@ -1,48 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="12.0" DefaultTargets="SignFiles" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-
- <!-- must set the default before importing targets -->
- <PropertyGroup>
- <SignType Condition="'$(SignType)' == ''">test</SignType>
- <StrongNameSig>Silverlight</StrongNameSig>
- </PropertyGroup>
+<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\dir.props"/>
<Import Project="..\dir.targets" />
- <!-- OutDir is used by the MicroBuild signing target -->
<PropertyGroup>
+ <!-- The SignFiles target needs OutDir to be defined -->
<OutDir>$(BinDir)</OutDir>
</PropertyGroup>
<UsingTask AssemblyFile="$(BuildToolsTaskDir)Microsoft.DotNet.Build.Tasks.dll" TaskName="ReadSigningRequired" />
- <!-- apply the default signing certificates (defined in sign.targets) -->
- <ItemDefinitionGroup>
- <FilesToSign>
- <Authenticode>$(AuthenticodeSig)</Authenticode>
- <StrongName>$(StrongNameSig)</StrongName>
- </FilesToSign>
- </ItemDefinitionGroup>
-
- <!-- gather the list of binaries to sign with the default certificates -->
<ItemGroup>
- <FilesToSign Include="$(BinDir)*.dll" Exclude="$(BinDir)*.ni.dll" />
- <FilesToSign Include="$(BinDir)*.exe" />
+ <WindowsNativeLocation Include="$(BinDir)*.dll" />
+ <WindowsNativeLocation Include="$(BinDir)*.exe" />
</ItemGroup>
- <!--
- for some reason the signing task incorrectly attemps to strong-name sign
- native images which causes the signing step to fail for obvious reasons.
- -->
- <ItemGroup>
- <FilesToSign Include="$(BinDir)*.ni.dll">
- <StrongName>None</StrongName>
- </FilesToSign>
- </ItemGroup>
+ <Target Name="GenerateSignForWindowsNative">
+ <!--
+ Managed assemblies should already have a requires_signing file dropped so only generate
+ a requires_signing file for ones that don't exist which should leave just native assembies
+ -->
+ <WriteSigningRequired AuthenticodeSig="$(AuthenticodeSig)"
+ MarkerFile="%(WindowsNativeLocation.Identity).requires_signing"
+ Condition="!Exists('%(WindowsNativeLocation.Identity).requires_signing')" />
+ </Target>
<!-- populates item group FilesToSign with the list of files to sign -->
- <Target Name="GetFilesToSignItems" BeforeTargets="SignFiles">
+ <Target Name="GetFilesToSignItems"
+ DependsOnTargets="GenerateSignForWindowsNative">
<!-- read all of the marker files and populate the FilesToSign item group -->
<ItemGroup>
<SignMarkerFile Include="$(OutDir)**\*.requires_signing" />
@@ -50,10 +36,15 @@
<ReadSigningRequired MarkerFiles="@(SignMarkerFile)">
<Output TaskParameter="SigningMetadata" ItemName="FilesToSign" />
</ReadSigningRequired>
+
+ <Message Importance="High" Text="Attempting to sign %(FilesToSign.Identity) with authenticode='%(FilesToSign.Authenticode)' and strongname='%(FilesToSign.StrongName)'" />
+
</Target>
- <!-- now that signing is done clean up any marker files -->
- <Target Name="CleanUpMarkerFiles" AfterTargets="SignFiles">
+ <Target Name="Build"
+ Condition="'$(SkipSigning)' != 'true' and '$(SignType)' != 'oss'"
+ DependsOnTargets="GetFilesToSignItems;SignFiles">
+
<!-- now that the files have been signed delete the marker files -->
<Delete Files="@(SignMarkerFile)" />
</Target>