MakeMaker FIRST_MAKEFILE and subdir
[p5sagit/p5-mst-13.2.git] / win32 / makefile.mk
index 499453b..7a30552 100644 (file)
@@ -33,7 +33,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.7.0
+INST_VER       *= \5.7.2
 
 #
 # Comment this out if you DON'T want your perl installation to have
@@ -381,7 +381,7 @@ EXEOUT_FLAG = -e
 LIBOUT_FLAG    =
 .IF "$(BCCOLD)" != "define"
 LINK_FLAGS     += -Gn
-DEFINES                += -D_MT
+DEFINES  += -D_MT -D__USELOCALES__ -D_WIN32_WINNT=0x0410
 .END
 .IF "$(BCCVCL)" == "define"
 LIBC           = cp32mti.lib vcl.lib vcl50.lib vclx50.lib vcle50.lib
@@ -652,7 +652,9 @@ MICROCORE_SRC       =               \
                ..\globals.c    \
                ..\gv.c         \
                ..\hv.c         \
+               ..\locale.c     \
                ..\mg.c         \
+               ..\numeric.c    \
                ..\op.c         \
                ..\perl.c       \
                ..\perlapi.c    \
@@ -660,6 +662,7 @@ MICROCORE_SRC       =               \
                ..\pp.c         \
                ..\pp_ctl.c     \
                ..\pp_hot.c     \
+               ..\pp_pack.c    \
                ..\pp_sys.c     \
                ..\regcomp.c    \
                ..\regexec.c    \
@@ -685,6 +688,7 @@ EXTRACORE_SRC       += ..\perlio.c
 
 WIN32_SRC      =               \
                .\win32.c       \
+               .\win32io.c     \
                .\win32sck.c    \
                .\win32thread.c
 
@@ -764,7 +768,7 @@ SETARGV_OBJ = setargv$(o)
 DYNAMIC_EXT    = Socket IO Fcntl Opcode SDBM_File POSIX attrs Thread B re \
                Data/Dumper Devel/Peek ByteLoader Devel/DProf File/Glob \
                Sys/Hostname Storable Filter/Util/Call Encode \
-               Digest/MD5 PerlIO/Scalar MIME/Base64
+               Digest/MD5 PerlIO/Scalar MIME/Base64 Time/HiRes Time/Piece
 STATIC_EXT     = DynaLoader
 NONXS_EXT      = Errno
 
@@ -800,8 +804,6 @@ CFG_VARS    =                                       \
                _o=$(o) obj_ext=$(o)            ~       \
                _a=$(a) lib_ext=$(a)            ~       \
                static_ext=$(STATIC_EXT)        ~       \
-               dynamic_ext=$(DYNAMIC_EXT)      ~       \
-               nonxs_ext=$(NONXS_EXT)          ~       \
                use5005threads=$(USE_5005THREADS)       ~       \
                useithreads=$(USE_ITHREADS)     ~       \
                usethreads=$(USE_5005THREADS)   ~       \
@@ -902,7 +904,7 @@ config.w32 : $(CFGSH_TMPL)
        -del /f config.h
        copy $(CFGH_TMPL) config.h
 
-..\config.sh : config.w32 $(MINIPERL) config_sh.PL
+..\config.sh : config.w32 $(MINIPERL) config_sh.PL FindExt.pm
        $(MINIPERL) -I..\lib config_sh.PL --cfgsh-option-file \
            $(mktmp $(CFG_VARS)) config.w32 > ..\config.sh
 
@@ -1073,6 +1075,9 @@ $(EXTDIR)\DynaLoader\dl_win32.xs: dl_win32.xs
 Extensions : buildext.pl $(PERLDEP) $(CONFIGPM) 
        $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR)
 
+Extensions_clean : 
+       -if exist $(MINIPERL) $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) clean
+
 #----------------------------------------------------------------------------------
 
 
@@ -1083,21 +1088,33 @@ doc: $(PERLEXE)
 
 utils: $(PERLEXE) $(X2P)
        cd ..\utils && $(MAKE) PERL=$(MINIPERL)
-       copy ..\README.aix ..\pod\perlaix.pod
-       copy ..\README.amiga ..\pod\perlamiga.pod
-       copy ..\README.cygwin ..\pod\perlcygwin.pod
-       copy ..\README.dos ..\pod\perldos.pod
-       copy ..\README.epoc ..\pod\perlepoc.pod
-       copy ..\README.hpux ..\pod\perlhpux.pod
-       copy ..\README.machten ..\pod\perlmachten.pod
-       copy ..\README.os2 ..\pod\perlos2.pod
-       copy ..\README.os390 ..\pod\perlos390.pod
-       copy ..\README.vmesa ..\pod\perlvmesa.pod
-       copy ..\README.bs2000 ..\pod\perlbs2000.pod
-       copy ..\README.solaris ..\pod\perlsolaris.pod
-       copy ..\vms\perlvms.pod ..\pod\perlvms.pod
-       copy ..\README.vos ..\pod\perlvos.pod
-       copy ..\README.win32 ..\pod\perlwin32.pod
+       copy ..\README.aix      ..\pod\perlaix.pod
+       copy ..\README.amiga    ..\pod\perlamiga.pod
+       copy ..\README.apollo   ..\pod\perlapollo.pod
+       copy ..\README.beos     ..\pod\perlbeos.pod
+       copy ..\README.bs2000   ..\pod\perlbs2000.pod
+       copy ..\README.cygwin   ..\pod\perlcygwin.pod
+       copy ..\README.dgux     ..\pod\perldgux.pod
+       copy ..\README.dos      ..\pod\perldos.pod
+       copy ..\README.epoc     ..\pod\perlepoc.pod
+       copy ..\README.hpux     ..\pod\perlhpux.pod
+       copy ..\README.hurd     ..\pod\perlhurd.pod
+       copy ..\README.machten  ..\pod\perlmachten.pod
+       copy ..\README.macos    ..\pod\perlmacos.pod
+       copy ..\README.mint     ..\pod\perlmint.pod
+       copy ..\README.mpeix    ..\pod\perlmpeix.pod
+       copy ..\README.netware  ..\pod\perlnetware.pod
+       copy ..\README.os2      ..\pod\perlos2.pod
+       copy ..\README.os390    ..\pod\perlos390.pod
+       copy ..\README.plan9    ..\pod\perlplan9.pod
+       copy ..\README.qnx      ..\pod\perlqnx.pod
+       copy ..\README.solaris  ..\pod\perlsolaris.pod
+       copy ..\README.tru64    ..\pod\perltru64.pod
+       copy ..\README.uts      ..\pod\perluts.pod
+       copy ..\README.vmesa    ..\pod\perlvmesa.pod
+       copy ..\vms\perlvms.pod ..\pod\perlvms.pod
+       copy ..\README.vos      ..\pod\perlvos.pod
+       copy ..\README.win32    ..\pod\perlwin32.pod
        cd ..\pod && $(MAKE) -f ..\win32\pod.mak converters
        cd ..\lib && $(PERLEXE) lib_pm.PL
        $(PERLEXE) $(PL2BAT) $(UTILS)
