bootstrap: fix/improve find_tool.

* bootstrap (find_tool): Improve error messages.
	Fix typo about find_tool_names.
	(cherry-picked from 1deef26d0c).
This commit is contained in:
Akim Demaille
2009-09-03 10:50:32 +02:00
parent 9852b61c2b
commit 3710dd02e2
2 changed files with 20 additions and 6 deletions

View File

@@ -1,3 +1,9 @@
2009-09-03 Akim Demaille <demaille@gostai.com>
bootstrap: fix/improve find_tool.
* bootstrap (find_tool): Improve error messages.
Fix typo about find_tool_names.
2009-08-29 Joel E. Denny <jdenny@clemson.edu>
Fix gcc 3.4.4 shadowing warning reported by Eric Blake.

View File

@@ -142,12 +142,18 @@ vc_ignore=auto
# find_tool ENVVAR NAMES...
# -------------------------
# Look for some needed program. Use the value of the ENVVAR if set,
# otherwise look for the first of the NAMES that can be run (i.e.,
# supports --version). If found, set ENVVAR to the program name,
# die otherwise.
find_tool ()
{
# Find sha1sum, named gsha1sum on MacPorts.
find_tool_envvar=$1
shift
if eval test x"\$$find_tool_envvar" = x; then
find_tool_names=$@
eval "find_tool_res=\$$find_tool_envvar"
if test x"$find_tool_res" = x; then
for i
do
if ($i --version </dev/null) >/dev/null 2>&1; then
@@ -155,16 +161,18 @@ find_tool ()
break
fi
done
else
find_tool_error_prefix="\$$find_tool_envvar: "
fi
if test x"$find_tool_res" = x; then
echo >&2 "$0: $find_tool_name is required"
echo >&2 "$0: one of these is required: $find_tool_names"
exit 1
fi
($find_tool_res --version </dev/null) >/dev/null 2>&1 || {
echo >&2 "$0: cannot run $find_tool_res --version"
echo >&2 "$0: ${find_tool_error_prefix}cannot run $find_tool_res --version"
exit 1
}
eval "$find_tool_envvar=\"$find_tool_res\""
eval "$find_tool_envvar=\$find_tool_res"
eval "export $find_tool_envvar"
}