From: Paolo Bonzini Date: Thu, 20 Aug 2009 08:24:19 +0000 (+0200) Subject: Move more flags to lib/fcntl.in.h. X-Git-Tag: v0.1~5628 X-Git-Url: http://erislabs.net/gitweb/?a=commitdiff_plain;h=2dce770482f30d1f07b3e99fd0d21b06f6e800fd;p=gnulib.git Move more flags to lib/fcntl.in.h. * lib/cloexec.c: Do not define FD_CLOEXEC here. * lib/popen-safer.c: Do not alias O_NOINHERIT to O_CLOEXEC here. * lib/fcntl.in.h: Do both things here. --- diff --git a/ChangeLog b/ChangeLog index 8210003cf..a1b015d03 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2009-08-21 Paolo Bonzini + + fcntl: move more flags to the header + * lib/cloexec.c: Do not define FD_CLOEXEC here. + * lib/popen-safer.c: Do not alias O_NOINHERIT to O_CLOEXEC here. + * lib/fcntl.in.h: Do both things here. + 2009-08-21 Jim Meyering consistently remove $@-t before redirecting to it diff --git a/lib/cloexec.c b/lib/cloexec.c index ff8105ba0..0fb227c0a 100644 --- a/lib/cloexec.c +++ b/lib/cloexec.c @@ -24,10 +24,6 @@ #include #include -#ifndef FD_CLOEXEC -# define FD_CLOEXEC 1 -#endif - /* Set the `FD_CLOEXEC' flag of DESC if VALUE is true, or clear the flag if VALUE is false. Return 0 on success, or -1 on error with `errno' set. */ diff --git a/lib/fcntl.in.h b/lib/fcntl.in.h index fd7520e8d..a688fb4bb 100644 --- a/lib/fcntl.in.h +++ b/lib/fcntl.in.h @@ -67,6 +67,11 @@ extern void _gl_register_fd (int fd, const char *filename); } #endif +/* Fix up the FD_* macros. */ + +#ifndef FD_CLOEXEC +# define FD_CLOEXEC 1 +#endif /* Fix up the O_* macros. */ @@ -75,6 +80,12 @@ extern void _gl_register_fd (int fd, const char *filename); # define O_DIRECT O_DIRECTIO #endif +#if !defined O_CLOEXEC && defined O_NOINHERIT +/* Mingw spells it `O_NOINHERIT'. Intentionally leave it + undefined if not available. */ +# define O_CLOEXEC O_NOINHERIT +#endif + #ifndef O_DIRECT # define O_DIRECT 0 #endif diff --git a/lib/popen-safer.c b/lib/popen-safer.c index 2182a2c03..1905be5ec 100644 --- a/lib/popen-safer.c +++ b/lib/popen-safer.c @@ -27,9 +27,7 @@ #include "cloexec.h" -#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -# define O_CLOEXEC O_NOINHERIT -#elif !defined O_CLOEXEC +#ifndef O_CLOEXEC # define O_CLOEXEC 0 #endif