X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/fefd7080dbb7bc74916ad5ba8b63e3bdeeb86c38..0f133d1fd189cd7868dcc2bc811ba6499a1e9fd2:/wince/Makefile.ce diff --git a/wince/Makefile.ce b/wince/Makefile.ce index 55f9dfe..214b88b 100644 --- a/wince/Makefile.ce +++ b/wince/Makefile.ce @@ -3,8 +3,8 @@ # Time-stamp: <26/10/01 15:10:06 keuchel@keuchelnt> SRCDIR = .. -PV = 57 -INST_VER = 5.7.3 +PV = 59 +INST_VER = 5.9.0 # INSTALL_ROOT specifies a path where this perl will be installed on CE device INSTALL_ROOT=/netzwerk/sprache/perl @@ -49,14 +49,22 @@ CECOPY = cecopy # encodings and may see lower IO performance. You have been warned. USE_PERLIO = define +# +# set this if you wish to use perl's malloc +# This will make perl run few times faster +# WARNING: Turning this on/off WILL break binary compatibility with extensions +# you may have compiled with/without it. +# +PERL_MALLOC = define + NOOP = @echo # keep this untouched! NULL = -CFG=DEBUG -#CFG=RELEASE +#CFG=DEBUG +CFG=RELEASE !if "$(MACHINE)" == "" MACHINE=wince-arm-hpc-wce300 @@ -74,6 +82,12 @@ MACHINE=wince-arm-hpc-wce300 #MACHINE=wince-x86em-palm-wce211 !endif +# set this to your email address +# +#EMAIL = + +##################### CHANGE THESE ONLY IF YOU MUST ##################### + ###################################################################### # machines @@ -178,7 +192,7 @@ CPU = ARM TARGETCPU = ARM CEVersion = 300 OSVERSION = WCE300 -PLATFORM = HPC2000 +#PLATFORM = HPC2000 MCFLAGS = -D _MT -D _DLL -D ARM -D arm -D _arm_ -D _ARM_ \ -DPROCESSOR_ARM -DPALM_SIZE \ -I $(CELIBDLLDIR)\inc @@ -275,7 +289,9 @@ MCFLAGS = -D MIPS -D mips -D _MIPS_ -D _mips_ -DPROCESSOR_MIPS \ MACH = -machine:mips SUBSYS = -subsystem:windowsce,3.00 CELIBPATH = $(CELIBDLLDIR)\$(MACHINE)-release +#STDLIBPATH = $(WCEROOT)\$(OSVERSION)\$(PLATFORM)\lib\$(CPU) LDLIBPATH = -libpath:$(CELIBPATH) +#"-libpath:$(STDLIBPATH)" STARTOBJS = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \ $(CECONSOLEDIR)/$(MACHINE)/w32console.obj !endif @@ -291,7 +307,7 @@ PLATFORM = MS Pocket PC MCFLAGS = -D _MT -D _DLL -DSH3 -D_SH3_ -DSHx -DPROCESSOR_SH3 \ -DPALM_SIZE -DPOCKET_SIZE \ -I $(CELIBDLLDIR)\inc -MACH = -machine:mips +MACH = -machine:sh3 SUBSYS = -subsystem:windowsce,3.00 CELIBPATH = $(CELIBDLLDIR)\$(MACHINE)-release LDLIBPATH = -libpath:$(CELIBPATH) @@ -335,7 +351,11 @@ CECFLAGS = $(CECFLAGS) -Zi -Od !if "$(CFG)" == "RELEASE" # -O2 and -Ot give internal compiler error in perl.c and lexer. # Also the dll cannot be loaded by perl.exe... -CECFLAGS = $(CECFLAGS) +!if "$(CPU)" == "SH3" +!else +CECFLAGS = $(CECFLAGS) -O2 -Ot +!endif + !endif RCDEFS = /l 0x407 /r /d "UNICODE" /d UNDER_CE=$(CEVersion) \ @@ -362,7 +382,6 @@ LIB=$(WCEROOT)\$(OSVERSION)\$(PLATFORM)\lib\$(ARCH) BUILDOPT = $(BUILDOPT) $(CECFLAGS) -##################### CHANGE THESE ONLY IF YOU MUST ##################### !IF "$(CRYPT_SRC)$(CRYPT_LIB)" == "" D_CRYPT = undef @@ -375,18 +394,6 @@ CRYPT_FLAG = -DHAVE_DES_FCRYPT PERL_MALLOC = undef !ENDIF -!IF "$(USE_5005THREADS)" == "" -USE_5005THREADS = undef -!ENDIF - -!IF "$(USE_5005THREADS)" == "define" -USE_ITHREADS = undef -!ENDIF - -!IF "$(USE_IMP_SYS)" == "define" -PERL_MALLOC = undef -!ENDIF - !IF "$(USE_MULTI)" == "" USE_MULTI = undef !ENDIF @@ -407,16 +414,15 @@ USE_PERLIO = undef USE_PERLCRT = undef !ENDIF -!IF "$(USE_IMP_SYS)$(USE_MULTI)$(USE_5005THREADS)" == "defineundefundef" +!IF "$(USE_IMP_SYS)$(USE_MULTI)" == "defineundef" USE_MULTI = define !ENDIF !IF "$(USE_ITHREADS)$(USE_MULTI)" == "defineundef" USE_MULTI = define -USE_5005THREADS = undef !ENDIF -!IF "$(USE_MULTI)$(USE_5005THREADS)" != "undefundef" +!IF "$(USE_MULTI)" != "undef" BUILDOPT = $(BUILDOPT) -DPERL_IMPLICIT_CONTEXT !ENDIF @@ -429,7 +435,7 @@ BUILDOPT = $(BUILDOPT) -DUSE_PERLIO !ENDIF !IF "$(CROSS_NAME)" == "" -CROSS_NAME = wince +CROSS_NAME = $(MACHINE) !ENDIF # new option - automatically defined in perl.h... @@ -450,10 +456,10 @@ LINK32 = link LIB32 = $(LINK32) -lib RSC = rc -INCLUDES = -I.\include -I. -I.. +INCLUDES = -I.\include -I..\win32\include -I. -I.. DEFINES = -DWIN32 -D_CONSOLE -DNO_STRICT $(CRYPT_FLAG) $(CECFLAGS) LOCDEFS = -DPERLDLL -DPERL_CORE -CXX_FLAG = -TP -GX +CXX_FLAG = -TP PERLEXE_RES = perl.res PERLDLL_RES = @@ -486,6 +492,8 @@ LINK_FLAGS = -nologo -machine:$(PROCESSOR_ARCHITECTURE) !if "$(CFG)" == "DEBUG" LINK_FLAGS = $(LINK_FLAGS) -debug:full -pdb:none +!else +LINK_FLAGS = $(LINK_FLAGS) -release !endif OBJOUT_FLAG = -Fo @@ -554,6 +562,7 @@ MICROCORE_SRC = \ ..\hv.c \ ..\mg.c \ ..\op.c \ + ..\pad.c \ ..\perl.c \ ..\perlapi.c \ ..\perly.c \ @@ -635,6 +644,26 @@ CORE_NOCFG_H = \ .\include\sys\socket.h \ .\win32.h +CORE_H = $(CORE_NOCFG_H) .\config.h + +MICROCORE_OBJ = $(MICROCORE_SRC:.c=.obj) +CORE_OBJ = $(MICROCORE_OBJ) $(EXTRACORE_SRC:.c=.obj) +WIN32_OBJ = $(WIN32_SRC:.c=.obj) +#WIN32_OBJ = $(WIN32_OBJ:.\=.\$(DLLDIR)\) +MINICORE_OBJ = $(MICROCORE_OBJ:..\=.\$(DLLDIR)\) \ + $(MINIDIR)\miniperlmain$(o) \ + $(MINIDIR)\perlio$(o) +MINIWIN32_OBJ = $(WIN32_OBJ:.\=.\$(DLLDIR)\) +MINI_OBJ = $(MINICORE_OBJ) $(MINIWIN32_OBJ) +DLL_OBJ = $(DLL_SRC:.c=.obj) +X2P_OBJ = $(X2P_SRC:.c=.obj) + +PERLDLL_OBJ = $(CORE_OBJ) +PERLEXE_OBJ = perlmain$(o) + +PERLDLL_OBJ = $(PERLDLL_OBJ) $(WIN32_OBJ) $(DLL_OBJ) +#PERLEXE_OBJ = $(PERLEXE_OBJ) $(WIN32_OBJ) $(DLL_OBJ) + !IF "$(USE_SETARGV)" != "" SETARGV_OBJ = setargv$(o) !ENDIF @@ -644,81 +673,11 @@ DYNAMIC_EXT = Socket IO Fcntl Opcode SDBM_File POSIX attrs Thread B re \ Sys/Hostname STATIC_EXT = DynaLoader -NONXS_EXT = Errno DYNALOADER = $(EXTDIR)\DynaLoader\DynaLoader -SOCKET = $(EXTDIR)\Socket\Socket -IO = $(EXTDIR)\IO\IO -DUMPER = $(EXTDIR)\Data\Dumper\Dumper -# -FCNTL = $(EXTDIR)\Fcntl\Fcntl -OPCODE = $(EXTDIR)\Opcode\Opcode -SDBM_FILE = $(EXTDIR)\SDBM_File\SDBM_File -POSIX = $(EXTDIR)\POSIX\POSIX -ATTRS = $(EXTDIR)\attrs\attrs -THREAD = $(EXTDIR)\Thread\Thread -B = $(EXTDIR)\B\B -RE = $(EXTDIR)\re\re -ERRNO = $(EXTDIR)\Errno\Errno -PEEK = $(EXTDIR)\Devel\Peek\Peek -BYTELOADER = $(EXTDIR)\ByteLoader\ByteLoader -DPROF = $(EXTDIR)\Devel\DProf\DProf -GLOB = $(EXTDIR)\File\Glob\Glob -HOSTNAME = $(EXTDIR)\Sys\Hostname\Hostname -SOCKET_DLL = $(AUTODIR)\Socket\Socket.dll -FCNTL_DLL = $(AUTODIR)\Fcntl\Fcntl.dll -OPCODE_DLL = $(AUTODIR)\Opcode\Opcode.dll -SDBM_FILE_DLL = $(AUTODIR)\SDBM_File\SDBM_File.dll -IO_DLL = $(AUTODIR)\IO\IO.dll -POSIX_DLL = $(AUTODIR)\POSIX\POSIX.dll -ATTRS_DLL = $(AUTODIR)\attrs\attrs.dll -THREAD_DLL = $(AUTODIR)\Thread\Thread.dll -B_DLL = $(AUTODIR)\B\B.dll -DUMPER_DLL = $(AUTODIR)\Data\Dumper\Dumper.dll -PEEK_DLL = $(AUTODIR)\Devel\Peek\Peek.dll -RE_DLL = $(AUTODIR)\re\re.dll -BYTELOADER_DLL = $(AUTODIR)\ByteLoader\ByteLoader.dll -DPROF_DLL = $(AUTODIR)\Devel\DProf\DProf.dll -GLOB_DLL = $(AUTODIR)\File\Glob\Glob.dll -HOSTNAME_DLL = $(AUTODIR)\Sys\Hostname\Hostname.dll ERRNO_PM = $(LIBDIR)\Errno.pm -EXTENSION_C = \ - $(SOCKET).c \ - $(FCNTL).c \ - $(OPCODE).c \ - $(SDBM_FILE).c \ - $(IO).c \ - $(POSIX).c \ - $(ATTRS).c \ - $(THREAD).c \ - $(RE).c \ - $(DUMPER).c \ - $(PEEK).c \ - $(B).c \ - $(BYTELOADER).c \ - $(DPROF).c \ - $(GLOB).c \ - $(HOSTNAME).c - -EXTENSION_DLL = \ - $(SOCKET_DLL) \ - $(FCNTL_DLL) \ - $(OPCODE_DLL) \ - $(SDBM_FILE_DLL)\ - $(IO_DLL) \ - $(POSIX_DLL) \ - $(ATTRS_DLL) \ - $(DUMPER_DLL) \ - $(PEEK_DLL) \ - $(B_DLL) \ - $(RE_DLL) \ - $(THREAD_DLL) \ - $(BYTELOADER_DLL) \ - $(DPROF_DLL) \ - $(GLOB_DLL) \ - $(HOSTNAME_DLL) EXTENSION_PM = \ $(ERRNO_PM) @@ -734,10 +693,10 @@ CFG_VARS = \ "INST_VER=$(INST_VER)" \ "INST_ARCH=$(INST_ARCH)" \ "archname=$(ARCHNAME)" \ - "cc=$(CC)" \ + "CC=$(CC)" \ "ccflags=$(OPTIMIZE) $(DEFINES) $(BUILDOPT)" \ "cf_by=Rainer Keuchel" \ - "cf_email=coyxc@rainer-keuchel.de" \ + "cf_email=$(EMAIL)" \ "d_crypt=$(D_CRYPT)" \ "d_mymalloc=$(PERL_MALLOC)" \ "libs=$(LIBFILES)" \ @@ -748,10 +707,7 @@ CFG_VARS = \ "make=nmake" \ "static_ext=$(STATIC_EXT)" \ "dynamic_ext=$(DYNAMIC_EXT)" \ - "nonxs_ext=$(NONXS_EXT)" \ - "use5005threads=$(USE_5005THREADS)" \ "useithreads=$(USE_ITHREADS)" \ - "usethreads=$(USE_5005THREADS)" \ "usemultiplicity=$(USE_MULTI)" \ "useperlio=$(USE_PERLIO)" \ "LINK_FLAGS=$(LDLIBPATH) $(LINK_FLAGS) $(SUBSYS)" \ @@ -761,7 +717,7 @@ CFG_VARS = \ # Top targets # -all: hostminiperl $(MINIMOD) $(CONFIGPM) $(PERLEXE) +all: hostminiperl $(MINIMOD) $(CONFIGPM) $(PERLEXE) Extensions $(DYNALOADER)$(o) : $(DYNALOADER).c $(CORE_H) $(EXTDIR)\DynaLoader\dlutils.c @@ -769,9 +725,11 @@ $(CONFIGPM): .\config.h ..\config.sh ..\minimod.pl cd .. && $(HPERL) configpm --cross=$(CROSS_NAME) --no-glossary -mkdir $(XCOREDIR) $(XCOPY) ..\*.h $(XCOREDIR)\*.* + $(XCOPY) ..\*.inc $(XCOREDIR)\*.* $(XCOPY) *.h $(XCOREDIR)\*.* $(XCOPY) ..\ext\re\re.pm $(LIBDIR)\*.* $(RCOPY) include $(XCOREDIR)\*.* + $(XCOPY) ..\win32\include $(XCOREDIR)\*.* -$(HPERL) -I..\lib -MCross=$(CROSS_NAME) config_h.PL "INST_VER=$(INST_VER)" "CORE_DIR=$(XCOREDIR)" if errorlevel 1 $(MAKE) /$(MAKEFLAGS) $(CONFIGPM) @@ -804,117 +762,23 @@ $(EXTDIR)\DynaLoader\dl_win32.xs: dl_win32.xs $(COPY) dl_win32.xs $(EXTDIR)\DynaLoader\dl_win32.xs #---------------------------------------------------------------------------------- +NOT_COMPILE_EXT = +!if "$(MACHINE)" == "wince-sh3-palm-wce211" +NOT_COMPILE_EXT = $(NOT_COMPILE_EXT) !XS/Typemap +!endif +!if "$(MACHINE)" == "wince-mips-palm-wce211" +NOT_COMPILE_EXT = $(NOT_COMPILE_EXT) !XS/Typemap +!endif + Extensions: ..\win32\buildext.pl $(PERLDEP) $(CONFIGPM) $(HPERL) -I..\lib -I..\win32 -MCross=$(CROSS_NAME) ..\win32\buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) \ - !Errno !File/Glob !POSIX !Time/HiRes + !POSIX $(NOT_COMPILE_EXT) Extensions_clean: -if exist $(MINIPERL) $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) clean #---------------------------------------------------------------------------------- -$(DUMPER_DLL): $(PERLEXE) $(DUMPER).xs - cd $(EXTDIR)\Data\$(*B) - $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\..\wince - -$(DPROF_DLL): $(PERLEXE) $(DPROF).xs - cd $(EXTDIR)\Devel\$(*B) - $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\..\wince - -$(GLOB_DLL): $(PERLEXE) $(GLOB).xs - cd $(EXTDIR)\File\$(*B) - $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\..\wince - -$(PEEK_DLL): $(PERLEXE) $(PEEK).xs - cd $(EXTDIR)\Devel\$(*B) - $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\..\wince - -$(RE_DLL): $(PERLEXE) $(RE).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(B_DLL): $(PERLEXE) $(B).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(THREAD_DLL): $(PERLEXE) $(THREAD).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(ATTRS_DLL): $(PERLEXE) $(ATTRS).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(POSIX_DLL): $(PERLEXE) $(POSIX).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(IO_DLL): $(PERLEXE) $(IO).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(SDBM_FILE_DLL) : $(PERLEXE) $(SDBM_FILE).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(FCNTL_DLL): $(PERLEXE) $(FCNTL).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(OPCODE_DLL): $(PERLEXE) $(OPCODE).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(SOCKET_DLL): $(PERLEXE) $(SOCKET).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(HOSTNAME_DLL): $(PERLEXE) $(HOSTNAME).xs - cd $(EXTDIR)\Sys\$(*B) - $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\..\wince - -$(BYTELOADER_DLL): $(PERLEXE) $(BYTELOADER).xs - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - -$(ERRNO_PM): $(PERLEXE) $(ERRNO)_pm.PL - cd $(EXTDIR)\$(*B) - $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl - $(MAKE) - cd ..\..\wince - $(PERLEXE_RES): perl.rc perl.ico rc $(RCDEFS) perl.rc @@ -927,81 +791,6 @@ clean: -rm -f ../config.sh ../lib/Config.pm -rm -f config.h perl.res -!IF "$(MACHINE)" == "wince-sh3-hpc" - -install_perlexe: $(PERLEXE) - cedel /speicherkarte2/bin/perl.exe - $(CECOPY) pc:../perl.exe ce:$(INSTALL_ROOT)/bin - -install_perldll: $(PERLDLL) - cedel /speicherkarte2/bin/perl$(PV).dll - $(CECOPY) pc:../perl$(PV).dll ce:/speicherkarte2/bin - -install_perl: install_perlexe install_perldll - -test_perl: - $(CECOPY) pc:test.pl ce:/speicherkarte2/bin - ceexec /speicherkarte2/bin/perl.exe /speicherkarte2/bin/test.pl - -install_lib: ../lib/Config.pm - $(CECOPY) pc:../lib/Config.pm ce:$(INSTALL_ROOT)/lib - -!ELSEIF "$(MACHINE)" == "wince-arm-hpc" - -install_perlexe: $(PERLEXE) - -cedel /speicherkarte/bin/perl.exe - $(CECOPY) pc:$(MACHINE)/perl.exe ce:$(INSTALL_ROOT)/bin - -install_perldll: $(PERLDLL) - -cedel /speicherkarte/bin/perl$(PV).dll - $(CECOPY) pc:$(MACHINE)/perl$(PV).dll ce:$(INSTALL_ROOT)/bin - -install_perl: install_perlexe install_perldll - -test_perl: - $(CECOPY) pc:test.pl ce:/speicherkarte/bin - ceexec /speicherkarte/bin/perl.exe /speicherkarte/bin/test.pl - -install_lib: ../lib/Config.pm - $(CECOPY) pc:../lib/Config.pm ce:$(INSTALL_ROOT)/lib - -!ELSEIF "$(MACHINE)" == "wince-mips-hpc" - -install_perlexe: $(PERLEXE) - $(CECOPY) pc:../perl.exe ce:$(INSTALL_ROOT)/bin - -install_perldll: $(PERLDLL) - $(CECOPY) pc:../perl$(PV).dll ce:$(INSTALL_ROOT)/bin - -install_perl: install_perlexe install_perldll - -test_perl: - $(CECOPY) pc:test.pl ce:/netzwerk/compaq/bin - ceexec /netzwerk/compaq/bin/perl.exe $(INSTALL_ROOT)/test.pl - -install_lib: ../lib/Config.pm - $(CECOPY) pc:../lib/Config.pm ce:$(INSTALL_ROOT)/lib - -!ELSEIF "$(MACHINE)" == "wince-x86em-pocket" - -install_lib: - ftpcopy ../lib/Config.pm ftp!ftp@localhost:/perl/lib - ftpcopy ../lib/Exporter.pm ftp!ftp@localhost:/perl/lib - ftpcopy ../lib/Exporter/Heavy.pm ftp!ftp@localhost:/perl/lib/Exporter - -install_perlexe: $(PERLEXE) - $(CECOPY) pc:../perl.exe ce:$(INSTALL_ROOT)/bin - -install_perldll: $(PERLDLL) - $(CECOPY) pc:../perl$(PV).dll ce:$(INSTALL_ROOT)/bin - -install_perl: install_perlexe install_perldll - -test_perl: - echo Not yet -!ENDIF - - XDLLOBJS = \ $(DLLDIR)\av.obj \ $(DLLDIR)\deb.obj \ @@ -1015,6 +804,7 @@ $(DLLDIR)\locale.obj \ $(DLLDIR)\mg.obj \ $(DLLDIR)\numeric.obj \ $(DLLDIR)\op.obj \ +$(DLLDIR)\pad.obj \ $(DLLDIR)\perl.obj \ $(DLLDIR)\perlapi.obj \ $(DLLDIR)\perlio.obj \ @@ -1043,12 +833,31 @@ $(DLLDIR)\wincesck.obj \ $(DLLDIR)\xsutils.obj \ $(DLLDIR)\perllib.obj \ $(DLLDIR)\DynaLoader.obj +!IF "$(PERL_MALLOC)" == "define" +XDLLOBJS = $(XDLLOBJS) $(DLLDIR)\malloc.obj +!ENDIF +!IF "$(CRYPT_SRC)" != "" +XDLLOBJS = $(XDLLOBJS) $(DLLDIR)\fcrypt.obj +!ENDIF {$(SRCDIR)}.c{$(DLLDIR)}.obj: - $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $< + $(CC) -c $(CFLAGS_O) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $< + +# compiler explains that it will optimize toke.c if we'll give it an +# option -QMOb with num>=4178 +$(DLLDIR)\toke.obj: + $(CC) -c $(CFLAGS_O) -QMOb9000 -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ ..\toke.c {$(SRCDIR)/wince}.c{$(DLLDIR)}.obj: - $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $< + $(CC) -c $(CFLAGS_O) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $< + +# -DPERL_IMPLICIT_SYS needs C++ for perllib.c +# This is the only file that depends on perlhost.h, vmem.h, and vdir.h +!IF "$(USE_IMP_SYS)" == "define" +$(DLLDIR)\perllib$(o) : perllib.c .\perlhost.h .\vdir.h .\vmem.h + $(CC) -c -I. $(CFLAGS_O) $(CXX_FLAG) $(OBJOUT_FLAG)$@ perllib.c + rem (frustrated) mv perllib.obj $(DLLDIR) +!ENDIF perldll.def : $(HPERL) $(CONFIGPM) ..\global.sym ..\pp.sym ..\makedef.pl $(HPERL) -w ..\makedef.pl PLATFORM=wince $(OPTIMIZE) $(DEFINES) $(BUILDOPT) \ @@ -1064,7 +873,7 @@ $(DLLDIR) : if not exist "$(DLLDIR)" mkdir "$(DLLDIR)" $(DLLDIR)\DynaLoader.obj: $(EXTDIR)\DynaLoader\DynaLoader.c - $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ \ + $(CC) -c $(CFLAGS_O) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ \ $(EXTDIR)\DynaLoader\DynaLoader.c XPERLEXEOBJS = \ @@ -1072,7 +881,7 @@ $(MACHINE)\perlmain.obj $(PERLEXE) : $(PERLDLL) $(CONFIGPM) $(XPERLEXEOBJS) $(PERLEXE_RES) $(STARTOBJS) $(XCOPY) $(MACHINE)\*.lib $(XCOREDIR) - $(LINK32) $(SUBSYS) $(LDLIBPATH) \ + $(LINK32) $(SUBSYS) $(LDLIBPATH) \ -entry:wWinMainCRTStartup \ -out:$(MACHINE)\perl.exe \ -stack:0x100000 $(LINK_FLAGS) $(STARTOBJS) $(XPERLEXEOBJS) \ @@ -1124,6 +933,16 @@ install: all $(CECOPY) "pc:../xlib/$(CROSS_NAME)/Config.pm" "ce:$(INSTALL_ROOT)/lib" !endif +dist: all + $(HPERL) -I..\lib -MCross=$(CROSS_NAME) makedist.pl --distdir=dist-$(CROSS_NAME) --cross-name=$(CROSS_NAME) + +zipdist: all + $(HPERL) -I..\lib -MCross=$(CROSS_NAME) makedist.pl --distdir=dist-$(CROSS_NAME) --cross-name=$(CROSS_NAME) + $(HPERL) -I..\lib -MCross=$(CROSS_NAME) makedist.pl --distdir=dist-$(CROSS_NAME) --cross-name=$(CROSS_NAME) --zip + +zip: + $(HPERL) -I..\lib -MCross=$(CROSS_NAME) makedist.pl --distdir=dist-$(CROSS_NAME) --cross-name=$(CROSS_NAME) --zip + perl.ico: $(HPERL) makeico.pl @@ -1140,3 +959,6 @@ host-install: perl -MConfig -MExtUtils::Install -we "install({'../xlib/$(CROSS_NAME)', qq#$$Config{installprefixexp}/xlib/$(CROSS_NAME)#},1)" perl -MConfig -MFile::Copy -we "copy qq#./$(MACHINE)/perl$(PV).lib#, qq#$$Config{installprefixexp}/xlib/$(CROSS_NAME)/CORE#" perl -MConfig -MFile::Copy -we "copy qq#../lib/Cross.pm#, qq#$$Config{installprefixexp}/lib#" + perl -MConfig -we "system qq#perl -pi.bak -we \"s{((arch^|priv)libexp)='.*'}{\$$1='# . \ + quotemeta($$Config{installprefixexp}) . \ + qq#/xlib/$(CROSS_NAME)'}\" $$Config{installprefixexp}/xlib/$(CROSS_NAME)/Config.pm#"