On 12/18/2011 06:15 AM, Gary V. Vaughan wrote:
+# 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
+    : ${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
+fi
This will likely break with dash 0.5.2:

  $ cat foo.sh
  #!/bin/sh
  if test set = "${BASH_VERSION+set}"; 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
  fi
  $ dash foo.sh
  foo.sh: 7: Syntax error: Bad substitution

Regards,
    Stefano

Reply via email to