19 lines
522 B
Cheetah
19 lines
522 B
Cheetah
|
#include <Python.h>
|
||
|
|
||
|
PyMODINIT_FUNC
|
||
|
PyInit_{modname}(void)
|
||
|
{{
|
||
|
PyObject *tmp;
|
||
|
if (!(tmp = PyImport_ImportModule("{libname}"))) return NULL;
|
||
|
Py_DECREF(tmp);
|
||
|
void *init_func = PyCapsule_Import("{libname}.init_{full_modname}", 0);
|
||
|
if (!init_func) {{
|
||
|
return NULL;
|
||
|
}}
|
||
|
return ((PyObject *(*)(void))init_func)();
|
||
|
}}
|
||
|
|
||
|
// distutils sometimes spuriously tells cl to export CPyInit___init__,
|
||
|
// so provide that so it chills out
|
||
|
PyMODINIT_FUNC PyInit___init__(void) {{ return PyInit_{modname}(); }}
|