To check for a suitable python version, I added some checks to the autoconf script. I have tested it with Python versions from 2.1 to 2.4 but only under debian. Can someone review or check this patch before I commit it? -------------- next part -------------- ? ANK-TODO ? DIFF Index: acinclude.m4 =================================================================== RCS file: /cvsroot/crossfire/crossfire/acinclude.m4,v retrieving revision 1.5 diff -w -c -5 -r1.5 acinclude.m4 *** acinclude.m4 16 May 2004 06:13:20 -0000 1.5 --- acinclude.m4 20 Feb 2005 19:49:08 -0000 *************** *** 43,54 **** fi fi if test "x$PYTHON_LIB" != "x" ; then AC_CHECK_LIB(pthread, main, PY_LIBS="$PY_LIBS -lpthread", , $PY_LIBS ) AC_CHECK_LIB(util, main, PY_LIBS="$PY_LIBS -lutil", , $PY_LIBS ) ! $1 fi fi AC_SUBST(PYTHON_LIB) AC_SUBST(PY_LIBS) AC_SUBST(PY_INCLUDES) --- 43,105 ---- fi fi if test "x$PYTHON_LIB" != "x" ; then AC_CHECK_LIB(pthread, main, PY_LIBS="$PY_LIBS -lpthread", , $PY_LIBS ) AC_CHECK_LIB(util, main, PY_LIBS="$PY_LIBS -lutil", , $PY_LIBS ) ! ! AC_MSG_CHECKING([whether python supports the "L" format specifier]) ! saved_LIBS="$LIBS" ! LIBS="$LIBS $PYTHON_LIB $PY_LIBS" ! saved_CFLAGS="$CFLAGS" ! CFLAGS="$CFLAGS $PY_INCLUDES" ! AC_TRY_RUN([ ! #include <Python.h> ! #include <stdlib.h> ! ! static PyObject *callback(PyObject *self, PyObject *args) ! { ! long long val; ! ! if (!PyArg_ParseTuple(args, "L", &val)) ! return NULL; ! if (val != 1) ! exit(1); ! Py_INCREF(Py_None); ! return Py_None; ! } ! ! static PyMethodDef methods[] = { ! {"callback", callback, METH_VARARGS}, ! {NULL, NULL, 0, NULL}, ! }; ! ! int main() ! { ! Py_Initialize(); ! Py_InitModule("test", methods); ! return(PyRun_SimpleString("import test\ntest.callback(1)\n") != 0); ! } ! ], [ ! AC_MSG_RESULT([yes]) ! ], [ ! AC_MSG_RESULT([no]) ! PYTHON_LIB="" ! PYLIBS="" ! PY_INCLUDE="" ! ], ! [ ! AC_MSG_RESULT([skipped because cross compiling]) ! ]) ! LIBS="$saved_LIBS" ! CFLAGS="$saved_CFLAGS" ! fi fi + + if test "x$PYTHON_LIB" = "x" ; then + $2 + else + $1 fi AC_SUBST(PYTHON_LIB) AC_SUBST(PY_LIBS) AC_SUBST(PY_INCLUDES)