diff options
author | Joan Touzet <wohali@apache.org> | 2013-03-27 17:52:27 -0400 |
---|---|---|
committer | Joan Touzet <wohali@apache.org> | 2013-03-27 17:52:27 -0400 |
commit | 8d379113eb6ce0300f56711aca274bb87d400dd0 (patch) | |
tree | 7686eaa41df4fa2878898f3bdc531049d74d0d1d | |
parent | e18f0bdb3702a7874f1a6051bcf406d8c279b40c (diff) | |
download | couchdb-8d379113eb6ce0300f56711aca274bb87d400dd0.tar.gz |
Add upper bound check on Erlang (<R16A)
-rw-r--r-- | configure.ac | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/configure.ac b/configure.ac index 91e2d3d2f..53e23f147 100644 --- a/configure.ac +++ b/configure.ac @@ -407,24 +407,29 @@ case "$(uname -s)" in esac -erlang_version_error="The installed Erlang version is less than 5.7.4 (R13B04)." +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Erlang version compatibility" >&5 +$as_echo_n "checking Erlang version compatibility... " >&6; } +erlang_version_error="The installed Erlang version must be >= R13B04 (erts-5.7.4) and < R16A (erts-5.10)" -version="`${ERL} -version 2>&1 | ${SED} 's/[[^0-9]]/ /g'`" +version="`${ERL} -version 2>&1 | ${SED} 's/[[^0-9]]/ /g'` 0 0 0" +major_version=`echo $version | ${AWK} "{print \\$1}"` +minor_version=`echo $version | ${AWK} "{print \\$2}"` +patch_version=`echo $version | ${AWK} "{print \\$3}"` -if test `echo $version | ${AWK} "{print \\$1}"` -lt 5; then - AC_MSG_ERROR([$erlang_version_error]) +if test $major_version -ne 5; then + as_fn_error $? "$erlang_version_error" "$LINENO" 5 fi -if test `echo $version | ${AWK} "{print \\$2}"` -lt 7; then - AC_MSG_ERROR([$erlang_version_error]) +if test $minor_version -lt 7 -o $minor_version -gt 9; then + as_fn_error $? "$erlang_version_error" "$LINENO" 5 fi -if test `echo $version | ${AWK} "{print \\$2}"` -eq 7; then - if test `echo $version | ${AWK} "{print \\$3}"` -lt 4; then - AC_MSG_ERROR([$erlang_version_error]) - fi +if test $minor_version -eq 7 -a $patch_version -lt 4; then + as_fn_error $? "$erlang_version_error" "$LINENO" 5 fi +AC_MSG_RESULT(compatible) + otp_release="`\ ${ERL} -noshell \ -eval 'io:put_chars(erlang:system_info(otp_release)).' \ |