@@ -1118,22 +1135,36 @@ distclean: clean
        -del /f $(LIBDIR)\Devel\Peek.pm $(LIBDIR)\Devel\DProf.pm
        -del /f $(LIBDIR)\File\Glob.pm
        -del /f $(LIBDIR)\Storable.pm
-       -del /f $(LIBDIR)\Filter\Util\Call\Call.pm
+       -del /f $(LIBDIR)\Filter\Util\Call.pm
        -del /f $(LIBDIR)\Digest\MD5.pm
-       -del /f $(LIBDIR)\MIME\Base64\Base64.pm
-       -del /f $(LIBDIR)\MIME\Base64\QuotedPrint.pm
+       -del /f $(LIBDIR)\MIME\Base64.pm
+       -del /f $(LIBDIR)\MIME\QuotedPrint.pm
+       -del /f $(LIBDIR)\Time\HiRes.pm
+       -del /f $(LIBDIR)\List\Util.pm
+       -del /f $(LIBDIR)\Scalar\Util.pm
+       -del /f $(LIBDIR)\Time\Piece.pm
        -if exist $(LIBDIR)\IO rmdir /s /q $(LIBDIR)\IO || rmdir /s $(LIBDIR)\IO
        -if exist $(LIBDIR)\Thread rmdir /s /q $(LIBDIR)\Thread || rmdir /s $(LIBDIR)\Thread
        -if exist $(LIBDIR)\B rmdir /s /q $(LIBDIR)\B || rmdir /s $(LIBDIR)\B
        -if exist $(LIBDIR)\Data rmdir /s /q $(LIBDIR)\Data || rmdir /s $(LIBDIR)\Data
        -if exist $(LIBDIR)\Filter\Util\Call rmdir /s /q $(LIBDIR)\Filter\Util\Call || rmdir /s $(LIBDIR)\Filter
        -if exist $(LIBDIR)\Filter\Util rmdir /s /q $(LIBDIR)\Filter\Util || rmdir /s $(LIBDIR)\Filter
-       -if exist $(LIBDIR)\Digest\MD5 rmdir /s /q $(LIBDIR)\Digest\MD5 || rmdir /s $(LIBDIR)\Digest\MD5
        -if exist $(LIBDIR)\Digest rmdir /s /q $(LIBDIR)\Digest || rmdir /s $(LIBDIR)\Digest
-       -if exist $(LIBDIR)\MIME\Base64 rmdir /s /q $(LIBDIR)\MIME\Base64 || rmdir /s $(LIBDIR)\MIME\Base64
        -if exist $(LIBDIR)\MIME rmdir /s /q $(LIBDIR)\MIME || rmdir /s $(LIBDIR)\MIME
-       -del /f $(PODDIR)\*.html
-       -del /f $(PODDIR)\*.bat
+       -if exist $(LIBDIR)\List rmdir /s /q $(LIBDIR)\List || rmdir /s $(LIBDIR)\List
+       -if exist $(LIBDIR)\Scalar rmdir /s /q $(LIBDIR)\Scalar || rmdir /s $(LIBDIR)\Scalar
+       -cd $(PODDIR) && del /f *.html *.bat checkpods \
+           perlaix.pod perlamiga.pod perlapollo.pod \
+           perlbeos.pod perlbs2000.pod perlcygwin.pod perldgux.pod \
+           perldos.pod perlepoc.pod perlhpux.pod perlhurd.pod \
+           perlmachten.pod perlmint.pod \
+           perlmacos.pod perlmpeix.pod perlnetware.pod \
+           perlos2.pod perlos390.pod \
+           perlplan9.pod perlqnx.pod \
+           perlsolaris.pod perltru64.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 h2xs perldoc \
            dprofpp *.bat
        -cd ..\x2p && del /f find2perl s2p *.bat
@@ -1198,7 +1229,7 @@ test-wide-notty : test-prep
            set HARNESS_PERL_SWITCHES=-C && \
            cd ..\t && $(PERLEXE) -I..\lib harness
 
-clean :
+clean : Extensions_clean
        -@erase miniperlmain$(o)
        -@erase $(MINIPERL)
        -@erase perlglob$(o)