From bd220304ef815421d09c1abd6aee2233b6eee42b Mon Sep 17 00:00:00 2001 From: Thomas Vander Stichele Date: Wed, 17 Jan 2007 06:15:33 +0000 Subject: [PATCH] configure.ac: fix use of PKG_CHECK_MODULES check for a pygobject of at least 2.11 for a value_from_pyobject fix Original commit message from CVS: * configure.ac: fix use of PKG_CHECK_MODULES check for a pygobject of at least 2.11 for a value_from_pyobject fix * gst/gstobject.override: use it --- ChangeLog | 8 ++++++++ configure.ac | 14 +++++++++++++- gst/gstobject.override | 8 ++++++++ 3 files changed, 29 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index cf131817ff..c6c192307a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2007-01-17 Thomas Vander Stichele + + * configure.ac: + fix use of PKG_CHECK_MODULES + check for a pygobject of at least 2.11 for a value_from_pyobject fix + * gst/gstobject.override: + use it + 2007-01-17 Thomas Vander Stichele * gst/extend/discoverer.py: diff --git a/configure.ac b/configure.ac index d02309c9dd..0fd345ac69 100644 --- a/configure.ac +++ b/configure.ac @@ -227,7 +227,10 @@ AC_SUBST(GST_PLUGINS_BASE_CFLAGS) dnl check for pygobject PKG_CHECK_MODULES(PYGOBJECT, pygobject-2.0 >= $PYGOBJECT_REQ, - HAVE_PYGOBJECT="yes", HAVE_PYGOBJECT="no") + [ + HAVE_PYGOBJECT="yes" + AC_MSG_RESULT([yes]) + ], HAVE_PYGOBJECT="no") if test "x$HAVE_PYGOBJECT" = "xno"; then dnl If we don't have pygobject, then check for pygtk @@ -238,6 +241,15 @@ if test "x$HAVE_PYGOBJECT" = "xno"; then fi AC_SUBST(PYGOBJECT_CFLAGS) +dnl FIXME: check for a pygobject with a correct pyg_param_gvalue_from_pyobject +PKG_CHECK_MODULES(PYGOBJECT_2_12, pygobject-2.0 >= 2.11.1, + [ + HAVE_PYGOBJECT_2_12="yes" + AC_MSG_RESULT([yes]) + AC_DEFINE_UNQUOTED(HAVE_PYGOBJECT_2_12, 1, + [Defined if we have a 2.12 series pygobject]) + ], HAVE_PYGOBJECT_2_12="no") + dnl define an ERROR_CFLAGS Makefile variable GST_SET_ERROR_CFLAGS($GST_CVS) diff --git a/gst/gstobject.override b/gst/gstobject.override index ed2d45d2b0..139130e99b 100644 --- a/gst/gstobject.override +++ b/gst/gstobject.override @@ -102,6 +102,14 @@ set_property_from_pspec(GObject *obj, } g_value_init(&value, G_PARAM_SPEC_VALUE_TYPE(pspec)); +/* FIXME: bug in pygtk 2.8 series; see +http://svn.gnome.org/viewcvs/pygobject/trunk/gobject/pygobject.h?rev=566&r1=564&r2=566 */ + +#ifndef PYGOBJECT_2_12 +#undef pyg_param_gvalue_from_pyobject +#define pyg_param_gvalue_from_pyobject (_PyGObject_API->gvalue_from_param_pyobject) +#endif + if (pyg_param_gvalue_from_pyobject(&value, pvalue, pspec) < 0) { PyErr_SetString(PyExc_TypeError, "could not convert argument to correct param type");