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