From 4b5f054098e484baa6d457aebe8bdab0eeb90215 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Thu, 21 Apr 2011 14:27:28 -0400 Subject: move wait.h macros out of bits. they do not vary. --- include/stdlib.h | 9 ++++++++- include/sys/wait.h | 24 ++++++++++++++++++++++-- 2 files changed, 30 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/stdlib.h b/include/stdlib.h index a12192f0..023f6e78 100644 --- a/include/stdlib.h +++ b/include/stdlib.h @@ -81,7 +81,14 @@ size_t wcstombs (char *, const wchar_t *, size_t); || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) #ifndef WEXITSTATUS -#include +#define WEXITSTATUS(s) (((s) & 0xff00) >> 8) +#define WTERMSIG(s) ((s) & 0x7f) +#define WSTOPSIG(s) WEXITSTATUS(s) +#define WCOREDUMP(s) ((s) & 0x80) +#define WIFEXITED(s) (!WTERMSIG(s)) +#define WIFSTOPPED(s) (((s) & 0xff) == 0x7f) +#define WIFSIGNALED(s) (((signed char) (((s) & 0x7f) + 1) >> 1) > 0) +#define WIFCONTINUED(s) ((s) == 0xffff) #endif int posix_memalign (void **, size_t, size_t); diff --git a/include/sys/wait.h b/include/sys/wait.h index ae41a48e..e73594ae 100644 --- a/include/sys/wait.h +++ b/include/sys/wait.h @@ -23,8 +23,28 @@ pid_t wait3 (int *, int, struct rusage *); pid_t wait4 (pid_t, int *, int, struct rusage *); #endif -#include -#include +#define WNOHANG 1 +#define WUNTRACED 2 + +#define WSTOPPED 2 +#define WEXITED 4 +#define WCONTINUED 8 +#define WNOWAIT 0x1000000 + +#define P_ALL 0 +#define P_PID 1 +#define P_PGID 2 + +#ifndef WEXITSTATUS +#define WEXITSTATUS(s) (((s) & 0xff00) >> 8) +#define WTERMSIG(s) ((s) & 0x7f) +#define WSTOPSIG(s) WEXITSTATUS(s) +#define WCOREDUMP(s) ((s) & 0x80) +#define WIFEXITED(s) (!WTERMSIG(s)) +#define WIFSTOPPED(s) (((s) & 0xff) == 0x7f) +#define WIFSIGNALED(s) (((signed char) (((s) & 0x7f) + 1) >> 1) > 0) +#define WIFCONTINUED(s) ((s) == 0xffff) +#endif #ifdef __cplusplus } -- cgit v1.2.1