spawn: Don't override the system defined values on FreeBSD 8.
authorBruno Haible <bruno@clisp.org>
Tue, 2 Mar 2010 10:55:34 +0000 (11:55 +0100)
committerBruno Haible <bruno@clisp.org>
Tue, 2 Mar 2010 10:55:34 +0000 (11:55 +0100)
ChangeLog
lib/spawn.in.h

index f7c7482..28c48ae 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2010-03-02  Bruno Haible  <bruno@clisp.org>
+
+       spawn: Don't override the system defined values on FreeBSD 8.
+       * lib/spawn.in.h (POSIX_SPAWN_RESETIDS, POSIX_SPAWN_SETPGROUP,
+       POSIX_SPAWN_SETSIGDEF, POSIX_SPAWN_SETSIGMASK,
+       POSIX_SPAWN_SETSCHEDPARAM, POSIX_SPAWN_SETSCHEDULER): Don't redefine
+       if HAVE_POSIX_SPAWN is 1.
+       Reported by Johan van Selst <johans@stack.nl> via Eric Blake.
+
 2010-03-01  Bruno Haible  <bruno@clisp.org>
 
        * doc/gnulib-tool.texi (Initial import): Clarify the requirements
index 84ba93c..1e8c936 100644 (file)
@@ -110,17 +110,19 @@ typedef struct
 
 
 /* Flags to be set in the `posix_spawnattr_t'.  */
-#if @REPLACE_POSIX_SPAWN@
+#if !@HAVE_POSIX_SPAWN@
+# if @REPLACE_POSIX_SPAWN@
 /* Use the values from the system, for better compatibility.  */
 /* But this implementation does not support AIX extensions.  */
-# undef POSIX_SPAWN_FORK_HANDLERS
-#else
-# define POSIX_SPAWN_RESETIDS           0x01
-# define POSIX_SPAWN_SETPGROUP          0x02
-# define POSIX_SPAWN_SETSIGDEF          0x04
-# define POSIX_SPAWN_SETSIGMASK         0x08
-# define POSIX_SPAWN_SETSCHEDPARAM      0x10
-# define POSIX_SPAWN_SETSCHEDULER       0x20
+#  undef POSIX_SPAWN_FORK_HANDLERS
+# else
+#  define POSIX_SPAWN_RESETIDS           0x01
+#  define POSIX_SPAWN_SETPGROUP          0x02
+#  define POSIX_SPAWN_SETSIGDEF          0x04
+#  define POSIX_SPAWN_SETSIGMASK         0x08
+#  define POSIX_SPAWN_SETSCHEDPARAM      0x10
+#  define POSIX_SPAWN_SETSCHEDULER       0x20
+# endif
 #endif
 /* A GNU extension.  Use the next free bit position.  */
 #define POSIX_SPAWN_USEVFORK \