Extend d_pseudofork to Win32-land and set it when appropriate
Steve Hay [Tue, 5 Dec 2006 16:06:31 +0000 (16:06 +0000)]
(namely, when we have USE_ITHREADS and PERL_IMPLICIT_SYSTEM)

p4raw-id: //depot/perl@29469

win32/config.bc
win32/config.gc
win32/config.vc
win32/config.vc64
win32/config_H.bc
win32/config_H.gc
win32/config_H.vc
win32/config_H.vc64
win32/config_sh.PL

index 4e892e9..f87e399 100644 (file)
@@ -333,6 +333,7 @@ d_poll='undef'
 d_portable='define'
 d_printf_format_null='undef'
 d_procselfexe='undef'
+d_pseudofork='undef'
 d_pthread_atfork='undef'
 d_pthread_attr_setscope='undef'
 d_pthread_yield='undef'
index 2652139..72afe61 100644 (file)
@@ -333,6 +333,7 @@ d_poll='undef'
 d_portable='define'
 d_printf_format_null='undef'
 d_procselfexe='undef'
+d_pseudofork='undef'
 d_pthread_atfork='undef'
 d_pthread_attr_setscope='undef'
 d_pthread_yield='undef'
index ecae562..5339125 100644 (file)
@@ -333,6 +333,7 @@ d_poll='undef'
 d_portable='define'
 d_printf_format_null='undef'
 d_procselfexe='undef'
+d_pseudofork='undef'
 d_pthread_atfork='undef'
 d_pthread_attr_setscope='undef'
 d_pthread_yield='undef'
index 43d4041..0602555 100644 (file)
@@ -333,6 +333,7 @@ d_poll='undef'
 d_portable='define'
 d_printf_format_null='undef'
 d_procselfexe='undef'
+d_pseudofork='undef'
 d_pthread_atfork='undef'
 d_pthread_attr_setscope='undef'
 d_pthread_yield='undef'
index fab75f2..3a75907 100644 (file)
  */
 /*#define HAS_VFORK    /**/
 
+/* HAS_PSEUDOFORK:
+ *     This symbol, if defined, indicates that an emulation of the
+ *     fork routine is available.
+ */
+/*#define HAS_PSEUDOFORK       /**/
+
 /* Signal_t:
  *     This symbol's value is either "void" or "int", corresponding to the
  *     appropriate return type of a signal handler.  Thus, you can declare
index e872524..0fdff18 100644 (file)
  */
 /*#define HAS_VFORK    /**/
 
+/* HAS_PSEUDOFORK:
+ *     This symbol, if defined, indicates that an emulation of the
+ *     fork routine is available.
+ */
+/*#define HAS_PSEUDOFORK       /**/
+
 /* Signal_t:
  *     This symbol's value is either "void" or "int", corresponding to the
  *     appropriate return type of a signal handler.  Thus, you can declare
index 9a6872f..c85f0aa 100644 (file)
  */
 /*#define HAS_VFORK    /**/
 
+/* HAS_PSEUDOFORK:
+ *     This symbol, if defined, indicates that an emulation of the
+ *     fork routine is available.
+ */
+/*#define HAS_PSEUDOFORK       /**/
+
 /* Signal_t:
  *     This symbol's value is either "void" or "int", corresponding to the
  *     appropriate return type of a signal handler.  Thus, you can declare
index 44c47dd..b5d708c 100644 (file)
  */
 /*#define HAS_VFORK    /**/
 
+/* HAS_PSEUDOFORK:
+ *     This symbol, if defined, indicates that an emulation of the
+ *     fork routine is available.
+ */
+/*#define HAS_PSEUDOFORK       /**/
+
 /* Signal_t:
  *     This symbol's value is either "void" or "int", corresponding to the
  *     appropriate return type of a signal handler.  Thus, you can declare
index 1d9a831..3f819fe 100644 (file)
@@ -109,6 +109,10 @@ if ($opt{uselargefiles} ne 'define') {
     $opt{lseektype} = 'off_t';
 }
 
+if ($opt{useithreads} eq 'define' && $opt{ccflags} =~ / -DPERL_IMPLICIT_SYS/) {
+    $opt{d_pseudofork} = 'define';
+}
+
 while (<>) {
     s/~([\w_]+)~/$opt{$1}/g;
     if (/^([\w_]+)=(.*)$/) {