Change 30283 by [EMAIL PROTECTED] on 2007/02/14 13:43:15

        Dear perforce, just because merged it before (in the time frame of
        this branch) by accident, doesn't mean that I don't want to merge it
        now, when the time is right.
        http://xkcd.com/c149.html

Affected files ...

... //depot/maint-5.8/perl/win32/Makefile.ce#3 branch

Differences ...

==== //depot/maint-5.8/perl/win32/Makefile.ce#3 (text) ====
Index: perl/win32/Makefile.ce
--- /dev/null   2007-01-16 11:55:45.526841103 -0800
+++ perl/win32/Makefile.ce      2007-02-14 05:43:15.000000000 -0800
@@ -0,0 +1,970 @@
+# perl makefile for wince
+#
+# Time-stamp: <26/10/01 15:10:06 [EMAIL PROTECTED]>
+
+SRCDIR     = ..
+PV         = 59
+INST_VER   = 5.9.4
+
+# INSTALL_ROOT specifies a path where this perl will be installed on CE device
+INSTALL_ROOT=/netzwerk/sprache/perl
+INST_TOP=$(INSTALL_ROOT)
+INST_VER=
+
+# PERLCEDIR shoud be set to current directory
+PERLCEDIR  = H:\src\wince\perl\win32
+
+# WCEROOT is a directory where Windows CE Tools was installed
+WCEROOT    = D:\Windows CE Tools
+
+# HPERL stands for host perl, which is perl on local desktop machine
+# which is usually ..\miniperl.exe
+#HPERL     = N:\Programme\perl\bin\perl.exe
+HPERL = $(MAKEDIR)\..\miniperl.exe
+
+CEPATH     = D:\Programme\Microsoft eMbedded Tools\EVC\WCE211\BIN
+CELIBDLLDIR  = h:\src\wince\celib-palm-3.0
+CECONSOLEDIR = h:\src\wince\w32console
+
+# specify following options to build perl on local machine, by MSVC
+MSVCDIR         = D:\MSVStudio\VC98
+CCHOME         = $(MSVCDIR)
+CCINCDIR       = $(CCHOME)\include
+CCLIBDIR       = $(CCHOME)\lib
+
+# Only for WIN2000
+#YES        = /y
+COPY       = copy $(YES)
+XCOPY      = xcopy $(YES) /f /r /i /d
+RCOPY     = xcopy $(YES) /f /r /i /e /d
+
+# cecopy program. Make shure it is in your path, as well as cemkdir, cedel
+CECOPY     = cecopy
+
+#
+# Comment out next assign to disable perl's I/O subsystem and use compiler's
+# stdio for IO - depending on your compiler vendor and run time library you may
+# then get a number of fails from make test i.e. bugs - complain to them not 
us ;-).
+# You will also be unable to take full advantage of perl5.8's support for 
multiple
+# 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
+
+!if "$(MACHINE)" == ""
+MACHINE=wince-arm-hpc-wce300
+#MACHINE=wince-arm-hpc-wce211
+#MACHINE=wince-sh3-hpc-wce211
+#MACHINE=wince-mips-hpc-wce211
+#MACHINE=wince-sh3-hpc-wce200
+#MACHINE=wince-mips-hpc-wce200
+#MACHINE=wince-arm-pocket-wce300
+#MACHINE=wince-mips-pocket-wce300
+#MACHINE=wince-sh3-pocket-wce300
+#MACHINE=wince-x86em-pocket-wce300
+#MACHINE=wince-mips-palm-wce211
+#MACHINE=wince-sh3-palm-wce211
+#MACHINE=wince-x86em-palm-wce211
+!endif
+
+# set this to your email address
+#
+#EMAIL         =
+
+##################### CHANGE THESE ONLY IF YOU MUST #####################
+
+######################################################################
+# machines
+
+!if "$(MACHINE)" == "wince-sh3-hpc-wce211"
+CC         = shcl.exe
+ARCH       = SH3
+CPU        = SH3
+TARGETCPU  = SH3
+CEVersion  = 211
+OSVERSION  = WCE211
+PLATFORM   = MS HPC Pro
+MCFLAGS    = -MDd -DSH3 -D_SH3_ -DSHx -DPROCESSOR_SH3 -DPALM_SIZE \
+             -I $(CELIBDLLDIR)\inc
+SUBSYS    = -subsystem:windowsce,2.11
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-mips-hpc-wce211"
+CC         = clmips.exe
+ARCH       = MIPS
+CPU        = MIPS
+TARGETCPU  = MIPS
+CEVersion  = 211
+OSVERSION  = WCE211
+PLATFORM   = MS HPC Pro
+MCFLAGS    = -D _MT -D _DLL \
+             -D MIPS -D mips -D _MIPS_ -D _mips_ -DPROCESSOR_MIPS \
+             -D PALM_SIZE \
+             -I $(CELIBDLLDIR)\inc
+SUBSYS    = -subsystem:windowsce,2.11
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-mips-hpc-wce200"
+CC         = clmips.exe
+ARCH       = MIPS
+CPU        = MIPS
+TARGETCPU  = MIPS
+CEVersion  = 200
+OSVERSION  = WCE200
+PLATFORM   = MS HPC
+# MUST USE -MD to get the right FPE stuff...
+MCFLAGS    = -D _MT -D _DLL -MD \
+             -D MIPS -D mips -D _MIPS_ -D _mips_ -DPROCESSOR_MIPS \
+             -D PALM_SIZE \
+             -I $(CELIBDLLDIR)\inc
+SUBSYS    = -subsystem:windowsce,2.00
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-sh3-hpc-wce200"
+CC         = shcl.exe
+ARCH       = SH3
+CPU        = SH3
+TARGETCPU  = SH3
+CEVersion  = 200
+OSVERSION  = WCE200
+PLATFORM   = MS HPC
+# MUST USE -MD to get the right FPE stuff...
+MCFLAGS    = -D _MT -D _DLL -MD \
+             -D SH3 -D sh3 -D _SH3_ -D _sh3_ -D SHx -DPROCESSOR_SH3 \
+             -D PALM_SIZE \
+             -I $(CELIBDLLDIR)\inc
+SUBSYS    = -subsystem:windowsce,2.00
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-arm-hpc-wce211"
+CC         = clarm.exe
+ARCH       = ARM
+CPU        = ARM
+TARGETCPU  = ARM
+CEVersion  = 211
+OSVERSION  = WCE211
+PLATFORM   = MS HPC Pro
+MCFLAGS    = -D _MT -D _DLL -D ARM -D arm -D _arm_ -D _ARM_ \
+             -DPROCESSOR_ARM -DPALM_SIZE \
+             -I $(CELIBDLLDIR)\inc
+SUBSYS    = -subsystem:windowsce,2.11
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-arm-hpc-wce300"
+CC         = clarm.exe
+ARCH       = ARM
+CPU        = ARM
+TARGETCPU  = ARM
+CEVersion  = 300
+OSVERSION  = WCE300
+#PLATFORM   = HPC2000
+MCFLAGS    = -D _MT -D _DLL -D ARM -D arm -D _arm_ -D _ARM_ \
+             -DPROCESSOR_ARM -DPALM_SIZE \
+             -I $(CELIBDLLDIR)\inc
+SUBSYS    = -subsystem:windowsce,3.00
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-mips-palm-wce211"
+CC         = clmips.exe
+ARCH       = MIPS
+CPU        = MIPS
+TARGETCPU  = MIPS
+CEVersion  = 211
+OSVERSION  = WCE211
+PLATFORM   = MS Palm Size PC
+MCFLAGS    = -DMIPS -D_MIPS_ -DPROCESSOR_MIPS -D PALM_SIZE -D _DLL -D _MT \
+             -I $(CELIBDLLDIR)\inc
+SUBSYS    = -subsystem:windowsce,2.11
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-sh3-palm-wce211"
+CC         = shcl.exe
+ARCH       = SH3
+CPU        = SH3
+TARGETCPU  = SH3
+CEVersion  = 211
+OSVERSION  = WCE211
+PLATFORM   = MS Palm Size PC
+MCFLAGS    = -D _MT -D _DLL -DSH3 -D_SH3_ -DSHx -DPROCESSOR_SH3 -DPALM_SIZE \
+             -I $(CELIBDLLDIR)\inc
+SUBSYS    = -subsystem:windowsce,2.11
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-x86em-palm-wce211"
+CC         = cl.exe
+ARCH       = X86EM
+CPU        = X86
+TARGETCPU  = X86
+CEVersion  = 211
+OSVERSION  = WCE211
+PLATFORM   = MS Palm Size PC
+MCFLAGS    = -MDd -DX86 -D_X86_ -DPROCESSOR_X86 \
+             -D_WIN32_WCE_EMULATION -DPALM_SIZE \
+             -I $(CELIBDLLDIR)\inc
+MACH       = -machine:x86
+SUBSYS     = -subsystem:windows
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-x86em-pocket-wce300"
+CC         = cl.exe
+ARCH       = X86EM
+CPU        = X86
+TARGETCPU  = X86
+CEVersion  = 300
+OSVERSION  = WCE300
+PLATFORM   = MS Pocket PC
+MCFLAGS    = -DX86 -D_X86_ -DPROCESSOR_X86 -D _MT -D _DLL \
+             -D_WIN32_WCE_EMULATION -DPALM_SIZE -DPOCKET_SIZE \
+             -I $(CELIBDLLDIR)\inc
+MACH       = -machine:x86
+SUBSYS     = -subsystem:windows
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-mips-pocket-wce300"
+CC         = clmips.exe
+ARCH       = MIPS
+CPU        = MIPS
+TARGETCPU  = MIPS
+CEVersion  = 300
+OSVERSION  = WCE300
+PLATFORM   = MS Pocket PC
+MCFLAGS    = -D MIPS -D mips -D _MIPS_ -D _mips_ -DPROCESSOR_MIPS \
+             -D _MT -D _DLL -DPALM_SIZE -DPOCKET_SIZE \
+             -I $(CELIBDLLDIR)\inc
+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
+
+!if "$(MACHINE)" == "wince-sh3-pocket-wce300"
+CC         = shcl.exe
+ARCH       = SH3
+CPU        = SH3
+TARGETCPU  = SH3
+CEVersion  = 300
+OSVERSION  = WCE300
+PLATFORM   = MS Pocket PC
+MCFLAGS    = -D _MT -D _DLL -DSH3 -D_SH3_ -DSHx -DPROCESSOR_SH3 \
+             -DPALM_SIZE -DPOCKET_SIZE \
+             -I $(CELIBDLLDIR)\inc
+MACH       = -machine:sh3
+SUBSYS     = -subsystem:windowsce,3.00
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+!if "$(MACHINE)" == "wince-arm-pocket-wce300"
+CC         = clarm.exe
+ARCH       = ARM
+CPU        = ARM
+TARGETCPU  = ARM
+CEVersion  = 300
+OSVERSION  = WCE300
+PLATFORM   = MS Pocket PC
+MCFLAGS    = -D ARM -D arm -D _ARM_ -D _arm_ -DPROCESSOR_ARM \
+             -D _MT -D _DLL -DPALM_SIZE -DPOCKET_SIZE \
+             -I $(CELIBDLLDIR)\inc
+MACH       = -machine:arm
+SUBSYS     = -subsystem:windowsce,3.00
+CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
+LDLIBPATH  = -libpath:$(CELIBPATH)
+STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
+             $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
+!endif
+
+######################################################################
+# common section
+
+CEDEFS    = -D_WINDOWS -D_WIN32_WCE=$(CEVersion) -DUNDER_CE=$(CEVersion) \
+            $(MCFLAGS) -D PERL
+
+#CEDEFS    = $(CEDEFS) -DDEBUGGING_OPS
+
+CECFLAGS  = $(CEDEFS)
+
+!if "$(CFG)" == "DEBUG"
+CECFLAGS  = $(CECFLAGS) -Zi -Od
+!endif
+
+!if "$(CFG)" == "RELEASE"
+# -O2 and -Ot give internal compiler error in perl.c and lexer.
+# Also the dll cannot be loaded by perl.exe...
+!if "$(CPU)" == "SH3"
+!else
+CECFLAGS  = $(CECFLAGS) -O2 -Ot
+!endif
+
+!endif
+
+RCDEFS    = /l 0x407 /r /d "UNICODE" /d UNDER_CE=$(CEVersion) \
+            /d _WIN32_WCE=$(CEVersion)
+
+PATH=$(CEPATH);$(PATH)
+
+INCLUDE=$(WCEROOT)\$(OSVERSION)\$(PLATFORM)\include
+LIB=$(WCEROOT)\$(OSVERSION)\$(PLATFORM)\lib\$(ARCH)
+
+######################################################################
+
+!message
+!message Compiling for $(MACHINE)
+!message LIB=$(LIB)
+!message INCLUDE=$(INCLUDE)
+!message PATH=$(CEPATH)
+!message
+
+######################################################################
+#
+# Additional compiler flags can be specified here.
+#
+
+BUILDOPT       = $(BUILDOPT) $(CECFLAGS)
+
+
+!IF "$(CRYPT_SRC)$(CRYPT_LIB)" == ""
+D_CRYPT                = undef
+!ELSE
+D_CRYPT                = define
+CRYPT_FLAG     = -DHAVE_DES_FCRYPT
+!ENDIF
+
+!IF "$(PERL_MALLOC)" == ""
+PERL_MALLOC    = undef
+!ENDIF
+
+!IF "$(USE_MULTI)" == ""
+USE_MULTI      = undef
+!ENDIF
+
+!IF "$(USE_ITHREADS)" == ""
+USE_ITHREADS   = undef
+!ENDIF
+
+!IF "$(USE_IMP_SYS)" == ""
+USE_IMP_SYS    = undef
+!ENDIF
+
+!IF "$(USE_PERLIO)" == ""
+USE_PERLIO     = undef
+!ENDIF
+
+!IF "$(USE_PERLCRT)" == ""
+USE_PERLCRT    = undef
+!ENDIF
+
+!IF "$(USE_IMP_SYS)$(USE_MULTI)" == "defineundef"
+USE_MULTI      = define
+!ENDIF
+
+!IF "$(USE_ITHREADS)$(USE_MULTI)" == "defineundef"
+USE_MULTI      = define
+!ENDIF
+
+!IF "$(USE_MULTI)" != "undef"
+BUILDOPT       = $(BUILDOPT) -DPERL_IMPLICIT_CONTEXT
+!ENDIF
+
+!IF "$(USE_IMP_SYS)" != "undef"
+BUILDOPT       = $(BUILDOPT) -DPERL_IMPLICIT_SYS
+!ENDIF
+
+!IF "$(USE_PERLIO)" == "define"
+BUILDOPT       = $(BUILDOPT) -DUSE_PERLIO
+!ENDIF
+
+!IF "$(CROSS_NAME)" == ""
+CROSS_NAME     = $(MACHINE)
+!ENDIF
+
+# new option - automatically defined in perl.h...
+#BUILDOPT        = $(BUILDOPT) -DUSE_ENVIRON_ARRAY
+
+PROCESSOR_ARCHITECTURE = $(TARGETCPU)
+ARCHNAME       = $(PLATFORM)-$(OSVERSION)-$(PROCESSOR_ARCHITECTURE)
+ARCHDIR                = ..\lib\$(ARCHNAME)
+COREDIR                = ..\lib\CORE
+XCOREDIR       = ..\xlib\$(CROSS_NAME)\CORE
+AUTODIR                = ..\lib\auto
+LIBDIR         = ..\lib
+EXTDIR         = ..\ext
+PODDIR         = ..\pod
+EXTUTILSDIR    = $(LIBDIR)\ExtUtils
+
+LINK32         = link
+LIB32          = $(LINK32) -lib
+RSC            = rc
+
+INCLUDES       = -I.\include -I. -I..
+DEFINES                = -DWIN32 -D_CONSOLE -DNO_STRICT $(CRYPT_FLAG) 
$(CECFLAGS)
+LOCDEFS                = -DPERLDLL -DPERL_CORE
+CXX_FLAG       = -TP
+
+PERLEXE_RES    = perl.res
+PERLDLL_RES    =
+
+!if "$(CFG)" == "RELEASE"
+CELIB           = celib.lib
+!endif
+
+!if "$(CFG)" == "DEBUG"
+CELIB           = celib.lib
+!endif
+
+CELIBS          = -nodefaultlib \
+                  winsock.lib $(CELIB) coredll.lib
+
+!if $(CEVersion) > 200
+CELIBS          = $(CELIBS) corelibc.lib
+!else
+CELIBS          = $(CELIBS) msvcrt.lib
+!endif
+
+LIBBASEFILES   = $(CRYPT_LIB) $(CELIBS)
+
+LIBFILES       = $(LIBBASEFILES) $(LIBC)
+
+CFLAGS         = -nologo -Gf -W3 $(INCLUDES) $(DEFINES) $(LOCDEFS) \
+               $(PCHFLAGS) $(OPTIMIZE)
+
+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
+EXEOUT_FLAG    = -Fe
+
+CFLAGS_O       = $(CFLAGS) $(BUILDOPT)
+
+o = .obj
+
+#
+# Rules
+#
+
+.SUFFIXES : .c $(o) .dll .lib .exe .rc .res
+
+.c$(o):
+       $(CC) -c -I$(<D) $(CFLAGS_O) $(OBJOUT_FLAG)$@ $<
+
+.y.c:
+       $(NOOP)
+
+$(o).dll:
+       $(LINK32) -dll $(SUBSYS) $(LDLIBPATH) \
+            -implib:$(*B).lib -def:$(*B).def \
+           -out:$@ $(LINK_FLAGS) $(LIBFILES) $< $(LIBPERL)
+
+.rc.res:
+       $(RSC) -i.. $<
+
+# This must be relative to ../lib/CORE, else the ext dll build fails...
+PERLIMPLIB_EXP = ..\..\..\xlib\$(CROSS_NAME)\CORE\perl$(PV).lib
+PERLIMPLIB     = $(PERLCEDIR)\$(MACHINE)\perl$(PV).lib
+PERLDLL                = $(MACHINE)\perl$(PV).dll
+
+DLLDIR          = $(MACHINE)\dll
+PERLEXE                = $(MACHINE)\perl.exe
+
+CONFIGPM       = ..\xlib\$(CROSS_NAME)\Config.pm
+MINIMOD                = ..\lib\ExtUtils\Miniperl.pm
+
+# Unicode data files generated by mktables
+UNIDATAFILES    = ..\lib\unicore\Canonical.pl ..\lib\unicore\Exact.pl \
+                  ..\lib\unicore\Properties ..\lib\unicore\Decomposition.pl \
+                  ..\lib\unicore\CombiningClass.pl ..\lib\unicore\Name.pl \
+                  ..\lib\unicore\PVA.pl
+
+# Directories of Unicode data files generated by mktables
+UNIDATADIR1    = ..\lib\unicore\To
+UNIDATADIR2    = ..\lib\unicore\lib
+
+# 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
+# from the .dll
+PERLDEP                = perldll.def
+
+MAKE           = nmake -nologo
+
+CFGSH_TMPL     = config.ce
+CFGH_TMPL      = config_H.ce
+
+#
+# filenames given to xsubpp must have forward slashes (since it puts
+# full pathnames in #line strings)
+XSUBPP         = $(HPERL) -I..\..\lib -MCross=$(CROSS_NAME) 
..\$(EXTUTILSDIR)\xsubpp \
+               -C++ -prototypes
+
+MICROCORE_SRC  =               \
+               ..\av.c         \
+               ..\deb.c        \
+               ..\doio.c       \
+               ..\doop.c       \
+               ..\dump.c       \
+               ..\globals.c    \
+               ..\gv.c         \
+               ..\hv.c         \
+               ..\mg.c         \
+               ..\op.c         \
+               ..\pad.c        \
+               ..\perl.c       \
+               ..\perlapi.c    \
+               ..\perly.c      \
+               ..\pp.c         \
+               ..\pp_ctl.c     \
+               ..\pp_hot.c     \
+               ..\pp_pack.c    \
+               ..\pp_sort.c    \
+               ..\pp_sys.c     \
+               ..\reentr.c     \
+               ..\regcomp.c    \
+               ..\regexec.c    \
+               ..\run.c        \
+               ..\scope.c      \
+               ..\sv.c         \
+               ..\taint.c      \
+               ..\toke.c       \
+               ..\universal.c  \
+               ..\utf8.c       \
+               ..\util.c       \
+               ..\xsutils.c
+
+EXTRACORE_SRC  = $(EXTRACORE_SRC) perllib.c
+
+!IF "$(PERL_MALLOC)" == "define"
+EXTRACORE_SRC  = $(EXTRACORE_SRC) ..\malloc.c
+!ENDIF
+
+EXTRACORE_SRC  = $(EXTRACORE_SRC) ..\perlio.c .\win32io.c
+
+WIN32_SRC      =               \
+               .\wince.c       \
+               .\wincesck.c    \
+               .\win32thread.c
+
+!IF "$(CRYPT_SRC)" != ""
+WIN32_SRC      = $(WIN32_SRC) .\$(CRYPT_SRC)
+!ENDIF
+
+DLL_SRC                = $(DYNALOADER).c
+
+CORE_NOCFG_H   =               \
+               ..\av.h         \
+               ..\cop.h        \
+               ..\cv.h         \
+               ..\dosish.h     \
+               ..\embed.h      \
+               ..\form.h       \
+               ..\gv.h         \
+               ..\handy.h      \
+               ..\hv.h         \
+               ..\iperlsys.h   \
+               ..\mg.h         \
+               ..\nostdio.h    \
+               ..\op.h         \
+               ..\opcode.h     \
+               ..\perl.h       \
+               ..\perlapi.h    \
+               ..\perlsdio.h   \
+               ..\perlsfio.h   \
+               ..\perly.h      \
+               ..\pp.h         \
+               ..\proto.h      \
+               ..\regexp.h     \
+               ..\scope.h      \
+               ..\sv.h         \
+               ..\thread.h     \
+               ..\unixish.h    \
+               ..\utf8.h       \
+               ..\util.h       \
+               ..\warnings.h   \
+               ..\XSUB.h       \
+               ..\EXTERN.h     \
+               ..\perlvars.h   \
+               ..\intrpvar.h   \
+               ..\thrdvar.h    \
+               .\include\dirent.h      \
+               .\include\netdb.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
+
+DYNAMIC_EXT    = Socket IO Fcntl Opcode SDBM_File POSIX attrs Thread B re \
+               Data/Dumper Devel/Peek ByteLoader Devel/DProf File/Glob \
+               Sys/Hostname
+
+STATIC_EXT     = DynaLoader
+
+DYNALOADER     = $(EXTDIR)\DynaLoader\DynaLoader
+
+ERRNO_PM       = $(LIBDIR)\Errno.pm
+
+
+EXTENSION_PM   =               \
+               $(ERRNO_PM)
+
+POD2HTML       = $(PODDIR)\pod2html
+POD2MAN                = $(PODDIR)\pod2man
+POD2LATEX      = $(PODDIR)\pod2latex
+POD2TEXT       = $(PODDIR)\pod2text
+
+CFG_VARS = \
+ "INST_DRV=$(INST_DRV)" \
+ "INST_TOP=$(INST_TOP)" \
+ "INST_VER=$(INST_VER)" \
+ "INST_ARCH=$(INST_ARCH)" \
+ "archname=$(ARCHNAME)" \
+ "CC=$(CC)" \
+ "ccflags=$(OPTIMIZE) $(DEFINES) $(BUILDOPT)" \
+ "cppflags=$(OPTIMIZE) $(DEFINES) $(BUILDOPT)" \
+ "cf_by=vkon" \
+ "cf_email=$(EMAIL)" \
+ "d_crypt=$(D_CRYPT)" \
+ "d_mymalloc=$(PERL_MALLOC)" \
+ "libs=$(LIBFILES)" \
+ "incpath=$(CCINCDIR)" \
+ "libperl=$(PERLIMPLIB_EXP)" \
+ "libpth=$(LIBPATH)" \
+ "libc=$(LIBC)" \
+ "make=nmake" \
+ "static_ext=$(STATIC_EXT)" \
+ "dynamic_ext=$(DYNAMIC_EXT)" \
+ "useithreads=$(USE_ITHREADS)" \
+ "usemultiplicity=$(USE_MULTI)" \
+ "useperlio=$(USE_PERLIO)" \
+ "LINK_FLAGS=$(LDLIBPATH) $(LINK_FLAGS) $(SUBSYS)" \
+ "optimize=$(OPTIMIZE)"
+
+#
+# Top targets
+#
+
+all: hostminiperl $(MINIMOD) $(CONFIGPM) $(UNIDATAFILES) $(PERLEXE) Extensions
+
+$(DYNALOADER)$(o) : $(DYNALOADER).c $(CORE_H) $(EXTDIR)\DynaLoader\dlutils.c
+
+$(CONFIGPM): .\xconfig.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) xconfig.h $(XCOREDIR)\config.h
+       $(XCOPY) ..\ext\re\re.pm $(LIBDIR)\*.*
+       $(RCOPY) include $(XCOREDIR)\*.*
+       $(HPERL) -I..\lib -MCross=$(CROSS_NAME) config_h.PL 
"INST_VER=$(INST_VER)" "CORE_DIR=$(XCOREDIR)" "CONFIG_H=xconfig.h"
+
+.\xconfig.h:
+       -del /f xconfig.h
+       copy config_H.ce xconfig.h
+
+..\config.sh: config.ce config_sh.PL
+       $(HPERL) -I..\lib -I. config_sh.PL $(CFG_VARS) config.ce > ..\config.sh
+
+$(MINIMOD) : ..\minimod.pl
+       cd .. && $(HPERL) minimod.pl > lib\ExtUtils\Miniperl.pm
+
+perlmain.c : runperl.c
+       $(COPY) runperl.c perlmain.c
+
+$(DYNALOADER).c: $(EXTDIR)\DynaLoader\dl_win32.xs $(CONFIGPM)
+       if not exist $(AUTODIR) mkdir $(AUTODIR)
+       cd $(EXTDIR)\$(*B)
+       $(HPERL) -I..\..\lib -MCross=$(CROSS_NAME) $(*B)_pm.PL
+       $(HPERL) -I..\..\lib -MCross=$(CROSS_NAME) XSLoader_pm.PL
+       cd ..\..\win
+       $(XCOPY) $(EXTDIR)\$(*B)\$(*B).pm $(LIBDIR)\$(NULL)
+       $(XCOPY) $(EXTDIR)\$(*B)\XSLoader.pm $(LIBDIR)\$(NULL)
+       cd $(EXTDIR)\$(*B)
+       $(XSUBPP) dl_win32.xs > $(*B).c
+       cd ..\..\win
+
+$(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: .\buildext.pl $(PERLDEP) $(CONFIGPM)
+       $(HPERL) -I..\lib -I. -MCross=$(CROSS_NAME) .\buildext.pl $(MAKE) 
$(PERLDEP) $(EXTDIR) \
+       !POSIX $(NOT_COMPILE_EXT)
+
+Extensions_clean:
+       -if exist $(MINIPERL) $(MINIPERL) -I..\lib buildext.pl $(MAKE) 
$(PERLDEP) $(EXTDIR) clean
+
+#----------------------------------------------------------------------------------
+
+$(PERLEXE_RES): perl.rc perl.ico
+       rc $(RCDEFS) perl.rc
+
+clean:
+       -rm -f $(MACHINE)/dll/*
+       -rm -f $(MACHINE)/*.obj
+       -rm -f $(MACHINE)/*.exe
+       -rm -f $(MACHINE)/*.dll
+       -rm -f $(MACHINE)/*.lib
+       -rm -f ../config.sh ../lib/Config.pm
+       -rm -f config.h perl.res
+
+XDLLOBJS = \
+$(DLLDIR)\av.obj \
+$(DLLDIR)\deb.obj \
+$(DLLDIR)\doio.obj \
+$(DLLDIR)\doop.obj \
+$(DLLDIR)\dump.obj \
+$(DLLDIR)\globals.obj \
+$(DLLDIR)\gv.obj \
+$(DLLDIR)\hv.obj \
+$(DLLDIR)\locale.obj \
+$(DLLDIR)\mathoms.obj \
+$(DLLDIR)\mg.obj \
+$(DLLDIR)\numeric.obj \
+$(DLLDIR)\op.obj \
+$(DLLDIR)\pad.obj \
+$(DLLDIR)\perl.obj \
+$(DLLDIR)\perlapi.obj \
+$(DLLDIR)\perlio.obj \
+$(DLLDIR)\perly.obj \
+$(DLLDIR)\pp.obj \
+$(DLLDIR)\pp_ctl.obj \
+$(DLLDIR)\pp_hot.obj \
+$(DLLDIR)\pp_pack.obj \
+$(DLLDIR)\pp_sort.obj \
+$(DLLDIR)\pp_sys.obj \
+$(DLLDIR)\reentr.obj \
+$(DLLDIR)\regcomp.obj \
+$(DLLDIR)\regexec.obj \
+$(DLLDIR)\run.obj \
+$(DLLDIR)\scope.obj \
+$(DLLDIR)\sv.obj \
+$(DLLDIR)\taint.obj \
+$(DLLDIR)\toke.obj \
+$(DLLDIR)\universal.obj \
+$(DLLDIR)\utf8.obj \
+$(DLLDIR)\util.obj \
+$(DLLDIR)\win32thread.obj \
+$(DLLDIR)\wince.obj \
+$(DLLDIR)\win32io.obj \
+$(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_O) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $<
+
+# compiler explains that it will optimize toke.c if we'll give it an
+# option -QMOb<num> with num>=4178
+$(DLLDIR)\toke.obj:
+    $(CC) -c $(CFLAGS_O) -QMOb9000 -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ ..\toke.c
+
+{$(SRCDIR)/win}.c{$(DLLDIR)}.obj:
+    $(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) -MCross -I..\lib buildext.pl --create-perllibst-h
+       $(HPERL) -w ..\makedef.pl PLATFORM=wince $(OPTIMIZE) $(DEFINES) 
$(BUILDOPT) \
+           CCTYPE=$(CCTYPE) -DPERL_DLL=$(PERLDLL) > perldll.def
+
+$(PERLDLL) : $(DLLDIR) perldll.def $(XDLLOBJS) $(PERLDLL_RES)
+       $(LINK32) -dll -def:perldll.def -out:$@ \
+                  $(SUBSYS) $(LDLIBPATH) \
+                 $(LINK_FLAGS) $(LIBFILES) \
+                 $(XDLLOBJS) $(PERLDLL_RES)
+
+$(DLLDIR) :
+       if not exist "$(DLLDIR)" mkdir "$(DLLDIR)"
+
+$(DLLDIR)\DynaLoader.obj: $(EXTDIR)\DynaLoader\DynaLoader.c
+    $(CC) -c $(CFLAGS_O) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ \
+          $(EXTDIR)\DynaLoader\DynaLoader.c
+
+XPERLEXEOBJS = \
+$(MACHINE)\perlmain.obj
+
+$(PERLEXE) : $(PERLDLL) $(CONFIGPM) $(XPERLEXEOBJS) $(PERLEXE_RES) $(STARTOBJS)
+       $(XCOPY) $(MACHINE)\*.lib $(XCOREDIR)
+       $(LINK32) $(SUBSYS) $(LDLIBPATH) \
+            -entry:wWinMainCRTStartup \
+            -out:$(MACHINE)\perl.exe \
+            -stack:0x100000 $(LINK_FLAGS) $(STARTOBJS) $(XPERLEXEOBJS) \
+            $(PERLIMPLIB) $(PERLEXE_RES) $(LIBFILES)
+
+$(MACHINE)\perlmain.obj : perlmain.c
+       $(CC) $(CFLAGS_O) -UPERLDLL -Fo$(MACHINE)\ -c perlmain.c
+
+iodll:     $(IO_DLL)
+socketdll: $(SOCKET_DLL)
+dumperdll: $(DUMPER_DLL)
+
+dlls: socketdll iodll dumperdll
+       -xmkdir -p $(MACHINE)/lib/auto/IO
+       cp ../lib/auto/IO/IO.bs $(MACHINE)/lib/auto/IO
+       cp ../lib/auto/IO/IO.dll $(MACHINE)/lib/auto/IO
+       -xmkdir $(MACHINE)/lib/auto/Socket
+       cp ../lib/auto/Socket/Socket.bs $(MACHINE)/lib/auto/Socket
+       cp ../lib/auto/Socket/Socket.dll $(MACHINE)/lib/auto/Socket
+       -xmkdir -p $(MACHINE)/lib/auto/Data/Dumper
+       cp ../lib/auto/Data/Dumper/Dumper.bs $(MACHINE)/lib/auto/Data/Dumper
+       cp ../lib/auto/Data/Dumper/Dumper.dll $(MACHINE)/lib/auto/Data/Dumper
+
+makedist: all dlls
+       $(COPY) $(CELIBPATH)\celib.dll $(MACHINE)
+       cp perl.txt $(MACHINE)
+       cp registry.bat $(MACHINE)
+       cp ../lib/Config.pm $(MACHINE)/lib
+       cd $(MACHINE)
+       rm -f perl-$(MACHINE).tar.gz
+       sh -c "tar cf perl-$(MACHINE).tar *.exe *.dll *.txt *.bat lib"
+       gzip -9 perl-$(MACHINE).tar
+       mv perl-$(MACHINE).tar.gz h:/freenet/new
+       cd ..
+
+install: all
+       -cemkdir "$(INSTALL_ROOT)"
+       -cemkdir "$(INSTALL_ROOT)\bin"
+       -cemkdir "$(INSTALL_ROOT)\lib"
+       $(CECOPY) "pc:$(MACHINE)/perl.exe" "ce:$(INSTALL_ROOT)/bin"
+       $(CECOPY) "pc:$(MACHINE)/perl$(PV).dll" "ce:$(INSTALL_ROOT)/bin"
+       $(CECOPY) "pc:../xlib/$(CROSS_NAME)/Config.pm" "ce:$(INSTALL_ROOT)/lib"
+
+$(UNIDATAFILES) : $(HPERL) $(CONFIGPM) ..\lib\unicore\mktables
+       cd ..\lib\unicore && \
+       $(HPERL) -I.. mktables
+
+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 perl.ico
+
+hostminiperl: ..\miniperl.exe
+
+..\miniperl.exe:
+       set PATH=$(CCHOME)\bin;$(PATH)
+       $(MAKE) -f Makefile "CCHOME=$(MSVCDIR)" "CCINCDIR=$(CCHOME)\include" 
"CCLIBDIR=$(CCHOME)\lib" "INCLUDE=$(CCHOME)\include" "LIB=$(CCHOME)\lib" 
"LINK_FLAGS=" .\config.h ..\miniperl.exe
+
+host-install:
+       perl -MConfig -MExtUtils::Install -we "install({'../lib/CORE', 
qq#$$Config{installprefixexp}/xlib/$(CROSS_NAME)/CORE#},1)"
+       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#"
End of Patch.

Reply via email to