Mercurial > cpython-lru_cache-weakref
view Python/dynload_atheos.c @ 54506:db88a67e38ee 2.6
Merged revisions 73129 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r73129 | antoine.pitrou | 2009-06-02 01:23:16 +0200 (mar., 02 juin 2009) | 3 lines
Fix compilation error with gcc 4.3.2
........
| author | Antoine Pitrou <solipsis@pitrou.net> |
|---|---|
| date | Mon, 01 Jun 2009 23:27:15 +0000 |
| parents | bec1b942e0bc |
| children | fd25030223b0 94f64f11fdd0 |
line wrap: on
line source
/* Support for dynamic loading of extension modules */ #include <atheos/image.h> #include <errno.h> #include "Python.h" #include "importdl.h" const struct filedescr _PyImport_DynLoadFiletab[] = { {".so", "rb", C_EXTENSION}, {"module.so", "rb", C_EXTENSION}, {0, 0} }; dl_funcptr _PyImport_GetDynLoadFunc(const char *fqname, const char *shortname, const char *pathname, FILE *fp) { void *p; int lib; char funcname[258]; if (Py_VerboseFlag) printf("load_library %s\n", pathname); lib = load_library(pathname, 0); if (lib < 0) { char buf[512]; if (Py_VerboseFlag) perror(pathname); PyOS_snprintf(buf, sizeof(buf), "Failed to load %.200s: %.200s", pathname, strerror(errno)); PyErr_SetString(PyExc_ImportError, buf); return NULL; } PyOS_snprintf(funcname, sizeof(funcname), "init%.200s", shortname); if (Py_VerboseFlag) printf("get_symbol_address %s\n", funcname); if (get_symbol_address(lib, funcname, -1, &p) < 0) { p = NULL; if (Py_VerboseFlag) perror(funcname); } return (dl_funcptr) p; }
