summaryrefslogtreecommitdiff
path: root/libguile/dynl.c
diff options
context:
space:
mode:
authorMike Gran <spk121@yahoo.com>2021-03-06 17:56:12 -0800
committerMichael Gran <spk121@yahoo.com>2021-03-11 08:30:57 -0800
commit7d08c72cf964e17c7eee6404ba96f25506fe68ba (patch)
treeb27ec92d477c5689d843ab09dd80dda1e4ce70d3 /libguile/dynl.c
parent85433fc2b122dc78342c3c83941949d1d9318399 (diff)
downloadguile-7d08c72cf964e17c7eee6404ba96f25506fe68ba.tar.gz
Add windows stubs for dlopen, dlclose, dlsym, dlerror
* libguile/dynl.c [__MING32__] (dlopen, dlsym, dlclose, dlerror): use windows stubs * libguile/posix-w32.c (dlopen_w32, dlsym_w32, dlclose_w32, dlerror_w32): new procedures (dlerror_str): new module-level variable (DLERROR_LEN): new define * libguile/posix-w32.h: declare dlopen_w32, dlsym_w32, dlclose_w32, dlerror_w32. Declare RTLD_NOW, RTLD_LAZY, RTLD_GLOBAL, RTLD_LOCAL
Diffstat (limited to 'libguile/dynl.c')
-rw-r--r--libguile/dynl.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libguile/dynl.c b/libguile/dynl.c
index 8e1cc90d9..6bab9bd32 100644
--- a/libguile/dynl.c
+++ b/libguile/dynl.c
@@ -28,7 +28,15 @@
# include <config.h>
#endif
+#ifdef __MINGW32__
+#include "posix-w32.h"
+#define dlopen(_nam,_flg) (dlopen_w32((_nam),(_flg)))
+#define dlsym(_hndl,_nam) (dlsym_w32((_hndl),(_nam)))
+#define dlclose(_hndl) (dlclose_w32((_hndl)))
+#define dlerror() (dlerror_w32())
+#else
#include <dlfcn.h>
+#endif
#include "boolean.h"
#include "deprecation.h"