changeset 14011:68009ff4e161

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>.
author Bruno Haible <bruno@clisp.org>
date Fri, 24 Dec 2010 16:27:04 +0100
parents fd62a5de1a49
children 55491ce6972d
files ChangeLog doc/posix-headers/sys_select.texi lib/sys_select.in.h
diffstat 3 files changed, 15 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Fri Dec 24 16:21:59 2010 +0100
+++ b/ChangeLog	Fri Dec 24 16:27:04 2010 +0100
@@ -1,3 +1,12 @@
+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.
--- a/doc/posix-headers/sys_select.texi	Fri Dec 24 16:21:59 2010 +0100
+++ b/doc/posix-headers/sys_select.texi	Fri Dec 24 16:27:04 2010 +0100
@@ -9,7 +9,7 @@
 @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.
--- a/lib/sys_select.in.h	Fri Dec 24 16:21:59 2010 +0100
+++ b/lib/sys_select.in.h	Fri Dec 24 16:27:04 2010 +0100
@@ -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>.  */