make op/write.t work better under stdio by running the subtests
[p5sagit/p5-mst-13.2.git] / win32 / makefile.mk
index cdb482f..2147995 100644 (file)
@@ -34,7 +34,7 @@ INST_TOP      *= $(INST_DRV)\perl
 # versioned installation can be obtained by setting INST_TOP above to a
 # path that includes an arbitrary version string.
 #
-INST_VER       *= \5.9.0
+INST_VER       *= \5.9.1
 
 #
 # Comment this out if you DON'T want your perl installation to have
@@ -384,7 +384,7 @@ LINK32              = g++
 .END
 LIB32          = ar rc
 IMPLIB         = dlltool
-RSC            = rc
+RSC            = windres
 
 i = .i
 o = .o
@@ -450,10 +450,6 @@ LIBC       = msvcrt.lib
 LIBC   = PerlCRT.lib
 .ENDIF
 
-PERLEXE_ICO    = perlexe.ico
-PERLEXE_RES    = perlexe.res
-PERLDLL_RES    =
-
 .IF  "$(CFG)" == "Debug"
 .IF "$(CCTYPE)" == "MSVC20"
 OPTIMIZE       = -Od -MD -Z7 -DDEBUGGING
@@ -554,7 +550,11 @@ $(o).dll:
 .ENDIF
 
 .rc.res:
+.IF "$(CCTYPE)" == "GCC"
+       $(RSC) --use-temp-file -i $< -o $@
+.ELSE
        $(RSC) -i.. $<
+.ENDIF
 
 #
 # various targets
@@ -567,6 +567,10 @@ CONFIGPM   = ..\lib\Config.pm
 MINIMOD                = ..\lib\ExtUtils\Miniperl.pm
 X2P            = ..\x2p\a2p.exe
 
+PERLEXE_ICO    = .\perlexe.ico
+PERLEXE_RES    = .\perlexe.res
+PERLDLL_RES    =
+
 # Nominate a target which causes extensions to be re-built
 # This used to be $(PERLEXE), but at worst it is the .dll that they depend
 # on and really only the interface - i.e. the .def file used to export symbols
@@ -1101,6 +1105,9 @@ Extensions : buildext.pl $(PERLDEP) $(CONFIGPM)
 Extensions_clean :
        -if exist $(MINIPERL) $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) clean
 
+Extensions_realclean :
+       -if exist $(MINIPERL) $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) realclean
+
 #----------------------------------------------------------------------------------
 
 
@@ -1150,6 +1157,7 @@ utils: $(PERLEXE) $(X2P)
        copy ..\README.vms      ..\pod\perlvms.pod
        copy ..\README.vos      ..\pod\perlvos.pod
        copy ..\README.win32    ..\pod\perlwin32.pod
+       copy ..\pod\perl591delta.pod ..\pod\perldelta.pod
        cd ..\pod && $(MAKE) -f ..\win32\pod.mak converters
        cd ..\lib && $(PERLEXE) lib_pm.PL
        $(PERLEXE) $(PL2BAT) $(UTILS)
@@ -1157,29 +1165,35 @@ utils: $(PERLEXE) $(X2P)
 # Note that the pod cleanup in this next section is parsed (and regenerated
 # by pod/buildtoc so please check that script before making changes here
 
-distclean: clean
+distclean: realclean
        -del /f $(MINIPERL) $(PERLEXE) $(PERLDLL) $(GLOBEXE) \
                $(PERLIMPLIB) ..\miniperl$(a) $(MINIMOD)
        -del /f *.def *.map
+       -del /f $(DYNALOADER).c
        -del /f $(EXTDIR)\DynaLoader\dl_win32.xs
+       -del /f $(EXTDIR)\DynaLoader\DynaLoader.pm
+       -del /f $(EXTDIR)\DynaLoader\XSLoader.pm
+       -del /f $(LIBDIR)\Encode.pm $(LIBDIR)\encoding.pm $(LIBDIR)\Errno.pm
+       -del /f $(LIBDIR)\Config.pod $(LIBDIR)\POSIX.pod $(LIBDIR)\threads.pm
        -del /f $(LIBDIR)\.exists $(LIBDIR)\attrs.pm $(LIBDIR)\DynaLoader.pm
-       -del /f $(LIBDIR)\XSLoader.pm
+       -del /f $(LIBDIR)\XSLoader.pm $(LIBDIR)\lib.pm
        -del /f $(LIBDIR)\Fcntl.pm $(LIBDIR)\IO.pm $(LIBDIR)\Opcode.pm
        -del /f $(LIBDIR)\ops.pm $(LIBDIR)\Safe.pm
        -del /f $(LIBDIR)\SDBM_File.pm $(LIBDIR)\Socket.pm $(LIBDIR)\POSIX.pm
        -del /f $(LIBDIR)\B.pm $(LIBDIR)\O.pm $(LIBDIR)\re.pm
-       -del /f $(LIBDIR)\Data\Dumper.pm $(LIBDIR)\ByteLoader.pm
-       -del /f $(LIBDIR)\PerlIO\scalar.pm
+       -del /f $(LIBDIR)\ByteLoader.pm
        -del /f $(LIBDIR)\Devel\Peek.pm $(LIBDIR)\Devel\DProf.pm
+       -del /f $(LIBDIR)\Devel\PPPort.pm
        -del /f $(LIBDIR)\File\Glob.pm
        -del /f $(LIBDIR)\Storable.pm
