# versioned installation can be obtained by setting INST_TOP above to a
# path that includes an arbitrary version string.
#
-INST_VER = \5.00475
+INST_VER = \5.00552
#
# uncomment to enable threads-capabilities
#USE_THREADS = define
#
+# uncomment to enable multiple interpreters
+#
+#USE_MULTI = define
+
+#
# uncomment next line if you are using Visual C++ 2.x
#
#CCTYPE = MSVC20
#CFG = Debug
#
-# uncomment to enable use of PerlCRT.DLL. Highly recommended. It has
-# patches that fix known bugs in MSCVRT.DLL. You will need to download it
-# from: <TBD> and follow the directions in the package to install.
+# uncomment next option if you want to use the VC++ compiler optimization.
+# Warning: This is known to produce incorrect code for compiler versions
+# earlier than VC++ 98 (Visual Studio 6.0). VC++ 98 generates code that
+# successfully passes the Perl regression test suite. It hasn't yet been
+# widely tested with real applications though.
+#
+#CFG = Optimize
+
+#
+# uncomment to enable use of PerlCRT.DLL when using the Visual C compiler.
+# Highly recommended. It has patches that fix known bugs in MSVCRT.DLL.
+# This currently requires VC 5.0 with Service Pack 3.
+# Get it from CPAN at http://www.perl.com/CPAN/authors/id/D/DO/DOUGL/
+# and follow the directions in the package to install.
#
#USE_PERLCRT = define
#
# if you have the source for des_fcrypt(), uncomment this and make sure the
# file exists (see README.win32). File should be located in the same
-# directory as this file. Not (yet) supported with PERL_OBJECT.
+# directory as this file.
#
-#CRYPT_SRC = des_fcrypt.c
+#CRYPT_SRC = fcrypt.c
#
# if you didn't set CRYPT_SRC and if you have des_fcrypt() available in a
# library, uncomment this, and make sure the library exists (see README.win32)
# Specify the full pathname of the library.
#
-#CRYPT_LIB = des_fcrypt.lib
+#CRYPT_LIB = fcrypt.lib
#
# set this if you wish to use perl's malloc
#
# set the install locations of the compiler include/libraries
+# Some versions of Visual C don't define MSVCDIR in the environment,
+# so you may have to set CCHOME explicitly.
#
#CCHOME = f:\msvc20
CCHOME = $(MSVCDIR)
!IF "$(OBJECT)" != ""
PERL_MALLOC = undef
+USE_THREADS = undef
+USE_MULTI = undef
!ENDIF
!IF "$(PERL_MALLOC)" == ""
USE_THREADS = undef
!ENDIF
-#BUILDOPT = -DMULTIPLICITY
-#BUILDOPT = -DPERL_GLOBAL_STRUCT -DMULTIPLICITY
+!IF "$(USE_MULTI)" == ""
+USE_MULTI = undef
+!ENDIF
+
+#BUILDOPT = -DPERL_GLOBAL_STRUCT
# -DUSE_PERLIO -D__STDC__=1 -DUSE_SFIO -DI_SFIO -I\sfio97\include
!IF "$(PROCESSOR_ARCHITECTURE)" == ""
! ENDIF
LINK_DBG = -debug -pdb:none
!ELSE
-! IF "$(CCTYPE)" == "MSVC20"
-OPTIMIZE = -Od $(RUNTIME) -DNDEBUG
+! IF "$(CFG)" == "Optimize"
+OPTIMIZE = -O2 $(RUNTIME) -DNDEBUG
! ELSE
OPTIMIZE = -Od $(RUNTIME) -DNDEBUG
! ENDIF
!IF "$(OBJECT)" == "-DPERL_OBJECT"
PERLIMPLIB = ..\perlcore.lib
PERLDLL = ..\perlcore.dll
-CAPILIB = $(COREDIR)\PerlCAPI.lib
+CAPILIB = $(COREDIR)\perlCAPI.lib
!ELSE
PERLIMPLIB = ..\perl.lib
PERLDLL = ..\perl.dll
..\pod\pod2text \
..\x2p\find2perl \
..\x2p\s2p \
- bin\www.pl \
bin\runperl.pl \
bin\pl2bat.pl \
bin\perlglob.pl \
..\taint.c \
..\toke.c \
..\universal.c \
+ ..\utf8.c \
..\util.c
!IF "$(PERL_MALLOC)" == "define"
..\sv.h \
..\thread.h \
..\unixish.h \
+ ..\utf8.h \
..\util.h \
+ ..\warning.h \
..\XSUB.h \
..\EXTERN.h \
..\perlvars.h \
"dynamic_ext=$(DYNAMIC_EXT)" \
"nonxs_ext=$(NONXS_EXT)" \
"usethreads=$(USE_THREADS)" \
+ "usemultiplicity=$(USE_MULTI)" \
"LINK_FLAGS=$(LINK_FLAGS)" \
"optimize=$(OPTIMIZE)"
$(PERL95_OBJ) : $(CORE_H)
$(X2P_OBJ) : $(CORE_H)
-perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.sym makedef.pl
+perldll.def : $(MINIPERL) $(CONFIGPM) ..\global.sym ..\pp.sym makedef.pl
$(MINIPERL) -w makedef.pl $(OPTIMIZE) $(DEFINES) $(OBJECT) \
CCTYPE=$(CCTYPE) > perldll.def
cd ..\..\win32
!IF "$(OBJECT)" == "-DPERL_OBJECT"
-PerlCAPI.cpp : $(MINIPERL)
+perlCAPI.cpp : $(MINIPERL)
$(MINIPERL) GenCAPI.pl $(COREDIR)
-PerlCAPI$(o) : PerlCAPI.cpp
+perlCAPI$(o) : perlCAPI.cpp
$(CC) $(CFLAGS_O) $(RUNTIME) -UPERLDLL -c \
- $(OBJOUT_FLAG)PerlCAPI$(o) PerlCAPI.cpp
+ $(OBJOUT_FLAG)perlCAPI$(o) perlCAPI.cpp
-$(CAPILIB) : PerlCAPI.cpp PerlCAPI$(o)
- lib /OUT:$(CAPILIB) PerlCAPI$(o)
+$(CAPILIB) : perlCAPI.cpp perlCAPI$(o)
+ lib /OUT:$(CAPILIB) perlCAPI$(o)
!ENDIF
$(EXTDIR)\DynaLoader\dl_win32.xs: dl_win32.xs
cd ..\..\win32
doc: $(PERLEXE)
- copy ..\README.win32 ..\pod\perlwin32.pod
$(PERLEXE) -I..\lib ..\installhtml --podroot=.. --htmldir=./html \
--podpath=pod:lib:ext:utils --htmlroot="file://$(INST_HTML::=|)" \
--libpod=perlfunc:perlguts:perlvar:perlrun:perlop --recurse
cd ..\utils
$(MAKE) PERL=$(MINIPERL)
cd ..\pod
+ copy ..\README.win32 .\perlwin32.pod
$(MAKE) -f ..\win32\pod.mak converters
cd ..\win32
$(PERLEXE) $(PL2BAT) $(UTILS)
-del /f perl95.c
-del /f bin\*.bat
cd $(EXTDIR)
- -del /s *.lib *.def *.map *.bs Makefile *$(o) pm_to_blib
+ -del /s *.lib *.def *.map *.pdb *.bs Makefile *$(o) pm_to_blib
cd ..\win32
-rmdir /s /q $(AUTODIR) || rmdir /s $(AUTODIR)
-rmdir /s /q $(COREDIR) || rmdir /s $(COREDIR)
!ENDIF
$(XCOPY) $(GLOBEXE) $(INST_BIN)\*.*
$(XCOPY) bin\*.bat $(INST_SCRIPT)\*.*
- $(XCOPY) bin\network.pl $(INST_LIB)\*.*
installhtml : doc
$(RCOPY) html\*.* $(INST_HTML)\*.*
-@erase perlmain$(o)
-@erase config.w32
-@erase /f config.h
- -@erase PerlCAPI.cpp
+ -@erase perlCAPI.cpp
-@erase $(GLOBEXE)
-@erase $(PERLEXE)
-@erase $(PERLDLL)