summaryrefslogtreecommitdiffstats
path: root/coin/instructions/cmake_cross_compilation_module_build_instructions.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'coin/instructions/cmake_cross_compilation_module_build_instructions.yaml')
-rw-r--r--coin/instructions/cmake_cross_compilation_module_build_instructions.yaml140
1 files changed, 122 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 95b43b39c2..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}} -DBUILD_TESTING=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_DIR
+ variableValue: "{{.InstallDir}}{{.Env.CI_PATH_SEP}}host"
- type: EnvironmentVariable
- variableName: COIN_CMAKE_INSTALL_SCRIPT_PATH
- variableValue: "{{.InstallDir}}/host"
+ 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}} -DBUILD_TESTING=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_SCRIPT_PATH
- variableValue: "{{.InstallDir}}/target"
+ variableName: COIN_CMAKE_INSTALL_DIR
+ variableValue: "{{.InstallDir}}{{.Env.CI_PATH_SEP}}target"
+ - 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}}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
@@ -73,3 +171,9 @@ instructions:
transferType: UploadModuleBuildArtifact
maxTimeInSeconds: 1200
maxTimeBetweenOutput: 1200
+ - 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"