Hello,
this patch fixes an issue about current used boehm-gc tree in gcc.
The issue is that _DLL macro is used for Windows-targets wrong. It is
assumed that it would mean to build a shared object (DLL), but it just
indicates that built DLL/Exectuable is using shared msvcrt.dll
runtime. (see here msdn about meaning for _DLL macro).
ChangeLog
* include/gc_config_macros.h (GC_DLL): Define it for
mingw-targets only, if
we are actual in boehm-gc's build and DLL_EXPORT macro is defined.
Tested for i686-w64-mingw32, i686-pc-mingw32, and x86_64-w64-mingw32
(including building of libjava with test). Ok for apply?
Regards,
Kai
Index: include/gc_config_macros.h
===================================================================
--- include/gc_config_macros.h (revision 183833)
+++ include/gc_config_macros.h (working copy)
@@ -81,7 +81,9 @@
typedef long ptrdiff_t; /* ptrdiff_t is not defined */
# endif
-#if defined(_DLL) && !defined(GC_NOT_DLL) && !defined(GC_DLL)
+#if ((defined(_DLL) && !defined (__MINGW32__)) \
+ || (defined (DLL_EXPORT) && defined (GC_BUILD))) \
+ && !defined(GC_DLL)
# define GC_DLL
#endif