diff options
Diffstat (limited to 'coin/instructions/prepare_building_env.yaml')
-rw-r--r-- | coin/instructions/prepare_building_env.yaml | 160 |
1 files changed, 157 insertions, 3 deletions
diff --git a/coin/instructions/prepare_building_env.yaml b/coin/instructions/prepare_building_env.yaml index e1ff30ea70..a3ac5c3f0b 100644 --- a/coin/instructions/prepare_building_env.yaml +++ b/coin/instructions/prepare_building_env.yaml @@ -26,6 +26,15 @@ instructions: property: host.os equals_value: Windows + # Enable Axivion_analysis for Qt + - type: EnvironmentVariable + variableName: AXIVION_ANALYSIS + variableValue: "1" + enable_if: + condition: property + property: features + contains_value: Axivion + # Export ICC specific env. variables - type: Group @@ -124,9 +133,26 @@ instructions: variableName: TARGET_ARCHITECTURE variableValue: x64_arm64 enable_if: - condition: property - property: target.arch - equals_value: ARM64 + condition: and + conditions: + - condition: property + property: target.arch + equals_value: ARM64 + - condition: property + property: host.arch + equals_value: X86_64 + - type: EnvironmentVariable + variableName: TARGET_ARCHITECTURE + variableValue: arm64 + enable_if: + condition: and + conditions: + - condition: property + property: target.arch + in_values: ["AARCH64", "ARM64"] + - condition: property + property: host + equals_property: target - 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. @@ -306,6 +332,14 @@ instructions: condition: property property: target.osVersion in_values: [QEMU] + # This fixes an issue where binfmts is sometimes disabled on the test VMs + - type: ExecuteCommand + command: sudo update-binfmts --enable + userMessageOnFailure: "Failed to enable binfmts" + enable_if: + condition: property + property: target.osVersion + equals_value: QEMU # Windows on Arm, cross-compilation with MSVC - type: Group @@ -323,6 +357,17 @@ instructions: variableName: TARGET_ENV_PREFIX variableValue: "c:\\users\\qt\\prefix.bat" + # VxWorks + - type: Group + enable_if: + condition: property + property: target.osVersion + equals_value: VxWorks + instructions: + - type: EnvironmentVariable + variableName: TARGET_ENV_PREFIX + variableValue: "{{.Env.VXWORKS_HOME}}/wrenv.linux" + # QNX variables - type: Group enable_if: @@ -408,6 +453,27 @@ instructions: contains_value: WarningsAreErrors - type: Group + enable_if: + condition: property + property: features + contains_value: UseAddressSanitizer + instructions: + - type: AppendToEnvironmentVariable + variableName: COMMON_CMAKE_ARGS + variableValue: " -DFEATURE_sanitize_address=ON" + disable_if: + condition: property + property: features + contains_value: UseConfigure + - type: AppendToEnvironmentVariable + variableName: CONFIGURE_ARGS + variableValue: " -sanitize address" + enable_if: + condition: property + property: features + contains_value: UseConfigure + + - type: Group instructions: - type: AppendToEnvironmentVariable variableName: COMMON_CMAKE_ARGS @@ -418,6 +484,9 @@ instructions: - type: AppendToEnvironmentVariable variableName: COMMON_TEST_CMAKE_ARGS variableValue: " -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_MESSAGE_LOG_LEVEL=STATUS" + - type: AppendToEnvironmentVariable + variableName: COMMON_EXAMPLES_CMAKE_ARGS + variableValue: " -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_MESSAGE_LOG_LEVEL=STATUS" - type: AppendToEnvironmentVariable variableName: COMMON_TARGET_CMAKE_ARGS @@ -428,6 +497,9 @@ instructions: - type: AppendToEnvironmentVariable variableName: COMMON_TARGET_TEST_CMAKE_ARGS variableValue: " -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_MESSAGE_LOG_LEVEL=STATUS" + - type: AppendToEnvironmentVariable + variableName: COMMON_TARGET_EXAMPLES_CMAKE_ARGS + variableValue: " -DCMAKE_AUTOGEN_VERBOSE=ON -DCMAKE_MESSAGE_LOG_LEVEL=STATUS" # Sccache - type: Group @@ -441,6 +513,9 @@ instructions: - type: AppendToEnvironmentVariable variableName: COMMON_TEST_CMAKE_ARGS variableValue: " -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache" + - type: AppendToEnvironmentVariable + variableName: COMMON_EXAMPLES_CMAKE_ARGS + variableValue: " -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache" - type: AppendToEnvironmentVariable variableName: COMMON_TARGET_CMAKE_ARGS @@ -451,6 +526,9 @@ instructions: - type: AppendToEnvironmentVariable variableName: COMMON_TARGET_TEST_CMAKE_ARGS variableValue: " -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache" + - type: AppendToEnvironmentVariable + variableName: COMMON_TARGET_EXAMPLES_CMAKE_ARGS + variableValue: " -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache" enable_if: condition: property property: features @@ -458,6 +536,8 @@ instructions: # Specify a custom examples installation directory, so that the built example binaries are not # packaged into the artifact archive together with the Qt libraries. + # Also specify that during examples deployment, only a subset of examples should be deployed, to + # save time and space. - type: Group instructions: - type: AppendToEnvironmentVariable @@ -466,6 +546,24 @@ instructions: - type: AppendToEnvironmentVariable variableName: COMMON_TARGET_CMAKE_ARGS variableValue: " -DQT_INTERNAL_EXAMPLES_INSTALL_PREFIX={{unixPathSeparators .BuildDir}}/installed_examples" + - type: AppendToEnvironmentVariable + variableName: COMMON_CMAKE_ARGS + variableValue: " -DQT_DEPLOY_MINIMAL_EXAMPLES=ON" + - type: AppendToEnvironmentVariable + variableName: COMMON_TARGET_CMAKE_ARGS + variableValue: " -DQT_DEPLOY_MINIMAL_EXAMPLES=ON" + - type: Group + instructions: + - type: AppendToEnvironmentVariable + variableName: COMMON_CMAKE_ARGS + variableValue: " -DQT_INTERNAL_CI_NO_BUILD_IN_TREE_EXAMPLES=ON" + - type: AppendToEnvironmentVariable + variableName: COMMON_TARGET_CMAKE_ARGS + variableValue: " -DQT_INTERNAL_CI_NO_BUILD_IN_TREE_EXAMPLES=ON" + enable_if: + condition: property + property: features + contains_value: StandaloneExamples enable_if: # Only set the custom installation dir if examples are built. condition: or @@ -518,3 +616,59 @@ instructions: - condition: property property: host.os contains_value: Windows + + - type: EnvironmentVariable + variableName: HOST_INSTALL_DIR + variableValue: "{{$android_host_artifact_path := index .Env \"QT_CI_ARTIFACT_ID_PATH_Android-host\" }}{{index .Env $android_host_artifact_path}}/install" + enable_if: + condition: and + conditions: + - condition: property + property: target.osVersion + equals_value: Android_ANY + - condition: property + property: target.arch + equals_value: Multi + + - type: EnvironmentVariable + variableName: HOST_INSTALL_DIR + variableValue: "{{.InstallDir}}" + disable_if: + condition: and + conditions: + - condition: property + property: target.osVersion + equals_value: Android_ANY + - condition: property + property: target.arch + equals_value: Multi + + - type: EnvironmentVariable + variableName: LIBEXEC_INSTALL_DIR + variableValue: "{{.Env.HOST_INSTALL_DIR}}\\bin\\" + enable_if: + condition: property + property: host.os + equals_value: Windows + - type: EnvironmentVariable + variableName: LIBEXEC_INSTALL_DIR + variableValue: "{{.Env.HOST_INSTALL_DIR}}/libexec/" + disable_if: + condition: property + property: host.os + equals_value: Windows + + - type: EnvironmentVariable + variableName: COIN_COMMAND_OUTPUT_TIMEOUT + variableValue: "900" + disable_if: + condition: property + property: features + contains_value: UseAddressSanitizer + - type: EnvironmentVariable + variableName: COIN_COMMAND_OUTPUT_TIMEOUT + variableValue: "10800" + enable_if: + condition: property + property: features + contains_value: UseAddressSanitizer |