mirror of
git://code.qt.io/qt/qt5.git
synced 2026-04-19 03:26:15 +08:00
Provisioning: Add Windows 11 on ARM as non-blocking in CI
Visual Studio 2022 is the first msvc having natively support for
building and debugging ARM64 apps. [CI Platforms]
Provisioning needed to take new Get-CpuArchitecture
helpers.ps1 function into use in several installations.
Requirements for other branches
- Get-CpuArchitecture helpers.ps1 function
- Skip qtwebengine with Windows 11 ARM (QTBUG-124632)
List of excluded installations in Windows on ARM:
- Could be added later
- MinGW - QTQAINFRA-6079
- DirectX SDK for RTA
- libclang
- mcuexpresso
- fbx for msvc2022
- Ruby
- For python
- conan
- emsdk
- Not supported yet
- FFmpeg
- Msys2 (for FFmpeg QTBUG-124399)
- MySQL
- PostgreSQL
- Java JDK
- Strawberry Perl
Task-number: QTQAINFRA-6109
Task-number: QTQAINFRA-5855
Pick-to: 6.7
Change-Id: I4130e78add53f8a6e05eb41b7617b3f9ca802178
Reviewed-by: Simo Fält <simo.falt@qt.io>
This commit is contained in:
@@ -6,18 +6,40 @@
|
||||
$majorminorversion = "3.27"
|
||||
$version = "3.27.7"
|
||||
|
||||
$zip = Get-DownloadLocation ("cmake-" + $version + "-windows-i386.zip")
|
||||
$officialurl = "https://cmake.org/files/v" + $majorminorversion + "/cmake-" + $version + "-windows-i386.zip"
|
||||
$cachedurl = "\\ci-files01-hki.ci.qt.io\provisioning\cmake\cmake-" + $version + "-windows-i386.zip"
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
Write-Host "Installing CMake for architecture $cpu_arch"
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
$arch = "arm64"
|
||||
$sha1 = "52ee08671dcb478c5ec6e862f41717f65047c598"
|
||||
$majorminorversion = "3.29"
|
||||
$version = "3.29.2"
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
$arch = "i386"
|
||||
$sha1 = "b6147215a5f9cd1138b012265229fbf2224d02c6"
|
||||
}
|
||||
default {
|
||||
throw "Unknown architecture $cpu_arch"
|
||||
}
|
||||
}
|
||||
|
||||
$filename = "cmake-" + $version + "-windows-" + $arch
|
||||
$filename_zip = $filename + ".zip"
|
||||
|
||||
$zip = Get-DownloadLocation ($filename_zip)
|
||||
$officialurl = "https://cmake.org/files/v" + $majorminorversion + "/" + $filename_zip
|
||||
$cachedurl = "https://ci-files01-hki.ci.qt.io/input/cmake/" + $filename_zip
|
||||
|
||||
Write-Host "Removing old cmake"
|
||||
Remove "C:\CMake"
|
||||
|
||||
Download $officialurl $cachedurl $zip
|
||||
Verify-Checksum $zip "b6147215a5f9cd1138b012265229fbf2224d02c6"
|
||||
Verify-Checksum $zip $sha1
|
||||
|
||||
Extract-7Zip $zip C:
|
||||
$defaultinstallfolder = "C:\cmake-" + $version + "-windows-i386"
|
||||
$defaultinstallfolder = "C:\" + $filename
|
||||
Rename-Item $defaultinstallfolder C:\CMake
|
||||
|
||||
Add-Path "C:\CMake\bin"
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
. "$PSScriptRoot\helpers.ps1"
|
||||
|
||||
# Disable Windows Module Installer (Trusted Installer).
|
||||
# Trusted Installe enables installation, modification, and removal of Windows updates and optional components.
|
||||
# If this service is disabled, install or uninstall of Windows updates might fail for this computer.
|
||||
sc.exe config TrustedInstaller start=disabled
|
||||
Run-Executable "sc.exe" "config TrustedInstaller start=disabled"
|
||||
|
||||
@@ -2,8 +2,29 @@
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
. "$PSScriptRoot\helpers.ps1"
|
||||
|
||||
Start-Process -NoNewWindow -FilePath "C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\ngen.exe" -ArgumentList ExecuteQueuedItems -Wait
|
||||
|
||||
if( (is64bitWinHost) -eq 1 ) {
|
||||
Start-Process -NoNewWindow -FilePath "C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\ngen.exe" -ArgumentList ExecuteQueuedItems -Wait
|
||||
function ngen() {
|
||||
Param (
|
||||
[ValidateSet("Framework","Framework64","FrameworkArm64")][string]$framework
|
||||
)
|
||||
Start-Process -NoNewWindow -FilePath "C:\WINDOWS\Microsoft.NET\$framework\v4.0.30319\ngen.exe" -ArgumentList ExecuteQueuedItems -Wait
|
||||
}
|
||||
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
ngen("FrameworkArm64")
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
ngen("Framework")
|
||||
ngen("Framework64")
|
||||
Break
|
||||
}
|
||||
x86 {
|
||||
ngen("Framework")
|
||||
Break
|
||||
}
|
||||
default {
|
||||
throw "Unknown architecture $cpu_arch"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,7 +25,6 @@ Remove $download_location
|
||||
$config = Get-Content "$PSScriptRoot\..\shared\ffmpeg_config_options.txt"
|
||||
Write-Host "FFmpeg configuration $config"
|
||||
|
||||
|
||||
function InstallFfmpeg {
|
||||
Param (
|
||||
[string]$buildSystem,
|
||||
|
||||
@@ -5,16 +5,33 @@
|
||||
|
||||
# This script will install Notepad++
|
||||
|
||||
$version = "7.3"
|
||||
if (Is64BitWinHost) {
|
||||
$arch = ".x64"
|
||||
$sha1 = "E7306DF1D6E81801FB4BE0868610DB70E979B0AA"
|
||||
} else {
|
||||
$arch = ""
|
||||
$sha1 = "d4c403675a21cc381f640b92e596bae3ef958dc6"
|
||||
$version = "8.6.5"
|
||||
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
$arch = ".arm64"
|
||||
$sha1 = "eecb8a6b6ed3cb1e467d227b8b7751283c35434e"
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
$arch = ".x64"
|
||||
$sha1 = "a0bf3fb15015bc1fbcb819d9a9c61f4762f4a10f"
|
||||
Break
|
||||
}
|
||||
x86 {
|
||||
$arch = ""
|
||||
$sha1 = "ba940c6b526da1ce127f43b835b4d8c9d5c4b59c"
|
||||
Break
|
||||
}
|
||||
default {
|
||||
throw "Unknown architecture $cpu_arch"
|
||||
}
|
||||
}
|
||||
$url_cache = "\\ci-files01-hki.ci.qt.io\provisioning\windows\npp." + $version + ".Installer" + $arch + ".exe"
|
||||
$url_official = "https://notepad-plus-plus.org/repository/7.x/" + $version + "/npp." + $version + ".Installer" + $arch + ".exe"
|
||||
|
||||
$filename_exe = "npp." + $version + ".Installer" + $arch + ".exe"
|
||||
$url_cache = "https://ci-files01-hki.ci.qt.io/input/windows/" + $filename_exe
|
||||
$url_official = "https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v" + $version + "/" + $filename_exe
|
||||
$nppPackage = "C:\Windows\Temp\npp-$version.exe"
|
||||
|
||||
Download $url_official $url_cache $nppPackage
|
||||
|
||||
@@ -7,19 +7,31 @@
|
||||
$version = "v9.2.2.0p1-Beta"
|
||||
|
||||
$temp = "$env:tmp"
|
||||
if (Is64BitWinHost) {
|
||||
$zipPackage = "OpenSSH-Win64"
|
||||
$url_cache = "http://ci-files01-hki.ci.qt.io/input/windows/" + $zipPackage + ".zip"
|
||||
$url_official = "https://github.com/PowerShell/Win32-OpenSSH/releases/download/" + $version + "/" + $zipPackage
|
||||
$sha1 = "D3EA57408C0D3CF83167DF39639FED5397358B79"
|
||||
} else {
|
||||
$zipPackage = "OpenSSH-Win32"
|
||||
$url_cache = "http://ci-files01-hki.ci.qt.io/input/windows/openssh/" + $version + "/" + $zipPackage + ".zip"
|
||||
$url_official = "https://github.com/PowerShell/Win32-OpenSSH/releases/download/" + $version + "/" + $zipPackage
|
||||
$sha1 = "4642C62F72C108C411E27CE282A863791B63329B"
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
$zipPackage = "OpenSSH-ARM64"
|
||||
$sha1 = "ca3e8f44a550b7ae71c8e122acd4ed905d66feb0"
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
$zipPackage = "OpenSSH-Win64"
|
||||
$sha1 = "1397d40d789ae0911b3cc818b9dcd9321fed529b"
|
||||
Break
|
||||
}
|
||||
x86 {
|
||||
$zipPackage = "OpenSSH-Win32"
|
||||
$sha1 = "4642C62F72C108C411E27CE282A863791B63329B"
|
||||
Break
|
||||
}
|
||||
default {
|
||||
throw "Unknown architecture $cpu_arch"
|
||||
}
|
||||
}
|
||||
|
||||
Write-Host "Fetching $zipPackage $version..."
|
||||
$url_cache = "http://ci-files01-hki.ci.qt.io/input/windows/openssh/" + $version + "/" + $zipPackage + ".zip"
|
||||
$url_official = "https://github.com/PowerShell/Win32-OpenSSH/releases/download/" + $version + "/" + $zipPackage + ".zip"
|
||||
Download $url_official $url_cache "$temp\$zipPackage"
|
||||
Verify-Checksum "$temp\$zipPackage" $sha1
|
||||
|
||||
|
||||
@@ -8,12 +8,26 @@
|
||||
$version = "23.01"
|
||||
$nonDottedVersion = "2301"
|
||||
|
||||
if (Is64BitWinHost) {
|
||||
$arch = "-x64"
|
||||
$sha1 = "7DF28D340D7084647921CC25A8C2068BB192BDBB"
|
||||
} else {
|
||||
$arch = ""
|
||||
$sha1 = "D5D00E6EA8B8E68CE7A704FD478DC950E543C25C"
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
$arch = "-arm64"
|
||||
$sha1 = "be65c2ea6119c04945c66b13413892f2bb03d9a7"
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
$arch = "-x64"
|
||||
$sha1 = "7DF28D340D7084647921CC25A8C2068BB192BDBB"
|
||||
Break
|
||||
}
|
||||
x86 {
|
||||
$arch = ""
|
||||
$sha1 = "D5D00E6EA8B8E68CE7A704FD478DC950E543C25C"
|
||||
Break
|
||||
}
|
||||
default {
|
||||
throw "Unknown architecture $cpu_arch"
|
||||
}
|
||||
}
|
||||
|
||||
$url_cache = "https://ci-files01-hki.ci.qt.io/input/windows/7z" + $nonDottedVersion + $arch + ".exe"
|
||||
|
||||
@@ -7,28 +7,53 @@
|
||||
# Install a specific version of Telegraf
|
||||
# https://github.com/influxdata/telegraf/releases
|
||||
|
||||
$version = "1.12.6"
|
||||
$version = "1.12.6" # TODO: ARM is not supported in this version
|
||||
$has_telegraf_ver = $false
|
||||
|
||||
if (Is64BitWinHost) {
|
||||
$arch = "amd64"
|
||||
$sha256 = "5d025d85070e8c180c443580afa8a27421a7bbcf14b5044894e9f3298d0ce97a"
|
||||
} else {
|
||||
$arch = "i386"
|
||||
$sha256 = "5178a0bdaab448c2ef965b0e36f835849cea731ccd87c4a4527f0f05fbbdf271"
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
$arch = "arm64"
|
||||
$sha256 = "5925642aad9a35886b172050203287cf33078313f543021781885ed94d9cbcff"
|
||||
$version = "1.29.4" # TODO: ARM needs this, update this to all
|
||||
$has_telegraf_ver = $true
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
$arch = "amd64"
|
||||
$sha256 = "5d025d85070e8c180c443580afa8a27421a7bbcf14b5044894e9f3298d0ce97a"
|
||||
Break
|
||||
}
|
||||
x86 {
|
||||
$arch = "i386"
|
||||
$sha256 = "5178a0bdaab448c2ef965b0e36f835849cea731ccd87c4a4527f0f05fbbdf271"
|
||||
Break
|
||||
}
|
||||
default {
|
||||
throw "Unknown architecture $cpu_arch"
|
||||
}
|
||||
}
|
||||
|
||||
$filename = "telegraf-" + $version + "_windows_" + $arch + ".zip"
|
||||
$telegraf_ver = "telegraf-" + $version
|
||||
$filename_zip = $telegraf_ver + "_windows_" + $arch + ".zip"
|
||||
|
||||
$url_cache = "http://ci-files01-hki.ci.qt.io/input/telegraf/" + $filename
|
||||
$url_official = "https://dl.influxdata.com/telegraf/releases/" + $filename
|
||||
$tempfile = "C:\Windows\Temp\" + $filename
|
||||
$url_cache = "http://ci-files01-hki.ci.qt.io/input/telegraf/" + $filename_zip
|
||||
$url_official = "https://dl.influxdata.com/telegraf/releases/" + $filename_zip
|
||||
$tempfile = "C:\Windows\Temp\" + $filename_zip
|
||||
|
||||
Write-Host "Fetching Telegraf $version..."
|
||||
Download $url_official $url_cache $tempfile
|
||||
Verify-Checksum $tempfile $sha256 sha256
|
||||
|
||||
Write-Host "Installing telegraf.exe under C:\Utils\telegraf"
|
||||
Extract-7Zip $tempfile C:\Utils "telegraf"
|
||||
|
||||
if ($has_telegraf_ver -eq $true) {
|
||||
Extract-7Zip $tempfile C:\Utils
|
||||
Rename-Item "C:\Utils\$telegraf_ver" "C:\Utils\telegraf"
|
||||
} else {
|
||||
Extract-7Zip $tempfile C:\Utils "telegraf"
|
||||
}
|
||||
|
||||
Copy-Item "$PSScriptRoot\..\..\common\windows\telegraf-coin.conf" C:\telegraf-coin.conf
|
||||
|
||||
. "$PSScriptRoot\telegraf_password.ps1"
|
||||
|
||||
@@ -1,17 +1,43 @@
|
||||
. "$PSScriptRoot\helpers.ps1"
|
||||
|
||||
$zip = Get-DownloadLocation "ninja-1.10.2-win-x86.zip"
|
||||
|
||||
Download http://master.qt.io/development_releases/prebuilt/ninja/v1.10.2/ninja-win-x86.zip \\ci-files01-hki.ci.qt.io\provisioning\ninja\ninja-1.10.2-win-really-x86.zip $zip
|
||||
Verify-Checksum $zip "1a22ee9269df8ed69c4600d7ee4ccd8841bb99ca"
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
$arch = "arm64"
|
||||
$version = "1.12.0"
|
||||
$longPathFixed = $true # fixed https://github.com/ninja-build/ninja/pull/2225 in 1.12.0
|
||||
$zip = Get-DownloadLocation "ninja-$version-win-$arch.zip"
|
||||
$internalUrl = "https://ci-files01-hki.ci.qt.io/input/ninja/v$version/ninja-win$arch.zip"
|
||||
$externalUrl = "https://github.com/ninja-build/ninja/releases/download/v$version/ninja-win$arch.zip"
|
||||
$sha1 = "51bf1bac149ae1e3d1572fa9fa87d6431dbddc8b"
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
$arch = "amd64"
|
||||
$version = "1.10.2"
|
||||
$longPathFixed = $false
|
||||
$zip = Get-DownloadLocation "ninja-$version-win-x86.zip"
|
||||
# TODO: Fix this QTQAINFRA-6296
|
||||
$internalUrl = "http://master.qt.io/development_releases/prebuilt/ninja/v$version/ninja-win-x86.zip"
|
||||
$externalUrl = "\\ci-files01-hki.ci.qt.io\provisioning\ninja\ninja-$version-win-really-x86.zip"
|
||||
$sha1 = "1a22ee9269df8ed69c4600d7ee4ccd8841bb99ca"
|
||||
Break
|
||||
}
|
||||
default {
|
||||
throw "Unknown architecture $cpu_arch"
|
||||
}
|
||||
}
|
||||
|
||||
Download $internalUrl $externalUrl $zip
|
||||
Verify-Checksum $zip $sha1
|
||||
Extract-7Zip $zip C:\Utils\Ninja
|
||||
Remove "$zip"
|
||||
|
||||
Add-Path "C:\Utils\Ninja"
|
||||
|
||||
Write-Output "Ninja = 1.10.2" >> ~/versions.txt
|
||||
Write-Output "Ninja ($arch) = $version" >> ~/versions.txt
|
||||
|
||||
if ( -Not $longPathFixed ) {
|
||||
|
||||
$manifest = @"
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
@@ -33,3 +59,5 @@ Invoke-MtCommand "C:\Program Files (x86)\Microsoft Visual Studio\2019\Profession
|
||||
} else {
|
||||
Invoke-MtCommand "C:\Program Files (x86)\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvarsall.bat" amd64 $manifest "C:\Utils\Ninja\ninja.exe"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -7,12 +7,27 @@
|
||||
# Needed by QtWebengine
|
||||
|
||||
$version = "20.7.0"
|
||||
if (Is64BitWinHost) {
|
||||
$arch = "x64"
|
||||
$sha256 = "b3e5cbf8e247c75f9ddd235d49cfe40f25dde65bdd0eec4cefbca2805d80376b"
|
||||
} else {
|
||||
$arch = "x86"
|
||||
$sha256 = "d6a3c63a5ae71374c144a33c418ab96be497b08df0e9f51861a78127db03aeb5"
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
$arch = "arm64"
|
||||
$sha256 = "ab4b990c2c1d4a55d565813e7a2f71669dc4d1005faa47185d30bde4416975ab"
|
||||
$version = "20.12.2" # TODO: ARM starts with newer, LTS
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
$arch = "x64"
|
||||
$sha256 = "b3e5cbf8e247c75f9ddd235d49cfe40f25dde65bdd0eec4cefbca2805d80376b"
|
||||
Break
|
||||
}
|
||||
x86 {
|
||||
$arch = "x86"
|
||||
$sha256 = "d6a3c63a5ae71374c144a33c418ab96be497b08df0e9f51861a78127db03aeb5"
|
||||
Break
|
||||
}
|
||||
default {
|
||||
throw "Unknown architecture $cpu_arch"
|
||||
}
|
||||
}
|
||||
|
||||
$package = "C:\Windows\temp\nodejs-$version.7z"
|
||||
|
||||
@@ -35,10 +35,29 @@ Verify-Checksum $zip_package $sha1
|
||||
Extract-7Zip $zip_package C:\
|
||||
Remove $zip_package
|
||||
|
||||
Set-EnvironmentVariable "OPENSSL_ROOT_DIR_x64_arm64" "$installFolder"
|
||||
Set-EnvironmentVariable "OPENSSL_CONF_x64_arm64" "$installFolder\bin\openssl.cfg"
|
||||
Set-EnvironmentVariable "OPENSSL_INCLUDE_x64_arm64" "$installFolder\include"
|
||||
Set-EnvironmentVariable "OPENSSL_LIB_x64_arm64" "$installFolder\lib"
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
# For native arm64
|
||||
Set-EnvironmentVariable "OPENSSL_ROOT_DIR_arm64" "$installFolder"
|
||||
Set-EnvironmentVariable "OPENSSL_CONF_arm64" "$installFolder\bin\openssl.cfg"
|
||||
Set-EnvironmentVariable "OPENSSL_INCLUDE_arm64" "$installFolder\include"
|
||||
Set-EnvironmentVariable "OPENSSL_LIB_arm64" "$installFolder\lib"
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
# For cross-compiling x64_arm64
|
||||
Set-EnvironmentVariable "OPENSSL_ROOT_DIR_x64_arm64" "$installFolder"
|
||||
Set-EnvironmentVariable "OPENSSL_CONF_x64_arm64" "$installFolder\bin\openssl.cfg"
|
||||
Set-EnvironmentVariable "OPENSSL_INCLUDE_x64_arm64" "$installFolder\include"
|
||||
Set-EnvironmentVariable "OPENSSL_LIB_x64_arm64" "$installFolder\lib"
|
||||
}
|
||||
default {
|
||||
throw "Unknown architecture $cpu_arch"
|
||||
}
|
||||
}
|
||||
|
||||
Prepend-Path "$installFolder\bin"
|
||||
|
||||
# Store version information to ~/versions.txt, which is used to print version information to provision log.
|
||||
Write-Output "OpenSSL ARM= $version" >> ~/versions.txt
|
||||
|
||||
@@ -16,13 +16,26 @@ param(
|
||||
$package = "C:\Windows\temp\python-$version.exe"
|
||||
|
||||
# check bit version
|
||||
if ( $archVer -eq 64 ) {
|
||||
Write-Host "Installing 64 bit Python"
|
||||
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version-amd64.exe"
|
||||
$internalUrl = "http://ci-files01-hki.ci.qt.io/input/windows/python-$version-amd64.exe"
|
||||
} else {
|
||||
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version.exe"
|
||||
$internalUrl = "http://ci-files01-hki.ci.qt.io/input/windows/python-$version.exe"
|
||||
$cpu_arch = Get-CpuArchitecture
|
||||
Write-Host "Installing $cpu_arch Python"
|
||||
switch ($cpu_arch) {
|
||||
arm64 {
|
||||
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version-arm64.exe"
|
||||
$internalUrl = "http://ci-files01-hki.ci.qt.io/input/windows/python-$version-arm64.exe"
|
||||
Break
|
||||
}
|
||||
x64 {
|
||||
if ($archVer -eq "64") {
|
||||
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version-amd64.exe"
|
||||
$internalUrl = "http://ci-files01-hki.ci.qt.io/input/windows/python-$version-amd64.exe"
|
||||
} else {
|
||||
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version.exe"
|
||||
$internalUrl = "http://ci-files01-hki.ci.qt.io/input/windows/python-$version.exe"
|
||||
}
|
||||
}
|
||||
default {
|
||||
throw "Unknown architecture $cpu_arch"
|
||||
}
|
||||
}
|
||||
|
||||
Write-Host "Fetching from URL..."
|
||||
|
||||
Reference in New Issue
Block a user