This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Re: [PATCH mg.c gv.c and others] ${^TAINT}
[perl5.git] / wince / Makefile.ce
1 # perl makefile for wince
2 #
3 # Time-stamp: <07/09/01 15:46:36 keuchel@keuchelnt>
4
5 SRCDIR     = ..
6 PV         = 57
7 INST_VER   = 5.7.2
8 PERLCEDIR  = H:\src\wince\perl\wince
9 WCEROOT    = N:\Windows CE Tools
10 #WCEROOT    = D:\Windows CE Tools
11 NTPERL     = N:\Programme\perl\bin\perl.exe
12 #NTPERL     = D:\Programme\ActiveState\perl-5.6\bin\Perl.exe
13 CEPATH     = N:\Programme\Microsoft eMbedded Tools\EVC\WCE211\BIN
14 #CEPATH     = D:\Programme\Microsoft eMbedded Tools\EVC\WCE211\BIN
15 CELIBDLLDIR  = h:\src\wince\celib-palm
16 CECONSOLEDIR = h:\src\wince\w32console
17 # Only for WIN2000
18 YES        = /y
19 COPY       = copy $(YES)
20 XCOPY      = xcopy $(YES) /f /r /i /d
21 RCOPY      = xcopy $(YES) /f /r /i /e /d
22 NOOP       = @echo
23 # keep this untouched!
24 NULL       =
25
26 CFG=DEBUG
27 #CFG=RELEASE
28
29 !if "$(MACHINE)" == ""
30 MACHINE=wince-arm-hpc-wce300
31 #MACHINE=wince-arm-hpc-wce211
32 #MACHINE=wince-sh3-hpc-wce211
33 #MACHINE=wince-mips-hpc-wce211
34 #MACHINE=wince-sh3-hpc-wce200
35 #MACHINE=wince-mips-hpc-wce200
36 #MACHINE=wince-arm-pocket-wce300
37 #MACHINE=wince-mips-pocket-wce300
38 #MACHINE=wince-sh3-pocket-wce300
39 #MACHINE=wince-x86em-pocket-wce300
40 #MACHINE=wince-mips-palm-wce211
41 #MACHINE=wince-sh3-palm-wce211
42 #MACHINE=wince-x86em-palm-wce211
43 !endif
44
45 ######################################################################
46 # machines
47
48 !if "$(MACHINE)" == "wince-sh3-hpc-wce211"
49 CC         = shcl.exe
50 ARCH       = SH3
51 CPU        = SH3
52 TARGETCPU  = SH3
53 CEVersion  = 211
54 OSVERSION  = WCE211
55 PLATFORM   = MS HPC Pro
56 MCFLAGS    = -MDd -DSH3 -D_SH3_ -DSHx -DPROCESSOR_SH3 -DPALM_SIZE \
57              -I $(CELIBDLLDIR)\inc
58 SUBSYS     = -subsystem:windowsce,2.11
59 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
60 LDLIBPATH  = -libpath:$(CELIBPATH)
61 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
62              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
63 !endif
64
65 !if "$(MACHINE)" == "wince-mips-hpc-wce211"
66 CC         = clmips.exe
67 ARCH       = MIPS
68 CPU        = MIPS
69 TARGETCPU  = MIPS
70 CEVersion  = 211
71 OSVERSION  = WCE211
72 PLATFORM   = MS HPC Pro
73 MCFLAGS    = -D _MT -D _DLL \
74              -D MIPS -D mips -D _MIPS_ -D _mips_ -DPROCESSOR_MIPS \
75              -D PALM_SIZE \
76              -I $(CELIBDLLDIR)\inc
77 SUBSYS     = -subsystem:windowsce,2.11
78 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
79 LDLIBPATH  = -libpath:$(CELIBPATH)
80 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
81              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
82 !endif
83
84 !if "$(MACHINE)" == "wince-mips-hpc-wce200"
85 CC         = clmips.exe
86 ARCH       = MIPS
87 CPU        = MIPS
88 TARGETCPU  = MIPS
89 CEVersion  = 200
90 OSVERSION  = WCE200
91 PLATFORM   = MS HPC
92 # MUST USE -MD to get the right FPE stuff...
93 MCFLAGS    = -D _MT -D _DLL -MD \
94              -D MIPS -D mips -D _MIPS_ -D _mips_ -DPROCESSOR_MIPS \
95              -D PALM_SIZE \
96              -I $(CELIBDLLDIR)\inc
97 SUBSYS     = -subsystem:windowsce,2.00
98 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
99 LDLIBPATH  = -libpath:$(CELIBPATH)
100 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
101              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
102 !endif
103
104 !if "$(MACHINE)" == "wince-sh3-hpc-wce200"
105 CC         = shcl.exe
106 ARCH       = SH3
107 CPU        = SH3
108 TARGETCPU  = SH3
109 CEVersion  = 200
110 OSVERSION  = WCE200
111 PLATFORM   = MS HPC
112 # MUST USE -MD to get the right FPE stuff...
113 MCFLAGS    = -D _MT -D _DLL -MD \
114              -D SH3 -D sh3 -D _SH3_ -D _sh3_ -D SHx -DPROCESSOR_SH3 \
115              -D PALM_SIZE \
116              -I $(CELIBDLLDIR)\inc
117 SUBSYS     = -subsystem:windowsce,2.00
118 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
119 LDLIBPATH  = -libpath:$(CELIBPATH)
120 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
121              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
122 !endif
123
124 !if "$(MACHINE)" == "wince-arm-hpc-wce211"
125 CC         = clarm.exe
126 ARCH       = ARM
127 CPU        = ARM
128 TARGETCPU  = ARM
129 CEVersion  = 211
130 OSVERSION  = WCE211
131 PLATFORM   = MS HPC Pro
132 MCFLAGS    = -D _MT -D _DLL -D ARM -D arm -D _arm_ -D _ARM_ \
133              -DPROCESSOR_ARM -DPALM_SIZE \
134              -I $(CELIBDLLDIR)\inc
135 SUBSYS     = -subsystem:windowsce,2.11
136 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
137 LDLIBPATH  = -libpath:$(CELIBPATH)
138 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
139              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
140 !endif
141
142 !if "$(MACHINE)" == "wince-arm-hpc-wce300"
143 CC         = clarm.exe
144 ARCH       = ARM
145 CPU        = ARM
146 TARGETCPU  = ARM
147 CEVersion  = 300
148 OSVERSION  = WCE300
149 PLATFORM   = HPC2000
150 MCFLAGS    = -D _MT -D _DLL -D ARM -D arm -D _arm_ -D _ARM_ \
151              -DPROCESSOR_ARM -DPALM_SIZE \
152              -I $(CELIBDLLDIR)\inc
153 SUBSYS     = -subsystem:windowsce,3.00
154 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
155 LDLIBPATH  = -libpath:$(CELIBPATH)
156 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
157              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
158 !endif
159
160 !if "$(MACHINE)" == "wince-mips-palm-wce211"
161 CC         = clmips.exe
162 ARCH       = MIPS
163 CPU        = MIPS
164 TARGETCPU  = MIPS
165 CEVersion  = 211
166 OSVERSION  = WCE211
167 PLATFORM   = MS Palm Size PC
168 MCFLAGS    = -DMIPS -D_MIPS_ -DPROCESSOR_MIPS -D PALM_SIZE -D _DLL -D _MT \
169              -I $(CELIBDLLDIR)\inc
170 SUBSYS     = -subsystem:windowsce,2.11
171 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
172 LDLIBPATH  = -libpath:$(CELIBPATH)
173 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
174              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
175 !endif
176
177 !if "$(MACHINE)" == "wince-sh3-palm-wce211"
178 CC         = shcl.exe
179 ARCH       = SH3
180 CPU        = SH3
181 TARGETCPU  = SH3
182 CEVersion  = 211
183 OSVERSION  = WCE211
184 PLATFORM   = MS Palm Size PC
185 MCFLAGS    = -D _MT -D _DLL -DSH3 -D_SH3_ -DSHx -DPROCESSOR_SH3 -DPALM_SIZE \
186              -I $(CELIBDLLDIR)\inc
187 SUBSYS     = -subsystem:windowsce,2.11
188 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
189 LDLIBPATH  = -libpath:$(CELIBPATH)
190 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
191              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
192 !endif
193
194 !if "$(MACHINE)" == "wince-x86em-palm-wce211"
195 CC         = cl.exe
196 ARCH       = X86EM
197 CPU        = X86
198 TARGETCPU  = X86
199 CEVersion  = 211
200 OSVERSION  = WCE211
201 PLATFORM   = MS Palm Size PC
202 MCFLAGS    = -MDd -DX86 -D_X86_ -DPROCESSOR_X86 \
203              -D_WIN32_WCE_EMULATION -DPALM_SIZE \
204              -I $(CELIBDLLDIR)\inc
205 MACH       = -machine:x86
206 SUBSYS     = -subsystem:windows
207 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
208 LDLIBPATH  = -libpath:$(CELIBPATH)
209 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
210              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
211 !endif
212
213 !if "$(MACHINE)" == "wince-x86em-pocket-wce300"
214 CC         = cl.exe
215 ARCH       = X86EM
216 CPU        = X86
217 TARGETCPU  = X86
218 CEVersion  = 300
219 OSVERSION  = WCE300
220 PLATFORM   = MS Pocket PC
221 MCFLAGS    = -DX86 -D_X86_ -DPROCESSOR_X86 -D _MT -D _DLL \
222              -D_WIN32_WCE_EMULATION -DPALM_SIZE -DPOCKET_SIZE \
223              -I $(CELIBDLLDIR)\inc 
224 MACH       = -machine:x86
225 SUBSYS     = -subsystem:windows
226 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
227 LDLIBPATH  = -libpath:$(CELIBPATH)
228 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
229              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
230 !endif
231
232 !if "$(MACHINE)" == "wince-mips-pocket-wce300"
233 CC         = clmips.exe
234 ARCH       = MIPS
235 CPU        = MIPS
236 TARGETCPU  = MIPS
237 CEVersion  = 300
238 OSVERSION  = WCE300
239 PLATFORM   = MS Pocket PC
240 MCFLAGS    = -D MIPS -D mips -D _MIPS_ -D _mips_ -DPROCESSOR_MIPS \
241              -D _MT -D _DLL -DPALM_SIZE -DPOCKET_SIZE \
242              -I $(CELIBDLLDIR)\inc 
243 MACH       = -machine:mips
244 SUBSYS     = -subsystem:windowsce,3.00
245 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
246 LDLIBPATH  = -libpath:$(CELIBPATH)
247 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
248              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
249 !endif
250
251 !if "$(MACHINE)" == "wince-sh3-pocket-wce300"
252 CC         = shcl.exe
253 ARCH       = SH3
254 CPU        = SH3
255 TARGETCPU  = SH3
256 CEVersion  = 300
257 OSVERSION  = WCE300
258 PLATFORM   = MS Pocket PC
259 MCFLAGS    = -D _MT -D _DLL -DSH3 -D_SH3_ -DSHx -DPROCESSOR_SH3 \
260              -DPALM_SIZE -DPOCKET_SIZE \
261              -I $(CELIBDLLDIR)\inc 
262 MACH       = -machine:mips
263 SUBSYS     = -subsystem:windowsce,3.00
264 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
265 LDLIBPATH  = -libpath:$(CELIBPATH)
266 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
267              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
268 !endif
269
270 !if "$(MACHINE)" == "wince-arm-pocket-wce300"
271 CC         = clarm.exe
272 ARCH       = ARM
273 CPU        = ARM
274 TARGETCPU  = ARM
275 CEVersion  = 300
276 OSVERSION  = WCE300
277 PLATFORM   = MS Pocket PC
278 MCFLAGS    = -D ARM -D arm -D _ARM_ -D _arm_ -DPROCESSOR_ARM \
279              -D _MT -D _DLL -DPALM_SIZE -DPOCKET_SIZE \
280              -I $(CELIBDLLDIR)\inc 
281 MACH       = -machine:arm
282 SUBSYS     = -subsystem:windowsce,3.00
283 CELIBPATH  = $(CELIBDLLDIR)\$(MACHINE)-release
284 LDLIBPATH  = -libpath:$(CELIBPATH)
285 STARTOBJS  = $(CECONSOLEDIR)/$(MACHINE)/wmain.obj \
286              $(CECONSOLEDIR)/$(MACHINE)/w32console.obj
287 !endif
288
289 ######################################################################
290 # common section
291
292 CEDEFS    = -D_WINDOWS -D_WIN32_WCE=$(CEVersion) -DUNDER_CE=$(CEVersion) \
293             $(MCFLAGS) 
294 #CEDEFS    = $(CEDEFS) -DDEBUGGING_OPS
295
296 CECFLAGS  = $(CEDEFS)
297
298 !if "$(CFG)" == "DEBUG"
299 CECFLAGS  = $(CECFLAGS) -Zi -Od
300 !endif
301
302 !if "$(CFG)" == "RELEASE"
303 # -O2 and -Ot give internal compiler error in perl.c and lexer.
304 # Also the dll cannot be loaded by perl.exe...
305 CECFLAGS  = $(CECFLAGS)
306 !endif
307
308 RCDEFS    = /l 0x407 /r /d "UNICODE" /d UNDER_CE=$(CEVersion) \
309             /d _WIN32_WCE=$(CEVersion)
310
311 PATH=$(CEPATH);$(PATH)
312
313 INCLUDE=$(WCEROOT)\$(OSVERSION)\$(PLATFORM)\include
314 LIB=$(WCEROOT)\$(OSVERSION)\$(PLATFORM)\lib\$(ARCH)
315
316 ######################################################################
317
318 !message
319 !message Compiling for $(MACHINE)
320 !message LIB=$(LIB)
321 !message INCLUDE=$(INCLUDE)
322 !message PATH=$(CEPATH)
323 !message
324
325 ######################################################################
326 #
327 # Additional compiler flags can be specified here.
328 #
329
330 BUILDOPT        = $(BUILDOPT) $(CECFLAGS)
331
332 ##################### CHANGE THESE ONLY IF YOU MUST #####################
333
334 !IF "$(CRYPT_SRC)$(CRYPT_LIB)" == ""
335 D_CRYPT         = undef
336 !ELSE
337 D_CRYPT         = define
338 CRYPT_FLAG      = -DHAVE_DES_FCRYPT
339 !ENDIF
340
341 !IF "$(PERL_MALLOC)" == ""
342 PERL_MALLOC     = undef
343 !ENDIF
344
345 !IF "$(USE_5005THREADS)" == ""
346 USE_5005THREADS = undef
347 !ENDIF
348
349 !IF "$(USE_5005THREADS)" == "define"
350 USE_ITHREADS    = undef
351 !ENDIF
352
353 !IF "$(USE_IMP_SYS)" == "define"
354 PERL_MALLOC     = undef
355 !ENDIF
356
357 !IF "$(USE_MULTI)" == ""
358 USE_MULTI       = undef
359 !ENDIF
360
361 !IF "$(USE_ITHREADS)" == ""
362 USE_ITHREADS    = undef
363 !ENDIF
364
365 !IF "$(USE_IMP_SYS)" == ""
366 USE_IMP_SYS     = undef
367 !ENDIF
368
369 !IF "$(USE_PERLCRT)" == ""
370 USE_PERLCRT     = undef
371 !ENDIF
372
373 !IF "$(USE_IMP_SYS)$(USE_MULTI)$(USE_5005THREADS)" == "defineundefundef"
374 USE_MULTI       = define
375 !ENDIF
376
377 !IF "$(USE_ITHREADS)$(USE_MULTI)" == "defineundef"
378 USE_MULTI       = define
379 USE_5005THREADS = undef
380 !ENDIF
381
382 !IF "$(USE_MULTI)$(USE_5005THREADS)" != "undefundef"
383 BUILDOPT        = $(BUILDOPT) -DPERL_IMPLICIT_CONTEXT
384 !ENDIF
385
386 !IF "$(USE_IMP_SYS)" != "undef"
387 BUILDOPT        = $(BUILDOPT) -DPERL_IMPLICIT_SYS
388 !ENDIF
389
390 # new option - automatically defined in perl.h...
391 #BUILDOPT        = $(BUILDOPT) -DUSE_ENVIRON_ARRAY
392
393 PROCESSOR_ARCHITECTURE = $(TARGETCPU)
394 ARCHNAME        = $(PLATFORM)-$(OSVERSION)-$(PROCESSOR_ARCHITECTURE)
395 # unused yet
396 ARCHDIR         = ..\lib\$(ARCHNAME)
397 COREDIR         = ..\lib\CORE
398 AUTODIR         = ..\lib\auto
399 LIBDIR          = ..\lib
400 EXTDIR          = ..\ext
401 PODDIR          = ..\pod
402 EXTUTILSDIR     = $(LIBDIR)\ExtUtils
403
404 LINK32          = link
405 LIB32           = $(LINK32) -lib
406 RSC             = rc
407
408 INCLUDES        = -I.\include -I. -I..
409 DEFINES         = -DWIN32 -D_CONSOLE -DNO_STRICT $(CRYPT_FLAG) $(CECFLAGS)
410 LOCDEFS         = -DPERLDLL -DPERL_CORE
411 CXX_FLAG        = -TP -GX
412
413 PERLEXE_RES     = perl.res
414 PERLDLL_RES     =
415
416 !if "$(CFG)" == "RELEASE"
417 CELIB           = celib.lib
418 !endif
419
420 !if "$(CFG)" == "DEBUG"
421 CELIB           = celib.lib
422 !endif
423
424 CELIBS          = -nodefaultlib \
425                   winsock.lib $(CELIB) coredll.lib
426
427 !if $(CEVersion) > 200
428 CELIBS          = $(CELIBS) corelibc.lib 
429 !else
430 CELIBS          = $(CELIBS) msvcrt.lib 
431 !endif
432
433 LIBBASEFILES    = $(CRYPT_LIB) $(CELIBS)
434
435 LIBFILES        = $(LIBBASEFILES) $(LIBC)
436
437 CFLAGS          = -nologo -Gf -W3 $(INCLUDES) $(DEFINES) $(LOCDEFS) \
438                 $(PCHFLAGS) $(OPTIMIZE)
439
440 LINK_FLAGS      = -nologo -machine:$(PROCESSOR_ARCHITECTURE)
441
442 !if "$(CFG)" == "DEBUG"
443 LINK_FLAGS      = $(LINK_FLAGS) -debug:full -pdb:none 
444 !endif
445
446 OBJOUT_FLAG     = -Fo
447 EXEOUT_FLAG     = -Fe
448
449 CFLAGS_O        = $(CFLAGS) $(BUILDOPT)
450
451 o = .obj
452
453 #
454 # Rules
455
456
457 .SUFFIXES : .c $(o) .dll .lib .exe .rc .res
458
459 .c$(o):
460         $(CC) -c -I$(<D) $(CFLAGS_O) $(OBJOUT_FLAG)$@ $<
461
462 .y.c:
463         $(NOOP)
464
465 $(o).dll:
466         $(LINK32) -dll $(SUBSYS) $(LDLIBPATH) \
467             -implib:$(*B).lib -def:$(*B).def \
468             -out:$@ $(LINK_FLAGS) $(LIBFILES) $< $(LIBPERL)  
469
470 .rc.res:
471         $(RSC) -i.. $<
472
473 # This must be relative to ../lib/CORE, else the ext dll build fails...
474 PERLIMPLIB_EXP  = ..\..\wince\$(MACHINE)\perl$(PV).lib
475 PERLIMPLIB      = $(PERLCEDIR)\$(MACHINE)\perl$(PV).lib
476 PERLDLL         = $(MACHINE)\perl$(PV).dll
477
478 DLLDIR          = $(MACHINE)\dll
479 PERLEXE         = $(MACHINE)\perl.exe
480
481 CONFIGPM        = ..\lib\Config.pm
482 MINIMOD         = ..\lib\ExtUtils\Miniperl.pm
483
484 MAKE            = nmake -nologo
485
486 CFGSH_TMPL      = config.ce
487 CFGH_TMPL       = config_H.ce
488
489 #
490 # filenames given to xsubpp must have forward slashes (since it puts
491 # full pathnames in #line strings)
492 XSUBPP          = $(NTPERL) -I..\..\lib ..\$(EXTUTILSDIR)\xsubpp \
493                 -C++ -prototypes
494
495 MICROCORE_SRC   =               \
496                 ..\av.c         \
497                 ..\deb.c        \
498                 ..\doio.c       \
499                 ..\doop.c       \
500                 ..\dump.c       \
501                 ..\globals.c    \
502                 ..\gv.c         \
503                 ..\hv.c         \
504                 ..\mg.c         \
505                 ..\op.c         \
506                 ..\perl.c       \
507                 ..\perlapi.c    \
508                 ..\perly.c      \
509                 ..\pp.c         \
510                 ..\pp_ctl.c     \
511                 ..\pp_hot.c     \
512                 ..\pp_sys.c     \
513                 ..\regcomp.c    \
514                 ..\regexec.c    \
515                 ..\run.c        \
516                 ..\scope.c      \
517                 ..\sharedsv.c   \
518                 ..\sv.c         \
519                 ..\taint.c      \
520                 ..\toke.c       \
521                 ..\universal.c  \
522                 ..\utf8.c       \
523                 ..\util.c       \
524                 ..\xsutils.c
525
526 EXTRACORE_SRC   = $(EXTRACORE_SRC) perllib.c
527
528 !IF "$(PERL_MALLOC)" == "define"
529 EXTRACORE_SRC   = $(EXTRACORE_SRC) ..\malloc.c
530 !ENDIF
531
532 EXTRACORE_SRC   = $(EXTRACORE_SRC) ..\perlio.c
533
534 WIN32_SRC       =               \
535                 .\wince.c       \
536                 .\wincesck.c    \
537                 .\win32thread.c 
538
539 !IF "$(CRYPT_SRC)" != ""
540 WIN32_SRC       = $(WIN32_SRC) .\$(CRYPT_SRC)
541 !ENDIF
542
543 DLL_SRC         = $(DYNALOADER).c
544
545 CORE_NOCFG_H    =               \
546                 ..\av.h         \
547                 ..\cop.h        \
548                 ..\cv.h         \
549                 ..\dosish.h     \
550                 ..\embed.h      \
551                 ..\form.h       \
552                 ..\gv.h         \
553                 ..\handy.h      \
554                 ..\hv.h         \
555                 ..\iperlsys.h   \
556                 ..\mg.h         \
557                 ..\nostdio.h    \
558                 ..\op.h         \
559                 ..\opcode.h     \
560                 ..\perl.h       \
561                 ..\perlapi.h    \
562                 ..\perlsdio.h   \
563                 ..\perlsfio.h   \
564                 ..\perly.h      \
565                 ..\pp.h         \
566                 ..\proto.h      \
567                 ..\regexp.h     \
568                 ..\scope.h      \
569                 ..\sharedsv.h   \
570                 ..\sv.h         \
571                 ..\thread.h     \
572                 ..\unixish.h    \
573                 ..\utf8.h       \
574                 ..\util.h       \
575                 ..\warnings.h   \
576                 ..\XSUB.h       \
577                 ..\EXTERN.h     \
578                 ..\perlvars.h   \
579                 ..\intrpvar.h   \
580                 ..\thrdvar.h    \
581                 .\include\dirent.h      \
582                 .\include\netdb.h       \
583                 .\include\sys\socket.h  \
584                 .\win32.h
585
586 !IF "$(USE_SETARGV)" != ""
587 SETARGV_OBJ     = setargv$(o)
588 !ENDIF
589
590 DYNAMIC_EXT     = Socket IO Fcntl Opcode SDBM_File POSIX attrs Thread B re \
591                 Data/Dumper Devel/Peek ByteLoader Devel/DProf File/Glob \
592                 Sys/Hostname
593
594 STATIC_EXT      = DynaLoader
595 NONXS_EXT       = Errno
596
597 DYNALOADER      = $(EXTDIR)\DynaLoader\DynaLoader
598 SOCKET          = $(EXTDIR)\Socket\Socket
599 IO              = $(EXTDIR)\IO\IO
600 DUMPER          = $(EXTDIR)\Data\Dumper\Dumper
601 #
602 FCNTL           = $(EXTDIR)\Fcntl\Fcntl
603 OPCODE          = $(EXTDIR)\Opcode\Opcode
604 SDBM_FILE       = $(EXTDIR)\SDBM_File\SDBM_File
605 POSIX           = $(EXTDIR)\POSIX\POSIX
606 ATTRS           = $(EXTDIR)\attrs\attrs
607 THREAD          = $(EXTDIR)\Thread\Thread
608 B               = $(EXTDIR)\B\B
609 RE              = $(EXTDIR)\re\re
610 ERRNO           = $(EXTDIR)\Errno\Errno
611 PEEK            = $(EXTDIR)\Devel\Peek\Peek
612 BYTELOADER      = $(EXTDIR)\ByteLoader\ByteLoader
613 DPROF           = $(EXTDIR)\Devel\DProf\DProf
614 GLOB            = $(EXTDIR)\File\Glob\Glob
615 HOSTNAME        = $(EXTDIR)\Sys\Hostname\Hostname
616 SOCKET_DLL      = $(AUTODIR)\Socket\Socket.dll
617 FCNTL_DLL       = $(AUTODIR)\Fcntl\Fcntl.dll
618 OPCODE_DLL      = $(AUTODIR)\Opcode\Opcode.dll
619 SDBM_FILE_DLL   = $(AUTODIR)\SDBM_File\SDBM_File.dll
620 IO_DLL          = $(AUTODIR)\IO\IO.dll
621 POSIX_DLL       = $(AUTODIR)\POSIX\POSIX.dll
622 ATTRS_DLL       = $(AUTODIR)\attrs\attrs.dll
623 THREAD_DLL      = $(AUTODIR)\Thread\Thread.dll
624 B_DLL           = $(AUTODIR)\B\B.dll
625 DUMPER_DLL      = $(AUTODIR)\Data\Dumper\Dumper.dll
626 PEEK_DLL        = $(AUTODIR)\Devel\Peek\Peek.dll
627 RE_DLL          = $(AUTODIR)\re\re.dll
628 BYTELOADER_DLL  = $(AUTODIR)\ByteLoader\ByteLoader.dll
629 DPROF_DLL       = $(AUTODIR)\Devel\DProf\DProf.dll
630 GLOB_DLL        = $(AUTODIR)\File\Glob\Glob.dll
631 HOSTNAME_DLL    = $(AUTODIR)\Sys\Hostname\Hostname.dll
632
633 ERRNO_PM        = $(LIBDIR)\Errno.pm
634
635 EXTENSION_C     =               \
636                 $(SOCKET).c     \
637                 $(FCNTL).c      \
638                 $(OPCODE).c     \
639                 $(SDBM_FILE).c  \
640                 $(IO).c         \
641                 $(POSIX).c      \
642                 $(ATTRS).c      \
643                 $(THREAD).c     \
644                 $(RE).c         \
645                 $(DUMPER).c     \
646                 $(PEEK).c       \
647                 $(B).c          \
648                 $(BYTELOADER).c \
649                 $(DPROF).c      \
650                 $(GLOB).c       \
651                 $(HOSTNAME).c
652
653 EXTENSION_DLL   =               \
654                 $(SOCKET_DLL)   \
655                 $(FCNTL_DLL)    \
656                 $(OPCODE_DLL)   \
657                 $(SDBM_FILE_DLL)\
658                 $(IO_DLL)       \
659                 $(POSIX_DLL)    \
660                 $(ATTRS_DLL)    \
661                 $(DUMPER_DLL)   \
662                 $(PEEK_DLL)     \
663                 $(B_DLL)        \
664                 $(RE_DLL)       \
665                 $(THREAD_DLL)   \
666                 $(BYTELOADER_DLL)       \
667                 $(DPROF_DLL)    \
668                 $(GLOB_DLL)     \
669                 $(HOSTNAME_DLL)
670
671 EXTENSION_PM    =               \
672                 $(ERRNO_PM)
673
674 POD2HTML        = $(PODDIR)\pod2html
675 POD2MAN         = $(PODDIR)\pod2man
676 POD2LATEX       = $(PODDIR)\pod2latex
677 POD2TEXT        = $(PODDIR)\pod2text
678
679 CFG_VARS = \
680  "INST_DRV=$(INST_DRV)" \
681  "INST_TOP=$(INST_TOP)" \
682  "INST_VER=$(INST_VER)" \
683  "INST_ARCH=$(INST_ARCH)" \
684  "archname=$(ARCHNAME)" \
685  "cc=$(CC)" \
686  "ccflags=$(OPTIMIZE) $(DEFINES) $(BUILDOPT)" \
687  "cf_by=Rainer Keuchel" \
688  "cf_email=coyxc@rainer-keuchel.de" \
689  "d_crypt=$(D_CRYPT)" \
690  "d_mymalloc=$(PERL_MALLOC)" \
691  "libs=$(LIBFILES)" \
692  "incpath=$(CCINCDIR)" \
693  "libperl=$(PERLIMPLIB_EXP)" \
694  "libpth=$(LIBPATH)" \
695  "libc=$(LIBC)" \
696  "make=nmake" \
697  "static_ext=$(STATIC_EXT)" \
698  "dynamic_ext=$(DYNAMIC_EXT)" \
699  "nonxs_ext=$(NONXS_EXT)" \
700  "use5005threads=$(USE_5005THREADS)" \
701  "useithreads=$(USE_ITHREADS)" \
702  "usethreads=$(USE_5005THREADS)" \
703  "usemultiplicity=$(USE_MULTI)" \
704  "LINK_FLAGS=$(LDLIBPATH) $(LINK_FLAGS) $(SUBSYS)" \
705  "optimize=$(OPTIMIZE)"
706
707 #
708 # Top targets
709 #
710
711 all: $(MINIMOD) $(CONFIGPM) $(PERLEXE)
712
713 $(DYNALOADER)$(o) : $(DYNALOADER).c $(CORE_H) $(EXTDIR)\DynaLoader\dlutils.c
714
715 $(CONFIGPM): config.h ..\config.sh ..\minimod.pl
716         cd .. && $(NTPERL) configpm
717         -mkdir $(COREDIR)
718         $(XCOPY) ..\*.h $(COREDIR)\*.*
719         $(XCOPY) *.h $(COREDIR)\*.*
720         $(XCOPY) ..\ext\re\re.pm $(LIBDIR)\*.*
721         $(RCOPY) include $(COREDIR)\*.*
722         $(NTPERL) -I..\lib config_h.PL "INST_VER=$(INST_VER)"
723
724 ..\config.sh config.h: config.ce config_sh.PL
725         $(NTPERL) -I..\lib config_sh.PL $(CFG_VARS) config.ce > ..\config.sh
726
727 $(MINIMOD) : ..\minimod.pl
728         cd .. && $(NTPERL) minimod.pl > lib\ExtUtils\Miniperl.pm
729
730 perlmain.c : runperl.c 
731         $(COPY) runperl.c perlmain.c
732
733 $(DYNALOADER).c: $(EXTDIR)\DynaLoader\dl_win32.xs $(CONFIGPM)
734         if not exist $(AUTODIR) mkdir $(AUTODIR)
735         cd $(EXTDIR)\$(*B)
736         $(NTPERL) -I..\..\lib $(*B)_pm.PL
737         $(NTPERL) -I..\..\lib XSLoader_pm.PL
738         cd ..\..\wince
739         $(XCOPY) $(EXTDIR)\$(*B)\$(*B).pm $(LIBDIR)\$(NULL)
740         $(XCOPY) $(EXTDIR)\$(*B)\XSLoader.pm $(LIBDIR)\$(NULL)
741         cd $(EXTDIR)\$(*B)
742         $(XSUBPP) dl_win32.xs > $(*B).c
743         cd ..\..\wince
744
745 $(EXTDIR)\DynaLoader\dl_win32.xs: dl_win32.xs
746         $(COPY) dl_win32.xs $(EXTDIR)\DynaLoader\dl_win32.xs
747
748 $(DUMPER_DLL): $(PERLEXE) $(DUMPER).xs
749         cd $(EXTDIR)\Data\$(*B)
750         $(NTPERL) -I..\..\..\lib Makefile.PL INSTALLDIRS=perl
751         $(MAKE)
752         cd ..\..\..\wince
753
754 $(DPROF_DLL): $(PERLEXE) $(DPROF).xs
755         cd $(EXTDIR)\Devel\$(*B)
756         $(NTPERL) -I..\..\..\lib Makefile.PL INSTALLDIRS=perl
757         $(MAKE)
758         cd ..\..\..\wince
759
760 $(GLOB_DLL): $(PERLEXE) $(GLOB).xs
761         cd $(EXTDIR)\File\$(*B)
762         $(NTPERL) -I..\..\..\lib Makefile.PL INSTALLDIRS=perl
763         $(MAKE)
764         cd ..\..\..\wince
765
766 $(PEEK_DLL): $(PERLEXE) $(PEEK).xs
767         cd $(EXTDIR)\Devel\$(*B)
768         $(NTPERL) -I..\..\..\lib Makefile.PL INSTALLDIRS=perl
769         $(MAKE)
770         cd ..\..\..\wince
771
772 $(RE_DLL): $(PERLEXE) $(RE).xs
773         cd $(EXTDIR)\$(*B)
774         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
775         $(MAKE)
776         cd ..\..\wince
777
778 $(B_DLL): $(PERLEXE) $(B).xs
779         cd $(EXTDIR)\$(*B)
780         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
781         $(MAKE)
782         cd ..\..\wince
783
784 $(THREAD_DLL): $(PERLEXE) $(THREAD).xs
785         cd $(EXTDIR)\$(*B)
786         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
787         $(MAKE)
788         cd ..\..\wince
789
790 $(ATTRS_DLL): $(PERLEXE) $(ATTRS).xs
791         cd $(EXTDIR)\$(*B)
792         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
793         $(MAKE)
794         cd ..\..\wince
795
796 $(POSIX_DLL): $(PERLEXE) $(POSIX).xs
797         cd $(EXTDIR)\$(*B)
798         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
799         $(MAKE)
800         cd ..\..\wince
801
802 $(IO_DLL): $(PERLEXE) $(IO).xs
803         cd $(EXTDIR)\$(*B)
804         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
805         $(MAKE)
806         cd ..\..\wince
807
808 $(SDBM_FILE_DLL) : $(PERLEXE) $(SDBM_FILE).xs
809         cd $(EXTDIR)\$(*B)
810         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
811         $(MAKE)
812         cd ..\..\wince
813
814 $(FCNTL_DLL): $(PERLEXE) $(FCNTL).xs
815         cd $(EXTDIR)\$(*B)
816         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
817         $(MAKE)
818         cd ..\..\wince
819
820 $(OPCODE_DLL): $(PERLEXE) $(OPCODE).xs
821         cd $(EXTDIR)\$(*B)
822         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
823         $(MAKE)
824         cd ..\..\wince
825
826 $(SOCKET_DLL): $(PERLEXE) $(SOCKET).xs
827         cd $(EXTDIR)\$(*B)
828         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
829         $(MAKE)
830         cd ..\..\wince
831
832 $(HOSTNAME_DLL): $(PERLEXE) $(HOSTNAME).xs
833         cd $(EXTDIR)\Sys\$(*B)
834         $(NTPERL) -I..\..\..\lib Makefile.PL INSTALLDIRS=perl
835         $(MAKE)
836         cd ..\..\..\wince
837
838 $(BYTELOADER_DLL): $(PERLEXE) $(BYTELOADER).xs
839         cd $(EXTDIR)\$(*B)
840         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
841         $(MAKE)
842         cd ..\..\wince
843
844 $(ERRNO_PM): $(PERLEXE) $(ERRNO)_pm.PL
845         cd $(EXTDIR)\$(*B)
846         $(NTPERL) -I..\..\lib Makefile.PL INSTALLDIRS=perl
847         $(MAKE)
848         cd ..\..\wince
849
850 $(PERLEXE_RES): perl.rc perl.ico
851         rc $(RCDEFS) perl.rc
852
853 clean: 
854         -rm -f $(MACHINE)/dll/*
855         -rm -f $(MACHINE)/*.obj
856         -rm -f $(MACHINE)/*.exe
857         -rm -f $(MACHINE)/*.dll
858         -rm -f $(MACHINE)/*.lib
859         -rm -f ../config.sh ../lib/Config.pm
860         -rm -f config.h perl.res
861
862 !if "$(MACHINE)" == "wince-sh3-hpc"
863 install_perlexe: $(PERLEXE)
864         cedel /speicherkarte2/bin/perl.exe
865         cecopy pc:../perl.exe ce:/speicherkarte2/bin
866
867 install_perldll: $(PERLDLL)
868         cedel /speicherkarte2/bin/perl$(PV).dll
869         cecopy pc:../perl$(PV).dll ce:/speicherkarte2/bin
870
871 install_perl: install_perlexe install_perldll
872
873 test_perl:
874         cecopy pc:test.pl ce:/speicherkarte2/bin
875         ceexec /speicherkarte2/bin/perl.exe /speicherkarte2/bin/test.pl
876 #       ceexec /speicherkarte2/bin/perl.exe -V
877
878 install_lib: ../lib/Config.pm
879         cecopy  pc:../lib/Config.pm ce:/speicherkarte2/usr/lib/perl5
880 !endif
881
882 !if "$(MACHINE)" == "wince-arm-hpc"
883 install_perlexe: $(PERLEXE)
884         -cedel /speicherkarte/bin/perl.exe
885         cecopy pc:$(MACHINE)/perl.exe ce:/speicherkarte/bin
886
887 install_perldll: $(PERLDLL)
888         -cedel /speicherkarte/bin/perl$(PV).dll
889         cecopy pc:$(MACHINE)/perl$(PV).dll ce:/speicherkarte/bin
890
891 install_perl: install_perlexe install_perldll
892
893 test_perl:
894         cecopy pc:test.pl ce:/speicherkarte/bin
895         ceexec /speicherkarte/bin/perl.exe /speicherkarte/bin/test.pl
896 #       ceexec /speicherkarte2/bin/perl.exe -V
897
898 install_lib: ../lib/Config.pm
899         cecopy  pc:../lib/Config.pm ce:/speicherkarte/usr/lib/perl5
900 !endif
901
902 !if "$(MACHINE)" == "wince-mips-hpc"
903 install_perlexe: $(PERLEXE)
904         cecopy pc:../perl.exe ce:/netzwerk/compaq/bin
905
906 install_perldll: $(PERLDLL)
907         cecopy pc:../perl$(PV).dll ce:/netzwerk/compaq/bin
908
909 install_perl: install_perlexe install_perldll
910
911 test_perl:
912         cecopy pc:test.pl ce:/netzwerk/compaq/bin
913         ceexec /netzwerk/compaq/bin/perl.exe /netzwerk/compaq/bin/test.pl
914 #       ceexec /netzwerk/compaq/bin/perl.exe -V
915
916 install_lib: ../lib/Config.pm
917         cecopy  pc:../lib/Config.pm ce:/netzwerk/compaq/usr/lib/perl5
918 !endif
919
920 !if "$(MACHINE)" == "wince-x86em-pocket"
921 install_lib:
922         ftpcopy ../lib/Config.pm ftp!ftp@localhost:/perl/lib
923         ftpcopy ../lib/Exporter.pm ftp!ftp@localhost:/perl/lib
924         ftpcopy ../lib/Exporter/Heavy.pm ftp!ftp@localhost:/perl/lib/Exporter
925
926 install_perlexe: $(PERLEXE)
927         cecopy pc:../perl.exe ce:/netzwerk/compaq/bin
928
929 install_perldll: $(PERLDLL)
930         cecopy pc:../perl$(PV).dll ce:/netzwerk/compaq/bin
931
932 install_perl: install_perlexe install_perldll
933
934 test_perl:
935         echo Not yet
936 !endif
937
938
939 XDLLOBJS = \
940 $(DLLDIR)\av.obj \
941 $(DLLDIR)\deb.obj \
942 $(DLLDIR)\doio.obj \
943 $(DLLDIR)\doop.obj \
944 $(DLLDIR)\dump.obj \
945 $(DLLDIR)\globals.obj \
946 $(DLLDIR)\gv.obj \
947 $(DLLDIR)\hv.obj \
948 $(DLLDIR)\locale.obj \
949 $(DLLDIR)\mg.obj \
950 $(DLLDIR)\numeric.obj \
951 $(DLLDIR)\op.obj \
952 $(DLLDIR)\perl.obj \
953 $(DLLDIR)\perlapi.obj \
954 $(DLLDIR)\perlio.obj \
955 $(DLLDIR)\perly.obj \
956 $(DLLDIR)\pp.obj \
957 $(DLLDIR)\pp_ctl.obj \
958 $(DLLDIR)\pp_hot.obj \
959 $(DLLDIR)\pp_pack.obj \
960 $(DLLDIR)\pp_sys.obj \
961 $(DLLDIR)\regcomp.obj \
962 $(DLLDIR)\regexec.obj \
963 $(DLLDIR)\run.obj \
964 $(DLLDIR)\scope.obj \
965 $(DLLDIR)\sharedsv.obj \
966 $(DLLDIR)\sv.obj \
967 $(DLLDIR)\taint.obj \
968 $(DLLDIR)\toke.obj \
969 $(DLLDIR)\universal.obj \
970 $(DLLDIR)\utf8.obj \
971 $(DLLDIR)\util.obj \
972 $(DLLDIR)\win32thread.obj \
973 $(DLLDIR)\wince.obj \
974 $(DLLDIR)\wincesck.obj \
975 $(DLLDIR)\xsutils.obj \
976 $(DLLDIR)\perllib.obj \
977 $(DLLDIR)\DynaLoader.obj
978
979 {$(SRCDIR)}.c{$(DLLDIR)}.obj:
980     $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $<
981
982 {$(SRCDIR)/wince}.c{$(DLLDIR)}.obj:
983     $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $<
984
985 $(PERLDLL) : $(DLLDIR) perldll.def $(XDLLOBJS) $(PERLDLL_RES)
986         $(LINK32) -dll -def:perldll.def -out:$@ \
987                   $(SUBSYS) $(LDLIBPATH) \
988                   $(LINK_FLAGS) $(LIBFILES) \
989                   $(XDLLOBJS) $(PERLDLL_RES)
990
991 $(DLLDIR) :
992         if not exist "$(DLLDIR)" mkdir "$(DLLDIR)"
993
994 $(DLLDIR)\DynaLoader.obj: $(EXTDIR)\DynaLoader\DynaLoader.c
995     $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ \
996           $(EXTDIR)\DynaLoader\DynaLoader.c
997
998 XPERLEXEOBJS = \
999 $(MACHINE)\perlmain.obj
1000
1001 $(PERLEXE) : $(PERLDLL) $(CONFIGPM) $(XPERLEXEOBJS) $(PERLEXE_RES) $(STARTOBJS)
1002         $(LINK32) $(SUBSYS) $(LDLIBPATH) \
1003             -entry:wWinMainCRTStartup \
1004             -out:$(MACHINE)\perl.exe \
1005             -stack:0x100000 $(LINK_FLAGS) $(STARTOBJS) $(XPERLEXEOBJS) \
1006             $(PERLIMPLIB) $(PERLEXE_RES) $(LIBFILES)
1007
1008 $(MACHINE)\perlmain.obj : perlmain.c
1009         $(CC) $(CFLAGS_O) -UPERLDLL -Fo$(MACHINE)\ -c perlmain.c
1010
1011 iodll:     $(IO_DLL)
1012 socketdll: $(SOCKET_DLL)
1013 dumperdll: $(DUMPER_DLL)
1014
1015 dlls: socketdll iodll dumperdll
1016         -xmkdir -p $(MACHINE)/lib/auto/IO
1017         cp ../lib/auto/IO/IO.bs $(MACHINE)/lib/auto/IO
1018         cp ../lib/auto/IO/IO.dll $(MACHINE)/lib/auto/IO
1019         -xmkdir $(MACHINE)/lib/auto/Socket
1020         cp ../lib/auto/Socket/Socket.bs $(MACHINE)/lib/auto/Socket
1021         cp ../lib/auto/Socket/Socket.dll $(MACHINE)/lib/auto/Socket
1022         -xmkdir -p $(MACHINE)/lib/auto/Data/Dumper
1023         cp ../lib/auto/Data/Dumper/Dumper.bs $(MACHINE)/lib/auto/Data/Dumper
1024         cp ../lib/auto/Data/Dumper/Dumper.dll $(MACHINE)/lib/auto/Data/Dumper
1025
1026 makedist: all dlls
1027         $(COPY) $(CELIBPATH)\celib.dll $(MACHINE)
1028         cp perl.txt $(MACHINE)
1029         cp registry.bat $(MACHINE)
1030         cp ../lib/Config.pm $(MACHINE)/lib
1031         cd $(MACHINE)
1032         rm -f perl-$(MACHINE).tar.gz
1033         sh -c "tar cf perl-$(MACHINE).tar *.exe *.dll *.txt *.bat lib"
1034         gzip -9 perl-$(MACHINE).tar
1035         mv perl-$(MACHINE).tar.gz h:/freenet/new
1036         cd ..
1037
1038 !if "$(MACHINE)" == "wince-arm-hpc-wce300"
1039 install: all
1040         cecopy pc:$(MACHINE)/perl.exe ce:/speicherkarte/bin
1041         cecopy pc:$(MACHINE)/perl$(PV).dll ce:/speicherkarte/bin
1042 install_dlls: dlls
1043         cecopy pc:../lib/auto/IO/io.dll ce:/speicherkarte/usr/lib/perl5/auto/IO/io.dll
1044 !endif
1045
1046 !if "$(MACHINE)" == "wince-arm-hpc-wce211"
1047 install: all
1048         cecopy pc:$(MACHINE)/perl.exe ce:/speicherkarte/bin
1049         cecopy pc:$(MACHINE)/perl$(PV).dll ce:/speicherkarte/bin
1050 !endif
1051
1052 !if "$(MACHINE)" == "wince-mips-hpc-wce211"
1053 install:
1054         cecopy pc:$(MACHINE)/perl.exe ce:/bin
1055         cecopy pc:$(MACHINE)/perl$(PV).dll ce:/bin
1056 !endif
1057
1058 !if "$(MACHINE)" == "wince-mips-hpc-wce200"
1059 install:
1060         cecopy pc:$(MACHINE)/perl.exe ce:/bin
1061         cecopy pc:$(MACHINE)/perl$(PV).dll ce:/bin
1062 !endif
1063
1064 !if "$(MACHINE)" == "wince-sh3-hpc-wce211"
1065 install:
1066         cecopy pc:$(MACHINE)/perl.exe ce:/speicherkarte2/bin
1067         cecopy pc:$(MACHINE)/perl$(PV).dll ce:/speicherkarte2/bin
1068 !endif
1069
1070 perl.ico:
1071         perl makeico.pl