-
-
Save kdcro101/9987b36f31fcd624e91e39ec7d5208aa to your computer and use it in GitHub Desktop.
Revisions
-
lucasea777 revised this gist
May 19, 2018 . 3 changed files with 30 additions and 5 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1 +1,4 @@ gcc -fpic --shared $(python3-config --includes) greetmodule.c -o greet.abi3.so # can also use $(pkg-config --cflags python-3.5) # or # python3 setup.py install --record files.txt --user This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -20,8 +20,16 @@ static PyMethodDef GreetMethods[] = { {NULL, NULL, 0, NULL} }; static struct PyModuleDef greet = { PyModuleDef_HEAD_INIT, "greet", /* name of module */ "", /* module documentation, may be NULL */ -1, /* size of per-interpreter state of the module, or -1 if the module keeps state in global variables. */ GreetMethods }; PyMODINIT_FUNC PyInit_greet(void) { return PyModule_Create(&greet); } This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,14 @@ from setuptools import setup, Extension setup( name='greet', version='1.0', description='Python Package with Hello World C Extension', ext_modules=[ Extension( 'greet', sources=['greetmodule.c'], py_limited_api=True) ], ) -
Artanis created this gist
Sep 17, 2011 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1 @@ gcc -fpic --shared $(python-config --includes) greetmodule.c -o greetmodule.so This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,27 @@ #include <Python.h> static PyObject * greet_name(PyObject *self, PyObject *args) { const char *name; if (!PyArg_ParseTuple(args, "s", &name)) { return NULL; } printf("Hello %s!\n", name); Py_RETURN_NONE; } static PyMethodDef GreetMethods[] = { {"greet", greet_name, METH_VARARGS, "Greet an entity."}, {NULL, NULL, 0, NULL} }; PyMODINIT_FUNC initgreet(void) { (void) Py_InitModule("greet", GreetMethods); } This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,7 @@ import greet def main(): greet.greet('World') if __name__ == "__main__": main()