Build minimal subset of tests for Android multi-ABI Qt builds

Add an option to limit the number of tests for building and testing
Android multi-ABI configurations in CI. Currently only Core tests
supposed to run.

Change-Id: Ibb8a41d60d108259ef2675ec54bde2482f87c8b2
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
This commit is contained in:
Alexey Edelev 2022-06-21 15:32:00 +02:00
parent aa69457533
commit 5fc8a377ce
5 changed files with 22 additions and 1 deletions

View File

@ -667,7 +667,7 @@ macro(qt_build_tests)
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/auto/CMakeLists.txt") if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/auto/CMakeLists.txt")
add_subdirectory(auto) add_subdirectory(auto)
endif() endif()
if(NOT QT_BUILD_MINIMAL_STATIC_TESTS) if(NOT QT_BUILD_MINIMAL_STATIC_TESTS AND NOT QT_BUILD_MINIMAL_ANDROID_MULTI_ABI_TESTS)
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/baseline/CMakeLists.txt") if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/baseline/CMakeLists.txt")
add_subdirectory(baseline) add_subdirectory(baseline)
endif() endif()

View File

@ -84,6 +84,8 @@ set(QT_BUILD_BENCHMARKS @QT_BUILD_BENCHMARKS@ CACHE BOOL "Build Qt Benchmarks")
set(QT_BUILD_MANUAL_TESTS @QT_BUILD_MANUAL_TESTS@ CACHE BOOL "Build Qt manual tests") set(QT_BUILD_MANUAL_TESTS @QT_BUILD_MANUAL_TESTS@ CACHE BOOL "Build Qt manual tests")
set(QT_BUILD_MINIMAL_STATIC_TESTS @QT_BUILD_MINIMAL_STATIC_TESTS@ CACHE BOOL set(QT_BUILD_MINIMAL_STATIC_TESTS @QT_BUILD_MINIMAL_STATIC_TESTS@ CACHE BOOL
"Build minimal subset of tests for static Qt builds") "Build minimal subset of tests for static Qt builds")
set(QT_BUILD_MINIMAL_ANDROID_MULTI_ABI_TESTS @QT_BUILD_MINIMAL_ANDROID_MULTI_ABI_TESTS@ CACHE BOOL
"Build minimal subset of tests for Android multi-ABI Qt builds")
set(QT_BUILD_TESTS_BY_DEFAULT @QT_BUILD_TESTS_BY_DEFAULT@ CACHE BOOL set(QT_BUILD_TESTS_BY_DEFAULT @QT_BUILD_TESTS_BY_DEFAULT@ CACHE BOOL
"Should tests be built as part of the default 'all' target.") "Should tests be built as part of the default 'all' target.")

View File

@ -253,6 +253,8 @@ unset(_qt_build_examples_as_external)
option(QT_BUILD_MANUAL_TESTS "Build Qt manual tests" OFF) option(QT_BUILD_MANUAL_TESTS "Build Qt manual tests" OFF)
option(QT_BUILD_MINIMAL_STATIC_TESTS "Build minimal subset of tests for static Qt builds" OFF) option(QT_BUILD_MINIMAL_STATIC_TESTS "Build minimal subset of tests for static Qt builds" OFF)
option(QT_BUILD_MINIMAL_ANDROID_MULTI_ABI_TESTS
"Build minimal subset of tests for Android multi-ABI Qt builds" OFF)
## Path used to find host tools, either when cross-compiling or just when using the tools from ## Path used to find host tools, either when cross-compiling or just when using the tools from
## a different host build. ## a different host build.

View File

@ -48,6 +48,15 @@ instructions:
property: features property: features
contains_value: "MinimalStaticTests" contains_value: "MinimalStaticTests"
# Inform CMake to build just a minimal set of tests for Android multi-ABI Qt builds.
- type: AppendToEnvironmentVariable
variableName: COIN_CMAKE_ARGS
variableValue: " -DQT_BUILD_MINIMAL_ANDROID_MULTI_ABI_TESTS=ON"
enable_if:
condition: property
property: features
contains_value: "MinimalAndroidMultiABITests"
- !include "{{qt/qtbase}}/call_cmake_for_standalone_tests.yaml" - !include "{{qt/qtbase}}/call_cmake_for_standalone_tests.yaml"
- type: ExecuteCommand - type: ExecuteCommand
command: "{{.Env.TESTS_ENV_PREFIX}} cmake --build . --parallel -v" command: "{{.Env.TESTS_ENV_PREFIX}} cmake --build . --parallel -v"

View File

@ -22,6 +22,14 @@ if(UIKIT)
return() return()
endif() endif()
# Limit set of tests to run for Android multi-ABI Qt builds.
if(QT_BUILD_MINIMAL_ANDROID_MULTI_ABI_TESTS)
add_subdirectory(corelib/kernel/qmath)
add_subdirectory(widgets/effects/qpixmapfilter)
add_subdirectory(corelib/platform)
return()
endif()
# Only configure a single auto test for wasm for now # Only configure a single auto test for wasm for now
# Since the linking step at this point is prohibitively long (static linking) # Since the linking step at this point is prohibitively long (static linking)
if(WASM) if(WASM)