patch up egcs-1.1.2-mingw32 build (builds a working miniperl, but not
Gurusamy Sarathy [Wed, 27 Oct 1999 21:15:07 +0000 (21:15 +0000)]
perl; stdout/stderr redirects seem broken as well)

p4raw-id: //depot/perl@4474

iperlsys.h
makedef.pl
perl.h
win32/makefile.mk
win32/win32.h

index 3ecea42..92e5c28 100644 (file)
 extern void PerlIO_init (void);
 #endif
 
+#ifndef Sighandler_t
+typedef Signal_t (*Sighandler_t) (int);
+#endif
+
 #if defined(PERL_IMPLICIT_SYS)
 
 #ifndef PerlIO
@@ -865,9 +869,6 @@ struct IPerlMemInfo
 
 #if defined(PERL_IMPLICIT_SYS)
 
-#ifndef Sighandler_t
-typedef Signal_t (*Sighandler_t) (int);
-#endif
 #ifndef jmp_buf
 #include <setjmp.h>
 #endif
index a5878ff..63a09bd 100644 (file)
@@ -415,7 +415,7 @@ if ($define{'PERL_GLOBAL_STRUCT'})
  {
   my $global = readvar($perlvars_h);
   skip_symbols $global;
-  emit_symbols [qw(Perl_GetVars)];
+  emit_symbol('Perl_GetVars');
   emit_symbols [qw(PL_Vars PL_VarsPtr)] unless $CCTYPE eq 'GCC';
  } 
 
diff --git a/perl.h b/perl.h
index 421e4a0..b8d0dd8 100644 (file)
--- a/perl.h
+++ b/perl.h
@@ -31,7 +31,7 @@
 #    define PERL_IMPLICIT_CONTEXT
 #  endif
 #  ifndef PERL_IMPLICIT_SYS
-#    ifdef WIN32
+#    if defined(WIN32) && !defined(__MINGW32__)
 #      define PERL_IMPLICIT_SYS                /* XXX not implemented everywhere yet */
 #    endif
 #  endif
@@ -42,7 +42,7 @@
 #    define PERL_IMPLICIT_CONTEXT
 #  endif
 #  ifndef PERL_IMPLICIT_SYS
-#    ifdef WIN32
+#    if defined(WIN32) && !defined(__MINGW32__)
 #      define PERL_IMPLICIT_SYS                /* XXX not implemented everywhere yet */
 #    endif
 #  endif
@@ -2139,7 +2139,7 @@ I32 unlnk (char*);
 #  endif
 #endif
 
-typedef Signal_t (*Sighandler_t) (int);
+/* Sighandler_t defined in iperlsys.h */
 
 #ifdef HAS_SIGACTION
 typedef struct sigaction Sigsave_t;
@@ -2635,7 +2635,7 @@ EXT struct perl_vars *PL_VarsPtr INIT(&PL_Vars);
 EXT
 #endif /* WIN32 */
 struct perl_vars *PL_VarsPtr;
-#define PL_Vars (*((PL_VarsPtr) ? PL_VarsPtr : (PL_VarsPtr =  Perl_GetVars())))
+#define PL_Vars (*((PL_VarsPtr) ? PL_VarsPtr : (PL_VarsPtr = Perl_GetVars(aTHX))))
 #endif /* PERL_CORE */
 #endif /* PERL_GLOBAL_STRUCT */
 
index b48ba1e..859c1bf 100644 (file)
@@ -847,7 +847,7 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl
        $(XCOPY) ..\ext\re\re.pm $(LIBDIR)\*.*
        $(RCOPY) include $(COREDIR)\*.*
        $(MINIPERL) -I..\lib config_h.PL "INST_VER=$(INST_VER)" \
-           || $(MAKE) $(MAKEMACROS) $(CONFIGPM)
+           || $(MAKE) $(MAKEMACROS) $(CONFIGPM) $(MAKEFILE)
 
 $(MINIPERL) : $(MINIDIR) $(MINI_OBJ)
 .IF "$(CCTYPE)" == "BORLAND"
index 0f6f708..766f488 100644 (file)
@@ -248,6 +248,13 @@ typedef long               gid_t;
 #define flushall       _flushall
 #define fcloseall      _fcloseall
 
+#undef __attribute__
+#define __attribute__(x)
+
+#ifndef CP_UTF8
+#  define CP_UTF8      65001
+#endif
+
 #ifdef PERL_OBJECT
 #  define MEMBER_TO_FPTR(name) &(name)
 #endif