From d1fee1ba835c9b78011d65864468ce7c92522043 Mon Sep 17 00:00:00 2001 From: green <green@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Fri, 15 Mar 2002 18:01:38 +0000 Subject: [PATCH] Address mingw32 issues. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50816 138bc75d-0d04-0410-961f-82ee72b054a4 --- boehm-gc/ChangeLog | 7 +++++++ boehm-gc/configure | 10 +++++++--- boehm-gc/configure.in | 1 + boehm-gc/misc.c | 7 ++++--- 4 files changed, 19 insertions(+), 6 deletions(-) diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog index c132c031cf32..bf564944e84f 100644 --- a/boehm-gc/ChangeLog +++ b/boehm-gc/ChangeLog @@ -1,3 +1,10 @@ +2002-03-15 Anthony Green <green@redhat.com> + + * misc.c (GC_init_inner): Initialize GC_write_cs before use. + * configure.in: Disable use of getenv for win32 targets (some of + which have broken implementations). + * configure: Rebuilt. + 2002-03-12 Adam Megacz <adam@xwt.org> * dyn_load.c: Renamed GC_win32s to GC_no_win32_dlls. diff --git a/boehm-gc/configure b/boehm-gc/configure index e2b4840c9d53..edfd4f116a99 100755 --- a/boehm-gc/configure +++ b/boehm-gc/configure @@ -2725,6 +2725,10 @@ EOF win32) cat >> confdefs.h <<\EOF #define GC_WIN32_THREADS 1 +EOF + + cat >> confdefs.h <<\EOF +#define NO_GETENV 1 EOF ;; @@ -2738,7 +2742,7 @@ esac echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 -echo "configure:2742: checking for dlopen in -ldl" >&5 +echo "configure:2746: checking for dlopen in -ldl" >&5 ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2746,7 +2750,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldl $LIBS" cat > conftest.$ac_ext <<EOF -#line 2750 "configure" +#line 2754 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -2757,7 +2761,7 @@ int main() { dlopen() ; return 0; } EOF -if { (eval echo configure:2761: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2765: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else diff --git a/boehm-gc/configure.in b/boehm-gc/configure.in index 155653dbf26f..b3a785186c7f 100644 --- a/boehm-gc/configure.in +++ b/boehm-gc/configure.in @@ -109,6 +109,7 @@ case "$THREADS" in ;; win32) AC_DEFINE(GC_WIN32_THREADS) + AC_DEFINE(NO_GETENV) ;; decosf1 | irix | mach | os2 | solaris | dce | vxworks) AC_MSG_ERROR(thread package $THREADS not yet supported) diff --git a/boehm-gc/misc.c b/boehm-gc/misc.c index a89f04407b4c..50955f458cc4 100644 --- a/boehm-gc/misc.c +++ b/boehm-gc/misc.c @@ -499,6 +499,10 @@ void GC_init_inner() # ifdef PRINTSTATS GC_print_stats = 1; # endif +# if defined(MSWIN32) || defined(MSWINCE) + InitializeCriticalSection(&GC_write_cs); +# endif + if (0 != GETENV("GC_PRINT_STATS")) { GC_print_stats = 1; } @@ -536,9 +540,6 @@ void GC_init_inner() if (ALIGNMENT > GC_DS_TAGS && EXTRA_BYTES != 0) { GC_obj_kinds[NORMAL].ok_descriptor = ((word)(-ALIGNMENT) | GC_DS_LENGTH); } -# if defined(MSWIN32) || defined(MSWINCE) - InitializeCriticalSection(&GC_write_cs); -# endif GC_setpagesize(); GC_exclude_static_roots(beginGC_arrays, endGC_arrays); GC_exclude_static_roots(beginGC_obj_kinds, endGC_obj_kinds); -- GitLab