
When we moved building the docs to Meson, we accidentally dropped the -W
flag that we used to have. This lead to us no longer detecting certain
problems in the docs, which is unfortunate.
Let's bring this back gated by the werror meson-option, and wire that up
on the CI end.
Fixes: fdd204538b
("ci: build docs using meson")
Reviewed-by: Dylan Baker <None>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32831>
42 lines
1.0 KiB
Meson
42 lines
1.0 KiB
Meson
get_option('html-docs').require(
|
|
run_command(prog_python, '-c',
|
|
'''
|
|
try:
|
|
from packaging.version import Version
|
|
except:
|
|
from distutils.version import StrictVersion as Version
|
|
import hawkmoth
|
|
assert Version(hawkmoth.__version__) >= Version("0.16.0")
|
|
''', check: false).returncode() == 0,
|
|
error_message: 'hawkmoth >= 0.16.0 required'
|
|
)
|
|
|
|
sphinx_args = []
|
|
if get_option('werror')
|
|
sphinx_args += '-W'
|
|
endif
|
|
|
|
html_docs = custom_target(
|
|
'html',
|
|
depfile: 'docs.d',
|
|
depend_files: files('conf.py'),
|
|
command: [sphinx, '-b', 'html', '-q',
|
|
'-Ddepfile=@DEPFILE@',
|
|
sphinx_args,
|
|
meson.current_source_dir(), '@OUTPUT@'],
|
|
output: 'html',
|
|
build_by_default: get_option('html-docs').enabled(),
|
|
)
|
|
|
|
html_docs_path = get_option('html-docs-path')
|
|
if html_docs_path == ''
|
|
html_docs_path = join_paths(get_option('datadir'), 'doc', 'mesa')
|
|
endif
|
|
|
|
install_subdir(html_docs.full_path(),
|
|
install_dir: html_docs_path,
|
|
exclude_files: ['.buildinfo'],
|
|
exclude_directories: ['.doctrees'],
|
|
strip_directory: true
|
|
)
|