summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2019-04-12 11:44:00 -0700
committerGitHub <noreply@github.com>2019-04-12 11:44:00 -0700
commitc05c1165abe7614ab3530adf8bc6c6cdefa9d0af (patch)
tree3faf638acead1f874180ab8e188b88621a1e5b35
parent7182e653fb5c6f78f05892b6ed302fc8db8978d3 (diff)
downloadcpython-git-c05c1165abe7614ab3530adf8bc6c6cdefa9d0af.tar.gz
Allow Windows layout builds to fully skip code signing (GH-12808)
(cherry picked from commit 606c66a17faf34a4e74d4829e8fe5ad0d2879434) Co-authored-by: Steve Dower <steve.dower@microsoft.com>
-rw-r--r--Tools/msi/make_cat.ps15
-rw-r--r--Tools/msi/sdktools.psm16
2 files changed, 8 insertions, 3 deletions
diff --git a/Tools/msi/make_cat.ps1 b/Tools/msi/make_cat.ps1
index 7074143986..cc3cd4a2b5 100644
--- a/Tools/msi/make_cat.ps1
+++ b/Tools/msi/make_cat.ps1
@@ -16,6 +16,7 @@
#>
param(
[Parameter(Mandatory=$true)][string]$catalog,
+ [switch]$sign,
[string]$description,
[string]$certname,
[string]$certsha1,
@@ -31,4 +32,6 @@ MakeCat $catalog
if (-not $?) {
throw "Catalog compilation failed"
}
-Sign-File -certname $certname -certsha1 $certsha1 -certfile $certfile -description $description -files @($catalog -replace 'cdf$', 'cat')
+if ($sign) {
+ Sign-File -certname $certname -certsha1 $certsha1 -certfile $certfile -description $description -files @($catalog -replace 'cdf$', 'cat')
+}
diff --git a/Tools/msi/sdktools.psm1 b/Tools/msi/sdktools.psm1
index 61edb34117..8081b104d8 100644
--- a/Tools/msi/sdktools.psm1
+++ b/Tools/msi/sdktools.psm1
@@ -31,6 +31,10 @@ function Sign-File {
$certfile = $env:SigningCertificateFile;
}
+ if (-not ($certsha1 -or $certname -or $certfile)) {
+ throw "No signing certificate specified"
+ }
+
foreach ($a in $files) {
if ($certsha1) {
SignTool sign /sha1 $certsha1 /fd sha256 /t http://timestamp.verisign.com/scripts/timestamp.dll /d $description $a
@@ -38,8 +42,6 @@ function Sign-File {
SignTool sign /a /n $certname /fd sha256 /t http://timestamp.verisign.com/scripts/timestamp.dll /d $description $a
} elseif ($certfile) {
SignTool sign /f $certfile /fd sha256 /t http://timestamp.verisign.com/scripts/timestamp.dll /d $description $a
- } else {
- SignTool sign /a /fd sha256 /t http://timestamp.verisign.com/scripts/timestamp.dll /d $description $a
}
}
}