summaryrefslogtreecommitdiff
path: root/build-aux/bootstrap
diff options
context:
space:
mode:
authorPádraig Brady <P@draigBrady.com>2013-08-18 02:05:51 +0100
committerPádraig Brady <P@draigBrady.com>2013-08-29 00:18:26 +0100
commit25105bbff6caf8e2fa585790e2ae4a32ac6a7265 (patch)
tree62d9b31d8d85841dd2af626a5f5a7670b54b3dc1 /build-aux/bootstrap
parent4e1dc0e3d73be7c53e10b8541a0313df3d1ae35b (diff)
downloadgnulib-25105bbff6caf8e2fa585790e2ae4a32ac6a7265.tar.gz
bootstrap: remove the --version requirement from ancillary tools
* build-aux/bootstrap (check_exists): A new refactored function to determine if a command exists. (find_tool): Use the new function which does not require the --version option to be supported. (check_versions): Use the new function.
Diffstat (limited to 'build-aux/bootstrap')
-rwxr-xr-xbuild-aux/bootstrap19
1 files changed, 11 insertions, 8 deletions
diff --git a/build-aux/bootstrap b/build-aux/bootstrap
index cc7fc1b7dc..e31d17df58 100755
--- a/build-aux/bootstrap
+++ b/build-aux/bootstrap
@@ -209,12 +209,16 @@ bootstrap_sync=false
# Use git to update gnulib sources
use_git=true
+check_exists() {
+ ($1 --version </dev/null) >/dev/null 2>&1
+ test $? -lt 126
+}
+
# find_tool ENVVAR NAMES...
# -------------------------
# Search for a required program. Use the value of ENVVAR, if set,
-# otherwise find the first of the NAMES that can be run (i.e.,
-# supports --version). If found, set ENVVAR to the program name,
-# die otherwise.
+# otherwise find the first of the NAMES that can be run.
+# If found, set ENVVAR to the program name, die otherwise.
#
# FIXME: code duplication, see also gnu-web-doc-update.
find_tool ()
@@ -225,7 +229,7 @@ find_tool ()
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
+ if check_exists $i; then
find_tool_res=$i
break
fi
@@ -463,8 +467,7 @@ check_versions() {
if [ "$req_ver" = "-" ]; then
# Merely require app to exist; not all prereq apps are well-behaved
# so we have to rely on $? rather than get_version.
- $app --version >/dev/null 2>&1 </dev/null
- if [ 126 -le $? ]; then
+ if ! check_exists $app; then
warn_ "Error: '$app' not found"
ret=1
fi
@@ -551,10 +554,10 @@ fi
echo "$0: Bootstrapping from checked-out $package sources..."
# See if we can use gnulib's git-merge-changelog merge driver.
-if $use_git && test -d .git && (git --version) >/dev/null 2>/dev/null ; then
+if $use_git && test -d .git && check_exists git; then
if git config merge.merge-changelog.driver >/dev/null ; then
:
- elif (git-merge-changelog --version) >/dev/null 2>/dev/null ; then
+ elif check_exists git-merge-changelog; then
echo "$0: initializing git-merge-changelog driver"
git config merge.merge-changelog.name 'GNU-style ChangeLog merge driver'
git config merge.merge-changelog.driver 'git-merge-changelog %O %A %B'