doc: fix build on Windows with Meson 0.58

The `doc` target used `echo` as its command.
On Windows, `echo` is always a shell built-in, there is no binary.
Starting from meson 0.58, `run_target()` always searches for command
executable and no longer accepts `echo` as such on Windows.
Replace plain `echo` with a Python one-liner.

Fixes: d02a2dab2d ("doc: support building HTML guides with meson")
Cc: stable@dpdk.org

Reported-by: Rob Scheepens <rob.scheepens@nutanix.com>
Signed-off-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
This commit is contained in:
Dmitry Kozlyuk 2021-06-30 19:22:35 +03:00 committed by Thomas Monjalon
parent bf66003b51
commit e8c90926bd
2 changed files with 2 additions and 2 deletions

View File

@ -6,13 +6,13 @@ check_symbols = find_program('check-symbols.sh')
ldflags_ibverbs_static = find_program('options-ibverbs-static.sh') ldflags_ibverbs_static = find_program('options-ibverbs-static.sh')
binutils_avx512_check = find_program('binutils-avx512-check.sh') binutils_avx512_check = find_program('binutils-avx512-check.sh')
# set up map-to-win script using python, either built-in or external
python3 = import('python').find_installation(required: false) python3 = import('python').find_installation(required: false)
if python3.found() if python3.found()
py3 = [python3] py3 = [python3]
else else
py3 = ['meson', 'runpython'] py3 = ['meson', 'runpython']
endif endif
echo = py3 + ['-c', 'import sys; print(*sys.argv[1:])']
list_dir_globs = py3 + files('list-dir-globs.py') list_dir_globs = py3 + files('list-dir-globs.py')
map_to_win_cmd = py3 + files('map_to_win.py') map_to_win_cmd = py3 + files('map_to_win.py')
sphinx_wrapper = py3 + files('call-sphinx-build.py') sphinx_wrapper = py3 + files('call-sphinx-build.py')

View File

@ -11,5 +11,5 @@ if doc_targets.length() == 0
else else
message = 'Building docs:' message = 'Building docs:'
endif endif
run_target('doc', command: ['echo', message, doc_target_names], run_target('doc', command: [echo, message, doc_target_names],
depends: doc_targets) depends: doc_targets)