summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGary V. Vaughan <gary@gnu.org>2011-12-18 20:41:10 +0700
committerGary V. Vaughan <gary@gnu.org>2011-12-18 20:46:47 +0700
commiteabd3ad629a8a7112c1bf58aeaf26dc79fbe0ce2 (patch)
tree6e7a08f4717a083127043317622d4282c0068f13
parent51c1877e70cdf5ca617d7ff403c1ae740d8b3a40 (diff)
downloadlibtool-eabd3ad629a8a7112c1bf58aeaf26dc79fbe0ce2.tar.gz
libtool: make fork minimisation compatible with dash and zsh.
* build-aub/general.m4sh (lt_HAVE_PLUSEQ_OP): Instead of using $((..)) arithmetic, which causes an error on dash, use a case based bash version check. (lt_HAVE_ARITH_OP, lt_HAVE_XSI_OPS): Also short circuit the feature probing forks and set these automatically when zsh is detected. Reported by Stefano Lattarini. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
-rw-r--r--build-aux/general.m4sh12
1 files changed, 7 insertions, 5 deletions
diff --git a/build-aux/general.m4sh b/build-aux/general.m4sh
index e96c0e4b..3cfecee7 100644
--- a/build-aux/general.m4sh
+++ b/build-aux/general.m4sh
@@ -75,14 +75,16 @@ basename='s|^.*/||'
# We should try to minimise forks, especially on Windows where they are
-# unreasonably slow, so skip the feature probes when bash is being used:
-if test set = "${BASH_VERSION+set}"; then
+# unreasonably slow, so skip the feature probes when bash or zsh are
+# being used:
+if test set = "${BASH_VERSION+set}${ZSH_VERSION}"; then
: ${lt_HAVE_ARITH_OP="yes"}
: ${lt_HAVE_XSI_OPS="yes"}
# The += operator was introduced in bash 3.1
- test -z "$lt_HAVE_PLUSEQ_OP" \
- && test 3000 -lt "$((${BASH_VERSINFO[0]}*1000 + ${BASH_VERSINFO[1]}))" \
- && lt_HAVE_PLUSEQ_OP=yes
+ case $BASH_VERSION in
+ [12].* | 3.0 | 3.0.*) ;;
+ *) lt_HAVE_PLUSEQ_OP=yes ;;
+ esac
fi