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>
This commit is contained in:
Alexandru Croitor 2021-12-15 19:29:28 +01:00
parent a31b51f835
commit d8b7954bde

View File

@ -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"