BUILDOPT += -DPERL_IMPLICIT_SYS
.ENDIF
-.IMPORT .IGNORE : PROCESSOR_ARCHITECTURE PROCESSOR_ARCHITEW6432
+.IMPORT .IGNORE : PROCESSOR_ARCHITECTURE PROCESSOR_ARCHITEW6432 WIN64
PROCESSOR_ARCHITECTURE *= x86
SUBSYS = console
CXX_FLAG = -xc++
-LIBC = -lmsvcrt
+# Current releases of MinGW 5.1.4 (as of 11-Aug-2009) will fail to link
+# correctly if -lmsvcrt is specified explicitly.
+LIBC =
+#LIBC = -lmsvcrt
# same libs as MSVC
LIBFILES = $(CRYPT_LIB) $(LIBC) \
all : CHECKDMAKE .\config.h ..\git_version.h $(GLOBEXE) $(MINIPERL) $(MK2) \
$(RIGHTMAKE) $(MINIMOD) $(CONFIGPM) $(UNIDATAFILES) MakePPPort \
- $(PERLEXE) $(X2P) Extensions $(PERLSTATIC)
+ $(PERLEXE) $(X2P) Extensions Extensions_nonxs $(PERLSTATIC)
..\regcharclass.h : ..\Porting\regcharclass.pl
cd .. && miniperl Porting\regcharclass.pl && cd win32
.ENDIF
$(XCOPY) $(PERLSTATICLIB) $(COREDIR)
-$(PERLEXE_ICO): $(MINIPERL) ..\uupacktool.pl $(PERLEXE_ICO).packd
- $(MINIPERL) -I..\lib ..\uupacktool.pl -u $(PERLEXE_ICO).packd $(PERLEXE_ICO)
-
$(PERLEXE_RES): perlexe.rc $(PERLEXE_ICO)
$(MINIMOD) : $(MINIPERL) ..\minimod.pl
$(EMBED_EXE_MANI)
.ENDIF
-$(DYNALOADER).c: $(MINIPERL) $(EXTDIR)\DynaLoader\dl_win32.xs $(CONFIGPM)
+$(DYNALOADER).c: $(MINIPERL) $(EXTDIR)\DynaLoader\dl_win32.xs $(CONFIGPM) Extensions_nonxs
if not exist $(AUTODIR) mkdir $(AUTODIR)
cd $(EXTDIR)\$(*B) && ..\$(MINIPERL) -I..\..\lib $(*B)_pm.PL
cd $(EXTDIR)\$(*B) && ..\$(MINIPERL) -I..\..\lib XSLoader_pm.PL
$(EXTDIR)\DynaLoader\dl_win32.xs: dl_win32.xs
copy dl_win32.xs $(EXTDIR)\DynaLoader\dl_win32.xs
-MakePPPort: $(MINIPERL) $(CONFIGPM)
+MakePPPort: $(MINIPERL) $(CONFIGPM) Extensions_nonxs
$(MINIPERL) -I..\lib ..\mkppport
MakePPPort_clean:
-if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\mkppport --clean
#-------------------------------------------------------------------------------
-Extensions : ..\make_ext.pl $(PERLDEP) $(CONFIGPM)
+# The rule for $(DYNALOADER).c makes DynaLoader.pm, and that is needed for
+# ExtUtils::Mkbootstrap. There's no direct way to mark a dependency on
+# DynaLoader.pm, so this will have to do
+Extensions : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER).c
$(XCOPY) ..\*.h $(COREDIR)\*.*
$(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynamic
-Extensions_reonly : ..\make_ext.pl $(PERLDEP) $(CONFIGPM)
+Extensions_reonly : ..\make_ext.pl $(PERLDEP) $(CONFIGPM) $(DYNALOADER).c
$(XCOPY) ..\*.h $(COREDIR)\*.*
$(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --dynamic +re
$(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --static
$(MINIPERL) -I..\lib list_static_libs.pl > Extensions_static
+Extensions_nonxs : ..\make_ext.pl $(PERLDEP) $(CONFIGPM)
+ $(XCOPY) ..\*.h $(COREDIR)\*.*
+ $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --nonxs
+
Extensions_clean :
-if exist $(MINIPERL) $(MINIPERL) -I..\lib ..\make_ext.pl "MAKE=$(MAKE)" --dir=$(EXTDIR) --all --target=clean
copy ..\README.jp ..\pod\perljp.pod
copy ..\README.ko ..\pod\perlko.pod
copy ..\README.linux ..\pod\perllinux.pod
- copy ..\README.machten ..\pod\perlmachten.pod
copy ..\README.macos ..\pod\perlmacos.pod
copy ..\README.macosx ..\pod\perlmacosx.pod
- copy ..\README.mint ..\pod\perlmint.pod
copy ..\README.mpeix ..\pod\perlmpeix.pod
copy ..\README.netware ..\pod\perlnetware.pod
copy ..\README.openbsd ..\pod\perlopenbsd.pod
perlcygwin.pod perldelta.pod perldgux.pod perldos.pod \
perlepoc.pod perlfreebsd.pod perlhaiku.pod perlhpux.pod \
perlhurd.pod perlintern.pod perlirix.pod perljp.pod perlko.pod \
- perllinux.pod perlmachten.pod perlmacos.pod perlmacosx.pod \
- perlmint.pod perlmodlib.pod perlmpeix.pod perlnetware.pod \
- perlopenbsd.pod perlos2.pod perlos390.pod perlos400.pod \
- perlplan9.pod perlqnx.pod perlriscos.pod perlsolaris.pod \
- perlsymbian.pod perltoc.pod perltru64.pod perltw.pod \
- perluts.pod perlvmesa.pod perlvos.pod perlwin32.pod \
+ perllinux.pod perlmacos.pod perlmacosx.pod perlmodlib.pod \
+ perlmpeix.pod perlnetware.pod perlopenbsd.pod perlos2.pod \
+ perlos390.pod perlos400.pod perlplan9.pod perlqnx.pod \
+ perlriscos.pod perlsolaris.pod perlsymbian.pod perltoc.pod \
+ perltru64.pod perltw.pod perluts.pod perlvmesa.pod perlvos.pod \
+ perlwin32.pod \
pod2html pod2latex pod2man pod2text pod2usage \
podselect
-cd ..\utils && del /f h2ph splain perlbug pl2pm c2ph pstruct h2xs \
-del /f ..\lib\Config_git.pl
-del /f bin\*.bat
-del /f perllibst.h
- -del /f $(PERLEXE_ICO) perl.base
+ -del /f perl.base
-cd .. && del /s *$(a) *.map *.pdb *.ilk *.tds *.bs *$(o) .exists pm_to_blib
-cd $(EXTDIR) && del /s *.def Makefile Makefile.old
-if exist $(AUTODIR) rmdir /s /q $(AUTODIR)
$(MINIPERL) -I..\lib ..\splittree.pl "../LIB" $(AUTODIR)
$(RCOPY) ..\lib $(INST_LIB)\*.*
-$(UNIDATAFILES) .UPDATEALL : $(MINIPERL) $(CONFIGPM) ..\lib\unicore\mktables
+$(UNIDATAFILES) .UPDATEALL : $(MINIPERL) $(CONFIGPM) ..\lib\unicore\mktables Extensions_nonxs
cd ..\lib\unicore && \
..\$(MINIPERL) -I.. mktables
$(XCOPY) $(PERLDLL) ..\t\$(NULL)
$(XCOPY) $(GLOBEXE) ..\t\$(NULL)
cd ..\t && \
- $(PERLEXE) -I..\lib harness $(OPT) -re \bpat\b \breg \bre\b \bsubst \brxcode $(EXTRA) && \
+ $(PERLEXE) -I..\lib harness $(OPT) -re \bpat\\/ $(EXTRA) && \
cd ..\win32
regen :