summaryrefslogtreecommitdiffstats
path: root/coin
diff options
context:
space:
mode:
Diffstat (limited to 'coin')
-rw-r--r--coin/instructions/coin_module_build_template_v2.yaml19
-rw-r--r--coin/instructions/coin_qtbase_build_template_v2.yaml15
-rw-r--r--coin/instructions/prepare_building_env.yaml24
3 files changed, 53 insertions, 5 deletions
diff --git a/coin/instructions/coin_module_build_template_v2.yaml b/coin/instructions/coin_module_build_template_v2.yaml
index 731f19c648..9240842bb0 100644
--- a/coin/instructions/coin_module_build_template_v2.yaml
+++ b/coin/instructions/coin_module_build_template_v2.yaml
@@ -21,6 +21,9 @@ instructions:
- condition: property
property: target.osVersion
not_in_values: [QEMU, WebAssembly]
+ - condition: property
+ property: features
+ not_contains_value: "TargetBuildOnly"
- type: Group
instructions:
- !include "{{qt/qtbase}}/cmake_cross_compilation_module_build_instructions.yaml"
@@ -33,6 +36,16 @@ instructions:
# We don't currently build tests for Android other than qtbase repo
in_values: [QEMU]
enable_if:
- condition: property
- property: target.osVersion
- in_values: [IOS_ANY, Android_ANY, QEMU, QNX_710, WebAssembly]
+ condition: or
+ conditions:
+ - condition: property
+ property: target.osVersion
+ in_values: [IOS_ANY, Android_ANY, QEMU, QNX_710, WebAssembly]
+ - condition: and
+ conditions:
+ - condition: property
+ property: host.compiler
+ equals_value: MSVC2019
+ - condition: property
+ property: target.arch
+ equals_value: ARM64
diff --git a/coin/instructions/coin_qtbase_build_template_v2.yaml b/coin/instructions/coin_qtbase_build_template_v2.yaml
index 3f6c09524f..1df85b6874 100644
--- a/coin/instructions/coin_qtbase_build_template_v2.yaml
+++ b/coin/instructions/coin_qtbase_build_template_v2.yaml
@@ -14,6 +14,9 @@ instructions:
- condition: property
property: target.osVersion
not_in_values: [QEMU, WebAssembly]
+ - condition: property
+ property: features
+ not_contains_value: "TargetBuildOnly"
- type: Group
instructions:
- !include "{{qt/qtbase}}/cmake_cross_compilation_qtbase_build_instructions.yaml"
@@ -25,6 +28,16 @@ instructions:
property: target.osVersion
in_values: [Android_ANY, QEMU]
enable_if:
- condition: property
+ condition: or
+ conditions:
+ - condition: property
property: target.osVersion
in_values: [IOS_ANY, Android_ANY, QEMU, QNX_710, WebAssembly]
+ - condition: and
+ conditions:
+ - condition: property
+ property: host.compiler
+ equals_value: MSVC2019
+ - condition: property
+ property: target.arch
+ equals_value: ARM64
diff --git a/coin/instructions/prepare_building_env.yaml b/coin/instructions/prepare_building_env.yaml
index e389b6c1db..22669d6e50 100644
--- a/coin/instructions/prepare_building_env.yaml
+++ b/coin/instructions/prepare_building_env.yaml
@@ -94,6 +94,13 @@ instructions:
property: host.arch
equals_property: X86_64
- type: EnvironmentVariable
+ variableName: TARGET_ARCHITECTURE
+ variableValue: x64_arm64
+ enable_if:
+ condition: property
+ property: target.arch
+ equals_value: ARM64
+ - type: EnvironmentVariable
# HACK. Overwrite TARGET_ARCHITECTURE as we do not use standard MSVC cross
# compilation targets here. The target architecture will be detected by Qt.
variableName: TARGET_ARCHITECTURE
@@ -259,6 +266,22 @@ instructions:
property: target.osVersion
equals_value: QEMU
+ # Windows on Arm, cross-compilation with MSVC
+ - type: Group
+ enable_if:
+ condition: and
+ conditions:
+ - condition: property
+ property: host.compiler
+ equals_value: MSVC2019
+ - condition: property
+ property: target.arch
+ equals_value: ARM64
+ instructions:
+ - type: EnvironmentVariable
+ variableName: TARGET_ENV_PREFIX
+ variableValue: "c:\\users\\qt\\prefix.bat"
+
# QNX variables
- type: Group
enable_if:
@@ -292,4 +315,3 @@ instructions:
property: host.os
equals_value: Linux
-