summaryrefslogtreecommitdiffstats
path: root/coin/instructions
diff options
context:
space:
mode:
Diffstat (limited to 'coin/instructions')
-rw-r--r--coin/instructions/call_cmake_for_standalone_examples.yaml26
-rw-r--r--coin/instructions/call_host_install.yaml4
-rw-r--r--coin/instructions/call_target_install.yaml4
-rw-r--r--coin/instructions/cmake_build_and_upload_test_artifacts.yaml11
-rw-r--r--coin/instructions/cmake_build_and_upload_test_artifacts_host.yaml11
-rw-r--r--coin/instructions/cmake_build_and_upload_test_artifacts_target.yaml11
-rw-r--r--coin/instructions/cmake_build_standalone_examples.yaml32
-rw-r--r--coin/instructions/cmake_build_standalone_examples_host.yaml16
-rw-r--r--coin/instructions/cmake_build_standalone_examples_target.yaml30
-rw-r--r--coin/instructions/cmake_cross_compilation_module_build_instructions.yaml45
-rw-r--r--coin/instructions/cmake_cross_compilation_qtbase_build_instructions.yaml45
-rw-r--r--coin/instructions/cmake_module_build_instructions.yaml4
-rw-r--r--coin/instructions/cmake_qtbase_build_instructions.yaml26
-rw-r--r--coin/instructions/cmake_regular_test_instructions.yaml19
-rw-r--r--coin/instructions/cmake_regular_test_instructions_common.yaml13
-rw-r--r--coin/instructions/cmake_regular_test_instructions_enforced.yaml4
-rw-r--r--coin/instructions/cmake_run_ctest.yaml (renamed from coin/instructions/cmake_run_ctest_enforce_exit_code.yaml)82
-rw-r--r--coin/instructions/cmake_run_ctest_ignore_exit_code.yaml20
-rw-r--r--coin/instructions/coin_module_axivion_template_v2.yaml8
-rw-r--r--coin/instructions/coin_module_build_template_v2.yaml18
-rw-r--r--coin/instructions/coin_module_test_android_start_emulator.yaml4
-rw-r--r--coin/instructions/coin_module_test_template_common.yaml1
-rw-r--r--coin/instructions/coin_module_test_template_v2.yaml3
-rw-r--r--coin/instructions/coin_module_test_template_v3.yaml2
-rw-r--r--coin/instructions/coin_qtbase_build_template_v2.yaml18
-rw-r--r--coin/instructions/debian/debian_build_module.yaml31
-rw-r--r--coin/instructions/debian/prepare_debian_env.yaml76
-rw-r--r--coin/instructions/prepare_building_env.yaml186
28 files changed, 575 insertions, 175 deletions
diff --git a/coin/instructions/call_cmake_for_standalone_examples.yaml b/coin/instructions/call_cmake_for_standalone_examples.yaml
new file mode 100644
index 0000000000..eb811cbea4
--- /dev/null
+++ b/coin/instructions/call_cmake_for_standalone_examples.yaml
@@ -0,0 +1,26 @@
+type: Group
+instructions:
+ - type: ChangeDirectory
+ directory: "{{.BuildDir}}"
+ - type: ExecuteCommand
+ command: "{{.Env.EXAMPLES_ENV_PREFIX}} {{.Env.INSTALL_DIR_FOR_EXAMPLES}}\\bin\\qt-internal-configure-examples {{.Env.COIN_CMAKE_ARGS}}"
+ executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
+ maxTimeInSeconds: 6000
+ maxTimeBetweenOutput: 1200
+ userMessageOnFailure: >
+ Failed to call configure examples.
+ enable_if:
+ condition: property
+ property: host.os
+ equals_value: Windows
+ - type: ExecuteCommand
+ command: "{{.Env.EXAMPLES_ENV_PREFIX}} {{.Env.INSTALL_DIR_FOR_EXAMPLES}}/libexec/qt-internal-configure-examples {{.Env.COIN_CMAKE_ARGS}}"
+ executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
+ maxTimeInSeconds: 6000
+ maxTimeBetweenOutput: 1200
+ userMessageOnFailure: >
+ Failed to call configure examples.
+ disable_if:
+ condition: property
+ property: host.os
+ equals_value: Windows
diff --git a/coin/instructions/call_host_install.yaml b/coin/instructions/call_host_install.yaml
index 1d2bac610e..1d923fa8f5 100644
--- a/coin/instructions/call_host_install.yaml
+++ b/coin/instructions/call_host_install.yaml
@@ -8,7 +8,7 @@ instructions:
enable_if:
condition: runtime
env_var: TESTED_MODULE_COIN
- equals_value: qtbase
+ contains_value: qtbase
userMessageOnFailure: >
Failed to install package.
- type: ExecuteCommand
@@ -19,6 +19,6 @@ instructions:
disable_if:
condition: runtime
env_var: TESTED_MODULE_COIN
- equals_value: qtbase
+ contains_value: qtbase
userMessageOnFailure: >
Failed to install package.
diff --git a/coin/instructions/call_target_install.yaml b/coin/instructions/call_target_install.yaml
index 6684ec1062..f2a7fc10ef 100644
--- a/coin/instructions/call_target_install.yaml
+++ b/coin/instructions/call_target_install.yaml
@@ -8,7 +8,7 @@ instructions:
enable_if:
condition: runtime
env_var: TESTED_MODULE_COIN
- equals_value: qtbase
+ contains_value: qtbase
userMessageOnFailure: >
Failed to install package.
- type: ExecuteCommand
@@ -19,6 +19,6 @@ instructions:
disable_if:
condition: runtime
env_var: TESTED_MODULE_COIN
- equals_value: qtbase
+ contains_value: qtbase
userMessageOnFailure: >
Failed to install package.
diff --git a/coin/instructions/cmake_build_and_upload_test_artifacts.yaml b/coin/instructions/cmake_build_and_upload_test_artifacts.yaml
index 7fa663e4d2..0a37ecc602 100644
--- a/coin/instructions/cmake_build_and_upload_test_artifacts.yaml
+++ b/coin/instructions/cmake_build_and_upload_test_artifacts.yaml
@@ -71,6 +71,11 @@ instructions:
maxTimeBetweenOutput: 1200
# INTEGRITY artifacts aren't used.
disable_if:
- condition: property
- property: target.osVersion
- equals_value: INTEGRITY
+ condition: or
+ conditions:
+ - condition: property
+ property: target.osVersion
+ equals_value: INTEGRITY
+ - condition: property
+ property: features
+ contains_value: DoNotUploadTests
diff --git a/coin/instructions/cmake_build_and_upload_test_artifacts_host.yaml b/coin/instructions/cmake_build_and_upload_test_artifacts_host.yaml
index 3592ac4270..bc16368fc2 100644
--- a/coin/instructions/cmake_build_and_upload_test_artifacts_host.yaml
+++ b/coin/instructions/cmake_build_and_upload_test_artifacts_host.yaml
@@ -13,6 +13,11 @@ instructions:
variableValue: "{{.Env.COMMON_TEST_CMAKE_ARGS}}"
- !include "{{qt/qtbase}}/cmake_build_and_upload_test_artifacts.yaml"
disable_if:
- condition: property
- property: features
- contains_value: DisableTests
+ condition: or
+ conditions:
+ - condition: property
+ property: features
+ contains_value: DisableTests
+ - condition: property
+ property: features
+ contains_value: DoNotBuildTests
diff --git a/coin/instructions/cmake_build_and_upload_test_artifacts_target.yaml b/coin/instructions/cmake_build_and_upload_test_artifacts_target.yaml
index be4db4f64e..afc20b98a9 100644
--- a/coin/instructions/cmake_build_and_upload_test_artifacts_target.yaml
+++ b/coin/instructions/cmake_build_and_upload_test_artifacts_target.yaml
@@ -34,6 +34,11 @@ instructions:
variableValue: "{{.Env.COMMON_TARGET_TEST_CMAKE_ARGS}}"
- !include "{{qt/qtbase}}/cmake_build_and_upload_test_artifacts.yaml"
disable_if:
- condition: property
- property: features
- contains_value: DisableTests
+ condition: or
+ conditions:
+ - condition: property
+ property: features
+ contains_value: DisableTests
+ - condition: property
+ property: features
+ contains_value: DoNotBuildTests
diff --git a/coin/instructions/cmake_build_standalone_examples.yaml b/coin/instructions/cmake_build_standalone_examples.yaml
new file mode 100644
index 0000000000..ecc0d3a23b
--- /dev/null
+++ b/coin/instructions/cmake_build_standalone_examples.yaml
@@ -0,0 +1,32 @@
+type: Group
+instructions:
+ - type: ChangeDirectory
+ directory: "{{.SourceDir}}"
+ - type: MakeDirectory
+ directory: "{{.SourceDir}}_standalone_examples"
+ - type: SetBuildDirectory
+ directory: "{{.SourceDir}}_standalone_examples"
+ - type: ChangeDirectory
+ directory: "{{.BuildDir}}"
+ - type: AppendToEnvironmentVariable
+ variableName: COIN_CMAKE_ARGS
+ variableValue: " -S {{.SourceDir}} -B ."
+ disable_if:
+ condition: runtime
+ env_var: COIN_CMAKE_ARGS
+ equals_value: null
+ - type: EnvironmentVariable
+ variableName: COIN_CMAKE_ARGS
+ variableValue: "-S {{.SourceDir}} -B ."
+ enable_if:
+ condition: runtime
+ env_var: COIN_CMAKE_ARGS
+ equals_value: null
+
+ - !include "{{qt/qtbase}}/call_cmake_for_standalone_examples.yaml"
+ - type: ExecuteCommand
+ command: "{{.Env.EXAMPLES_ENV_PREFIX}} cmake --build . --parallel -v"
+ maxTimeInSeconds: 6000
+ maxTimeBetweenOutput: 4800
+ userMessageOnFailure: >
+ Failed to build examples.
diff --git a/coin/instructions/cmake_build_standalone_examples_host.yaml b/coin/instructions/cmake_build_standalone_examples_host.yaml
new file mode 100644
index 0000000000..47f5ea05d3
--- /dev/null
+++ b/coin/instructions/cmake_build_standalone_examples_host.yaml
@@ -0,0 +1,16 @@
+type: Group
+instructions:
+ - type: EnvironmentVariable
+ variableName: EXAMPLES_ENV_PREFIX
+ variableValue: "{{.Env.ENV_PREFIX}}"
+ - type: EnvironmentVariable
+ variableName: INSTALL_DIR_FOR_EXAMPLES
+ variableValue: "{{.InstallDir}}"
+ - type: EnvironmentVariable
+ variableName: COIN_CMAKE_ARGS
+ variableValue: "{{.Env.COMMON_EXAMPLES_CMAKE_ARGS}}"
+ - !include "{{qt/qtbase}}/cmake_build_standalone_examples.yaml"
+enable_if:
+ condition: property
+ property: features
+ contains_value: StandaloneExamples
diff --git a/coin/instructions/cmake_build_standalone_examples_target.yaml b/coin/instructions/cmake_build_standalone_examples_target.yaml
new file mode 100644
index 0000000000..faf7300430
--- /dev/null
+++ b/coin/instructions/cmake_build_standalone_examples_target.yaml
@@ -0,0 +1,30 @@
+type: Group
+instructions:
+ - type: EnvironmentVariable
+ variableName: EXAMPLES_ENV_PREFIX
+ variableValue: "{{.Env.TARGET_ENV_PREFIX}}"
+ - type: EnvironmentVariable
+ variableName: INSTALL_DIR_FOR_EXAMPLES
+ variableValue: "{{.InstallDir}}\\target"
+ enable_if:
+ condition: property
+ property: host.os
+ equals_value: Windows
+ - type: EnvironmentVariable
+ variableName: INSTALL_DIR_FOR_EXAMPLES
+ variableValue: "{{.InstallDir}}/target"
+ # TODO: Might need android multi-abi support whenever we decide to build examples for that
+ # config. See 7b9bb698b93e747e02bf6ab8310c439867318f8e in qtbase and how the instructions
+ # were modified for multi-abi android tests.
+ disable_if:
+ condition: property
+ property: host.os
+ equals_value: Windows
+ - type: EnvironmentVariable
+ variableName: COIN_CMAKE_ARGS
+ variableValue: "{{.Env.COMMON_TARGET_EXAMPLES_CMAKE_ARGS}}"
+ - !include "{{qt/qtbase}}/cmake_build_standalone_examples.yaml"
+enable_if:
+ condition: property
+ property: features
+ contains_value: StandaloneExamples
diff --git a/coin/instructions/cmake_cross_compilation_module_build_instructions.yaml b/coin/instructions/cmake_cross_compilation_module_build_instructions.yaml
index 4541088285..a62ab0f48e 100644
--- a/coin/instructions/cmake_cross_compilation_module_build_instructions.yaml
+++ b/coin/instructions/cmake_cross_compilation_module_build_instructions.yaml
@@ -61,9 +61,14 @@ instructions:
- condition: property
property: host.os
equals_value: Windows
- - condition: property
- property: target.osVersion
- not_in_values: [WebAssembly, Android_ANY]
+ - condition: and
+ conditions:
+ - condition: property
+ property: target.os
+ not_equals_value: QNX
+ - condition: property
+ property: target.osVersion
+ not_in_values: [WebAssembly, Android_ANY]
- type: EnvironmentVariable
variableName: COIN_CMAKE_INSTALL_LIBEXEC_DIR
variableValue: "{{.InstallDir}}{{.Env.CI_PATH_SEP}}host{{.Env.CI_PATH_SEP}}bin"
@@ -73,9 +78,14 @@ instructions:
- condition: property
property: host.os
equals_value: Windows
- - condition: property
- property: target.osVersion
- not_in_values: [WebAssembly, Android_ANY]
+ - condition: and
+ conditions:
+ - condition: property
+ property: target.os
+ not_equals_value: QNX
+ - condition: property
+ property: target.osVersion
+ not_in_values: [WebAssembly, Android_ANY]
- !include "{{qt/qtbase}}/call_host_install.yaml"
- type: EnvironmentVariable
variableName: DESTDIR
@@ -123,9 +133,14 @@ instructions:
- condition: property
property: host.os
equals_value: Windows
- - condition: property
- property: target.osVersion
- not_in_values: [WebAssembly, Android_ANY]
+ - condition: and
+ conditions:
+ - condition: property
+ property: target.os
+ not_equals_value: QNX
+ - condition: property
+ property: target.osVersion
+ not_in_values: [WebAssembly, Android_ANY]
- type: EnvironmentVariable
variableName: COIN_CMAKE_INSTALL_LIBEXEC_DIR
variableValue: "{{.InstallDir}}{{.Env.CI_PATH_SEP}}target{{.Env.CI_PATH_SEP}}bin"
@@ -135,9 +150,14 @@ instructions:
- condition: property
property: host.os
equals_value: Windows
- - condition: property
- property: target.osVersion
- not_in_values: [WebAssembly, Android_ANY]
+ - condition: and
+ conditions:
+ - condition: property
+ property: target.os
+ not_equals_value: QNX
+ - condition: property
+ property: target.osVersion
+ not_in_values: [WebAssembly, Android_ANY]
- !include "{{qt/qtbase}}/call_target_install.yaml"
- type: EnvironmentVariable
variableName: DESTDIR
@@ -154,5 +174,6 @@ instructions:
- type: EnvironmentVariable
variableName: COIN_CONFIG_TYPE
variableValue: "Target"
+ - !include "{{qt/qtbase}}/cmake_build_standalone_examples_target.yaml"
- !include "{{qt/qtbase}}/qmake/get_qmake_location_target.yaml"
- !include "{{qt/qtbase}}/qmake_examples/build_qmake_examples_instructions.yaml"
diff --git a/coin/instructions/cmake_cross_compilation_qtbase_build_instructions.yaml b/coin/instructions/cmake_cross_compilation_qtbase_build_instructions.yaml
index 4a1ed61328..84dc535b61 100644
--- a/coin/instructions/cmake_cross_compilation_qtbase_build_instructions.yaml
+++ b/coin/instructions/cmake_cross_compilation_qtbase_build_instructions.yaml
@@ -47,9 +47,14 @@ instructions:
- condition: property
property: host.os
equals_value: Windows
- - condition: property
- property: target.osVersion
- not_in_values: [WebAssembly, Android_ANY]
+ - condition: and
+ conditions:
+ - condition: property
+ property: target.os
+ not_equals_value: QNX
+ - condition: property
+ property: target.osVersion
+ not_in_values: [WebAssembly, Android_ANY]
- type: EnvironmentVariable
variableName: COIN_CMAKE_BUILD_LIBEXEC_DIR
variableValue: "{{.BuildDir}}{{.Env.CI_PATH_SEP}}bin"
@@ -59,9 +64,14 @@ instructions:
- condition: property
property: host.os
equals_value: Windows
- - condition: property
- property: target.osVersion
- not_in_values: [WebAssembly, Android_ANY]
+ - condition: and
+ conditions:
+ - condition: property
+ property: target.os
+ not_equals_value: QNX
+ - condition: property
+ property: target.osVersion
+ not_in_values: [WebAssembly, Android_ANY]
- !include "{{qt/qtbase}}/call_host_install.yaml"
- type: EnvironmentVariable
variableName: DESTDIR
@@ -124,9 +134,14 @@ instructions:
- condition: property
property: host.os
equals_value: Windows
- - condition: property
- property: target.osVersion
- not_in_values: [WebAssembly, Android_ANY]
+ - condition: and
+ conditions:
+ - condition: property
+ property: target.os
+ not_equals_value: QNX
+ - condition: property
+ property: target.osVersion
+ not_in_values: [WebAssembly, Android_ANY]
- type: EnvironmentVariable
variableName: COIN_CMAKE_BUILD_LIBEXEC_DIR
variableValue: "{{.Env.COIN_CMAKE_BUILD_DIR}}{{.Env.CI_PATH_SEP}}bin"
@@ -136,9 +151,14 @@ instructions:
- condition: property
property: host.os
equals_value: Windows
- - condition: property
- property: target.osVersion
- not_in_values: [WebAssembly, Android_ANY]
+ - condition: and
+ conditions:
+ - condition: property
+ property: target.os
+ not_equals_value: QNX
+ - condition: property
+ property: target.osVersion
+ not_in_values: [WebAssembly, Android_ANY]
- !include "{{qt/qtbase}}/call_target_install.yaml"
- type: EnvironmentVariable
variableName: DESTDIR
@@ -155,5 +175,6 @@ instructions:
- type: EnvironmentVariable
variableName: COIN_CONFIG_TYPE
variableValue: "Target"
+ - !include "{{qt/qtbase}}/cmake_build_standalone_examples_target.yaml"
- !include "{{qt/qtbase}}/qmake/get_qmake_location_target.yaml"
- !include "{{qt/qtbase}}/qmake_examples/build_qmake_examples_instructions.yaml"
diff --git a/coin/instructions/cmake_module_build_instructions.yaml b/coin/instructions/cmake_module_build_instructions.yaml
index 88717ba206..262fbfe540 100644
--- a/coin/instructions/cmake_module_build_instructions.yaml
+++ b/coin/instructions/cmake_module_build_instructions.yaml
@@ -84,6 +84,9 @@ instructions:
- condition: property
property: features
contains_value: Packaging
+ - condition: property
+ property: host.arch
+ equals_value: X86_64 # Sign only on X86 until Coin has support for arm signing
directory: "{{.InstallRoot}}/{{.AgentWorkingDir}}"
maxTimeInSeconds: 1200
maxTimeBetweenOutput: 1200
@@ -95,5 +98,6 @@ instructions:
- type: EnvironmentVariable
variableName: COIN_CONFIG_TYPE
variableValue: "Host"
+ - !include "{{qt/qtbase}}/cmake_build_standalone_examples_host.yaml"
- !include "{{qt/qtbase}}/qmake/get_qmake_location_host.yaml"
- !include "{{qt/qtbase}}/qmake_examples/build_qmake_examples_instructions.yaml"
diff --git a/coin/instructions/cmake_qtbase_build_instructions.yaml b/coin/instructions/cmake_qtbase_build_instructions.yaml
index b5cd9f60b7..05c05d0bfb 100644
--- a/coin/instructions/cmake_qtbase_build_instructions.yaml
+++ b/coin/instructions/cmake_qtbase_build_instructions.yaml
@@ -41,9 +41,14 @@ instructions:
- condition: property
property: host.os
equals_value: Windows
- - condition: property
- property: target.osVersion
- not_in_values: [WebAssembly, Android_ANY]
+ - condition: and
+ conditions:
+ - condition: property
+ property: target.os
+ not_equals_value: QNX
+ - condition: property
+ property: target.osVersion
+ not_in_values: [WebAssembly, Android_ANY]
- type: EnvironmentVariable
variableName: COIN_CMAKE_BUILD_LIBEXEC_DIR
variableValue: "{{.Env.COIN_CMAKE_BUILD_DIR}}{{.Env.CI_PATH_SEP}}bin"
@@ -53,9 +58,14 @@ instructions:
- condition: property
property: host.os
equals_value: Windows
- - condition: property
- property: target.osVersion
- not_in_values: [WebAssembly, Android_ANY]
+ - condition: and
+ conditions:
+ - condition: property
+ property: target.os
+ not_equals_value: QNX
+ - condition: property
+ property: target.osVersion
+ not_in_values: [WebAssembly, Android_ANY]
- !include "{{qt/qtbase}}/call_host_install.yaml"
- type: EnvironmentVariable
variableName: DESTDIR
@@ -71,6 +81,9 @@ instructions:
- condition: property
property: features
contains_value: Packaging
+ - condition: property
+ property: host.arch
+ equals_value: X86_64 # Sign only on X86 until Coin has support for arm signing
directory: "{{.InstallRoot}}/{{.AgentWorkingDir}}"
maxTimeInSeconds: 1200
maxTimeBetweenOutput: 1200
@@ -82,5 +95,6 @@ instructions:
- type: EnvironmentVariable
variableName: COIN_CONFIG_TYPE
variableValue: "Host"
+ - !include "{{qt/qtbase}}/cmake_build_standalone_examples_host.yaml"
- !include "{{qt/qtbase}}/qmake/get_qmake_location_host.yaml"
- !include "{{qt/qtbase}}/qmake_examples/build_qmake_examples_instructions.yaml"
diff --git a/coin/instructions/cmake_regular_test_instructions.yaml b/coin/instructions/cmake_regular_test_instructions.yaml
index 5d3571c5d8..4b21c47b72 100644
--- a/coin/instructions/cmake_regular_test_instructions.yaml
+++ b/coin/instructions/cmake_regular_test_instructions.yaml
@@ -1,8 +1,15 @@
type: Group
instructions:
- - !include "{{qt/qtbase}}/cmake_regular_test_instructions_common.yaml"
- - !include "{{qt/qtbase}}/cmake_run_ctest_ignore_exit_code.yaml"
-disable_if:
- condition: property
- property: configureArgs
- contains_value: "-DBUILD_SHARED_LIBS=OFF"
+ - type: MakeDirectory
+ directory: "{{.SourceDir}}_standalone_tests"
+ - type: InstallTestBinaryArchive
+ relativeStoragePath: "{{.Env.MODULE_ARTIFACTS_RELATIVE_STORAGE_PATH}}/tests.tar.gz"
+ directory: "{{.SourceDir}}_standalone_tests"
+ maxTimeInSeconds: 1200
+ maxTimeBetweenOutput: 1200
+ userMessageOnFailure: >
+ Failed to install tests archive.
+ - type: ChangeDirectory
+ directory: "{{.SourceDir}}_standalone_tests"
+
+ - !include "{{qt/qtbase}}/cmake_run_ctest.yaml"
diff --git a/coin/instructions/cmake_regular_test_instructions_common.yaml b/coin/instructions/cmake_regular_test_instructions_common.yaml
deleted file mode 100644
index ec6f23a3f7..0000000000
--- a/coin/instructions/cmake_regular_test_instructions_common.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-type: Group
-instructions:
- - type: MakeDirectory
- directory: "{{.SourceDir}}_standalone_tests"
- - type: InstallTestBinaryArchive
- relativeStoragePath: "{{.Env.MODULE_ARTIFACTS_RELATIVE_STORAGE_PATH}}/tests.tar.gz"
- directory: "{{.SourceDir}}_standalone_tests"
- maxTimeInSeconds: 1200
- maxTimeBetweenOutput: 1200
- userMessageOnFailure: >
- Failed to install tests archive.
- - type: ChangeDirectory
- directory: "{{.SourceDir}}_standalone_tests"
diff --git a/coin/instructions/cmake_regular_test_instructions_enforced.yaml b/coin/instructions/cmake_regular_test_instructions_enforced.yaml
deleted file mode 100644
index 197b925c2a..0000000000
--- a/coin/instructions/cmake_regular_test_instructions_enforced.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-type: Group
-instructions:
- - !include "{{qt/qtbase}}/cmake_regular_test_instructions_common.yaml"
- - !include "{{qt/qtbase}}/cmake_run_ctest_enforce_exit_code.yaml"
diff --git a/coin/instructions/cmake_run_ctest_enforce_exit_code.yaml b/coin/instructions/cmake_run_ctest.yaml
index 8a381992fd..e51c9bbd76 100644
--- a/coin/instructions/cmake_run_ctest_enforce_exit_code.yaml
+++ b/coin/instructions/cmake_run_ctest.yaml
@@ -51,9 +51,24 @@ instructions:
condition: property
property: host.os
equals_value: Windows
+
+ # Keep the testrun quiet for ASAN testruns, since there are FAILs happening all over the place...
- type: EnvironmentVariable
variableName: CTEST_ARGS
variableValue: "-V"
+ disable_if:
+ condition: property
+ property: features
+ contains_value: UseAddressSanitizer
+ # ...and only print the output from a failing test, i.e. test with ASAN errors.
+ - type: EnvironmentVariable
+ variableName: CTEST_OUTPUT_ON_FAILURE
+ variableValue: "1"
+ enable_if:
+ condition: property
+ property: features
+ contains_value: UseAddressSanitizer
+
- type: AppendToEnvironmentVariable
variableName: CTEST_ARGS
variableValue: " --stop-on-failure"
@@ -61,14 +76,65 @@ instructions:
condition: property
property: features
contains_value: AbortTestingOnFirstFailure
- - type: ExecuteCommand
- command: "{{.Env.TESTS_ENV_PREFIX}} ctest {{.Env.CTEST_ARGS}}"
- executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
- ignoreExitCode: false
- maxTimeInSeconds: 10800
- maxTimeBetweenOutput: 900
- userMessageOnFailure: >
- Failed to run tests.
+
+ # Enable CTest's JUnit XML summary only for recent versions
+ - type: AppendToEnvironmentVariable
+ variableName: CTEST_ARGS
+ variableValue: " --output-junit {{.Env.COIN_CTEST_RESULTSDIR}}{{.Env.CI_PATH_SEP}}test_summary.ctest_junit_xml"
+ enable_if:
+ condition: runtime
+ env_var: CMAKE_MIN_SUPPORTED_BIN_PATH
+ equals_value: null
+
+ - !include "{{qt/qtbase}}/coin_module_test_android_start_emulator.yaml"
+
+ - type: EnvironmentVariable
+ variableName: COIN_CROSS_PLATFORM_VERSION_TEST
+ variableValue: "TRUE"
+ enable_if:
+ condition: and
+ conditions:
+ - condition: property
+ property: platformDependency
+ not_equals_value: null
+ - condition: property
+ property: platformDependency.target.osVersion
+ not_equals_property: target.osVersion
+ - condition: property
+ property: features
+ contains_value: TestOnly
+
+ # Run CTest, with or without ignoring exit code
+ # FIXME: De-duplicate the CTest instruction when
+ # ignoreExitCode expands environment variables.
+ - type: Group
+ enable_if:
+ condition: runtime
+ env_var: COIN_CTEST_IGNORE_EXIT_CODE
+ not_equals_value: "1"
+ instructions:
+ - type: ExecuteCommand
+ command: "{{.Env.TESTS_ENV_PREFIX}} ctest {{.Env.CTEST_ARGS}}"
+ executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
+ ignoreExitCode: false
+ maxTimeInSeconds: 10800
+ maxTimeBetweenOutput: "{{.Env.COIN_COMMAND_OUTPUT_TIMEOUT}}"
+ userMessageOnFailure: >
+ Failed to run tests.
+ - type: Group
+ enable_if:
+ condition: runtime
+ env_var: COIN_CTEST_IGNORE_EXIT_CODE
+ equals_value: "1"
+ instructions:
+ - type: ExecuteCommand
+ command: "{{.Env.TESTS_ENV_PREFIX}} ctest {{.Env.CTEST_ARGS}}"
+ executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
+ ignoreExitCode: true
+ maxTimeInSeconds: 10800
+ maxTimeBetweenOutput: "{{.Env.COIN_COMMAND_OUTPUT_TIMEOUT}}"
+ userMessageOnFailure: >
+ Failed to run tests.
- type: Group
instructions:
diff --git a/coin/instructions/cmake_run_ctest_ignore_exit_code.yaml b/coin/instructions/cmake_run_ctest_ignore_exit_code.yaml
deleted file mode 100644
index b94717730b..0000000000
--- a/coin/instructions/cmake_run_ctest_ignore_exit_code.yaml
+++ /dev/null
@@ -1,20 +0,0 @@
-type: Group
-instructions:
- - type: EnvironmentVariable
- variableName: CTEST_ARGS
- variableValue: "-V --rerun-failed --force-new-ctest-process"
- - type: AppendToEnvironmentVariable
- variableName: CTEST_ARGS
- variableValue: " --stop-on-failure"
- enable_if:
- condition: property
- property: features
- contains_value: AbortTestingOnFirstFailure
- - type: ExecuteCommand
- command: "{{.Env.TESTS_ENV_PREFIX}} ctest {{.Env.CTEST_ARGS}}"
- executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
- ignoreExitCode: true
- maxTimeInSeconds: 10800
- maxTimeBetweenOutput: 900
- userMessageOnFailure: >
- Failed to run tests.
diff --git a/coin/instructions/coin_module_axivion_template_v2.yaml b/coin/instructions/coin_module_axivion_template_v2.yaml
index 0eebe34e0d..87d32f5d37 100644
--- a/coin/instructions/coin_module_axivion_template_v2.yaml
+++ b/coin/instructions/coin_module_axivion_template_v2.yaml
@@ -38,7 +38,7 @@ build_environment_axivion: &build_environment_axivion
maxTimeBetweenOutput: 100
userMessageOnFailure: "Create mount point for results failed"
- type: ExecuteCommand
- command: ["sudo", "mount", "-o", "rw", "10.212.0.93:/data/axivion", "/data/axivion"]
+ command: ["sudo", "mount", "-t", "nfs", "-o", "rw,nfsvers=3", "10.212.0.93:/data/axivion", "/data/axivion"]
maxTimeInSeconds: 100
maxTimeBetweenOutput: 100
userMessageOnFailure: "Mount failed"
@@ -92,7 +92,7 @@ instructions:
- *build_environment_axivion
- *analysis_instructions_axivion
enable_if:
- condition: property
- property: features
- contains_value: Axivion
+ condition: runtime
+ env_var: AXIVION_ANALYSIS
+ equals_value: "1"
diff --git a/coin/instructions/coin_module_build_template_v2.yaml b/coin/instructions/coin_module_build_template_v2.yaml
index 2b36fb1c95..e7f47328e8 100644
--- a/coin/instructions/coin_module_build_template_v2.yaml
+++ b/coin/instructions/coin_module_build_template_v2.yaml
@@ -20,25 +20,25 @@ instructions:
equals_property: target.os
- condition: property
property: target.osVersion
- not_in_values: [QEMU, WebAssembly, INTEGRITY]
+ not_in_values: [QEMU, WebAssembly, INTEGRITY, VxWorks]
- condition: property
property: features
not_contains_value: "TargetBuildOnly"
- condition: property
property: features
not_contains_value: "DebianPackaging"
- - condition: property
- property: features
- not_contains_value: Axivion
+ - condition: runtime
+ env_var: AXIVION_ANALYSIS
+ not_equals_value: "1"
- type: Group
instructions:
- !include "{{qt/qtbase}}/coin_module_axivion_template_v2.yaml"
enable_if:
condition: and
conditions:
- - condition: property
- property: features
- contains_value: Axivion
+ - condition: runtime
+ env_var: AXIVION_ANALYSIS
+ equals_value: "1"
- condition: runtime
env_var: TESTED_MODULE_COIN
not_equals_value: "qtdoc"
@@ -60,13 +60,13 @@ instructions:
enable_if:
condition: property
property: target.osVersion
- in_values: [Android_ANY, QEMU, IOS_ANY, QNX_710, WebAssembly, INTEGRITY]
+ in_values: [Android_ANY, QEMU, IOS_ANY, QNX_710, WebAssembly, INTEGRITY, VxWorks]
enable_if:
condition: or
conditions:
- condition: property
property: target.osVersion
- in_values: [Android_ANY, QEMU, IOS_ANY, QNX_710, WebAssembly, INTEGRITY]
+ in_values: [Android_ANY, QEMU, IOS_ANY, QNX_710, WebAssembly, INTEGRITY, VxWorks]
- condition: and
conditions:
- condition: property
diff --git a/coin/instructions/coin_module_test_android_start_emulator.yaml b/coin/instructions/coin_module_test_android_start_emulator.yaml
index 105b3f1038..eff28ff494 100644
--- a/coin/instructions/coin_module_test_android_start_emulator.yaml
+++ b/coin/instructions/coin_module_test_android_start_emulator.yaml
@@ -3,10 +3,10 @@ instructions:
- type: Group
instructions:
- type: ExecuteCommand
- command: "{{.Env.LIBEXEC_INSTALL_DIR}}/android_emulator_launcher.sh"
+ command: "{{.Env.ANDROID_EMULATOR_RUNNER}}"
maxTimeInSeconds: 600
maxTimeBetweenOutput: 300
- userMessageOnFailure: "Failed to start emulator, check coin log and ~/emulator.log"
+ userMessageOnFailure: "Failed to start emulator, check coin log and testresults log files."
enable_if:
condition: property
property: features
diff --git a/coin/instructions/coin_module_test_template_common.yaml b/coin/instructions/coin_module_test_template_common.yaml
index 16fac8dd5d..19c51e23c6 100644
--- a/coin/instructions/coin_module_test_template_common.yaml
+++ b/coin/instructions/coin_module_test_template_common.yaml
@@ -2,7 +2,6 @@ type: Group
instructions:
# The build env is needed on MSVC so that tst_qmake can properly build apps / libraries.
- !include "{{qt/qtbase}}/prepare_building_env.yaml"
- - !include "{{qt/qtbase}}/coin_module_test_android_start_emulator.yaml"
- !include "{{qt/qtbase}}/coin_module_test_qnx_start_emulator.yaml"
# The test env vars are needed to pick the proper prefix.bat file.
- !include "{{qt/qtbase}}/cmake_setup_running_tests_env_vars.yaml"
diff --git a/coin/instructions/coin_module_test_template_v2.yaml b/coin/instructions/coin_module_test_template_v2.yaml
index 423d292bf7..3776584689 100644
--- a/coin/instructions/coin_module_test_template_v2.yaml
+++ b/coin/instructions/coin_module_test_template_v2.yaml
@@ -5,6 +5,9 @@ instructions:
- !include "{{qt/qtbase}}/coin_module_test_template_common.yaml"
- type: Group
instructions:
+ - type: EnvironmentVariable
+ variableName: COIN_CTEST_IGNORE_EXIT_CODE
+ variableValue: "1"
- !include "{{qt/qtbase}}/cmake_regular_test_instructions.yaml"
enable_if:
condition: or
diff --git a/coin/instructions/coin_module_test_template_v3.yaml b/coin/instructions/coin_module_test_template_v3.yaml
index de870b9d45..83b40c141b 100644
--- a/coin/instructions/coin_module_test_template_v3.yaml
+++ b/coin/instructions/coin_module_test_template_v3.yaml
@@ -5,7 +5,7 @@ instructions:
- !include "{{qt/qtbase}}/coin_module_test_template_common.yaml"
- type: Group
instructions:
- - !include "{{qt/qtbase}}/cmake_regular_test_instructions_enforced.yaml"
+ - !include "{{qt/qtbase}}/cmake_regular_test_instructions.yaml"
enable_if:
condition: or
conditions:
diff --git a/coin/instructions/coin_qtbase_build_template_v2.yaml b/coin/instructions/coin_qtbase_build_template_v2.yaml
index e5ae8068e4..bcba742781 100644
--- a/coin/instructions/coin_qtbase_build_template_v2.yaml
+++ b/coin/instructions/coin_qtbase_build_template_v2.yaml
@@ -13,23 +13,23 @@ instructions:
equals_property: target.os
- condition: property
property: target.osVersion
- not_in_values: [QEMU, WebAssembly, INTEGRITY]
+ not_in_values: [QEMU, WebAssembly, INTEGRITY, VxWorks]
- condition: property
property: features
not_contains_value: "TargetBuildOnly"
- condition: property
property: features
not_contains_value: "DebianPackaging"
- - condition: property
- property: features
- not_contains_value: Axivion
+ - condition: runtime
+ env_var: AXIVION_ANALYSIS
+ not_equals_value: "1"
- type: Group
instructions:
- !include "{{qt/qtbase}}/coin_module_axivion_template_v2.yaml"
enable_if:
- condition: property
- property: features
- contains_value: Axivion
+ condition: runtime
+ env_var: AXIVION_ANALYSIS
+ equals_value: "1"
- type: Group
instructions:
- type: Group
@@ -51,13 +51,13 @@ instructions:
enable_if:
condition: property
property: target.osVersion
- in_values: [Android_ANY, QEMU, IOS_ANY, QNX_710, WebAssembly, INTEGRITY]
+ in_values: [Android_ANY, QEMU, IOS_ANY, QNX_710, WebAssembly, INTEGRITY, VxWorks]
enable_if:
condition: or
conditions:
- condition: property
property: target.osVersion
- in_values: [Android_ANY, QEMU, IOS_ANY, QNX_710, WebAssembly, INTEGRITY]
+ in_values: [Android_ANY, QEMU, IOS_ANY, QNX_710, WebAssembly, INTEGRITY, VxWorks]
- condition: and
conditions:
- condition: property
diff --git a/coin/instructions/debian/debian_build_module.yaml b/coin/instructions/debian/debian_build_module.yaml
index 4591ddd5ea..0aa239e1c6 100644
--- a/coin/instructions/debian/debian_build_module.yaml
+++ b/coin/instructions/debian/debian_build_module.yaml
@@ -32,6 +32,28 @@ instructions:
condition: runtime
env_var: COIN_SKIP_DEBIAN
contains_value: "MISSING_DEBIAN_INST"
+ - type: ChangeDirectory
+ directory: "qt6-{{.Env.TESTED_MODULE_PLAIN_COIN}}"
+ disable_if:
+ condition: runtime
+ env_var: COIN_SKIP_DEBIAN
+ contains_value: "MISSING_DEBIAN_INST"
+ - type: ExecuteCommand
+ command: "git checkout {{.Env.DEBIAN_RULES_REF}}"
+ maxTimeInSeconds: 900
+ maxTimeBetweenOutput: 900
+ userMessageOnFailure: "Failed to checkout debian rules branch"
+ disable_if:
+ condition: or
+ conditions:
+ - condition: runtime
+ env_var: DEBIAN_RULES_REF
+ equals_value: null
+ - condition: runtime
+ env_var: COIN_SKIP_DEBIAN
+ contains_value: "MISSING_DEBIAN_INST"
+ - type: ChangeDirectory
+ directory: "{{.AgentWorkingDir}}"
- type: ExecuteCommand
command: "wget -q {{.CoinDownloadURL}}/{{.Env.MODULE_SOURCES_RELATIVE_STORAGE_PATH}}"
maxTimeInSeconds: 900
@@ -81,15 +103,16 @@ instructions:
contains_value: "MISSING_DEBIAN_INST"
- type: ExecuteCommand
command: ["sbuild",
- "--build-dep-resolver=aptitude",
- "-sAd", "tqtc-focal",
+ "--build-dep-resolver=apt",
+ "-sAd", "{{.Env.COIN_TARGET_DIST}}",
"-c", "{{.Env.COIN_SBUILD_CHROOT}}",
"--build-dir", "output/debian_packages",
+ "--extra-repository={{.Env.COIN_EXTRA_DEBIAN_REPO}}",
+ "--extra-package={{.Env.COIN_EXTRA_DEBIAN_PACKAGES}}",
"--extra-package={{.AgentWorkingDir}}/debian_packages/",
- "--extra-package={{.AgentWorkingDir}}/output/debian_packages/",
"qt-{{.Env.QT_REPO_MODULE_VERSION}}-{{.Env.TESTED_MODULE_PLAIN_COIN}}-src_{{.Env.QT_REPO_MODULE_VERSION}}-1.dsc"]
maxTimeInSeconds: 18000
- maxTimeBetweenOutput: 1800
+ maxTimeBetweenOutput: 18000
userMessageOnFailure: "Failed build debian packages"
disable_if:
condition: runtime
diff --git a/coin/instructions/debian/prepare_debian_env.yaml b/coin/instructions/debian/prepare_debian_env.yaml
index aa23576cf3..c51de2103c 100644
--- a/coin/instructions/debian/prepare_debian_env.yaml
+++ b/coin/instructions/debian/prepare_debian_env.yaml
@@ -5,19 +5,36 @@ enable_if:
contains_value: DebianPackaging
instructions:
- type: EnvironmentVariable
+ variableName: COIN_TARGET_DIST
+ variableValue: "tqtc-focal"
+ enable_if:
+ condition: runtime
+ env_var: COIN_TARGET_DIST
+ equals_value: null
+ - type: EnvironmentVariable
variableName: COIN_SBUILD_CHROOT
variableValue: "stable-arm64-sbuild"
enable_if:
- condition: property
- property: target.arch
- equals_value: AARCH64
+ condition: and
+ conditions:
+ - condition: runtime
+ env_var: COIN_SBUILD_CHROOT
+ equals_value: null
+ - condition: property
+ property: target.arch
+ equals_value: AARCH64
- type: EnvironmentVariable
variableName: COIN_SBUILD_CHROOT
variableValue: "stable-amd64-sbuild"
- disable_if:
- condition: property
- property: target.arch
- equals_value: AARCH64
+ enable_if:
+ condition: and
+ conditions:
+ - condition: runtime
+ env_var: COIN_SBUILD_CHROOT
+ equals_value: null
+ - condition: property
+ property: target.arch
+ equals_value: X86_64
- type: EnvironmentVariable
variableName: COIN_SBUILD_DISTRO
variableValue: "arm64-focal"
@@ -37,47 +54,10 @@ instructions:
variableName: COIN_SKIP_DEBIAN
variableValue: "MISSING_DEBIAN_INST"
enable_if:
- condition: or
- conditions:
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtquick3dphysics"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtquickeffectmaker"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtspeech"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtlocation"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qthttpserver"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtactiveqt"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtcoap"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtmqtt"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtopcua"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtgrpc"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtqa"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qtdoc"
- - condition: runtime
- env_var: TESTED_MODULE_COIN
- equals_value: "qt5"
+ condition: runtime
+ env_var: COIN_SKIP_DEBIAN_MODULES
+ contains_value: "{{.Env.TESTED_MODULE_COIN}}"
+
# Set version info to environment
- type: ParseEnvironmentVariableFromFile
regex: "QT_REPO_MODULE_VERSION \"(?P<QT_REPO_MODULE_VERSION>.*)\""
diff --git a/coin/instructions/prepare_building_env.yaml b/coin/instructions/prepare_building_env.yaml
index f816ef56ea..a3276cb139 100644
--- a/coin/instructions/prepare_building_env.yaml
+++ b/coin/instructions/prepare_building_env.yaml
@@ -26,6 +26,16 @@ 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
instructions:
@@ -123,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.
@@ -305,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
@@ -322,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:
@@ -427,6 +473,93 @@ instructions:
property: features
contains_value: UseConfigure
+ # Packaging
+ - type: Group
+ enable_if:
+ condition: property
+ property: features
+ contains_value: Packaging
+ instructions:
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_CMAKE_ARGS
+ variableValue: " -DQT_INSTALL_CONFIG_INFO_FILES=ON"
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_NON_QTBASE_CMAKE_ARGS
+ variableValue: " -DQT_INSTALL_CONFIG_INFO_FILES=ON"
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_TARGET_CMAKE_ARGS
+ variableValue: " -DQT_INSTALL_CONFIG_INFO_FILES=ON"
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_NON_QTBASE_TARGET_CMAKE_ARGS
+ variableValue: " -DQT_INSTALL_CONFIG_INFO_FILES=ON"
+
+ # SBOM
+ - type: Group
+ enable_if:
+ condition: property
+ property: features
+ contains_value: GenerateSBOM
+ instructions:
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_CMAKE_ARGS
+ variableValue: " -DQT_GENERATE_SBOM=ON"
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_NON_QTBASE_CMAKE_ARGS
+ variableValue: " -DQT_GENERATE_SBOM=ON"
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_TARGET_CMAKE_ARGS
+ variableValue: " -DQT_GENERATE_SBOM=ON"
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_NON_QTBASE_TARGET_CMAKE_ARGS
+ variableValue: " -DQT_GENERATE_SBOM=ON"
+
+ # SBOM Python apps path. On Windows python-installed apps are
+ # in the same directory where pip is, aka Scripts sub-directory.
+ - type: EnvironmentVariable
+ variableName: SBOM_PYTHON_APPS_PATH
+ variableValue: "{{.Env.PIP3_PATH}}"
+ enable_if:
+ condition: property
+ property: host.os
+ equals_value: Windows
+ - type: EnvironmentVariable
+ variableName: SBOM_PYTHON_APPS_PATH
+ variableValue: "{{.Env.PYTHON3_PATH}}"
+ disable_if:
+ condition: property
+ property: host.os
+ equals_value: Windows
+
+
+ # SBOM verification and auditing
+ - type: Group
+ enable_if:
+ condition: property
+ property: features
+ contains_value: VerifySBOM
+ instructions:
+ - type: EnvironmentVariable
+ variableName: SBOM_COMMON_ARGS
+ variableValue: >-
+ -DQT_INTERNAL_NO_SBOM_FIND_PYTHON_FRAMEWORK=ON
+ -DQT_INTERNAL_SBOM_DEFAULT_CHECKS=ON
+ -DQT_INTERNAL_SBOM_AUDIT=ON
+ -DQT_INTERNAL_SBOM_AUDIT_NO_ERROR=ON
+ -DQT_SBOM_PYTHON_INTERP={{.Env.PYTHON3_PATH}}
+ -DQT_SBOM_PYTHON_APPS_PATH={{.Env.SBOM_PYTHON_APPS_PATH}}
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_CMAKE_ARGS
+ variableValue: " {{.Env.SBOM_COMMON_ARGS}} "
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_NON_QTBASE_CMAKE_ARGS
+ variableValue: " {{.Env.SBOM_COMMON_ARGS}} "
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_TARGET_CMAKE_ARGS
+ variableValue: " {{.Env.SBOM_COMMON_ARGS}} "
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_NON_QTBASE_TARGET_CMAKE_ARGS
+ variableValue: " {{.Env.SBOM_COMMON_ARGS}} "
+
- type: Group
instructions:
- type: AppendToEnvironmentVariable
@@ -438,6 +571,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
@@ -448,6 +584,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
@@ -461,6 +600,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
@@ -471,6 +613,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
@@ -478,6 +623,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
@@ -486,6 +633,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
@@ -579,3 +744,18 @@ instructions:
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