tools/build: Improve host-symlinks failure mode

Since set -e is enabled by sys.mk, if the tool cannot be found in PATH
then the entire shell command line fails, causing us to not print the
error message below and instead silently (due to the @) fail, only
getting the usual "Error code 1" print from bmake. Thus, provide a dummy
default that will never exist (the same as is used by meta2deps.sh) if
which fails so that we get the error message as intended.

MFC after:	1 week
This commit is contained in:
Jessica Clarke 2021-03-20 13:00:34 +00:00
parent cf5d111240
commit 8c9e45503f
1 changed files with 2 additions and 1 deletions

View File

@ -301,7 +301,8 @@ _host_tools_to_symlink:=${_host_tools_to_symlink:Nsh}
host-symlinks:
@echo "Linking host tools into ${DESTDIR}/bin"
.for _tool in ${_host_tools_to_symlink}
@export PATH=$${PATH}:/usr/local/bin; source_path=`which ${_tool}`; \
@export PATH=$${PATH}:/usr/local/bin; \
source_path=`which ${_tool} || echo /dev/null/no/such`; \
if [ ! -e "$${source_path}" ] ; then \
echo "Cannot find host tool '${_tool}' in PATH ($$PATH)." >&2; false; \
fi; \