From: Jérémie Galarneau Date: Mon, 14 Jan 2013 16:45:48 +0000 (+0000) Subject: Extras: Redefined PyInt_AsSsize_T to PyLong_AsSsize_t. X-Git-Tag: v2.2.0-rc1~109 X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=commitdiff_plain;h=6c7ee73ef9b93eb6bd4381a4a4dfc96d45b7d401 Extras: Redefined PyInt_AsSsize_T to PyLong_AsSsize_t. Python 3 merges PyInt and PyLong types. This fixes the undefined symbol error encountered when using the bindings with Python 3. Signed-off-by: Jérémie Galarneau Signed-off-by: David Goulet --- diff --git a/extras/bindings/swig/python/lttng.i.in b/extras/bindings/swig/python/lttng.i.in index 0d6d1e952..244bc2282 100644 --- a/extras/bindings/swig/python/lttng.i.in +++ b/extras/bindings/swig/python/lttng.i.in @@ -15,6 +15,14 @@ multiple concurrent processes and threads. Tracing across multiple systems is al #include %} +%{ +#if PY_MAJOR_VERSION >= 3 +// The PyInt and PyLong types were unified as of Python 3 +// This makes the typemap code useable with both Python 2 and 3. +#define PyInt_AsSsize_t PyLong_AsSsize_t +#endif +%} + typedef unsigned int uint32_t; typedef int int32_t; typedef unsigned long long uint64_t;