diff --git a/coin/instructions/coin_qt_build_docs.yaml b/coin/instructions/coin_qt_build_docs.yaml new file mode 100644 index 00000000..6f554816 --- /dev/null +++ b/coin/instructions/coin_qt_build_docs.yaml @@ -0,0 +1,33 @@ +type: Group +instructions: + - type: ExecuteCommand + command: "{{.Env.ENV_PREFIX}} cmake --build . --target qtbase/src/plugins/platforms/all qtbase/src/plugins/sqldrivers/all qttools/all --parallel -v" + maxTimeInSeconds: 12000 + maxTimeBetweenOutput: 1200 + userMessageOnFailure: > + Failed to build sources. + - type: ExecuteCommand + command: "{{.Env.ENV_PREFIX}} cmake --build . --target docs -v" + maxTimeInSeconds: 12000 + maxTimeBetweenOutput: 1200 + userMessageOnFailure: > + Failed to generate docs. + - type: ExecuteCommand + command: "cp -r {{.BuildDir}}/qtbase/doc/config {{.BuildDir}}/doc" + maxTimeInSeconds: 12000 + maxTimeBetweenOutput: 1200 + userMessageOnFailure: "Failed to copy qtbase/doc/config to documentation directory." + - type: ExecuteCommand + command: "cp -r {{.BuildDir}}/qtbase/doc/global {{.BuildDir}}/doc" + maxTimeInSeconds: 12000 + maxTimeBetweenOutput: 1200 + userMessageOnFailure: "Failed to copy qtbase/doc/global to documentation directory." + - type: UploadArtifact + archiveDirectory: '{{.BuildDir}}/doc' + transferType: UploadModuleDocumentation + maxTimeInSeconds: 1800 + maxTimeBetweenOutput: 1800 +enable_if: + condition: property + property: features + contains_value: "Documentation" diff --git a/coin/instructions/coin_qt_build_template.yaml b/coin/instructions/coin_qt_build_template.yaml new file mode 100644 index 00000000..5cfe214f --- /dev/null +++ b/coin/instructions/coin_qt_build_template.yaml @@ -0,0 +1,4 @@ +type: Group +instructions: + - !include "{{qt/qt5}}/coin_qt_configure.yaml" + - !include "{{qt/qt5}}/coin_qt_build_docs.yaml" diff --git a/coin/instructions/coin_qt_configure.yaml b/coin/instructions/coin_qt_configure.yaml new file mode 100644 index 00000000..e1b445c1 --- /dev/null +++ b/coin/instructions/coin_qt_configure.yaml @@ -0,0 +1,16 @@ +type: Group +instructions: + - !include "{{qt/qtbase}}/prepare_building_env.yaml" + - type: MakeDirectory + directory: .git + - type: SetBuildDirectory + directory: "{{.SourceDir}}" + - type: ChangeDirectory + directory: "{{.BuildDir}}" + - type: ExecuteCommand + command: "{{.Env.ENV_PREFIX}} cmake {{.Env.CONFIGURE_ARGS}} -DCMAKE_INSTALL_PREFIX:PATH={{.InstallDir}} -DQT_BUILD_TESTS=OFF {{.SourceDir}}" + executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution + maxTimeInSeconds: 6000 + maxTimeBetweenOutput: 1200 + userMessageOnFailure: > + Failed to call cmake. diff --git a/coin/module_config.yaml b/coin/module_config.yaml index 98c46462..de91d6d6 100644 --- a/coin/module_config.yaml +++ b/coin/module_config.yaml @@ -6,54 +6,7 @@ accept_configuration: instructions: Build: - - !include "{{qt/qtbase}}/prepare_building_env.yaml" - - type: MakeDirectory - directory: .git - - type: SetBuildDirectory - directory: "{{.SourceDir}}" - - type: ChangeDirectory - directory: "{{.BuildDir}}" - - type: ExecuteCommand - command: "{{.Env.ENV_PREFIX}} cmake {{.Env.CONFIGURE_ARGS}} -DCMAKE_INSTALL_PREFIX:PATH={{.InstallDir}} -DQT_BUILD_TESTS=OFF {{.SourceDir}}" - executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution - maxTimeInSeconds: 6000 - maxTimeBetweenOutput: 1200 - userMessageOnFailure: > - Failed to call cmake. - - - type: Group - instructions: - - type: ExecuteCommand - command: "{{.Env.ENV_PREFIX}} cmake --build . --target qtbase/src/plugins/platforms/all qtbase/src/plugins/sqldrivers/all qttools/all --parallel -v" - maxTimeInSeconds: 12000 - maxTimeBetweenOutput: 1200 - userMessageOnFailure: > - Failed to build sources. - - type: ExecuteCommand - command: "{{.Env.ENV_PREFIX}} cmake --build . --target docs -v" - maxTimeInSeconds: 12000 - maxTimeBetweenOutput: 1200 - userMessageOnFailure: > - Failed to generate docs. - - type: ExecuteCommand - command: "cp -r {{.BuildDir}}/qtbase/doc/config {{.BuildDir}}/doc" - maxTimeInSeconds: 12000 - maxTimeBetweenOutput: 1200 - userMessageOnFailure: "Failed to copy qtbase/doc/config to documentation directory." - - type: ExecuteCommand - command: "cp -r {{.BuildDir}}/qtbase/doc/global {{.BuildDir}}/doc" - maxTimeInSeconds: 12000 - maxTimeBetweenOutput: 1200 - userMessageOnFailure: "Failed to copy qtbase/doc/global to documentation directory." - - type: UploadArtifact - archiveDirectory: '{{.BuildDir}}/doc' - transferType: UploadModuleDocumentation - maxTimeInSeconds: 1800 - maxTimeBetweenOutput: 1800 - enable_if: - condition: property - property: features - contains_value: "Documentation" + - !include "{{qt/qt5}}/coin_qt_build_template.yaml" Test: - type: EnvironmentVariable