qt5base-lts/coin/instructions/cmake_documentation_build.yaml
Toni Saario 98e1760d2e Build docs in-tree
The actual module build is done in-tree and after this attempting
to do shadow build of the dirty source directory causes issues in
some modules.

Pick-to: 6.2
Change-Id: I74bca186b238c5c1f10576b4f821efdf66b827ed
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2021-11-12 16:44:22 +00:00

39 lines
1.4 KiB
YAML

type: Group
instructions:
- type: ChangeDirectory
directory: "{{.SourceDir}}"
# If documentation feature is present, Coin installs top-level documentation
# built by product(qt5) build into <module_name>_doc_build/doc. Coin will
# silently omit installing the top-level documentations if not built by the product.
- type: ExecuteCommand
command: "rsync -a {{.SourceDir}}_doc_build/doc {{.SourceDir}}"
maxTimeInSeconds: 300
maxTimeBetweenOutput: 300
userMessageOnFailure: Failed to copy top-level docs to build dir.
# Filter list is created to exclude everything else than the
# generated documentation from the documentation archive.
- type: CreateFileListFromDirectory
directory: "{{.SourceDir}}/doc"
filterListFileName: "doc_build_filter"
userMessageOnFailure: "Failed to create filter list for docs"
- type: ExecuteCommand
command: "{{.Env.ENV_PREFIX}} cmake --build . --target docs -v"
maxTimeInSeconds: 6000
maxTimeBetweenOutput: 1200
userMessageOnFailure: Failed to generate documentation.
- type: UploadArtifact
archiveDirectory: "{{.SourceDir}}/doc"
transferType: UploadModuleDocumentation
filterListFileName: "doc_build_filter"
maxTimeInSeconds: 1200
maxTimeBetweenOutput: 1200
enable_if:
condition: and
conditions:
- condition: property
property: features
contains_value: Documentation
- condition: runtime
env_var: BUILD_DOCUMENTATION
not_equals_value: null