qt5base-lts/coin/instructions/coin_qtbase_build_template_v2.yaml
Alexey Edelev 7b9bb698b9 Add support of Android multi-ABI builds
This patchset adds the rules to utilize build artifacts from multiple
android abi builds and to use them for building and running tests.
If target.arch has the value 'Multi', coin will now skip building Qt
itself, since this means that all Qt versions were build previously.
It only builds test using the pre-built Qt for Android archives and
then runs the regular Android tests using multi-ABI apks. The rules
are implemented for qtbase only.

Change-Id: I265c70c45caa2155c75cd15c7e3a4f6a863252b8
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2022-11-04 18:39:03 +01:00

56 lines
1.9 KiB
YAML

type: Group
instructions:
- !include "{{qt/qtbase}}/prepare_building_env.yaml"
- type: Group
instructions:
- !include "{{qt/qtbase}}/cmake_qtbase_build_instructions.yaml"
- !include "{{qt/qtbase}}/cmake_build_and_upload_test_artifacts_host.yaml"
enable_if:
condition: and
conditions:
- condition: property
property: host.os
equals_property: target.os
- condition: property
property: target.osVersion
not_in_values: [QEMU, WebAssembly, INTEGRITY]
- condition: property
property: features
not_contains_value: "TargetBuildOnly"
- type: Group
instructions:
- type: Group
instructions:
- !include "{{qt/qtbase}}/cmake_cross_compilation_qtbase_build_instructions.yaml"
disable_if:
condition: and
conditions:
- condition: property
property: target.osVersion
equals_value: Android_ANY
- condition: property
property: target.arch
equals_value: Multi
- !include "{{qt/qtbase}}/prepare_android_multi_abi_env.yaml"
- type: Group
instructions:
- !include "{{qt/qtbase}}/cmake_build_and_upload_test_artifacts_target.yaml"
enable_if:
condition: property
property: target.osVersion
in_values: [Android_ANY, QEMU, IOS_ANY, QNX_710, WebAssembly, INTEGRITY]
enable_if:
condition: or
conditions:
- condition: property
property: target.osVersion
in_values: [Android_ANY, QEMU, IOS_ANY, QNX_710, WebAssembly, INTEGRITY]
- condition: and
conditions:
- condition: property
property: host.compiler
equals_value: MSVC2019
- condition: property
property: target.arch
equals_value: ARM64