+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.
win32)
cat >> confdefs.h <<\EOF
#define GC_WIN32_THREADS 1
+EOF
+
+ cat >> confdefs.h <<\EOF
+#define NO_GETENV 1
EOF
;;
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
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
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
;;
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)
# 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;
}
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);