mirror of
git://code.qt.io/qt/qt5.git
synced 2026-02-01 19:36:04 +08:00
Add webview2 plugin to windows 10 node in the CI
Add a script to download windows app sdk and webview2 to be used for CI
This script downloads NUGET, then tries to download Windows App SDK,
WebView2 and CppWinRT libraries and sets appropriate environment paths
to be used later by webview2 plugin.
Task-number: QTBUG-128447
Task-number: QTBUG-75747
Change-Id: I1b7ff29b1870d0445034590d01caa503c9e3ae0f
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit e95025936a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
committed by
Michal Klocek
parent
e89a978ef6
commit
24053c7dce
@@ -132,6 +132,7 @@ Configurations:
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC}} -DQT_DEPLOY_FFMPEG=TRUE -DFEATURE_clangcpp=OFF -DINPUT_headersclean=ON',
|
||||
'LLVM_INSTALL_DIR={{.Env.LLVM_INSTALL_DIR_msvc}}',
|
||||
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
|
||||
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_x64}}',
|
||||
]
|
||||
-
|
||||
Id: 'windows-11_24H2-msvc2022'
|
||||
|
||||
49
coin/provisioning/common/windows/winappsdk.ps1
Normal file
49
coin/provisioning/common/windows/winappsdk.ps1
Normal file
@@ -0,0 +1,49 @@
|
||||
. "$PSScriptRoot\helpers.ps1"
|
||||
|
||||
# This script installs Windows App SDK
|
||||
|
||||
$nugetPackage = "nuget.exe"
|
||||
$packageRoot = "C:\Utils\WindowsAppSdk\"
|
||||
|
||||
$cachedUrl = "\\ci-files01-hki.ci.qt.io\provisioning\windows\nuget\$nugetPackage"
|
||||
$officialUrl = "https://dist.nuget.org/win-x86-commandline/v6.11.0/nuget.exe"
|
||||
$sdkChecksumSha1 = "5443887cfb5283da5021388d146ebb5febdc82e9"
|
||||
$package_path = "$packageRoot\\$nugetPackage"
|
||||
|
||||
New-Item -ItemType Directory -Path "$packageRoot"
|
||||
Download $officialUrl $cachedUrl $package_path
|
||||
Verify-Checksum $package_path $sdkChecksumSha1 sha1
|
||||
Write-Host "Installing Nuget"
|
||||
Run-Executable "$package_path" "install Microsoft.WindowsAppSDK -OutputDirectory $packageRoot"
|
||||
|
||||
if ([System.Environment]::Is64BitProcess) {
|
||||
$cppWinRt_path = "C:\Program Files*\Windows Kits\*\bin\*\x64\cppwinrt.exe"
|
||||
} else {
|
||||
$cppWinRt_path = "C:\Program Files*\Windows Kits\*\bin\*\x86\cppwinrt.exe"
|
||||
}
|
||||
|
||||
if (Resolve-Path -Path $cppWinRt_path) {
|
||||
$cppWinRt_path = $(Resolve-Path -Path $cppWinRt_path).Path
|
||||
}
|
||||
else {
|
||||
Run-Executable "$package_path" "install Microsoft.Windows.CppWinRT -OutputDirectory $packageRoot"
|
||||
$cppWinRt_path = $(Resolve-Path -Path "$packageRoot\\Microsoft.Windows.CppWinRT.*\\bin\\cppwinrt.exe").Path
|
||||
}
|
||||
|
||||
$winAppSDK_path = $(Resolve-Path -Path "$packageRoot\Microsoft.WindowsAppSDK.*").Path
|
||||
$webview2_path = $(Resolve-Path -Path "$packageRoot\Microsoft.Web.WebView*").Path
|
||||
|
||||
Write-Output "CppWinRT Path = $cppWinRt_path"
|
||||
Write-Output "WindowsAppSdk Path = $winAppSDK_path"
|
||||
Write-Output "WebView2 Path = $webview2_path"
|
||||
|
||||
if ([System.Environment]::Is64BitProcess) {
|
||||
Set-EnvironmentVariable "WIN_APP_SDK_ROOT_x64" "$winAppSDK_path"
|
||||
Set-EnvironmentVariable "WEBVIEW2_SDK_ROOT_x64" "$webview2_path"
|
||||
Set-EnvironmentVariable "CPP_WIN_RT_PATH_x64" "$cppWinRt_path"
|
||||
} else {
|
||||
Set-EnvironmentVariable "WIN_APP_SDK_ROOT_x86" "$winAppSDK_path"
|
||||
Set-EnvironmentVariable "WEBVIEW2_SDK_ROOT_x86" "$webview2_path"
|
||||
Set-EnvironmentVariable "CPP_WIN_RT_PATH_x86" "$cppWinRt_path"
|
||||
}
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
. "$PSScriptRoot\..\common\windows\winappsdk.ps1"
|
||||
Reference in New Issue
Block a user