diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2012-01-10 10:27:33 +0400 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2012-01-10 10:27:33 +0400 |
commit | e7358d20b30a4154f7cd31d33e6fd339526211d4 (patch) | |
tree | af1d03c32d6e996887525f6b31d06efaf1ceab5c /configure.ac | |
parent | 03a174fbb1f5718fd5fadba1a989b17464032d4d (diff) | |
download | bdwgc-e7358d20b30a4154f7cd31d33e6fd339526211d4.tar.gz |
Win32: allow DllMain chaining on the client side
(Reworked commits e55eb9c, 34a996f from 'mono_libgc' branch)
* configure.ac (enable_win32_dllmain): Recognize new AC "enable"
option.
* configure.ac (GC_INSIDE_DLL): New AC macro (defined only if
enable_win32_dllmain).
* README.macros (GC_INSIDE_DLL): Document.
* include/gc.h (GC_DllMain): Declare as API function (for Win32) if
GC_INSIDE_DLL.
* win32_threads.c (GC_INSIDE_DLL): Recognize (treat the same as
GC_DLL).
* win32_threads.c (DllMain): Rename to GC_DllMain; use GC_API export
declarator if GC_INSIDE_DLL, otherwise define GC_DllMain macro as
a synonym to DllMain.
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 4142c046..888d0a7f 100644 --- a/configure.ac +++ b/configure.ac @@ -325,6 +325,10 @@ case "$THREADS" in AC_DEFINE(THREAD_LOCAL_ALLOC) fi fi + if test "${enable_win32_dllmain}" = yes; then + AC_DEFINE(GC_INSIDE_DLL, 1, + [Enable Win32 DllMain-based approach of threads registering.]) + fi win32_threads=true AC_DEFINE([EMPTY_GETENV_RESULTS], [1], [Wine getenv may not return NULL for missing entry.]) |