File 0001-Avoid-a-boehm-dependency-in-driver.c.patch of Package mingw32-mono
From 8a95d5a5a6e870fb8aa6e0a580cf8cc40d3c727e Mon Sep 17 00:00:00 2001
From: Zoltan Varga <vargaz@gmail.com>
Date: Fri, 11 Feb 2011 15:25:09 +0100
Subject: [PATCH] Avoid a boehm dependency in driver.c.
---
mono/metadata/boehm-gc.c | 7 +++++++
mono/metadata/gc-internal.h | 3 +++
mono/metadata/null-gc.c | 6 ++++++
mono/metadata/sgen-gc.c | 6 ++++++
mono/mini/driver.c | 2 +-
5 files changed, 23 insertions(+), 1 deletions(-)
diff --git a/mono/metadata/boehm-gc.c b/mono/metadata/boehm-gc.c
index 5484e68..641d10b 100644
--- a/mono/metadata/boehm-gc.c
+++ b/mono/metadata/boehm-gc.c
@@ -1186,4 +1186,11 @@ mono_gc_pthread_detach (pthread_t thread)
#endif
+#ifdef HOST_WIN32
+BOOL APIENTRY mono_gc_dllmain (HMODULE module_handle, DWORD reason, LPVOID reserved)
+{
+ return GC_DllMain (module_handle, reason, reserved);
+}
+#endif
+
#endif /* no Boehm GC */
diff --git a/mono/metadata/gc-internal.h b/mono/metadata/gc-internal.h
index dcb89a8..c3b5f63 100644
--- a/mono/metadata/gc-internal.h
+++ b/mono/metadata/gc-internal.h
@@ -361,6 +361,9 @@ MonoReferenceQueue* mono_gc_reference_queue_new (mono_reference_queue_callback c
void mono_gc_reference_queue_free (MonoReferenceQueue *queue) MONO_INTERNAL;
gboolean mono_gc_reference_queue_add (MonoReferenceQueue *queue, MonoObject *obj, void *user_data) MONO_INTERNAL;
+#ifdef HOST_WIN32
+BOOL APIENTRY mono_gc_dllmain (HMODULE module_handle, DWORD reason, LPVOID reserved) MONO_INTERNAL;
+#endif
#endif /* __MONO_METADATA_GC_INTERNAL_H__ */
diff --git a/mono/metadata/null-gc.c b/mono/metadata/null-gc.c
index 9a44530..86b7b8a 100644
--- a/mono/metadata/null-gc.c
+++ b/mono/metadata/null-gc.c
@@ -387,4 +387,10 @@ mono_gc_pthread_detach (pthread_t thread)
#endif
+#ifdef HOST_WIN32
+BOOL APIENTRY mono_gc_dllmain (HMODULE module_handle, DWORD reason, LPVOID reserved)
+{
+}
+#endif
+
#endif
diff --git a/mono/metadata/sgen-gc.c b/mono/metadata/sgen-gc.c
index c0f174d..3757c7b 100644
--- a/mono/metadata/sgen-gc.c
+++ b/mono/metadata/sgen-gc.c
@@ -7900,4 +7900,10 @@ mono_sgen_get_logfile (void)
return gc_debug_file;
}
+#ifdef HOST_WIN32
+BOOL APIENTRY mono_gc_dllmain (HMODULE module_handle, DWORD reason, LPVOID reserved)
+{
+}
+#endif
+
#endif /* HAVE_SGEN_GC */
diff --git a/mono/mini/driver.c b/mono/mini/driver.c
index a2e7030..58b37a3 100644
--- a/mono/mini/driver.c
+++ b/mono/mini/driver.c
@@ -1239,7 +1239,7 @@ static const char info[] =
#ifdef HOST_WIN32
BOOL APIENTRY DllMain (HMODULE module_handle, DWORD reason, LPVOID reserved)
{
- if (!GC_DllMain (module_handle, reason, reserved))
+ if (!mono_gc_dllmain (module_handle, reason, reserved))
return FALSE;
switch (reason)
--
1.7.3.4