My fix for NSIG: diff -u ./gllib/signal.in.h.orig ./gllib/signal.in.h --- ./gllib/signal.in.h.orig 2010-10-10 16:05:05.000000000 -0500 +++ ./gllib/signal.in.h 2010-12-23 06:52:43.000000000 -0600 @@ -73,7 +73,7 @@
#if @GNULIB_SIGPROCMASK@ -# if !...@have_posix_signalblocking@ +# if !...@have_posix_signalblocking@ || defined __TANDEM /* Maximum signal number + 1. */ # ifndef NSIG And reg. SA_RESETHAND and SA_RESTART: yes we're behind the current POSIX by quite a bit unfortunatly. And if I read http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/signal.h.html correclty, these have been optional up to Issue 6. Bye, Jojo -----Original Message----- From: Joachim Schmitz [mailto:j...@schmitz-digital.de] Sent: Thursday, December 23, 2010 1:52 PM To: 'Bruno Haible' Cc: 'bug-gnulib@gnu.org' Subject: RE: <signal.h> on HP-NonStop Hi Bruno OK, the highest number for any SIG<something> is 31, so NSIG should really be 32. The only SA_<something> Macros I can find are SA_DATA_SITE in <sys/socket.h>, most probably unrated, and SA_NOCLDSTOP and SA_RESERVED_31 in <signal.h>, and nothing that looks remotely like a replacement, signal.h attached Bye, Jojo -----Original Message----- From: Bruno Haible [mailto:br...@clisp.org] Sent: Thursday, December 23, 2010 1:30 PM To: Joachim Schmitz Cc: bug-gnulib@gnu.org Subject: Re: <signal.h> on HP-NonStop Hello Joachim, Please, let's use different mails with different subject for each topic. Otherwise I cannot keep track which issues have been dealt with, and the conversation dies down in confusion. > During compile of gllib: > NSIG missing, I added it to gllib/spwani.c, in a brute force fashion > (#define NSIG 32) without really know what I'm doing here... > "/bin/kill -l | wc -w" returns 33. NSIG should be larger than any predefined signal value. Since you say that your system has 33 signals, the value 32 is not right. Probably 33, 34, or 64 is better then. You need to look at the values in your <signal.h>. And the definition belongs in <signal.h>. > SA_RESTART and SA_RESETHAND are missing source='test-sigaction.c' > object='test-sigaction.o' libtool=no DEPDIR=.deps depmode=none /bin/sh > ./../build-aux/depcomp cc -DHAVE_CONFIG_H -I. -DGNULIB_STRICT_CHECKING=1 > -I. -I. -I.. -I./.. -I../gllib -I./../gllib -I/usr/local/include -g > -Wnowarn -c -o test-sigaction.o test-sigaction.c > ASSERT ((sa.sa_flags & SA_RESETHAND) == 0); > ^ > "/usr/local/Floss/gnulib/testdir-posix/gltests/test-sigaction.c", line 67: > error(114): > identifier "SA_RESETHAND" is undefined ... > ASSERT ((old_sa.sa_flags & MASK_SA_FLAGS) == 0); > ^ > "/usr/local/Floss/gnulib/testdir-posix/gltests/test-sigaction.c", line 97: > error(114): > identifier "SA_RESTART" is undefined These two are specified by POSIX <http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/signal.h.html>. Does NonStop Kernel really lack these flags, or are they merely available under different names? Bruno