mesonbuild/meson

error when program is not found is not useful

Open

#2,029 建立於 2017年7月3日

在 GitHub 查看
 (2 留言) (0 反應) (0 負責人)Python (4,978 star) (1,465 fork)batch import
bughelp wanted

描述

I have a tags target:

run_target('tags', command : ['etags', '-o', '@0@/@1@'.format(meson.source_root(), 'TAGS')] + all_files)

(The presence of etags is not checked first with find_program on purpose: I want the target to be always there, and just fail with an error message is the program is not found. And I don't want to spam normal builds with a message about a missing etags program, because most users won't need it.)

When this target is executed and ctags is not installed, the message is useless:

$ ninja -C build ctags
[0/1] Running external command ctags.
Could not execute command "ctags".
FAILED: ctags 
'/usr/bin/python3' '/home/zbyszek/src/meson/meson.py' '--internal' 'commandrunner' '/home/zbyszek/src/casync' '/home/zbyszek/src/casync/build' '' '/home/zbyszek/src/meson/mesonintrospect.py' 'ctags' '-o' '/home/zbyszek/src/casync/tags' ...
ninja: build stopped: subcommand failed.

I'd expect the usual:

meson: ‘ctags’: No such file or directory

貢獻者指南