pthread_sigmask: Ensure declaration in <signal.h>.
authorBruno Haible <bruno@clisp.org>
Fri, 8 Jul 2011 00:24:27 +0000 (02:24 +0200)
committerBruno Haible <bruno@clisp.org>
Fri, 8 Jul 2011 00:24:27 +0000 (02:24 +0200)
* lib/signal.in.h: On MacOS X, FreeBSD, OpenBSD, OSF/1, include
<pthread.h>.
* doc/posix-functions/pthread_sigmask.texi: Mention the header file
problem.

ChangeLog
doc/posix-functions/pthread_sigmask.texi
lib/signal.in.h

index fec1ece..8653136 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2011-07-07  Bruno Haible  <bruno@clisp.org>
 
+       pthread_sigmask: Ensure declaration in <signal.h>.
+       * lib/signal.in.h: On MacOS X, FreeBSD, OpenBSD, OSF/1, include
+       <pthread.h>.
+       * doc/posix-functions/pthread_sigmask.texi: Mention the header file
+       problem.
+
+2011-07-07  Bruno Haible  <bruno@clisp.org>
+
        pthread_sigmask: Document the module.
        * doc/posix-functions/pthread_sigmask.texi: Mention the new module.
 
index eb2d7b8..2f62c1b 100644 (file)
@@ -11,6 +11,10 @@ Portability problems fixed by Gnulib:
 @item
 This function is missing on some platforms:
 Solaris 2.4, mingw, BeOS.
+@item
+This function is declared in @code{<pthread.h>} instead of @code{<signal.h>}
+on some platforms:
+MacOS X 10.3, FreeBSD 6.4, OpenBSD 3.8, OSF/1 4.0.
 @end itemize
 
 Portability problems not fixed by Gnulib:
index 6d1be8f..ea22772 100644 (file)
 #ifndef _@GUARD_PREFIX@_SIGNAL_H
 #define _@GUARD_PREFIX@_SIGNAL_H
 
+/* MacOS X 10.3, FreeBSD 6.4, OpenBSD 3.8, OSF/1 4.0 declare pthread_sigmask in
+   <pthread.h>, not in <signal.h>.
+   But avoid namespace pollution on glibc systems.*/
+#if (@GNULIB_PTHREAD_SIGMASK@ || defined GNULIB_POSIXCHECK) \
+    && ((defined __APPLE__ && defined __MACH__) || defined __FreeBSD__ || defined __OpenBSD__ || defined __osf__) \
+    && ! defined __GLIBC__
+# include <pthread.h>
+#endif
+
 /* The definitions of _GL_FUNCDECL_RPL etc. are copied here.  */
 
 /* The definition of _GL_ARG_NONNULL is copied here.  */