diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2011-07-12 21:22:22 +0200 |
---|---|---|
committer | Stephen Gallagher <sgallagh@redhat.com> | 2011-07-13 11:00:47 -0400 |
commit | 72e60fd4eabcfbcdbfe01e8c38b94052bc6c2067 (patch) | |
tree | 6702b1ff93ef9b3fd66ff5b921bb9732bd7f96a0 /src/external | |
parent | 22d268c88f6d324b3a66846af007b06488eddae7 (diff) | |
download | sssd-72e60fd4eabcfbcdbfe01e8c38b94052bc6c2067.tar.gz sssd-72e60fd4eabcfbcdbfe01e8c38b94052bc6c2067.tar.bz2 sssd-72e60fd4eabcfbcdbfe01e8c38b94052bc6c2067.zip |
Fix python HBAC bindings for python <= 2.4
Several parts of the HBAC python bindings did not work with old Python
versions, such as the one shipped in RHEL5.
The changes include:
* a compatibility wrapper around python set object
* PyModule_AddIntMacro compat macro
* Py_ssize_t compat definition
* Do not use PyUnicode_FromFormat
* several function prototypes and structures used to have "char
arguments where they have "const char *" in recent versions.
This caused compilation warnings this patch mitigates by using
the discard_const hack on python 2.4
Diffstat (limited to 'src/external')
-rw-r--r-- | src/external/python.m4 | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/external/python.m4 b/src/external/python.m4 index db598638..00487a74 100644 --- a/src/external/python.m4 +++ b/src/external/python.m4 @@ -56,3 +56,23 @@ AC_DEFUN([AM_CHECK_PYTHON_HEADERS], ]) +dnl Checks for a couple of functions we use that may not be defined +dnl in some older python versions used e.g. on RHEL5 +AC_DEFUN([AM_CHECK_PYTHON_COMPAT], +[AC_REQUIRE([AM_CHECK_PYTHON_HEADERS]) + save_CPPFLAGS="$CPPFLAGS" + save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES" + LIBS="$LIBS $PYTHON_LIBS" + + AC_CHECK_TYPE(Py_ssize_t, + [ AC_DEFINE_UNQUOTED(HAVE_PY_SSIZE_T, 1, [Native Py_ssize_t type]) ], + [], + [[#include <Python.h>]]) + + AC_CHECK_FUNCS([PySet_New PySet_Add PyErr_NewExceptionWithDoc]) + AC_CHECK_DECLS([PySet_Check, PyModule_AddIntMacro, PyUnicode_FromString], [], [], [[#include <Python.h>]]) + + CPPFLAGS="$save_CPPFLAGS" + LIBS="$save_LIBS" +]) |