From d48682bcdf9d6a959277ff2d2456e2cd6c276c9f Mon Sep 17 00:00:00 2001 From: Tero Heikkinen Date: Wed, 2 Jul 2025 12:14:22 +0300 Subject: [PATCH] Windows ARM: Enable OpenGL for WoA 11 23h2 OpenCL, OpenGL, and Vulkan Compatibility pack has been installed to WoA 11 23h2 Tier1 images to support OpenGL usage with these modules: - QtBase - QtGui - QtWidgets - QtDeclarative - QtQuick - Qt3D Enabling OpenGL by removing tags: -no-opengl -no-feature-run-opengl-tests Introduce new cross-compile build target for WoA 11 23h2 - windows-11_24H2-msvc2022-arm64-23H2 - Which has OpenGL enabled - Should not be used with WoA 11 22h2 as it doesn't have OpenGL New build will be used only for WoA 11 23h2 tests - windows-11-x86_64-arm64-tests-23H2 - Which has OpenGL tests enabled Names for these build and test targets will be renamed later when WoA 11 23h2 replaces WoA 11 22h2 by removing '-23H2' suffix from names. Task-number: QTQAINFRA-6973 Task-number: QTQAINFRA-6109 Task-number: QTBUG-126030 Pick-to: 6.10 6.9 6.9.2 Change-Id: Ifa29d93d996ac4884a86835328170d857bf91f33 Reviewed-by: Jani Heikkinen Reviewed-by: Oliver Wolff Reviewed-by: Artem Dyomin --- coin/platform_configs/cmake_platforms.yaml | 28 ++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/coin/platform_configs/cmake_platforms.yaml b/coin/platform_configs/cmake_platforms.yaml index 66e5de9a..18be8613 100644 --- a/coin/platform_configs/cmake_platforms.yaml +++ b/coin/platform_configs/cmake_platforms.yaml @@ -203,8 +203,8 @@ Configurations: Id: 'windows-11_23h2-arm64-msvc2022' Template: 'qtci-windows-11_23H2-aarch64-53' Compiler: 'MSVC2022' - Features: ['DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure'] - Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib -no-opengl -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer' + Features: ['Packaging', 'DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure'] + Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer' Environment variables: [ 'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_arm64}}\..', 'NON_QTBASE_CMAKE_ARGS= -DFEATURE_clangcpp=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC_ARM64}} -DQT_DEPLOY_FFMPEG=TRUE', @@ -234,6 +234,26 @@ Configurations: 'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}', 'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}', ] +- + Id: 'windows-11_24H2-msvc2022-arm64-23H2' + Template: 'qtci-windows-11_24H2-x86_64-71' + Compiler: 'MSVC2022' + Target arch: 'arm64' + Features: ['Sccache', 'Packaging', 'DoNotRunTests', 'TargetBuildOnly', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM'] + Platform dependency: 'windows-10_22h2-mingw13' + Environment variables: [ + 'Path={{.Env.MINGW_PATH}}\bin;{{.Env.Path}}', + 'TARGET_CONFIGURE_ARGS=-debug-and-release -force-debug-info -platform win32-arm64-msvc -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer', + 'TARGET_CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ROOT_DIR_x64_arm64}}', + 'NON_QTBASE_TARGET_CMAKE_ARGS=-DFEATURE_native_grpc=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR_MSVC_ARM64}} -DQT_DEPLOY_FFMPEG=TRUE', + 'OPENSSL_CONF_x64={{.Env.OPENSSL_CONF_x64_arm64}}', + 'OPENSSL_INCLUDE_x64={{.Env.OPENSSL_INCLUDE_x64_arm64}}', + 'OPENSSL_LIB_x64={{.Env.OPENSSL_LIB_x64_arm64}}', + 'VCPKG_HOST_TRIPLET=x64-windows-qt', + 'VCPKG_TARGET_TRIPLET=arm64-windows-qt', + 'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}', + 'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}', + ] - Id: 'windows-11-x86_64-arm64-tests' Template: 'qtci-windows-11_22H2-aarch64-55' @@ -246,8 +266,8 @@ Configurations: Template: 'qtci-windows-11_23H2-aarch64-53' Compiler: 'MSVC2022' Features: ['TestOnly', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure'] - Configure arguments: '-no-opengl -cross-compiled' - Platform dependency: 'windows-11_24H2-msvc2022-arm64' + Configure arguments: '-cross-compiled' + Platform dependency: 'windows-11_24H2-msvc2022-arm64-23H2' - Id: 'windows-11_24H2-msvc2022-developer-build' Template: 'qtci-windows-11_24H2-x86_64-71'