diff options
author | Wes Haggard <weshaggard@users.noreply.github.com> | 2017-05-19 10:22:49 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-19 10:22:49 -0700 |
commit | 61722c9b0b1eb4d49432b8ba77934d5a1dcfb600 (patch) | |
tree | 9150488666fd80808a84594386c1bb7456d098fb | |
parent | ef108aed7ba01e916b3b13c78f4641d6df2c3919 (diff) | |
parent | bf28e963adf6b162e6cab58a09d81f675d2f68c9 (diff) | |
download | coreclr-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.csproj | 4 | ||||
-rw-r--r-- | src/mscorlib/System.Private.CoreLib.csproj | 3 | ||||
-rw-r--r-- | src/mscorlib/Tools/Signing/mscorlib.snk | bin | 160 -> 0 bytes | |||
-rw-r--r-- | src/sign.builds | 53 |
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 Binary files differdeleted file mode 100644 index 60146e8891..0000000000 --- a/src/mscorlib/Tools/Signing/mscorlib.snk +++ /dev/null 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> |