Provide our own patched AM_PYTHON_CHECK_VERSION that requires python <3.0

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39890 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Julien Rioux 2011-10-19 20:50:58 +00:00
parent 7ddf5f3ba1
commit e8daa48bc1

View File

@ -644,3 +644,24 @@ AC_DEFUN([LYX_SET_VERSION_INFO],
AC_SUBST(LYX_DIR_VER,"$lyx_dir_ver")
AC_SUBST(LYX_USERDIR_VER,"$lyx_userdir_ver")
])
# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
# ---------------------------------------------------------------------------
# Copied from autoconf 2.68, added a check that python version is < 3.0
# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION.
# Run ACTION-IF-FALSE otherwise.
# This test uses sys.hexversion instead of the string equivalent (first
# word of sys.version), in order to cope with versions such as 2.2c1.
# This supports Python 2.0 or higher. (2.0 was released on October 16, 2000).
AC_DEFUN([AM_PYTHON_CHECK_VERSION],
[prog="import sys
# split strings by '.' and convert to numeric. Append some zeros
# because we need at least 4 digits for the hex conversion.
# map returns an iterator in Python 3.0 and a list in 2.x
minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]]
minverhex = 0
maxverhex = 50331648 # = 3.0.0.0
# xrange is not present in Python 3.0 and range returns an iterator
for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]]
sys.exit(sys.hexversion < minverhex or sys.hexversion >= maxverhex)"
AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])