X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fspawn.in.h;h=bca299819656887194a1ccde534cb70e0c526f97;hb=bbfcd2f1a92c9bdbb8d7d7d0a8a8c6665c316747;hp=543475bb7251072bc7ec863fc65701cb04ac29c8;hpb=fea1830d840868b6d5d66ee30bb56f322f109254;p=gnulib.git diff --git a/lib/spawn.in.h b/lib/spawn.in.h index 543475bb7..bca299819 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-2013 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,7 +15,7 @@ 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@ @@ -27,12 +27,12 @@ # @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 @@ -63,7 +63,7 @@ #ifndef _Restrict_arr_ # if ((199901L <= __STDC_VERSION__ \ || ((3 < __GNUC__ || (3 == __GNUC__ && 1 <= __GNUC_MINOR__)) \ - && !__STRICT_ANSI__)) \ + && !defined __STRICT_ANSI__)) \ && !defined __GNUG__) # define _Restrict_arr_ _Restrict_ # else @@ -83,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; @@ -93,6 +94,8 @@ typedef struct int _policy; int __pad[16]; } posix_spawnattr_t; +# define GNULIB_defined_posix_spawnattr_t 1 +# endif #endif @@ -102,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; @@ -109,10 +113,12 @@ 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 -/* Flags to be set in the `posix_spawnattr_t'. */ +/* Flags to be set in the 'posix_spawnattr_t'. */ #if @HAVE_POSIX_SPAWN@ /* Use the values from the system, but provide the missing ones. */ # ifndef POSIX_SPAWN_SETSCHEDPARAM @@ -146,12 +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 - [((POSIX_SPAWN_RESETIDS | POSIX_SPAWN_SETPGROUP - | POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK - | POSIX_SPAWN_SETSCHEDPARAM | POSIX_SPAWN_SETSCHEDULER) - & POSIX_SPAWN_USEVFORK) == 0) - ? 1 : -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@ @@ -208,7 +218,7 @@ _GL_WARN_ON_USE (posix_spawn, "posix_spawn is unportable - " #endif #if @GNULIB_POSIX_SPAWNP@ -/* Similar to `posix_spawn' but search for FILE in the PATH. +/* Similar to 'posix_spawn' but search for FILE in the PATH. This function is a possible cancellation points and therefore not marked with __THROW. */ @@ -253,7 +263,7 @@ _GL_WARN_ON_USE (posix_spawnp, "posix_spawnp is unportable - " #if @GNULIB_POSIX_SPAWNATTR_INIT@ -/* Initialize data structure with attributes for `spawn' to default values. */ +/* Initialize data structure with attributes for 'spawn' to default values. */ # if @REPLACE_POSIX_SPAWN@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # define posix_spawnattr_init rpl_posix_spawnattr_init @@ -702,7 +712,7 @@ _GL_WARN_ON_USE (posix_spawnattr_setschedparam, #if @GNULIB_POSIX_SPAWN_FILE_ACTIONS_INIT@ -/* Initialize data structure for file attribute for `spawn' call. */ +/* Initialize data structure for file attribute for 'spawn' call. */ # if @REPLACE_POSIX_SPAWN@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # define posix_spawn_file_actions_init rpl_posix_spawn_file_actions_init @@ -763,8 +773,8 @@ _GL_WARN_ON_USE (posix_spawn_file_actions_destroy, #if @GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN@ /* Add an action to FILE-ACTIONS which tells the implementation to call - `open' for the given file during the `spawn' call. */ -# if @REPLACE_POSIX_SPAWN@ + 'open' for the given file during the 'spawn' call. */ +# if @REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # define posix_spawn_file_actions_addopen rpl_posix_spawn_file_actions_addopen # endif @@ -802,8 +812,8 @@ _GL_WARN_ON_USE (posix_spawn_file_actions_addopen, #if @GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE@ /* Add an action to FILE-ACTIONS which tells the implementation to call - `close' for the given file descriptor during the `spawn' call. */ -# if @REPLACE_POSIX_SPAWN@ + 'close' for the given file descriptor during the 'spawn' call. */ +# if @REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # define posix_spawn_file_actions_addclose rpl_posix_spawn_file_actions_addclose # endif @@ -833,8 +843,8 @@ _GL_WARN_ON_USE (posix_spawn_file_actions_addclose, #if @GNULIB_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2@ /* Add an action to FILE-ACTIONS which tells the implementation to call - `dup2' for the given file descriptors during the `spawn' call. */ -# if @REPLACE_POSIX_SPAWN@ + 'dup2' for the given file descriptors during the 'spawn' call. */ +# if @REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2@ # if !(defined __cplusplus && defined GNULIB_NAMESPACE) # define posix_spawn_file_actions_adddup2 rpl_posix_spawn_file_actions_adddup2 # endif @@ -867,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 */