diff --git a/src/configure.in b/src/configure.in index d5a2c84bedb14dbe20ea1d5a3a25e57c45505394..f336bea3daca1ea74dbbe1d15564bf537506c14d 100644 --- a/src/configure.in +++ b/src/configure.in @@ -1,4 +1,4 @@ -AC_REVISION("$Id: configure.in,v 1.145 1998/01/02 01:05:41 hubbe Exp $") +AC_REVISION("$Id: configure.in,v 1.146 1998/01/02 08:18:42 hubbe Exp $") AC_INIT(interpret.c) AC_CONFIG_HEADER(machine.h) @@ -212,8 +212,9 @@ if test $cflags_is_set = no; then if test "x$with_cdebug" = "xno" ; then AC_SYS_COMPILER_FLAG(-fomit-frame-pointer,fomit_frame_pointer,OPTIMIZE) - else CFLAGS=`echo " $CFLAGS " | sed -e 's@ -g @@g'` + else + : fi ### Optimize for different SUN machines. If there is no working 'uname' diff --git a/src/threads.c b/src/threads.c index 487f5c970a2fe7f00d8e7074f0023e8cc3ba16cf..f9d9a8691b9832e5807deac3ae000a7560ccdbf5 100644 --- a/src/threads.c +++ b/src/threads.c @@ -1,5 +1,5 @@ #include "global.h" -RCSID("$Id: threads.c,v 1.48 1998/01/02 01:05:54 hubbe Exp $"); +RCSID("$Id: threads.c,v 1.49 1998/01/02 08:18:43 hubbe Exp $"); int num_threads = 1; int threads_disabled = 0; @@ -532,7 +532,7 @@ void th_init(void) set_gc_mark_callback(thread_was_marked); #endif set_init_callback(init_thread_obj); - set_init_callback(exit_thread_obj); + set_exit_callback(exit_thread_obj); thread_id_prog=end_program(); if(!mutex_key) fatal("Failed to initialize thread program!\n"); diff --git a/src/threads.h b/src/threads.h index 6f6dc16604512d495b269e096a59c629ea8d5329..a857e23579d143375776423088dc64e5e4b9d0fe 100644 --- a/src/threads.h +++ b/src/threads.h @@ -151,6 +151,25 @@ extern struct object *thread_id; #endif /* SGI_SPROC_THREADS */ + +#ifdef NT_THREADS +#include <process.h> + +#define MUTEX_T HANDLE +#define mt_init(X) +#define mt_lock(X) +#define mt_trylock(X) +#define mt_unlock(X) +#define mt_destroy(X) + +#define THREAD_T HANDLE +#define th_setconcurrency(X) +#define th_create(ID,fun,arg) _beginthreadex(NULL, 2*1024*1024, fun, arg, 0, ID) +#define th_exit(foo) _endthreadex(foo) +#define th_self() + +#endif + extern MUTEX_T interpreter_lock;