X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fspawn.in.h;h=3c31fd0a51dd04ace0cddfcf914350c8ad084c4d;hb=63ce57e7e9fff1265da4e0a4d2639483c28b6b93;hp=73b34399d6a0c5bbb10f574ed27e59c48f7bc1ee;hpb=fb22d8f7dad4a6160090cf16c824aa651425e563;p=gnulib.git diff --git a/lib/spawn.in.h b/lib/spawn.in.h index 73b34399d..3c31fd0a5 100644 --- a/lib/spawn.in.h +++ b/lib/spawn.in.h @@ -1,5 +1,5 @@ /* Definitions for POSIX spawn interface. - Copyright (C) 2000, 2003-2004, 2008-2010 Free Software Foundation, Inc. + Copyright (C) 2000, 2003-2004, 2008-2011 Free Software Foundation, Inc. This file is part of the GNU C Library. This program is free software: you can redistribute it and/or modify @@ -15,23 +15,24 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#ifndef _GL_SPAWN_H +#ifndef _@GUARD_PREFIX@_SPAWN_H #if __GNUC__ >= 3 @PRAGMA_SYSTEM_HEADER@ #endif +@PRAGMA_COLUMNS@ /* The include_next requires a split double-inclusion guard. */ #if @HAVE_SPAWN_H@ # @INCLUDE_NEXT@ @NEXT_SPAWN_H@ #endif -#ifndef _GL_SPAWN_H -#define _GL_SPAWN_H +#ifndef _@GUARD_PREFIX@_SPAWN_H +#define _@GUARD_PREFIX@_SPAWN_H /* Get definitions of 'struct sched_param' and 'sigset_t'. But avoid namespace pollution on glibc systems. */ -#ifndef __GLIBC__ +#if !(defined __GLIBC__ && !defined __UCLIBC__) # include # include #endif @@ -82,6 +83,7 @@ # define posix_spawnattr_t rpl_posix_spawnattr_t #endif #if @REPLACE_POSIX_SPAWN@ || !@HAVE_POSIX_SPAWNATTR_T@ +# if !GNULIB_defined_posix_spawnattr_t typedef struct { short int _flags; @@ -92,6 +94,8 @@ typedef struct int _policy; int __pad[16]; } posix_spawnattr_t; +# define GNULIB_defined_posix_spawnattr_t 1 +# endif #endif @@ -101,6 +105,7 @@ typedef struct # define posix_spawn_file_actions_t rpl_posix_spawn_file_actions_t #endif #if @REPLACE_POSIX_SPAWN@ || !@HAVE_POSIX_SPAWN_FILE_ACTIONS_T@ +# if !GNULIB_defined_posix_spawn_file_actions_t typedef struct { int _allocated; @@ -108,6 +113,8 @@ typedef struct struct __spawn_action *_actions; int __pad[16]; } posix_spawn_file_actions_t; +# define GNULIB_defined_posix_spawn_file_actions_t 1 +# endif #endif @@ -145,11 +152,16 @@ typedef struct | POSIX_SPAWN_SETSCHEDULER \ | (POSIX_SPAWN_SETSCHEDULER > 0 ? POSIX_SPAWN_SETSCHEDULER - 1 : 0)) \ + 1) +#if !GNULIB_defined_verify_POSIX_SPAWN_USEVFORK_no_overlap typedef int verify_POSIX_SPAWN_USEVFORK_no_overlap - [2 * (((POSIX_SPAWN_RESETIDS | POSIX_SPAWN_SETPGROUP - | POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK - | POSIX_SPAWN_SETSCHEDPARAM | POSIX_SPAWN_SETSCHEDULER) - & POSIX_SPAWN_USEVFORK) == 0) - 1]; + [(((POSIX_SPAWN_RESETIDS | POSIX_SPAWN_SETPGROUP + | POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK + | POSIX_SPAWN_SETSCHEDPARAM | POSIX_SPAWN_SETSCHEDULER) + & POSIX_SPAWN_USEVFORK) + == 0) + ? 1 : -1]; +# define GNULIB_defined_verify_POSIX_SPAWN_USEVFORK_no_overlap 1 +#endif #if @GNULIB_POSIX_SPAWN@ @@ -865,5 +877,5 @@ _GL_WARN_ON_USE (posix_spawn_file_actions_adddup2, #endif -#endif /* _GL_SPAWN_H */ -#endif /* _GL_SPAWN_H */ +#endif /* _@GUARD_PREFIX@_SPAWN_H */ +#endif /* _@GUARD_PREFIX@_SPAWN_H */