pthread_sigmask() detected incorrectly on MinGW by configure

2015-04-23 Thread Pavel Fedin
Hello! I have found one more problem with GNULib on Windows. This time it concerns pthread_sigmask(). configure script detects it as present, and this is technically correct, but: --- cut --- /* Windows has rudimentary signals support. */ #define pthread_sigmask(H, S1, S2) 0 --- cut --- (see h

Re: pthread_sigmask() detected incorrectly on MinGW by configure

2015-04-23 Thread Paul Eggert
Pavel Fedin wrote: #define pthread_sigmask(H, S1, S2) 0 Any implementation that defines 'pthread_sigmask' only as a macro, and not as a function, doesn't conform to POSIX and we should be able to reject it at compile-time. Perhaps you can suggest a patch along those lines? That'd be better

RE: pthread_sigmask() detected incorrectly on MinGW by configure

2015-04-23 Thread Pavel Fedin
Hello! > I would suggest that configure script just knows that on *-mingw* > systems pthread_sigmask is not present. Small oops: if you check $host_os, then it should be just "mingw*", because the triplet is "i686-pc-mingw32", there's no 4th component like ...-gnu-... Kind regards, Pavel Fedi

RE: pthread_sigmask() detected incorrectly on MinGW by configure

2015-04-23 Thread Pavel Fedin
Hello! > Any implementation that defines 'pthread_sigmask' only as a macro, and > not as a function, doesn't conform to POSIX and we should be able to > reject it at compile-time. Perhaps you can suggest a patch along those > lines? Well... We could do a preprocessor-based test in configure. S

Re: pthread_sigmask() detected incorrectly on MinGW by configure

2015-04-23 Thread Paul Eggert
On 04/23/2015 05:24 AM, Pavel Fedin wrote: #ifdef pthread_sigmask #error is a macro #endif That's a start, but it needs some more work. Implementations are allowed to define pthread_sigmask as a macro, but applications are allowed to "#undef pthread_sigmask" and the code should still work. (T