[Spice-devel] [spice-gtk 3/3] build-sys: Add real autodetection of python
Christophe Fergeau
cfergeau at redhat.com
Fri Nov 15 09:20:17 PST 2013
configure help text says that by default python will be used automatically
if appropriate, however this only means that on !windows and !gtk3, we will
force build of the python bindings, and fail if any needed package to build
them is missing.
This commit improves on the current checks so that when autodetecting
python, if a package is missing then build of the bindings is silently
disabled rather than failing.
---
configure.ac | 50 ++++++++++++++++++++++++++++++++++++++++++--------
1 file changed, 42 insertions(+), 8 deletions(-)
diff --git a/configure.ac b/configure.ac
index 7db6c0d..7d95155 100644
--- a/configure.ac
+++ b/configure.ac
@@ -571,20 +571,42 @@ AC_SUBST(VAPIDIR)
AC_ARG_WITH([python],
AS_HELP_STRING([--with-python], [build python bindings @<:@default=auto@:>@]),
[case "$withval" in
- yes|no) with_python="$withval";;
+ yes|no|auto) with_python="$withval";;
*) AC_MSG_ERROR([bad value $withval for python option]) ;;
esac],
[AS_IF([test "$with_gtk" = "3.0" || test "x$os_win32" = "xyes"],
- [with_python=no],[with_python=yes])]
+ [with_python=no],[with_python=auto])]
)
-if test "x$with_python" = "xyes"; then
- PKG_CHECK_MODULES(PYGTK, pygtk-2.0 >= 2.0.0)
+if test "x$with_python" != "xno"; then
+ PKG_CHECK_MODULES(PYGTK, [pygtk-2.0 >= 2.0.0], [have_pygtk=yes], [have_pygtk=no])
AC_SUBST(PYGTK_CFLAGS)
AC_SUBST(PYGTK_LIBS)
+ if test "x$have_pygtk" != "xyes"
+ then
+ if test "x$with_python" = "xyes"
+ then
+ AC_MSG_ERROR("No pygtk found")
+ else
+ with_python=no
+ fi
+ fi
+fi
- AM_PATH_PYTHON
+if test "x$with_python" != "xno"; then
+ AM_PATH_PYTHON([], [have_python=yes], [have_python=no])
+ if test "x$have_python" != "xyes"
+ then
+ if test "x$with_python" = "xyes"
+ then
+ AC_MSG_ERROR("No python found")
+ else
+ with_python=no
+ fi
+ fi
+fi
+if test "x$with_python" != "xno"; then
AC_MSG_CHECKING([whether $PYTHON version >= 2.0])
HAVE_PYTHON_REQUIRED=no
AM_PYTHON_CHECK_VERSION([$PYTHON], [2.0],
@@ -595,18 +617,30 @@ if test "x$with_python" = "xyes"; then
if test "x$HAVE_PYTHON_REQUIRED" != "xyes"
then
- AC_MSG_ERROR("No suitable python found")
+ if test "x$with_python" = "xyes"
+ then
+ AC_MSG_ERROR("No suitable python found")
+ else
+ with_python=no
+ fi
fi
+fi
+if test "x$with_python" != "xno"; then
AM_CHECK_PYTHON_HEADERS(have_python_headers=yes,have_python_headers=no)
if test "x$have_python_headers" != "xyes"
then
- AC_MSG_ERROR("No python development headers found")
+ if test "x$with_python" = "xyes"
+ then
+ AC_MSG_ERROR("No python development headers found")
+ else
+ with_python=no
+ fi
fi
fi
-AM_CONDITIONAL(WITH_PYTHON, [test "x$with_python" = "xyes"])
+AM_CONDITIONAL(WITH_PYTHON, [test "x$with_python" != "xno"])
AC_ARG_ENABLE([dbus],
--
1.8.4.2
More information about the Spice-devel
mailing list