12b73cba89
There are things that could be shared around all Qt submodules. In particular compiler specific configuration should not be repeated over and over. The new file can be included directly from all modules that uses QtBase. In longer term one would have a separate repository for such instructions as most of them are not QtBase specific. Change-Id: I0590b2a0c78b73e1b9dbb27cc1da6568cbe56563 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
131 lines
4.2 KiB
YAML
131 lines
4.2 KiB
YAML
version: 1
|
|
accept_configuration:
|
|
condition: property
|
|
property: host.os
|
|
equals_property: target.os
|
|
|
|
call_cmake_instructions: &call_cmake
|
|
type: Group
|
|
instructions:
|
|
- type: ExecuteCommand
|
|
command: "{{.Env.ENV_PREFIX}} {{.InstallDir}}\\bin\\qt-cmake {{.SourceDir}}/tests"
|
|
maxTimeInSeconds: 6000
|
|
maxTimeBetweenOutput: 120
|
|
userMessageOnFailure: >
|
|
Failed to call cmake. Contact Liang then.
|
|
enable_if:
|
|
condition: property
|
|
property: host.os
|
|
equals_value: Windows
|
|
- type: ExecuteCommand
|
|
command: "{{.InstallDir}}/bin/qt-cmake {{.SourceDir}}/tests"
|
|
maxTimeInSeconds: 6000
|
|
maxTimeBetweenOutput: 120
|
|
userMessageOnFailure: >
|
|
Failed to call cmake. Contact Liang then.
|
|
disable_if:
|
|
condition: property
|
|
property: host.os
|
|
equals_value: Windows
|
|
|
|
build_and_upload_test_artifacts_instruction: &build_and_upload_test_artifacts
|
|
type: Group
|
|
instructions:
|
|
- type: ChangeDirectory
|
|
directory: "{{.SourceDir}}/tests"
|
|
- *call_cmake
|
|
- type: ExecuteCommand
|
|
command: "{{.Env.ENV_PREFIX}} cmake --build ."
|
|
maxTimeInSeconds: 6000
|
|
maxTimeBetweenOutput: 120
|
|
userMessageOnFailure: >
|
|
Failed to build sources. In the current state bug can be everywhere. Contact Liang first.
|
|
- type: UploadTestArtifact
|
|
transferType: UploadModuleTestsArtifact
|
|
archiveDirectory: "{{.SourceDir}}/tests"
|
|
maxTimeInSeconds: 1200
|
|
maxTimeBetweenOutput: 1200
|
|
disable_if:
|
|
condition: property
|
|
property: configureArgs
|
|
contains_value: "-DBUILD_SHARED_LIBS=OFF"
|
|
|
|
regular_specific_test_instructions: ®ular_test_instructions
|
|
type: Group
|
|
instructions:
|
|
- type: InstallTestBinaryArchive
|
|
relativeStoragePath: "{{.Env.MODULE_ARTIFACTS_RELATIVE_STORAGE_PATH}}/tests.tar.gz"
|
|
directory: "{{.SourceDir}}/tests"
|
|
maxTimeInSeconds: 1200
|
|
maxTimeBetweenOutput: 1200
|
|
userMessageOnFailure: >
|
|
Failed to install tests archive.
|
|
- type: ChangeDirectory
|
|
directory: "{{.SourceDir}}/tests"
|
|
- type: ExecuteCommand
|
|
command: "ctest -V --rerun-failed"
|
|
ignoreExitCode: true
|
|
maxTimeInSeconds: 7200
|
|
maxTimeBetweenOutput: 900
|
|
userMessageOnFailure: >
|
|
Failed to run tests.
|
|
disable_if:
|
|
condition: property
|
|
property: configureArgs
|
|
contains_value: "-DBUILD_SHARED_LIBS=OFF"
|
|
|
|
|
|
build_instructions:
|
|
- type: MakeDirectory
|
|
directory: .git
|
|
- type: SetBuildDirectory
|
|
directory: "{{.SourceDir}}"
|
|
- type: ChangeDirectory
|
|
directory: "{{.BuildDir}}"
|
|
- !include "{{qt/qtbase}}/prepare_building_env.yaml"
|
|
- type: ExecuteCommand
|
|
command: "{{.Env.ENV_PREFIX}} cmake {{.Env.CONFIGURE_ARGS}} -DCMAKE_INSTALL_PREFIX:PATH={{.InstallDir}} -DBUILD_TESTING=OFF {{.SourceDir}}"
|
|
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
|
|
maxTimeInSeconds: 6000
|
|
maxTimeBetweenOutput: 120
|
|
userMessageOnFailure: >
|
|
Failed to call cmake. Contact Liang then.
|
|
- type: ExecuteCommand
|
|
command: "{{.Env.ENV_PREFIX}} cmake --build ."
|
|
maxTimeInSeconds: 6000
|
|
maxTimeBetweenOutput: 120
|
|
userMessageOnFailure: >
|
|
Failed to build sources. In the current state bug can be everywhere. Contact Liang first.
|
|
- type: ExecuteCommand
|
|
command: "{{.Env.ENV_PREFIX}} cmake --install ."
|
|
maxTimeInSeconds: 6000
|
|
maxTimeBetweenOutput: 120
|
|
userMessageOnFailure: >
|
|
Failed to install package.
|
|
- type: EnvironmentVariable
|
|
variableName: DESTDIR
|
|
variableValue: "{{.InstallRoot}}"
|
|
- type: ExecuteCommand
|
|
command: "{{.Env.ENV_PREFIX}} cmake --install ."
|
|
maxTimeInSeconds: 6000
|
|
maxTimeBetweenOutput: 120
|
|
userMessageOnFailure: >
|
|
Failed to install package for archiving.
|
|
- type: SignPackage
|
|
enable_if:
|
|
condition: property
|
|
property: host.os
|
|
equals_value: Windows
|
|
directory: "{{.InstallRoot}}/{{.AgentWorkingDir}}"
|
|
maxTimeInSeconds: 1200
|
|
maxTimeBetweenOutput: 1200
|
|
- type: UploadArtifact
|
|
archiveDirectory: "{{.InstallRoot}}/{{.AgentWorkingDir}}"
|
|
transferType: UploadModuleBuildArtifact
|
|
maxTimeInSeconds: 1200
|
|
maxTimeBetweenOutput: 1200
|
|
- *build_and_upload_test_artifacts
|
|
|
|
test_instructions:
|
|
- *regular_test_instructions
|