summaryrefslogtreecommitdiffstats
path: root/coin
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2021-12-15 19:29:28 +0100
committerAlexandru Croitor <alexandru.croitor@qt.io>2022-04-05 13:39:38 +0200
commitd8b7954bde0388fdf87df02b0c1ece923e637a95 (patch)
tree6d8d5d11e082e34013d3c7d3473851343dac412e /coin
parenta31b51f835bf1b0d8af4206448bc34404db6ccdf (diff)
coin: Don't package installed example binaries
To do that, we install the example binaries into a new directory rather than the main install dir. The contents of the dir is not archived by the Coin agent. This decreases the size of the binary artifacts. This will be especially important when the examples contain deploy logic which will install the shared Qt libraries next to each example binary. Task-number: QTBUG-90820 Change-Id: I0b112698514309bb9b0794ce4117e8bf30c3a819 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 7694b01aafd52b7064161b2f8c9a98cd330d24d3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'coin')
-rw-r--r--coin/instructions/prepare_building_env.yaml48
1 files changed, 48 insertions, 0 deletions
diff --git a/coin/instructions/prepare_building_env.yaml b/coin/instructions/prepare_building_env.yaml
index b822cbbfa9..18773a33ed 100644
--- a/coin/instructions/prepare_building_env.yaml
+++ b/coin/instructions/prepare_building_env.yaml
@@ -425,6 +425,54 @@ instructions:
property: features
contains_value: Sccache
+ # Specify a custom examples installation directory, so that the built example binaries are not
+ # packaged into the artifact archive together with the Qt libraries.
+ - type: Group
+ instructions:
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_CMAKE_ARGS
+ variableValue: " -DQT_INTERNAL_EXAMPLES_INSTALL_PREFIX={{unixPathSeparators .BuildDir}}/installed_examples"
+ - type: AppendToEnvironmentVariable
+ variableName: COMMON_TARGET_CMAKE_ARGS
+ variableValue: " -DQT_INTERNAL_EXAMPLES_INSTALL_PREFIX={{unixPathSeparators .BuildDir}}/installed_examples"
+ enable_if:
+ # Only set the custom installation dir if examples are built.
+ condition: or
+ conditions:
+ # qtbase host case
+ - condition: runtime
+ env_var: CONFIGURE_ARGS
+ contains_value: "QT_BUILD_EXAMPLES=ON"
+ # qtbase target case
+ - condition: runtime
+ env_var: TARGET_CONFIGURE_ARGS
+ contains_value: "QT_BUILD_EXAMPLES=ON"
+ # non-qtbase host case
+ - condition: runtime
+ env_var: NON_QTBASE_CONFIGURE_ARGS
+ contains_value: "QT_BUILD_EXAMPLES=ON"
+ # non-qtbase target case
+ - condition: runtime
+ env_var: NON_QTBASE_TARGET_CONFIGURE_ARGS
+ contains_value: "QT_BUILD_EXAMPLES=ON"
+ # Same as above, but for configurations marked with UseConfigure
+ # qtbase host case
+ - condition: runtime
+ env_var: CONFIGURE_ARGS
+ contains_value: "-make examples"
+ # qtbase target case
+ - condition: runtime
+ env_var: TARGET_CONFIGURE_ARGS
+ contains_value: "-make examples"
+ # non-qtbase host case
+ - condition: runtime
+ env_var: NON_QTBASE_CONFIGURE_ARGS
+ contains_value: "-make examples"
+ # non-qtbase target case
+ - condition: runtime
+ env_var: NON_QTBASE_TARGET_CONFIGURE_ARGS
+ contains_value: "-make examples"
+
- type: SetEnvironmentFromScript
command: [C:\Utils\emsdk\emsdk_env.bat]
userMessageOnFailure: "Failed to set emscripten environment"