+2008-09-29 Paolo Bonzini <bonzini@gnu.org>
+ Bruno Haible <bruno@clisp.org>
+
+ * lib/sys_select.in.h: Include sys/time.h.
+ * m4/sys_select.h.m4: Test that struct timeval is fully defined.
+ * modules/sys_select: Depend on sys_time.
+ * tests/test-sys_select.c: Test that sys/select.h defines struct
+ timeval fully.
+
2008-09-29 Bruno Haible <bruno@clisp.org>
* lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
<sys/types.h>. */
# include <sys/types.h>
+/* On OSF/1 4.0, <sys/select.h> provides only a forward declaration
+ of 'struct timeval', and no definition of this type.. */
+# include <sys/time.h>
+
/* The include_next requires a split double-inclusion guard. */
# @INCLUDE_NEXT@ @NEXT_SYS_SELECT_H@
AC_CACHE_CHECK([whether <sys/select.h> is self-contained],
[gl_cv_header_sys_select_h_selfcontained],
[
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/select.h>]], [[]])],
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/select.h>]],
+ [[struct timeval b;]])],
[gl_cv_header_sys_select_h_selfcontained=yes],
[gl_cv_header_sys_select_h_selfcontained=no])
])
alloca
include_next
sys_socket
+sys_time
configure.ac:
gl_HEADER_SYS_SELECT
#include <config.h>
+#include <sys/select.h>
+
+/* Check that the 'struct timeval' type is defined. */
+struct timeval t1;
+
#include <stdio.h>
#include <string.h>
-#include <sys/select.h>
-#include <sys/time.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <fcntl.h>