summaryrefslogtreecommitdiffstats
path: root/external_libs/python/pyzmq-14.7.0/buildutils/initlibsodium.c
diff options
context:
space:
mode:
Diffstat (limited to 'external_libs/python/pyzmq-14.7.0/buildutils/initlibsodium.c')
-rw-r--r--external_libs/python/pyzmq-14.7.0/buildutils/initlibsodium.c45
1 files changed, 45 insertions, 0 deletions
diff --git a/external_libs/python/pyzmq-14.7.0/buildutils/initlibsodium.c b/external_libs/python/pyzmq-14.7.0/buildutils/initlibsodium.c
new file mode 100644
index 00000000..4360f1ad
--- /dev/null
+++ b/external_libs/python/pyzmq-14.7.0/buildutils/initlibsodium.c
@@ -0,0 +1,45 @@
+/*
+This file is from pyzmq-static by Brandon Craig-Rhodes,
+and used under the BSD license
+
+py3compat from http://wiki.python.org/moin/PortingExtensionModulesToPy3k
+
+Provide the init function that Python expects
+when we compile libsodium by pretending it is a Python extension.
+*/
+#include "Python.h"
+
+static PyMethodDef Methods[] = {
+ {NULL, NULL, 0, NULL}
+};
+
+#if PY_MAJOR_VERSION >= 3
+
+static struct PyModuleDef moduledef = {
+ PyModuleDef_HEAD_INIT,
+ "libsodium",
+ NULL,
+ -1,
+ Methods,
+ NULL,
+ NULL,
+ NULL,
+ NULL
+};
+
+PyMODINIT_FUNC
+PyInit_libsodium(void)
+{
+ PyObject *module = PyModule_Create(&moduledef);
+ return module;
+}
+
+#else // py2
+
+PyMODINIT_FUNC
+initlibsodium(void)
+{
+ (void) Py_InitModule("libsodium", Methods);
+}
+
+#endif