Can you try applying these two patches to the configure script and see
what happens?
diff --git a/lib/m4sugar/m4sh.m4 b/lib/m4sugar/m4sh.m4
index cc4c32f..cc079d5 100644
--- a/lib/m4sugar/m4sh.m4
+++ b/lib/m4sugar/m4sh.m4
@@ -415,8 +415,10 @@ as_fn_success () { as_fn_return 0; }
as_fn_failure () { as_fn_return 1; }
as_fn_ret_success () { return 0; }
as_fn_ret_failure () { return 1; }
+as_fn_cmdsubst () { echo `uname` > /dev/null; return; }
exitcode=0
+as_fn_cmdsubst || : # detect crash on DJGPP bash
as_fn_success || { exitcode=1; echo as_fn_success failed.; }
as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
diff --git a/lib/m4sugar/m4sh.m4 b/lib/m4sugar/m4sh.m4
index cc4c32f..cc079d5 100644
--- a/lib/m4sugar/m4sh.m4
+++ b/lib/m4sugar/m4sh.m4
@@ -415,8 +415,10 @@ as_fn_success () { as_fn_return 0; }
as_fn_failure () { as_fn_return 1; }
as_fn_ret_success () { return 0; }
as_fn_ret_failure () { return 1; }
+as_fn_cmdsubst () { : `uname`; return; }
exitcode=0
+as_fn_cmdsubst || : # detect crash on DJGPP bash
as_fn_success || { exitcode=1; echo as_fn_success failed.; }
as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
Is there any other shell, e.g. ash on DJGPP? (I guess we'll see it from
the results of this test, though).
Paolo