sys_select: Ensure all necessary types on NonStop Kernel.
authorBruno Haible <bruno@clisp.org>
Fri, 24 Dec 2010 15:27:04 +0000 (16:27 +0100)
committerBruno Haible <bruno@clisp.org>
Fri, 24 Dec 2010 15:27:04 +0000 (16:27 +0100)
* lib/sys_select.in.h: If the system does not have <sys/select.h>,
include <sys/time.h>.
* doc/posix-headers/sys_select.texi: Mention that it's missing on
NonStop Kernel.
Reported by Joachim Schmitz <jojo@schmitz-digital.de>.

ChangeLog
doc/posix-headers/sys_select.texi
lib/sys_select.in.h

index edab313..ed375b6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
 2010-12-24  Bruno Haible  <bruno@clisp.org>
 
+       sys_select: Ensure all necessary types on NonStop Kernel.
+       * lib/sys_select.in.h: If the system does not have <sys/select.h>,
+       include <sys/time.h>.
+       * doc/posix-headers/sys_select.texi: Mention that it's missing on
+       NonStop Kernel.
+       Reported by Joachim Schmitz <jojo@schmitz-digital.de>.
+
+2010-12-24  Bruno Haible  <bruno@clisp.org>
+
        sys_select: Remove unneeded include.
        * lib/sys_select.in.h: Don't include <sys/socket.h> on platforms that
        have <sys/select.h>.
index 5e2622e..db1b969 100644 (file)
@@ -9,7 +9,7 @@ Portability problems fixed by Gnulib:
 @itemize
 @item
 This header file is missing on some platforms:
-HP-UX 11.11, mingw, BeOS.
+HP-UX 11.11, NonStop Kernel, mingw, BeOS.
 @item
 This header file is not self-contained on some platforms: it requires
 @code{<sys/types.h>} to be included first.
index baaf510..77472bf 100644 (file)
@@ -44,6 +44,8 @@
 
 /* On OSF/1 4.0, <sys/select.h> provides only a forward declaration
    of 'struct timeval', and no definition of this type.
+   Also, MacOS X, AIX, HP-UX, IRIX, Solaris, Interix declare select()
+   in <sys/time.h>.
    But avoid namespace pollution on glibc systems.  */
 # ifndef __GLIBC__
 #  include <sys/time.h>
@@ -67,6 +69,9 @@
 
 #if !@HAVE_SYS_SELECT_H@
 /* A platform that lacks <sys/select.h>.  */
+/* Get the 'struct timeval' and 'fd_set' types and the FD_* macros
+   on most platforms.  */
+# include <sys/time.h>
 /* On native Windows platforms:
    Get the 'fd_set' type.  Also, gnulib's <sys/socket.h> redefines select
    so as to hide the declaration from <winsock2.h>.  */