summaryrefslogtreecommitdiff
path: root/wrappers/dlfcn/dlfake.c
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2019-02-25 01:27:37 -0500
committermidipix <writeonce@midipix.org>2019-02-25 01:27:37 -0500
commitac584a4c61259908bf5c047691137f51f71faa95 (patch)
tree9cc0431026e44cac57f7d412ab8838d8eb201cc4 /wrappers/dlfcn/dlfake.c
parent8e6e57c1b3c8efd162eb80f36bbd83a16a771c8f (diff)
downloadsbpython3-ac584a4c61259908bf5c047691137f51f71faa95.tar.bz2
sbpython3-ac584a4c61259908bf5c047691137f51f71faa95.tar.xz
project: static linking: dlfake: initial commit.
Diffstat (limited to 'wrappers/dlfcn/dlfake.c')
-rw-r--r--wrappers/dlfcn/dlfake.c42
1 files changed, 42 insertions, 0 deletions
diff --git a/wrappers/dlfcn/dlfake.c b/wrappers/dlfcn/dlfake.c
new file mode 100644
index 0000000..d347bf0
--- /dev/null
+++ b/wrappers/dlfcn/dlfake.c
@@ -0,0 +1,42 @@
+#include "dlfake.h"
+#include "linkage/inittab.h"
+
+extern struct _inittab _PyImport_Inittab[];
+
+void * dlfake_dlopen(const char * name, int mode)
+{
+ struct _inittab * pyext;
+
+ if (!name)
+ return _PyImport_Inittab;
+
+ for (pyext=_PyImport_Inittab; pyext->name; pyext++)
+ if (!strcmp(name,pyext->name))
+ return _PyImport_Inittab;
+
+ return 0;
+}
+
+int dlfake_dlclose(void * handle)
+{
+ return -1;
+}
+
+void * dlfake_dlsym(void * handle, const char * sym)
+{
+ return 0;
+}
+
+static const char dlfake_errstr[] =
+ "dlfake_dlerror(): "
+ "not implemented";
+
+char * dlfake_dlerror(void)
+{
+ return (char *)dlfake_errstr;
+}
+
+int dlfake_dladdr(const void * addr, void * info)
+{
+ return 0;
+}