submitted-waitid
authorGNU Libc Maintainers <debian-glibc@lists.debian.org>
Thu, 29 Mar 2018 19:47:29 +0000 (20:47 +0100)
committerAurelien Jarno <aurel32@debian.org>
Thu, 29 Mar 2018 19:47:29 +0000 (20:47 +0100)
Gbp-Pq: Topic kfreebsd
Gbp-Pq: Name submitted-waitid.diff

bits/waitflags.h
posix/sys/wait.h
sysdeps/unix/sysv/linux/bits/waitflags.h

index b6092dd77970e8418a74055ba1347bddaad7f88f..baba51e6fdf6d192cb6ea84bcbbfd4038bcb1c93 100644 (file)
 /* Bits in the third argument to `waitpid'.  */
 #define        WNOHANG         1       /* Don't block waiting.  */
 #define        WUNTRACED       2       /* Report status of stopped children.  */
+
+/* The following values are used by the `waitid' function.  */
+#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
+# ifndef __ENUM_IDTYPE_T
+# define __ENUM_IDTYPE_T 1
+typedef enum
+{
+  P_ALL,               /* Wait for any child.  */
+  P_PID,               /* Wait for specified process.  */
+  P_PGID               /* Wait for members of process group.  */
+} idtype_t;
+# endif
+#endif
index efd6c09020cd8e67fc961a4923819d12528a146c..8bbedd8e94773f60978ba5b1a5bee1f682a1eae8 100644 (file)
@@ -69,17 +69,6 @@ typedef __pid_t pid_t;
 # define W_STOPCODE(sig)       __W_STOPCODE (sig)
 #endif
 
-/* The following values are used by the `waitid' function.  */
-#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
-typedef enum
-{
-  P_ALL,               /* Wait for any child.  */
-  P_PID,               /* Wait for specified process.  */
-  P_PGID               /* Wait for members of process group.  */
-} idtype_t;
-#endif
-
-
 /* Wait for a child to die.  When one does, put its status in *STAT_LOC
    and return its process ID.  For errors, return (pid_t) -1.
 
index e8b1dddfe49f55eabcff18902c49c69533875764..8849241ab5f82e08e9ffbfe0a9af5c57377723ef 100644 (file)
                                      in this group */
 #define __WALL         0x40000000 /* Wait for any child.  */
 #define __WCLONE       0x80000000 /* Wait for cloned process.  */
+
+/* The following values are used by the `waitid' function.  */
+#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
+# ifndef __ENUM_IDTYPE_T
+# define __ENUM_IDTYPE_T 1
+
+/* The Linux kernel defines these bare, rather than an enum,
+   which causes a conflict if the include order is reversed. */
+# undef P_ALL
+# undef P_PID
+# undef P_PGID
+
+typedef enum
+{
+  P_ALL,               /* Wait for any child.  */
+  P_PID,               /* Wait for specified process.  */
+  P_PGID               /* Wait for members of process group.  */
+} idtype_t;
+# endif
+#endif