From: Pádraig Brady Date: Sun, 18 Aug 2013 01:05:51 +0000 (+0100) Subject: bootstrap: remove the --version requirement from ancillary tools X-Git-Tag: v0.1~57 X-Git-Url: http://erislabs.org.uk/gitweb/?a=commitdiff_plain;h=25105bbff6caf8e2fa585790e2ae4a32ac6a7265;p=gnulib.git 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. --- diff --git a/ChangeLog b/ChangeLog index 31dc201c0..db4c4db6e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2013-08-29 Pádraig Brady + + 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. + 2013-08-26 Simon Josefsson gc: support HMAC-SHA256 and HMAC-SHA512. diff --git a/build-aux/bootstrap b/build-aux/bootstrap index cc7fc1b7d..e31d17df5 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 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 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 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'