Eric Blake wrote: > Thanks for the report. This means that the gnulib sigaction module (a > dependency of fatal-signal) has not yet been ported to Interix. I don't > have access to Interix, so I'm not in a position to write the patch. Care > to offer a hand? In general, Interix developers are very much > under-represented on the gnulib lists, and without someone contributing to > gnulib who actually cares about this platform, we won't be able to promise > much portability to Interix, since it is a very far cry from Posix-compliant.
This is all true. But in this case, there is a cheap workaround that I can apply even without testing. > > ===> Building for m4-1.4.12 > > ... > > fatal-signal.c: In function `install_handlers': > > fatal-signal.c:189: error: `SA_NODEFER' undeclared (first use in this > > function) > > fatal-signal.c:189: error: (Each undeclared identifier is reported only once > > fatal-signal.c:189: error: for each function it appears in.) > > *** Error code 1 > > > > 0 ~>grep SA_ /usr/include/* > > /usr/include/signal.h:#define SA_NOCLDSTOP 0x00000001 > > /usr/include/signal.h:#define SA_RESTART 0x00000002 > > /usr/include/signal.h:#define SA_RESETHAND 0x00000004 So this system simply does not have SA_NODEFER. Just ignore it. Most signal handlers will behave equally well with SA_NODEFER than without. 2008-10-23 Bruno Haible <[EMAIL PROTECTED]> Define a dummy SA_NODEFER macro on Interix. * lib/signal.in.h (SA_NODEFER): Define fallback. Reported by Aleksey Cheusov <[EMAIL PROTECTED]> via Thomas Klausner <[EMAIL PROTECTED]> and Eric Blake. *** doc/posix-headers/signal.texi.orig 2008-10-24 02:17:11.000000000 +0200 --- doc/posix-headers/signal.texi 2008-10-24 02:15:30.000000000 +0200 *************** *** 21,26 **** --- 21,29 ---- @item The signal @code{SIGPIPE} is not defined on some platforms: mingw. + @item + The macro @code{SA_NODEFER} is not defined on some platforms: + Interix 3.5. @end itemize Portability problems not fixed by Gnulib: *** lib/signal.in.h.orig 2008-10-24 02:17:11.000000000 +0200 --- lib/signal.in.h 2008-10-24 02:16:57.000000000 +0200 *************** *** 178,183 **** --- 178,189 ---- #endif /* [EMAIL PROTECTED]@, [EMAIL PROTECTED]@ */ + /* Some systems don't have SA_NODEFER. */ + #ifndef SA_NODEFER + # define SA_NODEFER 0 + #endif + + #ifdef __cplusplus } #endif