summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2019-10-09 21:05:38 +0200
committerJose <jose@zeroc.com>2019-10-09 21:06:37 +0200
commitcd45b6acfa4899dfeb30039deece142f1738f0ba (patch)
treeccd19b52ec425221ed120102677252e53cd14b29 /cpp
parentFixed tests to break cyclic references (diff)
downloadice-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.targets58
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) &gt; $([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) &gt; $([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>