summaryrefslogtreecommitdiffstats
path: root/coin
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2020-05-18 17:05:50 +0200
committerAlexandru Croitor <alexandru.croitor@qt.io>2020-05-19 10:16:16 +0200
commit941039356df56dfbf5a4b4f828a577ca8b8fb025 (patch)
tree1eab4088559873fca0218d022130cc13bb2930dd /coin
parentb3e01d608eb39302914c45af7aa18e3178d1309c (diff)
CMake: Use the same generator when building other repositories
If we configure qtbase with Ninja Multi-Config, we should use the same generator when building other repositories as well, to ensure that all repositories have the same set of configurations (debug and release). To do that, the Coin instructions will call the qt-cmake-private wrapper which records the generator used. For standalone tests continue to use qt-cmake, so that only a single configuration is built (no need to build tests in both debug and release mode). The configuration built will be the first one from the initial list with which qtbase was configured (usually RelWithDebiInfo). This is ensured by the QtBuildInternalsExtraConfig.cmake file. Task-number: QTBUG-80900 Change-Id: I701b2f652a22d51e640a6fdf19c3b2d2dfb34d5c Reviewed-by: Simon Hausmann <hausmann@gmail.com>
Diffstat (limited to 'coin')
-rw-r--r--coin/instructions/call_cmake.yaml4
-rw-r--r--coin/instructions/call_cmake_for_standalone_tests.yaml24
-rw-r--r--coin/instructions/call_host_cmake.yaml4
-rw-r--r--coin/instructions/call_target_cmake.yaml4
-rw-r--r--coin/instructions/cmake_build_and_upload_test_artifacts.yaml2
5 files changed, 31 insertions, 7 deletions
diff --git a/coin/instructions/call_cmake.yaml b/coin/instructions/call_cmake.yaml
index bbebd6af33..96227c1f6a 100644
--- a/coin/instructions/call_cmake.yaml
+++ b/coin/instructions/call_cmake.yaml
@@ -1,7 +1,7 @@
type: Group
instructions:
- type: ExecuteCommand
- command: "{{.Env.ENV_PREFIX}} {{.InstallDir}}\\bin\\qt-cmake {{.Env.COIN_CMAKE_ARGS}}"
+ command: "{{.Env.ENV_PREFIX}} {{.InstallDir}}\\bin\\qt-cmake-private {{.Env.COIN_CMAKE_ARGS}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 6000
maxTimeBetweenOutput: 1200
@@ -12,7 +12,7 @@ instructions:
property: host.os
equals_value: Windows
- type: ExecuteCommand
- command: "{{.InstallDir}}/bin/qt-cmake {{.Env.COIN_CMAKE_ARGS}}"
+ command: "{{.InstallDir}}/bin/qt-cmake-private {{.Env.COIN_CMAKE_ARGS}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 6000
maxTimeBetweenOutput: 1200
diff --git a/coin/instructions/call_cmake_for_standalone_tests.yaml b/coin/instructions/call_cmake_for_standalone_tests.yaml
new file mode 100644
index 0000000000..bbebd6af33
--- /dev/null
+++ b/coin/instructions/call_cmake_for_standalone_tests.yaml
@@ -0,0 +1,24 @@
+type: Group
+instructions:
+ - type: ExecuteCommand
+ command: "{{.Env.ENV_PREFIX}} {{.InstallDir}}\\bin\\qt-cmake {{.Env.COIN_CMAKE_ARGS}}"
+ executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
+ maxTimeInSeconds: 6000
+ maxTimeBetweenOutput: 1200
+ userMessageOnFailure: >
+ Failed to call cmake.
+ enable_if:
+ condition: property
+ property: host.os
+ equals_value: Windows
+ - type: ExecuteCommand
+ command: "{{.InstallDir}}/bin/qt-cmake {{.Env.COIN_CMAKE_ARGS}}"
+ executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
+ maxTimeInSeconds: 6000
+ maxTimeBetweenOutput: 1200
+ userMessageOnFailure: >
+ Failed to call cmake.
+ disable_if:
+ condition: property
+ property: host.os
+ equals_value: Windows
diff --git a/coin/instructions/call_host_cmake.yaml b/coin/instructions/call_host_cmake.yaml
index f2056966b0..4182f9b622 100644
--- a/coin/instructions/call_host_cmake.yaml
+++ b/coin/instructions/call_host_cmake.yaml
@@ -1,7 +1,7 @@
type: Group
instructions:
- type: ExecuteCommand
- command: "{{.Env.ENV_PREFIX}} {{.InstallDir}}\\host\\bin\\qt-cmake {{.Env.COIN_CMAKE_ARGS}}"
+ command: "{{.Env.ENV_PREFIX}} {{.InstallDir}}\\host\\bin\\qt-cmake-private {{.Env.COIN_CMAKE_ARGS}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 6000
maxTimeBetweenOutput: 1200
@@ -12,7 +12,7 @@ instructions:
property: host.os
equals_value: Windows
- type: ExecuteCommand
- command: "{{.InstallDir}}/host/bin/qt-cmake {{.Env.COIN_CMAKE_ARGS}}"
+ command: "{{.InstallDir}}/host/bin/qt-cmake-private {{.Env.COIN_CMAKE_ARGS}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 6000
maxTimeBetweenOutput: 1200
diff --git a/coin/instructions/call_target_cmake.yaml b/coin/instructions/call_target_cmake.yaml
index 5f687a96fd..e8dc7f3f97 100644
--- a/coin/instructions/call_target_cmake.yaml
+++ b/coin/instructions/call_target_cmake.yaml
@@ -1,7 +1,7 @@
type: Group
instructions:
- type: ExecuteCommand
- command: "{{.Env.TARGET_ENV_PREFIX}} {{.InstallDir}}\\target\\bin\\qt-cmake {{.Env.COIN_CMAKE_ARGS}}"
+ command: "{{.Env.TARGET_ENV_PREFIX}} {{.InstallDir}}\\target\\bin\\qt-cmake-private {{.Env.COIN_CMAKE_ARGS}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 6000
maxTimeBetweenOutput: 1200
@@ -12,7 +12,7 @@ instructions:
property: host.os
equals_value: Windows
- type: ExecuteCommand
- command: "{{.Env.TARGET_ENV_PREFIX}} {{.InstallDir}}/target/bin/qt-cmake {{.Env.COIN_CMAKE_ARGS}}"
+ command: "{{.Env.TARGET_ENV_PREFIX}} {{.InstallDir}}/target/bin/qt-cmake-private {{.Env.COIN_CMAKE_ARGS}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 6000
maxTimeBetweenOutput: 1200
diff --git a/coin/instructions/cmake_build_and_upload_test_artifacts.yaml b/coin/instructions/cmake_build_and_upload_test_artifacts.yaml
index 2df45ff07e..92e2816346 100644
--- a/coin/instructions/cmake_build_and_upload_test_artifacts.yaml
+++ b/coin/instructions/cmake_build_and_upload_test_artifacts.yaml
@@ -11,7 +11,7 @@ instructions:
- type: EnvironmentVariable
variableName: COIN_CMAKE_ARGS
variableValue: "-DQT_BUILD_STANDALONE_TESTS=ON -S {{.SourceDir}} -B ."
- - !include "{{qt/qtbase}}/call_cmake.yaml"
+ - !include "{{qt/qtbase}}/call_cmake_for_standalone_tests.yaml"
- type: ExecuteCommand
command: "{{.Env.ENV_PREFIX}} cmake --build . --parallel -v"
maxTimeInSeconds: 6000