From 7694b01aafd52b7064161b2f8c9a98cd330d24d3 Mon Sep 17 00:00:00 2001 From: Alexandru Croitor Date: Wed, 15 Dec 2021 19:29:28 +0100 Subject: coin: Don't package installed example binaries MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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. Pick-to: 6.2 6.3 Task-number: QTBUG-90820 Change-Id: I0b112698514309bb9b0794ce4117e8bf30c3a819 Reviewed-by: Qt CI Bot Reviewed-by: Jörg Bornemann --- coin/instructions/prepare_building_env.yaml | 48 +++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) (limited to 'coin/instructions') diff --git a/coin/instructions/prepare_building_env.yaml b/coin/instructions/prepare_building_env.yaml index 9587b48a2e..d9855eff9a 100644 --- a/coin/instructions/prepare_building_env.yaml +++ b/coin/instructions/prepare_building_env.yaml @@ -422,6 +422,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" -- cgit v1.2.3