diff options
Diffstat (limited to 'coin/instructions/cmake_cross_compilation_module_build_instructions.yaml')
-rw-r--r-- | coin/instructions/cmake_cross_compilation_module_build_instructions.yaml | 135 |
1 files changed, 117 insertions, 18 deletions
diff --git a/coin/instructions/cmake_cross_compilation_module_build_instructions.yaml b/coin/instructions/cmake_cross_compilation_module_build_instructions.yaml index e5e257f181..a62ab0f48e 100644 --- a/coin/instructions/cmake_cross_compilation_module_build_instructions.yaml +++ b/coin/instructions/cmake_cross_compilation_module_build_instructions.yaml @@ -1,5 +1,19 @@ type: Group instructions: + - type: EnvironmentVariable + variableName: CMAKE_BUILD_TIMEOUT + variableValue: "6000" + enable_if: + condition: runtime + env_var: CMAKE_BUILD_TIMEOUT + equals_value: null + - type: EnvironmentVariable + variableName: CMAKE_BUILD_OUTPUT_TIMEOUT + variableValue: "1200" + enable_if: + condition: runtime + env_var: CMAKE_BUILD_OUTPUT_TIMEOUT + equals_value: null - type: MakeDirectory directory: .git - type: MakeDirectory @@ -16,20 +30,62 @@ instructions: directory: "{{.SourceDir}}/build/host" - type: ChangeDirectory directory: "{{.BuildDir}}" + + - type: EnvironmentVariable + variableName: COIN_CONFIGURE_ARGS + variableValue: "{{.Env.NON_QTBASE_CONFIGURE_ARGS}}" - type: EnvironmentVariable variableName: COIN_CMAKE_ARGS - # The lack of space between the non qtbase configure args and the rest of the args is important! - variableValue: "{{.Env.NON_QTBASE_CONFIGURE_ARGS}} -DQT_BUILD_TESTS=OFF -DCMAKE_AUTOGEN_VERBOSE=ON {{.SourceDir}}" - - !include "{{qt/qtbase}}/call_host_cmake.yaml" + variableValue: "{{.Env.NON_QTBASE_CMAKE_ARGS}} {{.Env.COMMON_NON_QTBASE_CMAKE_ARGS}}" + - type: EnvironmentVariable + variableName: CONFIGURE_ENV_PREFIX + variableValue: "{{.Env.ENV_PREFIX}}" + - !include "{{qt/qtbase}}/prepare_install_dir_suffix_host.yaml" + - !include "{{qt/qtbase}}/call_configure_module.yaml" + - type: ExecuteCommand - command: "{{.Env.ENV_PREFIX}} cmake --build . --parallel -v" - maxTimeInSeconds: 6000 - maxTimeBetweenOutput: 1200 + command: "{{.Env.CONFIGURE_ENV_PREFIX}} cmake --build . --parallel -v" + maxTimeInSeconds: "{{.Env.CMAKE_BUILD_TIMEOUT}}" + maxTimeBetweenOutput: "{{.Env.CMAKE_BUILD_OUTPUT_TIMEOUT}}" userMessageOnFailure: > - Failed to build sources. In the current state bug can be everywhere. + Failed to build sources. - type: EnvironmentVariable - variableName: COIN_CMAKE_INSTALL_SCRIPT_PATH - variableValue: "{{.InstallDir}}/host" + variableName: COIN_CMAKE_INSTALL_DIR + variableValue: "{{.InstallDir}}{{.Env.CI_PATH_SEP}}host" + - type: EnvironmentVariable + variableName: COIN_CMAKE_INSTALL_LIBEXEC_DIR + variableValue: "{{.Env.COIN_CMAKE_INSTALL_DIR}}{{.Env.CI_PATH_SEP}}libexec" + disable_if: + condition: and + conditions: + - condition: property + property: host.os + equals_value: Windows + - 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" + enable_if: + condition: and + conditions: + - condition: property + property: host.os + equals_value: Windows + - 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 @@ -46,20 +102,62 @@ instructions: directory: "{{.SourceDir}}/build/target" - type: ChangeDirectory directory: "{{.BuildDir}}" + + - type: EnvironmentVariable + variableName: COIN_CONFIGURE_ARGS + variableValue: "{{.Env.NON_QTBASE_TARGET_CONFIGURE_ARGS}}" - type: EnvironmentVariable variableName: COIN_CMAKE_ARGS - # The lack of space between the non qtbase configure args and the rest of the args is important! - variableValue: "{{.Env.NON_QTBASE_TARGET_CONFIGURE_ARGS}} -DQT_BUILD_TESTS=OFF -DCMAKE_AUTOGEN_VERBOSE=ON {{.SourceDir}}" - - !include "{{qt/qtbase}}/call_target_cmake.yaml" + variableValue: "{{.Env.NON_QTBASE_TARGET_CMAKE_ARGS}} {{.Env.COMMON_NON_QTBASE_TARGET_CMAKE_ARGS}}" + - type: EnvironmentVariable + variableName: CONFIGURE_ENV_PREFIX + variableValue: "{{.Env.TARGET_ENV_PREFIX}}" + - !include "{{qt/qtbase}}/prepare_install_dir_suffix_target.yaml" + - !include "{{qt/qtbase}}/call_configure_module.yaml" + - type: ExecuteCommand - command: "{{.Env.TARGET_ENV_PREFIX}} cmake --build . --parallel -v" - maxTimeInSeconds: 6000 - maxTimeBetweenOutput: 1200 + command: "{{.Env.CONFIGURE_ENV_PREFIX}} cmake --build . --parallel -v" + maxTimeInSeconds: "{{.Env.CMAKE_BUILD_TIMEOUT}}" + maxTimeBetweenOutput: "{{.Env.CMAKE_BUILD_OUTPUT_TIMEOUT}}" userMessageOnFailure: > - Failed to build sources. In the current state bug can be everywhere. + Failed to build sources. + - type: EnvironmentVariable + variableName: COIN_CMAKE_INSTALL_DIR + variableValue: "{{.InstallDir}}{{.Env.CI_PATH_SEP}}target" - type: EnvironmentVariable - variableName: COIN_CMAKE_INSTALL_SCRIPT_PATH - variableValue: "{{.InstallDir}}/target" + variableName: COIN_CMAKE_INSTALL_LIBEXEC_DIR + variableValue: "{{.Env.COIN_CMAKE_INSTALL_DIR}}{{.Env.CI_PATH_SEP}}libexec" + disable_if: + condition: and + conditions: + - condition: property + property: host.os + equals_value: Windows + - 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" + enable_if: + condition: and + conditions: + - condition: property + property: host.os + equals_value: Windows + - 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 @@ -76,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" |