-       -del /f $(LIBDIR)\Filter\Util\Call.pm
        -del /f $(LIBDIR)\Digest\MD5.pm
-       -del /f $(LIBDIR)\MIME\Base64.pm
-       -del /f $(LIBDIR)\MIME\QuotedPrint.pm
+       -del /f $(LIBDIR)\PerlIO\encoding.pm
+       -del /f $(LIBDIR)\PerlIO\scalar.pm
+       -del /f $(LIBDIR)\PerlIO\via.pm
+       -del /f $(LIBDIR)\Sys\Hostname.pm
+       -del /f $(LIBDIR)\Thread\Signal.pm $(LIBDIR)\Thread\Specific.pm
+       -del /f $(LIBDIR)\threads\shared.pm
        -del /f $(LIBDIR)\Time\HiRes.pm
-       -del /f $(LIBDIR)\List\Util.pm
-       -del /f $(LIBDIR)\Scalar\Util.pm
        -del /f $(LIBDIR)\Unicode\Normalize.pm
        -if exist $(LIBDIR)\IO rmdir /s /q $(LIBDIR)\IO
        -if exist $(LIBDIR)\IO rmdir /s $(LIBDIR)\IO
@@ -1187,10 +1201,10 @@ distclean: clean
        -if exist $(LIBDIR)\B rmdir /s $(LIBDIR)\B
        -if exist $(LIBDIR)\Data rmdir /s /q $(LIBDIR)\Data
        -if exist $(LIBDIR)\Data rmdir /s $(LIBDIR)\Data
+       -if exist $(LIBDIR)\Encode rmdir /s /q $(LIBDIR)\Encode
+       -if exist $(LIBDIR)\Encode rmdir /s $(LIBDIR)\Encode
        -if exist $(LIBDIR)\Filter\Util rmdir /s /q $(LIBDIR)\Filter\Util
        -if exist $(LIBDIR)\Filter\Util rmdir /s $(LIBDIR)\Filter\Util
-       -if exist $(LIBDIR)\Digest rmdir /s /q $(LIBDIR)\Digest
-       -if exist $(LIBDIR)\Digest rmdir /s $(LIBDIR)\Digest
        -if exist $(LIBDIR)\MIME rmdir /s /q $(LIBDIR)\MIME
        -if exist $(LIBDIR)\MIME rmdir /s $(LIBDIR)\MIME
        -if exist $(LIBDIR)\List rmdir /s /q $(LIBDIR)\List
@@ -1202,13 +1216,13 @@ distclean: clean
        -cd $(PODDIR) && del /f *.html *.bat checkpods \
            perlaix.pod perlamiga.pod perlapollo.pod perlbeos.pod \
            perlbs2000.pod perlce.pod perlcn.pod perlcygwin.pod \
-           perldgux.pod perldos.pod perlepoc.pod perlfreebsd.pod \
-           perlhpux.pod perlhurd.pod perlirix.pod perljp.pod perlko.pod \
-           perlmachten.pod perlmacos.pod perlmacosx.pod perlmint.pod \
-           perlmpeix.pod perlnetware.pod perlos2.pod perlos390.pod \
-           perlos400.pod perlplan9.pod perlqnx.pod perlsolaris.pod \
-           perltru64.pod perltw.pod perluts.pod perlvmesa.pod perlvms.pod \
-           perlvms.pod perlvos.pod perlwin32.pod \
+           perldelta.pod perldgux.pod perldos.pod perlepoc.pod \
+           perlfreebsd.pod perlhpux.pod perlhurd.pod perlirix.pod \
+           perljp.pod perlko.pod perlmachten.pod perlmacos.pod \
+           perlmacosx.pod perlmint.pod perlmpeix.pod perlnetware.pod \
+           perlos2.pod perlos390.pod perlos400.pod perlplan9.pod \
+           perlqnx.pod perlsolaris.pod perltru64.pod perltw.pod \
+           perluts.pod perlvmesa.pod perlvms.pod perlvos.pod perlwin32.pod \
            pod2html pod2latex pod2man pod2text pod2usage \
            podchecker podselect
        -cd ..\utils && del /f h2ph splain perlbug pl2pm c2ph pstruct h2xs \
@@ -1218,6 +1232,7 @@ distclean: clean
        -del /f ..\config.sh ..\splittree.pl perlmain.c dlutils.c config.h.new
        -del /f $(CONFIGPM)
        -del /f bin\*.bat
+       -del /f $(PERLEXE_ICO)
        -cd .. && del /s *$(a) *.map *.pdb *.ilk *.bs *$(o) .exists pm_to_blib
        -cd $(EXTDIR) && del /s *.def Makefile Makefile.old
        -if exist $(AUTODIR) rmdir /s /q $(AUTODIR)
@@ -1279,7 +1294,7 @@ _test : $(RIGHTMAKE)
 .ENDIF
        cd ..\t && $(PERLEXE) -I..\lib harness
 
-clean : Extensions_clean
+_clean :
        -@erase miniperlmain$(o)
        -@erase $(MINIPERL)
        -@erase perlglob$(o)
@@ -1302,6 +1317,10 @@ clean : Extensions_clean
        -@erase *.ilk
        -@erase *.pdb
 
+clean : Extensions_clean _clean
+
+realclean : Extensions_realclean _clean
+
 # Handy way to run perlbug -ok without having to install and run the
 # installed perlbug. We don't re-run the tests here - we trust the user.
 # Please *don't* use this unless all tests pass.