summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/common/HPM.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/common/HPM.h b/src/common/HPM.h
index d2a1308f2..614498fd3 100644
--- a/src/common/HPM.h
+++ b/src/common/HPM.h
@@ -18,9 +18,13 @@
#define DLL_EXT ".dll"
#define DLL HINSTANCE
-#else
+#else // ! WIN32
#include <dlfcn.h>
- #define plugin_open(x) dlopen(x,RTLD_NOW)
+ #ifdef RTLD_DEEPBIND // Certain linux ditributions require this, but it's not available everywhere
+ #define plugin_open(x) dlopen(x,RTLD_NOW|RTLD_DEEPBIND)
+ #else // ! RTLD_DEEPBIND
+ #define plugin_open(x) dlopen(x,RTLD_NOW)
+ #endif // RTLD_DEEPBIND
#define plugin_import(x,y,z) (z)dlsym(x,y)
#define plugin_close(x) dlclose(x)
@@ -34,7 +38,7 @@
#include <string.h> // size_t
-#endif
+#endif // WIN32
struct hplugin {
DLL dll;