diff options
author | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2015-03-11 22:58:32 +0100 |
---|---|---|
committer | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2015-03-12 14:20:50 +0100 |
commit | c3ddc18409b71db9e2fc863a7ff94a89b3c316ce (patch) | |
tree | 5d00439592579331cc8315f939e2a0f8ad4b6bde | |
parent | 8e5113112ae7d3402e2afb01c8cee18d3beb0f2e (diff) |
spawn.h: Fix !_GNU_SOURCE compilation
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
-rw-r--r-- | include/spawn.h | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/include/spawn.h b/include/spawn.h index 95fff356f..3de375b41 100644 --- a/include/spawn.h +++ b/include/spawn.h @@ -66,15 +66,6 @@ typedef struct # define POSIX_SPAWN_USEVFORK 0x40 #endif - -#define __POSIX_SPAWN_MASK (POSIX_SPAWN_RESETIDS \ - | POSIX_SPAWN_SETPGROUP \ - | POSIX_SPAWN_SETSIGDEF \ - | POSIX_SPAWN_SETSIGMASK \ - | POSIX_SPAWN_SETSCHEDPARAM \ - | POSIX_SPAWN_SETSCHEDULER \ - | POSIX_SPAWN_USEVFORK) - __BEGIN_DECLS /* Spawn a new process executing PATH with the attributes describes in *ATTRP. @@ -170,12 +161,27 @@ static inline int posix_spawnattr_setflags (posix_spawnattr_t *_attr, short int __flags) { +#ifdef POSIX_SPAWN_USEVFORK +# define __POSIX_SPAWN_USEVFORK POSIX_SPAWN_USEVFORK +#else +# define __POSIX_SPAWN_USEVFORK 0 +#endif +#define __POSIX_SPAWN_MASK (POSIX_SPAWN_RESETIDS \ + | POSIX_SPAWN_SETPGROUP \ + | POSIX_SPAWN_SETSIGDEF \ + | POSIX_SPAWN_SETSIGMASK \ + | POSIX_SPAWN_SETSCHEDPARAM \ + | POSIX_SPAWN_SETSCHEDULER \ + | __POSIX_SPAWN_USEVFORK) + /* Check no invalid bits are set. */ if (__flags & ~__POSIX_SPAWN_MASK) return EINVAL; _attr->__flags = __flags; return 0; +#undef __POSIX_SPAWN_USEVFORK +#undef __POSIX_SPAWN_MASK } /* Get process group ID from the attribute structure. */ |