Reject too-old Python versions a bit sooner.

Commit 04aad4018 added this check after the search for a Python shared
library, which seems to me to be a pretty unfriendly ordering.  The
search might fail for what are basically version-related reasons, and
in such a case it'd be better to say "your Python is too old" than
"could not find shared library for Python".
This commit is contained in:
Tom Lane 2017-02-21 11:28:23 -05:00
parent 04aad40186
commit 4e5ce3c1ae
3 changed files with 12 additions and 7 deletions

View File

@ -18,7 +18,8 @@ fi
# _PGAC_CHECK_PYTHON_DIRS
# -----------------------
# Determine the name of various directories of a given Python installation.
# Determine the name of various directories of a given Python installation,
# as well as the Python version.
AC_DEFUN([_PGAC_CHECK_PYTHON_DIRS],
[AC_REQUIRE([PGAC_PATH_PYTHON])
AC_MSG_CHECKING([for Python distutils module])
@ -36,6 +37,11 @@ python_version=`${PYTHON} -c "import sys; print(sys.version[[:3]])"`
python_configdir=`${PYTHON} -c "import distutils.sysconfig; print(' '.join(filter(None,distutils.sysconfig.get_config_vars('LIBPL'))))"`
AC_MSG_RESULT([$python_configdir])
# Reject unsupported Python versions as soon as practical.
if test "$python_majorversion" -lt 3 -a "$python_minorversion" -lt 4; then
AC_MSG_ERROR([Python version $python_version is too old (version 2.4 or later is required)])
fi
AC_MSG_CHECKING([Python include directories])
python_includespec=`${PYTHON} -c "
import distutils.sysconfig

8
configure vendored
View File

@ -7594,6 +7594,11 @@ python_configdir=`${PYTHON} -c "import distutils.sysconfig; print(' '.join(filte
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $python_configdir" >&5
$as_echo "$python_configdir" >&6; }
# Reject unsupported Python versions as soon as practical.
if test "$python_majorversion" -lt 3 -a "$python_minorversion" -lt 4; then
as_fn_error $? "Python version $python_version is too old (version 2.4 or later is required)" "$LINENO" 5
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Python include directories" >&5
$as_echo_n "checking Python include directories... " >&6; }
python_includespec=`${PYTHON} -c "
@ -7699,9 +7704,6 @@ $as_echo "${python_libspec} ${python_additional_libs}" >&6; }
if test "$python_majorversion" -lt 3 -a "$python_minorversion" -lt 4; then
as_fn_error $? "Python version $python_version is too old (version 2.4 or later is required)" "$LINENO" 5
fi
fi
if test "$cross_compiling" = yes && test -z "$with_system_tzdata"; then

View File

@ -927,9 +927,6 @@ fi
if test "$with_python" = yes; then
PGAC_PATH_PYTHON
PGAC_CHECK_PYTHON_EMBED_SETUP
if test "$python_majorversion" -lt 3 -a "$python_minorversion" -lt 4; then
AC_MSG_ERROR([Python version $python_version is too old (version 2.4 or later is required)])
fi
fi
if test "$cross_compiling" = yes && test -z "$with_system_tzdata"; then