summaryrefslogtreecommitdiff
path: root/gc_dlopen.c
diff options
context:
space:
mode:
authorivmai <ivmai>2011-03-07 17:36:19 +0000
committerIvan Maidanski <ivmai@mail.ru>2011-07-26 21:06:56 +0400
commit3da6257debbf51b1478c877ca0d154cff731af3f (patch)
treec7694d982301de7fd9d7a8da747fc2f7562a6f07 /gc_dlopen.c
parentba41f966c4d3041e54117cdeb29b0ad53b8d8dc9 (diff)
downloadbdwgc-3da6257debbf51b1478c877ca0d154cff731af3f.tar.gz
2011-03-07 Ivan Maidanski <ivmai@mail.ru>
* dyn_load.c (GC_MUST_RESTORE_REDEFINED_DLOPEN): Test GC_NO_DLOPEN. * gc_dlopen.c: Ditto. * include/gc_pthread_redirects.h (GC_dlopen, dlopen): Ditto. * gc_dlopen.c: Don't include dlfcn.h (as it is included in gc_pthread_redirects.h). * pthread_support.c (pthread_sigmask, GC_pthread_sigmask_t, GC_pthread_sigmask): Test GC_NO_PTHREAD_SIGMASK (instead of GC_DARWIN_THREADS, GC_OPENBSD_THREADS and NACL). * include/gc_pthread_redirects.h (GC_pthread_sigmask, pthread_sigmask): Ditto. * win32_threads.c (pthread_sigmask, GC_pthread_sigmask): Test GC_NO_PTHREAD_SIGMASK (instead of GC_WIN32_PTHREADS); reformat the comment. * pthread_support.c (pthread_create, GC_pthread_create_t, GC_pthread_create): Rename GC_PTHREAD_CONST to GC_PTHREAD_CREATE_CONST. * win32_threads.c (GC_pthread_create): Ditto. * include/gc_pthread_redirects.h: Ditto. * include/gc_pthread_redirects.h (GC_NO_DLOPEN, GC_NO_PTHREAD_SIGMASK): New macro defined. * include/gc_pthread_redirects.h (GC_PTHREAD_CREATE_CONST): Set to empty for NaCl. * include/gc_pthread_redirects.h (GC_PTHREAD_EXIT_ATTRIBUTE): Do not define for Android (as CANCEL_SAFE is not defined).
Diffstat (limited to 'gc_dlopen.c')
-rw-r--r--gc_dlopen.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/gc_dlopen.c b/gc_dlopen.c
index 39074f76..e466d65c 100644
--- a/gc_dlopen.c
+++ b/gc_dlopen.c
@@ -22,9 +22,7 @@
/* file to avoid having to link against libdl.{a,so} if the client */
/* doesn't call dlopen. Of course this fails if the collector is in */
/* a dynamic library. -HB */
-
-#if defined(GC_PTHREADS) && !defined(GC_DARWIN_THREADS) \
- && !defined(GC_WIN32_PTHREADS) && !defined(NACL)
+#if defined(GC_PTHREADS) && !defined(GC_NO_DLOPEN)
#undef GC_MUST_RESTORE_REDEFINED_DLOPEN
#if defined(dlopen) && !defined(GC_USE_LD_WRAP)
@@ -60,8 +58,6 @@ static void disable_gc_for_dlopen(void)
/* GC_register_dynamic_libraries. Should probably happen for */
/* other operating systems, too. */
-#include <dlfcn.h>
-
/* This is similar to WRAP/REAL_FUNC() in pthread_support.c. */
#ifdef GC_USE_LD_WRAP
# define WRAP_DLFUNC(f) __wrap_##f
@@ -102,4 +98,4 @@ GC_API void * WRAP_DLFUNC(dlopen)(const char *path, int mode)
# define dlopen GC_dlopen
#endif
-#endif /* GC_PTHREADS */
+#endif /* GC_PTHREADS && !GC_NO_DLOPEN */