doc: fix build on Windows with Meson 0.58
authorDmitry Kozlyuk <dmitry.kozliuk@gmail.com>
Wed, 30 Jun 2021 16:22:35 +0000 (19:22 +0300)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 9 Jul 2021 12:53:39 +0000 (14:53 +0200)
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: d02a2dab2dfb ("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>
buildtools/meson.build
doc/meson.build

index 0f24b15..bd460e3 100644 (file)
@@ -6,13 +6,13 @@ check_symbols = find_program('check-symbols.sh')
 ldflags_ibverbs_static = find_program('options-ibverbs-static.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)
 if python3.found()
     py3 = [python3]
 else
     py3 = ['meson', 'runpython']
 endif
+echo = py3 + ['-c', 'import sys; print(*sys.argv[1:])']
 list_dir_globs = py3 + files('list-dir-globs.py')
 map_to_win_cmd = py3 + files('map_to_win.py')
 sphinx_wrapper = py3 + files('call-sphinx-build.py')
index 959606b..6f74706 100644 (file)
@@ -11,5 +11,5 @@ if doc_targets.length() == 0
 else
     message = 'Building docs:'
 endif
-run_target('doc', command: ['echo', message, doc_target_names],
+run_target('doc', command: [echo, message, doc_target_names],
     depends: doc_targets)