configure: Improve python logic

- add checks for python3.4
- only warn once for failure to find a version
- only run pkg-config call if the .pc file was actually found
- make unsupported python version non-fatal

Closes #1006
Closes #989
This commit is contained in:
hasufell 2014-06-02 20:48:28 +02:00 committed by TingPing
parent 3de79bca10
commit aa7291fc9c
1 changed files with 18 additions and 7 deletions

View File

@ -295,19 +295,30 @@ if test "x$python" != xno ; then
case $python in case $python in
dnl set python2 default here dnl set python2 default here
python2) python2)
PKG_CHECK_MODULES([PY], [python-2.7], [], [AC_MSG_WARN(Cannot find python-2.7!)]) PKG_CHECK_MODULES([PY], [python-2.7],
PY_VER="`$PKG_CONFIG --modversion python-2.7`";; [PY_VER="`$PKG_CONFIG --modversion python-2.7`"],
[true])
;;
dnl set python3 default here dnl set python3 default here
python3) python3)
PKG_CHECK_MODULES([PY], [python-3.3], [], [AC_MSG_WARN(Cannot find python-3.3!)]) PKG_CHECK_MODULES([PY], [python-3.4],
PY_VER="`$PKG_CONFIG --modversion python-3.3`";; [PY_VER="`$PKG_CONFIG --modversion python-3.4`"],
[true])
if test "$PY_VER" = "" ; then
PKG_CHECK_MODULES([PY], [python-3.3],
[PY_VER="`$PKG_CONFIG --modversion python-3.3`"],
[true])
fi
;;
dnl add broken versions here dnl add broken versions here
python2.5|python2.6|python3.1|python3.2) python2.5|python2.6|python3.1|python3.2)
AC_MSG_ERROR(Unsupported Python version ${python}!);; AC_MSG_WARN(Unsupported Python version ${python}!);;
python*) python*)
python="python-${python#python}" # stay posix compliant python="python-${python#python}" # stay posix compliant
PKG_CHECK_MODULES([PY], [${python}], [], [AC_MSG_WARN(Cannot find "${python}.pc"!)]) PKG_CHECK_MODULES([PY], [${python}],
PY_VER="`$PKG_CONFIG --modversion ${python}`";; [PY_VER="`$PKG_CONFIG --modversion ${python}`"],
[AC_MSG_WARN(Cannot find "${python}.pc"!)])
;;
*) *)
AC_MSG_WARN(Unsupported Python ${python}!) AC_MSG_WARN(Unsupported Python ${python}!)
esac esac