summaryrefslogtreecommitdiff
path: root/src/python-systemd/pyutil.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/python-systemd/pyutil.h')
-rw-r--r--src/python-systemd/pyutil.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/python-systemd/pyutil.h b/src/python-systemd/pyutil.h
index 3b7bc580df..2163fda9ef 100644
--- a/src/python-systemd/pyutil.h
+++ b/src/python-systemd/pyutil.h
@@ -1,5 +1,7 @@
/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+#pragma once
+
/***
This file is part of systemd.
@@ -27,3 +29,20 @@
void cleanup_Py_DECREFp(PyObject **p);
#define _cleanup_Py_DECREF_ __attribute__((cleanup(cleanup_Py_DECREFp)))
+
+#if PY_MAJOR_VERSION >=3
+# define unicode_FromStringAndSize PyUnicode_FromStringAndSize
+# define unicode_FromString PyUnicode_FromString
+# define long_FromLong PyLong_FromLong
+# define long_FromSize_t PyLong_FromSize_t
+# define long_Check PyLong_Check
+# define long_AsLong PyLong_AsLong
+#else
+/* Python 3 type naming convention is used */
+# define unicode_FromStringAndSize PyString_FromStringAndSize
+# define unicode_FromString PyString_FromString
+# define long_FromLong PyInt_FromLong
+# define long_FromSize_t PyInt_FromSize_t
+# define long_Check PyInt_Check
+# define long_AsLong PyInt_AsLong
+#endif