aboutsummaryrefslogtreecommitdiffstats
path: root/coin/provisioning/common/windows/install-sccache.ps1
diff options
context:
space:
mode:
Diffstat (limited to 'coin/provisioning/common/windows/install-sccache.ps1')
-rw-r--r--coin/provisioning/common/windows/install-sccache.ps135
1 files changed, 35 insertions, 0 deletions
diff --git a/coin/provisioning/common/windows/install-sccache.ps1 b/coin/provisioning/common/windows/install-sccache.ps1
new file mode 100644
index 00000000..b8f1605c
--- /dev/null
+++ b/coin/provisioning/common/windows/install-sccache.ps1
@@ -0,0 +1,35 @@
+# Copyright (C) 2017 The Qt Company Ltd.
+# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
+
+# Install mozilla sccache
+
+param(
+ [string]$arch="x86_64-pc-windows-msvc",
+ [string]$version="0.2.14",
+ [string]$sha1="bbdceb59d6fd7b6a3af02fb36f65c8bf324757b0"
+)
+
+. "$PSScriptRoot\helpers.ps1"
+
+$basename = "sccache-" + $version + "-" + $arch
+$zipfile = $basename + ".tar.gz"
+$tempfile = "C:\Windows\Temp\" + $zipfile
+$urlCache = "http://ci-files01-hki.ci.qt.io/input/sccache/" + $zipfile
+$urlOfficial = "https://github.com/mozilla/sccache/releases/download/" + $version + "/" + $zipfile
+$targetFolder = "C:\Program Files\"
+
+Write-Host "Downloading sccache $version..."
+Download $urlOfficial $urlCache $tempfile
+Verify-Checksum $tempfile $sha1
+Write-Host "Extracting $tempfile to $targetFolder..."
+Extract-tar_gz $tempfile $targetFolder
+Remove-Item -Path $tempfile
+
+# Turnoff idle timeout to avoid sccache shutting down
+Set-EnvironmentVariable "SCCACHE_IDLE_TIMEOUT" "0"
+
+# add sccache to PATH
+Set-EnvironmentVariable "PATH" "C:\Program Files\$basename\;$([Environment]::GetEnvironmentVariable('PATH', 'Machine'))"
+
+# update versions
+Write-Output "sccache = $version" >> ~\versions.txt