about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2010-01-10 11:06:06 -0800
committerUlrich Drepper <drepper@redhat.com>2010-01-10 11:06:06 -0800
commit99d46ae3794830e996717a53c8551d758a64eeb5 (patch)
treee74347d80b98fa133ede8e1cbe741d58e0488e88
parentf9cfa295ae3f2556bd8808f0ff693cfe44f4ac25 (diff)
downloadglibc-99d46ae3794830e996717a53c8551d758a64eeb5.tar.gz
glibc-99d46ae3794830e996717a53c8551d758a64eeb5.tar.xz
glibc-99d46ae3794830e996717a53c8551d758a64eeb5.zip
Fix up sys/wait.h header for XPG7.
-rw-r--r--ChangeLog2
-rw-r--r--conform/data/sys/wait.h-data2
-rw-r--r--posix/sys/wait.h8
3 files changed, 8 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 1410b79e30..00c7710658 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -13,6 +13,8 @@
 
 	* posix/glob.h: Define size_t.
 
+	* posix/sys/wait.h: Define idtype_t and declare waitid for XPG7.
+
 2010-01-10  Ulrich Drepper  <drepper@redhat.com>
 
 	* conform/conformtest.pl: For XPG7 testing the headers are supposed to
diff --git a/conform/data/sys/wait.h-data b/conform/data/sys/wait.h-data
index 81c0dc44f8..2fd4c8decf 100644
--- a/conform/data/sys/wait.h-data
+++ b/conform/data/sys/wait.h-data
@@ -48,7 +48,9 @@ element {struct rusage} {struct timeval} ru_stime
 type pid_t
 
 function pid_t wait (int*)
+#if !defined XOPEN2K && !defined XOPEN2K8 && !defined POSIX2008
 function pid_t wait3 (int*, int, struct rusage*)
+#endif
 function int waitid (idtype_t, id_t, siginfo_t*, int)
 function pid_t waitpid (pid_t, int*, int)
 
diff --git a/posix/sys/wait.h b/posix/sys/wait.h
index d9248426dc..bb98c00396 100644
--- a/posix/sys/wait.h
+++ b/posix/sys/wait.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-1994,1996-2001,2003,2004,2005,2007,2009
+/* Copyright (C) 1991-1994,1996-2001,2003,2004,2005,2007,2009,2010
    Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
@@ -45,7 +45,7 @@ __BEGIN_DECLS
 #  if defined __GNUC__ && !defined __cplusplus
 #   define __WAIT_INT(status) \
   (__extension__ (((union { __typeof(status) __in; int __i; }) \
-                   { .__in = (status) }).__i))
+		   { .__in = (status) }).__i))
 #  else
 #   define __WAIT_INT(status)	(*(__const int *) &(status))
 #  endif
@@ -98,7 +98,7 @@ typedef union
 #endif
 
 /* The following values are used by the `waitid' function.  */
-#if defined __USE_SVID || defined __USE_XOPEN
+#if defined __USE_SVID || defined __USE_XOPEN || defined __USE_XOPEN2K8
 typedef enum
 {
   P_ALL,		/* Wait for any child.  */
@@ -138,7 +138,7 @@ extern __pid_t wait (__WAIT_STATUS __stat_loc);
    __THROW.  */
 extern __pid_t waitpid (__pid_t __pid, int *__stat_loc, int __options);
 
-#if defined __USE_SVID || defined __USE_XOPEN
+#if defined __USE_SVID || defined __USE_XOPEN || defined __USE_XOPEN2K8
 # define __need_siginfo_t
 # include <bits/siginfo.h>
 /* Wait for a childing matching IDTYPE and ID to change the status and