From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nils Durner Newsgroups: gmane.lisp.guile.bugs Subject: Re: [Patch] --with-threads on MinGW Date: Mon, 04 Dec 2006 22:18:29 +0100 Message-ID: <457490A5.80601@web.de> References: <457316BF.6090003@web.de> <87veks33jf.fsf@zip.com.au> NNTP-Posting-Host: dough.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1165267212 14945 80.91.229.10 (4 Dec 2006 21:20:12 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 4 Dec 2006 21:20:12 +0000 (UTC) Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Mon Dec 04 22:20:10 2006 Return-path: Envelope-to: guile-bugs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by dough.gmane.org with esmtp (Exim 4.50) id 1GrLEI-0007zK-Dc for guile-bugs@m.gmane.org; Mon, 04 Dec 2006 22:20:02 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GrLEI-0001EQ-7P for guile-bugs@m.gmane.org; Mon, 04 Dec 2006 16:20:02 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1GrLEE-0001CI-27 for bug-guile@gnu.org; Mon, 04 Dec 2006 16:19:58 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1GrLEC-00019e-F8 for bug-guile@gnu.org; Mon, 04 Dec 2006 16:19:57 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GrLEC-00019T-Ba for bug-guile@gnu.org; Mon, 04 Dec 2006 16:19:56 -0500 Original-Received: from [84.57.150.113] (helo=enterprise) by monty-python.gnu.org with esmtp (Exim 4.52) id 1GrLEC-0008QA-44 for bug-guile@gnu.org; Mon, 04 Dec 2006 16:19:56 -0500 Original-Received: from [192.168.0.3] (dell [192.168.0.3]) by enterprise (Postfix) with ESMTP id 6BC5048F for ; Mon, 4 Dec 2006 22:15:25 +0100 (CET) User-Agent: Thunderbird 1.5.0.8 (Windows/20061025) Original-To: bug-guile@gnu.org In-Reply-To: <87veks33jf.fsf@zip.com.au> X-Enigmail-Version: 0.94.0.0 X-BeenThere: bug-guile@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Errors-To: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.bugs:3412 Archived-At: >> -#ifdef HAVE_STRUCT_TIMESPEC >> +#if HAVE_STRUCT_TIMESPEC || SCM_I_GSC_USE_PTHREAD_THREADS >> pf ("typedef struct timespec scm_t_timespec;\n"); > > Does the detection of struct timespec go wrong somehow? The only timespec declaration on Win32 is the one in pthread.h, that's why I or'ed SCM_I_GSC_USE_PTHREAD_THREADS. scm's own timespec declaration is considered "incompatible" for some reason. >> +#ifndef __MINGW32__ >> + sigset_t all_sigs; >> + >> sigfillset (&all_sigs); >> scm_i_pthread_sigmask (SIG_SETMASK, &all_sigs, NULL); >> +#endif > > I think I'd rather either conditionalize on the existance of > pthread_sigmask, or perhaps make some dummy sigset stuff if it doesn't > exist. OK, makes sense. >> +#ifndef __MINGW32__ >> + t->pthread, >> +#else >> + t->pthread.p, >> +#endif > > What does that do? Pthreads-win32 defines pthread_t as struct. >> #if SCM_USE_PTHREAD_THREADS >> /* pthread_getattr_np not available on MacOS X and Solaris 10. */ >> -#if HAVE_PTHREAD_ATTR_GETSTACK && HAVE_PTHREAD_GETATTR_NP >> +#if (HAVE_PTHREAD_ATTR_GETSTACK && HAVE_PTHREAD_GETATTR_NP) || >> __MINGW32__ > > Remind us what's wrong with the getstack detection ... pthread_attr_getstack() exists, but pthread_getattr_np() doesn't. This is just to get the #define HAVE_GET_... and the definition of get_thread_stack_base(). Nils _______________________________________________ Bug-guile mailing list Bug-guile@gnu.org http://lists.gnu.org/mailman/listinfo/bug-guile