From: Nick Ing-Simmons <nik@tiuk.ti.com>
Date: Tue, 2 Dec 1997 01:11:16 +0000 (+0000)
Subject: Sarathy's patch
X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=c021c6704cfcf1f8f12b4513b9385ab6a392ea0b;p=p5sagit%2Fp5-mst-13.2.git

Sarathy's patch

p4raw-id: //depot/ansiperl@344
---

diff --git a/lib/ExtUtils/MM_Win32.pm b/lib/ExtUtils/MM_Win32.pm
index 778710c..c7808c9 100644
--- a/lib/ExtUtils/MM_Win32.pm
+++ b/lib/ExtUtils/MM_Win32.pm
@@ -352,7 +352,9 @@ END
     push(@m, "\t$self->{CP} \$(MYEXTLIB) \$\@\n") if $self->{MYEXTLIB};
 
     push @m,
-q{	$(AR) }.($BORLAND ? '$@ $(OBJECT:^"+")' : '-out:$@ $(OBJECT)').q{
+q{	$(AR) }.($BORLAND ? '$@ $(OBJECT:^"+")'
+			  : ($GCC ? '-ru $@ $(OBJECT)'
+			          : '-out:$@ $(OBJECT)')).q{
 	}.$self->{NOECHO}.q{echo "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)\extralibs.ld
 	$(CHMOD) 755 $@
 };
@@ -425,7 +427,7 @@ $(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(BOOTSTRAP) $(INST_ARCHAUTODIR)\.exists
 ');
     if ($GCC) {
       push(@m,  
-       q{	$(LD) -o $@ -Wl,--base-file -Wl,dll.base $(LDDLFLAGS) }.$ldfrom.q{ $(OTHERLDFLAGS) $(MYEXTLIB) $(PERL_ARCHIVE) $(LDLOADLIBS) dll.exp 
+       q{	$(LD) -o $@ -Wl,--base-file -Wl,dll.base $(LDDLFLAGS) }.$ldfrom.q{ $(OTHERLDFLAGS) $(MYEXTLIB) $(PERL_ARCHIVE) $(LDLOADLIBS)
 	dlltool --def $(EXPORT_LIST) --base-file dll.base --output-exp dll.exp
 	$(LD) -o $@ $(LDDLFLAGS) }.$ldfrom.q{ $(OTHERLDFLAGS) $(MYEXTLIB) $(PERL_ARCHIVE) $(LDLOADLIBS) dll.exp });
     } else {
diff --git a/win32/config.gc b/win32/config.gc
index a78198f..b267f54 100644
--- a/win32/config.gc
+++ b/win32/config.gc
@@ -45,7 +45,7 @@ State=''
 afs='false'
 alignbytes='8'
 aphostname=''
-ar='lib'
+ar='ar'
 archlib='~INST_TOP~\lib'
 archobjs=''
 awk='awk'
diff --git a/win32/makefile.mk b/win32/makefile.mk
index f700036..f66e788 100644
--- a/win32/makefile.mk
+++ b/win32/makefile.mk
@@ -72,14 +72,14 @@ LIBFILES = import32.lib $(LIBC) odbc32.lib odbccp32.lib
 WINIOMAYBE =
 
 .IF  "$(CFG)" == "Debug"
-OPTIMIZE = -v $(RUNTIME)
+OPTIMIZE = -v $(RUNTIME) -DDEBUGGING
 LINK_DBG = -v
 .ELSE
 OPTIMIZE = -5 -O2 $(RUNTIME)
 LINK_DBG = 
 .ENDIF
 
-CFLAGS   = -w -tWM -tWD $(INCLUDES) $(DEFINES) $(LOCDEFS) $(PCHFLAGS) $(OPTIMIZE)
+CFLAGS   = -w -d -tWM -tWD $(INCLUDES) $(DEFINES) $(LOCDEFS) $(PCHFLAGS) $(OPTIMIZE)
 LINK_FLAGS  = $(LINK_DBG) -L$(CCLIBDIR)
 OBJOUT_FLAG = -o
 
diff --git a/win32/makegcc.mk b/win32/makegcc.mk
index 56daeca..2396de9 100644
--- a/win32/makegcc.mk
+++ b/win32/makegcc.mk
@@ -11,7 +11,7 @@
 # newly built perl.
 INST_DRV=c:
 INST_TOP=$(INST_DRV)\perl5004.5x
-BUILDOPT=
+BUILDOPT=-DUSE_THREADS
 
 
 #
@@ -320,8 +320,8 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl
 	$(XCOPY) ..\*.h ..\lib\CORE\*.*
 	$(XCOPY) *.h ..\lib\CORE\*.*
 	$(RCOPY) include ..\lib\CORE\*.*
-	$(MINIPERL) -I..\lib config_h.PL || $(MAKE) CCTYPE=$(CCTYPE) \
-	    RUNTIME=$(RUNTIME) CFG=$(CFG) $(CONFIGPM)
+	$(MINIPERL) -I..\lib config_h.PL || $(MAKE) -f makegcc.mk \
+	    CCTYPE=$(CCTYPE) RUNTIME=$(RUNTIME) CFG=$(CFG) $(CONFIGPM)
 
 LKPRE = INPUT (
 LKPOST = )
diff --git a/win32/win32.h b/win32/win32.h
index 9b53a9a..c1e0121 100644
--- a/win32/win32.h
+++ b/win32/win32.h
@@ -94,7 +94,7 @@ struct tms {
 
 /* Compiler-specific stuff. */
 
-#ifdef __BORLANDC__		/* Microsoft Visual C++ */
+#ifdef __BORLANDC__		/* Borland C++ */
 
 #define _access access
 #define _chdir chdir
@@ -114,7 +114,7 @@ struct tms {
 #pragma warn -csu
 #pragma warn -pro
 
-#else
+#endif
 
 #ifdef _MSC_VER			/* Microsoft Visual C++ */
 
@@ -124,9 +124,15 @@ typedef long		gid_t;
 
 #endif /* _MSC_VER */
 
+#ifdef __MINGW32__		/* Minimal Gnu-Win32 */
+
+typedef long		uid_t;
+typedef long		gid_t;
+
+#endif /* __MINGW32__ */
+
 /* compatibility stuff for other compilers goes here */
 
-#endif
 
 START_EXTERN_C