diff options
author | Jose <jose@zeroc.com> | 2019-10-09 21:05:38 +0200 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2019-10-09 21:06:37 +0200 |
commit | cd45b6acfa4899dfeb30039deece142f1738f0ba (patch) | |
tree | ccd19b52ec425221ed120102677252e53cd14b29 /cpp | |
parent | Fixed tests to break cyclic references (diff) | |
download | ice-cd45b6acfa4899dfeb30039deece142f1738f0ba.tar.bz2 ice-cd45b6acfa4899dfeb30039deece142f1738f0ba.tar.xz ice-cd45b6acfa4899dfeb30039deece142f1738f0ba.zip |
Add support to retry on authenticode sign failures
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/msbuild/ice.sign.targets | 58 |
1 files changed, 32 insertions, 26 deletions
diff --git a/cpp/msbuild/ice.sign.targets b/cpp/msbuild/ice.sign.targets index 609e4edf735..3e871ca69d7 100644 --- a/cpp/msbuild/ice.sign.targets +++ b/cpp/msbuild/ice.sign.targets @@ -1,34 +1,40 @@ <?xml version="1.0" encoding="utf-8"?> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <PropertyGroup> - <TimeStampServer>http://timestamp.digicert.com</TimeStampServer> - <SignCommandSHA1>signtool sign /f "$(SIGN_CERTIFICATE)" /p $(SIGN_PASSWORD) /t $(TimeStampServer)</SignCommandSHA1> - <SignCommandSHA256>signtool sign /f "$(SIGN_CERTIFICATE)" /p $(SIGN_PASSWORD) /tr $(TimeStampServer) /td sha256 /fd sha256 /as</SignCommandSHA256> - <SignTarget>$(OutDir)$(TargetName)$(TargetExt)</SignTarget> - </PropertyGroup> + <Import Project="$(MSBuildThisFileDirectory)/../../config/ice.common.sign.targets" /> + <PropertyGroup> + <SignTarget>$(OutDir)$(TargetName)$(TargetExt)</SignTarget> + </PropertyGroup> - <Target Name="SignPackage" - Condition="Exists('$(SIGN_CERTIFICATE)') and (!Exists('$(IntDir)sign.log') or $([System.IO.File]::GetLastWriteTime('$(SignTarget)').Ticks) > $([System.IO.File]::GetLastWriteTime('$(IntDir)sign.log').Ticks))"> - <Message Text="Signing $(SignTarget)" /> + <Target Name="SignPackage" + Condition="Exists('$(SIGN_CERTIFICATE)') and (!Exists('$(IntDir)sign.log') or $([System.IO.File]::GetLastWriteTime('$(SignTarget)').Ticks) > $([System.IO.File]::GetLastWriteTime('$(IntDir)sign.log').Ticks))"> + <Message Text="Signing $(SignTarget)" /> - <Exec Command="$(SignCommandSHA1) $(SignTarget)" EchoOff="yes"/> - <Exec Command="$(SignCommandSHA256) $(SignTarget)" EchoOff="yes" - Condition="'$(DefaultPlatformToolset)' != 'v100'"/> + <!-- Authenticode signing --> + <SignTask + WorkingDirectory="$(OutDir)" + AdditionalOptions="$(SignCommandSHA1)" + Files="$(TargetName)$(TargetExt)"/> - <WriteLinesToFile File = "$(IntDir)sign.log" - Encoding = "Unicode" - Overwrite = "true" - Lines = "Signing $(SignTarget)"/> - </Target> + <SignTask + WorkingDirectory="$(OutDir)" + AdditionalOptions="$(SignCommandSHA256)" + Files="$(TargetName)$(TargetExt)" + Condition="'$(DefaultPlatformToolset)' != 'v100'"/> - <Target Name="SignPackageClean" AfterTargets="Clean"> - <Delete Files="$(IntDir)sign.log" /> - </Target> + <WriteLinesToFile File = "$(IntDir)sign.log" + Encoding = "Unicode" + Overwrite = "true" + Lines = "Signing $(SignTarget)"/> + </Target> - <PropertyGroup> - <BuildDependsOn> - $(BuildDependsOn); - SignPackage - </BuildDependsOn> - </PropertyGroup> + <Target Name="SignPackageClean" AfterTargets="Clean"> + <Delete Files="$(IntDir)sign.log" /> + </Target> + + <PropertyGroup> + <BuildDependsOn> + $(BuildDependsOn); + SignPackage + </BuildDependsOn> + </PropertyGroup> </Project> |