mirror of
https://gitlab.freedesktop.org/wayland/weston.git
synced 2025-12-20 04:40:07 +01:00
doc: fix Meson warning about install_subdir
../../git/weston/doc/sphinx/meson.build:97: WARNING: Project targets '>= 0.63.0' but uses feature deprecated since '0.60.0': install_subdir with empty directory. It worked by accident and is buggy. Use install_emptydir instead. I get the above warning on a clean build, because the directory in question is empty at configure time. It gets populated at compile time. Having to exclude one file from the build complicated fixing this. custom_target() does not support install-excludes, and it looks like Sphinx does not allow locating the buildfile elsewhere. One option would be to use a meson.add_install_script() to delete the unwanted file after it has been installed, but this seemed more complicated than the solution I chose. The intermediate build directory name needs to change from 'doc' to 'weston', so that I don't need to strip_directory which custom_target does not support. The 'output' array in custom_target() also does not allow outputs to be speficied in sub-directories. The sh script is tidied up a little bit with set -e, otherwise it would have become unreadable. Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.com>
This commit is contained in:
parent
c0a6b7c1c9
commit
6955752b95
2 changed files with 16 additions and 10 deletions
|
|
@ -48,7 +48,7 @@ doxygen_conf_weston = configure_file(
|
||||||
|
|
||||||
script_data = configuration_data()
|
script_data = configuration_data()
|
||||||
script_data.set('SRCDIR', meson.current_build_dir())
|
script_data.set('SRCDIR', meson.current_build_dir())
|
||||||
script_data.set('OUTDIR', meson.current_build_dir() + '/doc')
|
script_data.set('OUTDIR', meson.current_build_dir() / 'weston')
|
||||||
|
|
||||||
# Set a different directory for doctrees to avoid installing them
|
# Set a different directory for doctrees to avoid installing them
|
||||||
script_data.set('DOCTREES_DIR', meson.current_build_dir() + '/doctrees')
|
script_data.set('DOCTREES_DIR', meson.current_build_dir() + '/doctrees')
|
||||||
|
|
@ -82,9 +82,11 @@ endif
|
||||||
sphinx_doc = custom_target(
|
sphinx_doc = custom_target(
|
||||||
'weston-doc-breathe',
|
'weston-doc-breathe',
|
||||||
command: script_doxy_sphinx,
|
command: script_doxy_sphinx,
|
||||||
output: 'doc',
|
output: 'weston',
|
||||||
build_by_default: true,
|
build_by_default: true,
|
||||||
env: sphinx_env,
|
env: sphinx_env,
|
||||||
|
install: true,
|
||||||
|
install_dir: dir_data / 'doc',
|
||||||
)
|
)
|
||||||
|
|
||||||
# we need this because we will have a stale 'doc' directory
|
# we need this because we will have a stale 'doc' directory
|
||||||
|
|
@ -93,10 +95,3 @@ docs = run_target(
|
||||||
'docs',
|
'docs',
|
||||||
command: script_doxy_sphinx,
|
command: script_doxy_sphinx,
|
||||||
)
|
)
|
||||||
|
|
||||||
install_subdir(
|
|
||||||
sphinx_doc.full_path(),
|
|
||||||
install_dir: dir_data / 'doc' / 'weston',
|
|
||||||
exclude_files: '.buildinfo',
|
|
||||||
strip_directory: true,
|
|
||||||
)
|
|
||||||
|
|
|
||||||
|
|
@ -6,4 +6,15 @@ else
|
||||||
SPHINX_WERROR=""
|
SPHINX_WERROR=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@DOXYGEN_CMD@ @DOXYGEN_CONF@ && @SPHINX_CMD@ $SPHINX_WERROR -E -q -j auto -d @DOCTREES_DIR@ @SRCDIR@ @OUTDIR@
|
set -e
|
||||||
|
|
||||||
|
BUILDINFO_ORIG="@OUTDIR@/.buildinfo"
|
||||||
|
BUILDINFO_SAVE="@SRCDIR@/buildinfo.save"
|
||||||
|
|
||||||
|
[ -f "$BUILDINFO_SAVE" ] && mv -f "$BUILDINFO_SAVE" "$BUILDINFO_ORIG"
|
||||||
|
|
||||||
|
@DOXYGEN_CMD@ @DOXYGEN_CONF@
|
||||||
|
|
||||||
|
@SPHINX_CMD@ $SPHINX_WERROR -E -q -j auto -d @DOCTREES_DIR@ @SRCDIR@ @OUTDIR@
|
||||||
|
|
||||||
|
mv -f "$BUILDINFO_ORIG" "$BUILDINFO_SAVE"
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue