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 = .. |
ed423f7a |
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 | |
e4451f11 |
58 | CFG=DEBUG |
59 | #CFG=RELEASE |
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 | |
378 | !IF "$(USE_5005THREADS)" == "" |
379 | USE_5005THREADS = undef |
380 | !ENDIF |
381 | |
382 | !IF "$(USE_5005THREADS)" == "define" |
383 | USE_ITHREADS = undef |
384 | !ENDIF |
385 | |
386 | !IF "$(USE_IMP_SYS)" == "define" |
387 | PERL_MALLOC = undef |
388 | !ENDIF |
389 | |
390 | !IF "$(USE_MULTI)" == "" |
391 | USE_MULTI = undef |
392 | !ENDIF |
393 | |
e4451f11 |
394 | !IF "$(USE_ITHREADS)" == "" |
395 | USE_ITHREADS = undef |
396 | !ENDIF |
397 | |
398 | !IF "$(USE_IMP_SYS)" == "" |
399 | USE_IMP_SYS = undef |
400 | !ENDIF |
401 | |
18f68570 |
402 | !IF "$(USE_PERLIO)" == "" |
403 | USE_PERLIO = undef |
404 | !ENDIF |
405 | |
e4451f11 |
406 | !IF "$(USE_PERLCRT)" == "" |
407 | USE_PERLCRT = undef |
408 | !ENDIF |
409 | |
acfe0abc |
410 | !IF "$(USE_IMP_SYS)$(USE_MULTI)$(USE_5005THREADS)" == "defineundefundef" |
e4451f11 |
411 | USE_MULTI = define |
412 | !ENDIF |
413 | |
acfe0abc |
414 | !IF "$(USE_ITHREADS)$(USE_MULTI)" == "defineundef" |
e4451f11 |
415 | USE_MULTI = define |
416 | USE_5005THREADS = undef |
417 | !ENDIF |
418 | |
acfe0abc |
419 | !IF "$(USE_MULTI)$(USE_5005THREADS)" != "undefundef" |
e4451f11 |
420 | BUILDOPT = $(BUILDOPT) -DPERL_IMPLICIT_CONTEXT |
421 | !ENDIF |
422 | |
423 | !IF "$(USE_IMP_SYS)" != "undef" |
424 | BUILDOPT = $(BUILDOPT) -DPERL_IMPLICIT_SYS |
425 | !ENDIF |
426 | |
18f68570 |
427 | !IF "$(USE_PERLIO)" == "define" |
428 | BUILDOPT = $(BUILDOPT) -DUSE_PERLIO |
429 | !ENDIF |
430 | |
47bcb90d |
431 | !IF "$(CROSS_NAME)" == "" |
432 | CROSS_NAME = wince |
433 | !ENDIF |
434 | |
e4451f11 |
435 | # new option - automatically defined in perl.h... |
436 | #BUILDOPT = $(BUILDOPT) -DUSE_ENVIRON_ARRAY |
437 | |
438 | PROCESSOR_ARCHITECTURE = $(TARGETCPU) |
439 | ARCHNAME = $(PLATFORM)-$(OSVERSION)-$(PROCESSOR_ARCHITECTURE) |
e4451f11 |
440 | ARCHDIR = ..\lib\$(ARCHNAME) |
441 | COREDIR = ..\lib\CORE |
e2a02c1e |
442 | XCOREDIR = ..\xlib\$(CROSS_NAME)\CORE |
e4451f11 |
443 | AUTODIR = ..\lib\auto |
444 | LIBDIR = ..\lib |
445 | EXTDIR = ..\ext |
446 | PODDIR = ..\pod |
447 | EXTUTILSDIR = $(LIBDIR)\ExtUtils |
448 | |
449 | LINK32 = link |
450 | LIB32 = $(LINK32) -lib |
451 | RSC = rc |
452 | |
453 | INCLUDES = -I.\include -I. -I.. |
454 | DEFINES = -DWIN32 -D_CONSOLE -DNO_STRICT $(CRYPT_FLAG) $(CECFLAGS) |
455 | LOCDEFS = -DPERLDLL -DPERL_CORE |
456 | CXX_FLAG = -TP -GX |
457 | |
458 | PERLEXE_RES = perl.res |
459 | PERLDLL_RES = |
460 | |
e4451f11 |
461 | !if "$(CFG)" == "RELEASE" |
462 | CELIB = celib.lib |
463 | !endif |
464 | |
465 | !if "$(CFG)" == "DEBUG" |
466 | CELIB = celib.lib |
467 | !endif |
468 | |
469 | CELIBS = -nodefaultlib \ |
470 | winsock.lib $(CELIB) coredll.lib |
471 | |
472 | !if $(CEVersion) > 200 |
473 | CELIBS = $(CELIBS) corelibc.lib |
474 | !else |
475 | CELIBS = $(CELIBS) msvcrt.lib |
476 | !endif |
477 | |
478 | LIBBASEFILES = $(CRYPT_LIB) $(CELIBS) |
479 | |
480 | LIBFILES = $(LIBBASEFILES) $(LIBC) |
481 | |
482 | CFLAGS = -nologo -Gf -W3 $(INCLUDES) $(DEFINES) $(LOCDEFS) \ |
483 | $(PCHFLAGS) $(OPTIMIZE) |
484 | |
485 | LINK_FLAGS = -nologo -machine:$(PROCESSOR_ARCHITECTURE) |
486 | |
487 | !if "$(CFG)" == "DEBUG" |
488 | LINK_FLAGS = $(LINK_FLAGS) -debug:full -pdb:none |
489 | !endif |
490 | |
491 | OBJOUT_FLAG = -Fo |
492 | EXEOUT_FLAG = -Fe |
493 | |
494 | CFLAGS_O = $(CFLAGS) $(BUILDOPT) |
495 | |
496 | o = .obj |
497 | |
498 | # |
499 | # Rules |
500 | # |
501 | |
502 | .SUFFIXES : .c $(o) .dll .lib .exe .rc .res |
503 | |
504 | .c$(o): |
505 | $(CC) -c -I$(<D) $(CFLAGS_O) $(OBJOUT_FLAG)$@ $< |
506 | |
507 | .y.c: |
508 | $(NOOP) |
509 | |
510 | $(o).dll: |
511 | $(LINK32) -dll $(SUBSYS) $(LDLIBPATH) \ |
512 | -implib:$(*B).lib -def:$(*B).def \ |
513 | -out:$@ $(LINK_FLAGS) $(LIBFILES) $< $(LIBPERL) |
514 | |
515 | .rc.res: |
516 | $(RSC) -i.. $< |
517 | |
518 | # This must be relative to ../lib/CORE, else the ext dll build fails... |
e2a02c1e |
519 | PERLIMPLIB_EXP = ..\..\..\xlib\$(CROSS_NAME)\CORE\perl$(PV).lib |
e4451f11 |
520 | PERLIMPLIB = $(PERLCEDIR)\$(MACHINE)\perl$(PV).lib |
521 | PERLDLL = $(MACHINE)\perl$(PV).dll |
522 | |
523 | DLLDIR = $(MACHINE)\dll |
524 | PERLEXE = $(MACHINE)\perl.exe |
525 | |
e2a02c1e |
526 | CONFIGPM = ..\xlib\$(CROSS_NAME)\Config.pm |
e4451f11 |
527 | MINIMOD = ..\lib\ExtUtils\Miniperl.pm |
528 | |
fefd7080 |
529 | # Nominate a target which causes extensions to be re-built |
530 | # This used to be $(PERLEXE), but at worst it is the .dll that they depend |
531 | # on and really only the interface - i.e. the .def file used to export symbols |
532 | # from the .dll |
533 | PERLDEP = perldll.def |
534 | |
e4451f11 |
535 | MAKE = nmake -nologo |
536 | |
537 | CFGSH_TMPL = config.ce |
538 | CFGH_TMPL = config_H.ce |
539 | |
540 | # |
541 | # filenames given to xsubpp must have forward slashes (since it puts |
542 | # full pathnames in #line strings) |
fefd7080 |
543 | XSUBPP = $(HPERL) -I..\..\lib -MCross=$(CROSS_NAME) ..\$(EXTUTILSDIR)\xsubpp \ |
e4451f11 |
544 | -C++ -prototypes |
545 | |
546 | MICROCORE_SRC = \ |
547 | ..\av.c \ |
548 | ..\deb.c \ |
549 | ..\doio.c \ |
550 | ..\doop.c \ |
551 | ..\dump.c \ |
552 | ..\globals.c \ |
553 | ..\gv.c \ |
554 | ..\hv.c \ |
555 | ..\mg.c \ |
556 | ..\op.c \ |
557 | ..\perl.c \ |
558 | ..\perlapi.c \ |
559 | ..\perly.c \ |
560 | ..\pp.c \ |
561 | ..\pp_ctl.c \ |
562 | ..\pp_hot.c \ |
84d4ea48 |
563 | ..\pp_pack.c \ |
564 | ..\pp_sort.c \ |
e4451f11 |
565 | ..\pp_sys.c \ |
10bc17b6 |
566 | ..\reentr.c \ |
e4451f11 |
567 | ..\regcomp.c \ |
568 | ..\regexec.c \ |
569 | ..\run.c \ |
570 | ..\scope.c \ |
571 | ..\sv.c \ |
572 | ..\taint.c \ |
573 | ..\toke.c \ |
574 | ..\universal.c \ |
575 | ..\utf8.c \ |
576 | ..\util.c \ |
577 | ..\xsutils.c |
578 | |
579 | EXTRACORE_SRC = $(EXTRACORE_SRC) perllib.c |
580 | |
581 | !IF "$(PERL_MALLOC)" == "define" |
582 | EXTRACORE_SRC = $(EXTRACORE_SRC) ..\malloc.c |
583 | !ENDIF |
584 | |
42165d27 |
585 | EXTRACORE_SRC = $(EXTRACORE_SRC) ..\perlio.c .\win32io.c |
e4451f11 |
586 | |
587 | WIN32_SRC = \ |
588 | .\wince.c \ |
589 | .\wincesck.c \ |
590 | .\win32thread.c |
591 | |
592 | !IF "$(CRYPT_SRC)" != "" |
593 | WIN32_SRC = $(WIN32_SRC) .\$(CRYPT_SRC) |
594 | !ENDIF |
595 | |
596 | DLL_SRC = $(DYNALOADER).c |
597 | |
598 | CORE_NOCFG_H = \ |
599 | ..\av.h \ |
600 | ..\cop.h \ |
601 | ..\cv.h \ |
602 | ..\dosish.h \ |
603 | ..\embed.h \ |
604 | ..\form.h \ |
605 | ..\gv.h \ |
606 | ..\handy.h \ |
607 | ..\hv.h \ |
608 | ..\iperlsys.h \ |
609 | ..\mg.h \ |
610 | ..\nostdio.h \ |
611 | ..\op.h \ |
612 | ..\opcode.h \ |
613 | ..\perl.h \ |
614 | ..\perlapi.h \ |
615 | ..\perlsdio.h \ |
616 | ..\perlsfio.h \ |
617 | ..\perly.h \ |
618 | ..\pp.h \ |
619 | ..\proto.h \ |
620 | ..\regexp.h \ |
621 | ..\scope.h \ |
622 | ..\sv.h \ |
623 | ..\thread.h \ |
624 | ..\unixish.h \ |
625 | ..\utf8.h \ |
626 | ..\util.h \ |
627 | ..\warnings.h \ |
628 | ..\XSUB.h \ |
629 | ..\EXTERN.h \ |
630 | ..\perlvars.h \ |
631 | ..\intrpvar.h \ |
632 | ..\thrdvar.h \ |
633 | .\include\dirent.h \ |
634 | .\include\netdb.h \ |
635 | .\include\sys\socket.h \ |
636 | .\win32.h |
637 | |
638 | !IF "$(USE_SETARGV)" != "" |
639 | SETARGV_OBJ = setargv$(o) |
640 | !ENDIF |
641 | |
642 | DYNAMIC_EXT = Socket IO Fcntl Opcode SDBM_File POSIX attrs Thread B re \ |
643 | Data/Dumper Devel/Peek ByteLoader Devel/DProf File/Glob \ |
644 | Sys/Hostname |
645 | |
646 | STATIC_EXT = DynaLoader |
647 | NONXS_EXT = Errno |
648 | |
649 | DYNALOADER = $(EXTDIR)\DynaLoader\DynaLoader |
650 | SOCKET = $(EXTDIR)\Socket\Socket |
651 | IO = $(EXTDIR)\IO\IO |
652 | DUMPER = $(EXTDIR)\Data\Dumper\Dumper |
653 | # |
654 | FCNTL = $(EXTDIR)\Fcntl\Fcntl |
655 | OPCODE = $(EXTDIR)\Opcode\Opcode |
656 | SDBM_FILE = $(EXTDIR)\SDBM_File\SDBM_File |
657 | POSIX = $(EXTDIR)\POSIX\POSIX |
658 | ATTRS = $(EXTDIR)\attrs\attrs |
659 | THREAD = $(EXTDIR)\Thread\Thread |
660 | B = $(EXTDIR)\B\B |
661 | RE = $(EXTDIR)\re\re |
662 | ERRNO = $(EXTDIR)\Errno\Errno |
663 | PEEK = $(EXTDIR)\Devel\Peek\Peek |
664 | BYTELOADER = $(EXTDIR)\ByteLoader\ByteLoader |
665 | DPROF = $(EXTDIR)\Devel\DProf\DProf |
666 | GLOB = $(EXTDIR)\File\Glob\Glob |
667 | HOSTNAME = $(EXTDIR)\Sys\Hostname\Hostname |
668 | SOCKET_DLL = $(AUTODIR)\Socket\Socket.dll |
669 | FCNTL_DLL = $(AUTODIR)\Fcntl\Fcntl.dll |
670 | OPCODE_DLL = $(AUTODIR)\Opcode\Opcode.dll |
671 | SDBM_FILE_DLL = $(AUTODIR)\SDBM_File\SDBM_File.dll |
672 | IO_DLL = $(AUTODIR)\IO\IO.dll |
673 | POSIX_DLL = $(AUTODIR)\POSIX\POSIX.dll |
674 | ATTRS_DLL = $(AUTODIR)\attrs\attrs.dll |
675 | THREAD_DLL = $(AUTODIR)\Thread\Thread.dll |
676 | B_DLL = $(AUTODIR)\B\B.dll |
677 | DUMPER_DLL = $(AUTODIR)\Data\Dumper\Dumper.dll |
678 | PEEK_DLL = $(AUTODIR)\Devel\Peek\Peek.dll |
679 | RE_DLL = $(AUTODIR)\re\re.dll |
680 | BYTELOADER_DLL = $(AUTODIR)\ByteLoader\ByteLoader.dll |
681 | DPROF_DLL = $(AUTODIR)\Devel\DProf\DProf.dll |
682 | GLOB_DLL = $(AUTODIR)\File\Glob\Glob.dll |
683 | HOSTNAME_DLL = $(AUTODIR)\Sys\Hostname\Hostname.dll |
684 | |
685 | ERRNO_PM = $(LIBDIR)\Errno.pm |
686 | |
687 | EXTENSION_C = \ |
688 | $(SOCKET).c \ |
689 | $(FCNTL).c \ |
690 | $(OPCODE).c \ |
691 | $(SDBM_FILE).c \ |
692 | $(IO).c \ |
693 | $(POSIX).c \ |
694 | $(ATTRS).c \ |
695 | $(THREAD).c \ |
696 | $(RE).c \ |
697 | $(DUMPER).c \ |
698 | $(PEEK).c \ |
699 | $(B).c \ |
700 | $(BYTELOADER).c \ |
701 | $(DPROF).c \ |
702 | $(GLOB).c \ |
703 | $(HOSTNAME).c |
704 | |
705 | EXTENSION_DLL = \ |
706 | $(SOCKET_DLL) \ |
707 | $(FCNTL_DLL) \ |
708 | $(OPCODE_DLL) \ |
709 | $(SDBM_FILE_DLL)\ |
710 | $(IO_DLL) \ |
711 | $(POSIX_DLL) \ |
712 | $(ATTRS_DLL) \ |
713 | $(DUMPER_DLL) \ |
714 | $(PEEK_DLL) \ |
715 | $(B_DLL) \ |
716 | $(RE_DLL) \ |
717 | $(THREAD_DLL) \ |
718 | $(BYTELOADER_DLL) \ |
719 | $(DPROF_DLL) \ |
720 | $(GLOB_DLL) \ |
721 | $(HOSTNAME_DLL) |
722 | |
723 | EXTENSION_PM = \ |
724 | $(ERRNO_PM) |
725 | |
726 | POD2HTML = $(PODDIR)\pod2html |
727 | POD2MAN = $(PODDIR)\pod2man |
728 | POD2LATEX = $(PODDIR)\pod2latex |
729 | POD2TEXT = $(PODDIR)\pod2text |
730 | |
731 | CFG_VARS = \ |
732 | "INST_DRV=$(INST_DRV)" \ |
733 | "INST_TOP=$(INST_TOP)" \ |
734 | "INST_VER=$(INST_VER)" \ |
735 | "INST_ARCH=$(INST_ARCH)" \ |
736 | "archname=$(ARCHNAME)" \ |
74d57dc4 |
737 | "CC=$(CC)" \ |
e4451f11 |
738 | "ccflags=$(OPTIMIZE) $(DEFINES) $(BUILDOPT)" \ |
739 | "cf_by=Rainer Keuchel" \ |
740 | "cf_email=coyxc@rainer-keuchel.de" \ |
741 | "d_crypt=$(D_CRYPT)" \ |
742 | "d_mymalloc=$(PERL_MALLOC)" \ |
743 | "libs=$(LIBFILES)" \ |
744 | "incpath=$(CCINCDIR)" \ |
745 | "libperl=$(PERLIMPLIB_EXP)" \ |
746 | "libpth=$(LIBPATH)" \ |
747 | "libc=$(LIBC)" \ |
748 | "make=nmake" \ |
749 | "static_ext=$(STATIC_EXT)" \ |
750 | "dynamic_ext=$(DYNAMIC_EXT)" \ |
751 | "nonxs_ext=$(NONXS_EXT)" \ |
752 | "use5005threads=$(USE_5005THREADS)" \ |
753 | "useithreads=$(USE_ITHREADS)" \ |
754 | "usethreads=$(USE_5005THREADS)" \ |
755 | "usemultiplicity=$(USE_MULTI)" \ |
18f68570 |
756 | "useperlio=$(USE_PERLIO)" \ |
e4451f11 |
757 | "LINK_FLAGS=$(LDLIBPATH) $(LINK_FLAGS) $(SUBSYS)" \ |
758 | "optimize=$(OPTIMIZE)" |
759 | |
760 | # |
761 | # Top targets |
762 | # |
763 | |
74a9a7e5 |
764 | all: hostminiperl $(MINIMOD) $(CONFIGPM) $(PERLEXE) Extensions |
e4451f11 |
765 | |
766 | $(DYNALOADER)$(o) : $(DYNALOADER).c $(CORE_H) $(EXTDIR)\DynaLoader\dlutils.c |
767 | |
e2a02c1e |
768 | $(CONFIGPM): .\config.h ..\config.sh ..\minimod.pl |
fefd7080 |
769 | cd .. && $(HPERL) configpm --cross=$(CROSS_NAME) --no-glossary |
e2a02c1e |
770 | -mkdir $(XCOREDIR) |
771 | $(XCOPY) ..\*.h $(XCOREDIR)\*.* |
772 | $(XCOPY) *.h $(XCOREDIR)\*.* |
e4451f11 |
773 | $(XCOPY) ..\ext\re\re.pm $(LIBDIR)\*.* |
e2a02c1e |
774 | $(RCOPY) include $(XCOREDIR)\*.* |
fefd7080 |
775 | -$(HPERL) -I..\lib -MCross=$(CROSS_NAME) config_h.PL "INST_VER=$(INST_VER)" "CORE_DIR=$(XCOREDIR)" |
776 | if errorlevel 1 $(MAKE) /$(MAKEFLAGS) $(CONFIGPM) |
e4451f11 |
777 | |
e2a02c1e |
778 | .\config.h: |
779 | -del /f config.h |
780 | copy config_H.ce config.h |
781 | |
782 | ..\config.sh: config.ce config_sh.PL |
fefd7080 |
783 | $(HPERL) -I..\lib -I..\win32 config_sh.PL $(CFG_VARS) config.ce > ..\config.sh |
e4451f11 |
784 | |
785 | $(MINIMOD) : ..\minimod.pl |
18f68570 |
786 | cd .. && $(HPERL) minimod.pl > lib\ExtUtils\Miniperl.pm |
e4451f11 |
787 | |
788 | perlmain.c : runperl.c |
789 | $(COPY) runperl.c perlmain.c |
790 | |
791 | $(DYNALOADER).c: $(EXTDIR)\DynaLoader\dl_win32.xs $(CONFIGPM) |
792 | if not exist $(AUTODIR) mkdir $(AUTODIR) |
793 | cd $(EXTDIR)\$(*B) |
3f2394f2 |
794 | $(HPERL) -I..\..\lib -MCross=$(CROSS_NAME) $(*B)_pm.PL |
795 | $(HPERL) -I..\..\lib -MCross=$(CROSS_NAME) XSLoader_pm.PL |
e4451f11 |
796 | cd ..\..\wince |
797 | $(XCOPY) $(EXTDIR)\$(*B)\$(*B).pm $(LIBDIR)\$(NULL) |
798 | $(XCOPY) $(EXTDIR)\$(*B)\XSLoader.pm $(LIBDIR)\$(NULL) |
799 | cd $(EXTDIR)\$(*B) |
800 | $(XSUBPP) dl_win32.xs > $(*B).c |
801 | cd ..\..\wince |
802 | |
803 | $(EXTDIR)\DynaLoader\dl_win32.xs: dl_win32.xs |
804 | $(COPY) dl_win32.xs $(EXTDIR)\DynaLoader\dl_win32.xs |
805 | |
fefd7080 |
806 | #---------------------------------------------------------------------------------- |
807 | Extensions: ..\win32\buildext.pl $(PERLDEP) $(CONFIGPM) |
808 | $(HPERL) -I..\lib -I..\win32 -MCross=$(CROSS_NAME) ..\win32\buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) \ |
74d57dc4 |
809 | !File/Glob !POSIX !Time/HiRes |
fefd7080 |
810 | |
811 | Extensions_clean: |
812 | -if exist $(MINIPERL) $(MINIPERL) -I..\lib buildext.pl $(MAKE) $(PERLDEP) $(EXTDIR) clean |
813 | |
814 | #---------------------------------------------------------------------------------- |
815 | |
e4451f11 |
816 | $(DUMPER_DLL): $(PERLEXE) $(DUMPER).xs |
817 | cd $(EXTDIR)\Data\$(*B) |
e2a02c1e |
818 | $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
819 | $(MAKE) |
820 | cd ..\..\..\wince |
821 | |
822 | $(DPROF_DLL): $(PERLEXE) $(DPROF).xs |
823 | cd $(EXTDIR)\Devel\$(*B) |
e2a02c1e |
824 | $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
825 | $(MAKE) |
826 | cd ..\..\..\wince |
827 | |
828 | $(GLOB_DLL): $(PERLEXE) $(GLOB).xs |
829 | cd $(EXTDIR)\File\$(*B) |
e2a02c1e |
830 | $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
831 | $(MAKE) |
832 | cd ..\..\..\wince |
833 | |
834 | $(PEEK_DLL): $(PERLEXE) $(PEEK).xs |
835 | cd $(EXTDIR)\Devel\$(*B) |
e2a02c1e |
836 | $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
837 | $(MAKE) |
838 | cd ..\..\..\wince |
839 | |
840 | $(RE_DLL): $(PERLEXE) $(RE).xs |
841 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
842 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
843 | $(MAKE) |
844 | cd ..\..\wince |
845 | |
846 | $(B_DLL): $(PERLEXE) $(B).xs |
847 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
848 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
849 | $(MAKE) |
850 | cd ..\..\wince |
851 | |
852 | $(THREAD_DLL): $(PERLEXE) $(THREAD).xs |
853 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
854 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
855 | $(MAKE) |
856 | cd ..\..\wince |
857 | |
858 | $(ATTRS_DLL): $(PERLEXE) $(ATTRS).xs |
859 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
860 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
861 | $(MAKE) |
862 | cd ..\..\wince |
863 | |
864 | $(POSIX_DLL): $(PERLEXE) $(POSIX).xs |
865 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
866 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
867 | $(MAKE) |
868 | cd ..\..\wince |
869 | |
870 | $(IO_DLL): $(PERLEXE) $(IO).xs |
871 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
872 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
873 | $(MAKE) |
874 | cd ..\..\wince |
875 | |
876 | $(SDBM_FILE_DLL) : $(PERLEXE) $(SDBM_FILE).xs |
877 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
878 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
879 | $(MAKE) |
880 | cd ..\..\wince |
881 | |
882 | $(FCNTL_DLL): $(PERLEXE) $(FCNTL).xs |
883 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
884 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
885 | $(MAKE) |
886 | cd ..\..\wince |
887 | |
888 | $(OPCODE_DLL): $(PERLEXE) $(OPCODE).xs |
889 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
890 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
891 | $(MAKE) |
892 | cd ..\..\wince |
893 | |
894 | $(SOCKET_DLL): $(PERLEXE) $(SOCKET).xs |
895 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
896 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
897 | $(MAKE) |
898 | cd ..\..\wince |
899 | |
900 | $(HOSTNAME_DLL): $(PERLEXE) $(HOSTNAME).xs |
901 | cd $(EXTDIR)\Sys\$(*B) |
e2a02c1e |
902 | $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
903 | $(MAKE) |
904 | cd ..\..\..\wince |
905 | |
906 | $(BYTELOADER_DLL): $(PERLEXE) $(BYTELOADER).xs |
907 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
908 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
909 | $(MAKE) |
910 | cd ..\..\wince |
911 | |
912 | $(ERRNO_PM): $(PERLEXE) $(ERRNO)_pm.PL |
913 | cd $(EXTDIR)\$(*B) |
e2a02c1e |
914 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 |
915 | $(MAKE) |
916 | cd ..\..\wince |
917 | |
476a6acb |
918 | $(PERLEXE_RES): perl.rc perl.ico |
e4451f11 |
919 | rc $(RCDEFS) perl.rc |
920 | |
921 | clean: |
922 | -rm -f $(MACHINE)/dll/* |
923 | -rm -f $(MACHINE)/*.obj |
924 | -rm -f $(MACHINE)/*.exe |
925 | -rm -f $(MACHINE)/*.dll |
926 | -rm -f $(MACHINE)/*.lib |
927 | -rm -f ../config.sh ../lib/Config.pm |
928 | -rm -f config.h perl.res |
929 | |
42165d27 |
930 | !IF "$(MACHINE)" == "wince-sh3-hpc" |
931 | |
e4451f11 |
932 | install_perlexe: $(PERLEXE) |
933 | cedel /speicherkarte2/bin/perl.exe |
18f68570 |
934 | $(CECOPY) pc:../perl.exe ce:$(INSTALL_ROOT)/bin |
e4451f11 |
935 | |
936 | install_perldll: $(PERLDLL) |
937 | cedel /speicherkarte2/bin/perl$(PV).dll |
42165d27 |
938 | $(CECOPY) pc:../perl$(PV).dll ce:/speicherkarte2/bin |
e4451f11 |
939 | |
940 | install_perl: install_perlexe install_perldll |
941 | |
942 | test_perl: |
42165d27 |
943 | $(CECOPY) pc:test.pl ce:/speicherkarte2/bin |
e4451f11 |
944 | ceexec /speicherkarte2/bin/perl.exe /speicherkarte2/bin/test.pl |
e4451f11 |
945 | |
946 | install_lib: ../lib/Config.pm |
18f68570 |
947 | $(CECOPY) pc:../lib/Config.pm ce:$(INSTALL_ROOT)/lib |
42165d27 |
948 | |
949 | !ELSEIF "$(MACHINE)" == "wince-arm-hpc" |
e4451f11 |
950 | |
e4451f11 |
951 | install_perlexe: $(PERLEXE) |
952 | -cedel /speicherkarte/bin/perl.exe |
18f68570 |
953 | $(CECOPY) pc:$(MACHINE)/perl.exe ce:$(INSTALL_ROOT)/bin |
e4451f11 |
954 | |
955 | install_perldll: $(PERLDLL) |
956 | -cedel /speicherkarte/bin/perl$(PV).dll |
18f68570 |
957 | $(CECOPY) pc:$(MACHINE)/perl$(PV).dll ce:$(INSTALL_ROOT)/bin |
e4451f11 |
958 | |
959 | install_perl: install_perlexe install_perldll |
960 | |
961 | test_perl: |
42165d27 |
962 | $(CECOPY) pc:test.pl ce:/speicherkarte/bin |
e4451f11 |
963 | ceexec /speicherkarte/bin/perl.exe /speicherkarte/bin/test.pl |
e4451f11 |
964 | |
965 | install_lib: ../lib/Config.pm |
18f68570 |
966 | $(CECOPY) pc:../lib/Config.pm ce:$(INSTALL_ROOT)/lib |
42165d27 |
967 | |
968 | !ELSEIF "$(MACHINE)" == "wince-mips-hpc" |
e4451f11 |
969 | |
e4451f11 |
970 | install_perlexe: $(PERLEXE) |
42165d27 |
971 | $(CECOPY) pc:../perl.exe ce:$(INSTALL_ROOT)/bin |
e4451f11 |
972 | |
973 | install_perldll: $(PERLDLL) |
42165d27 |
974 | $(CECOPY) pc:../perl$(PV).dll ce:$(INSTALL_ROOT)/bin |
e4451f11 |
975 | |
976 | install_perl: install_perlexe install_perldll |
977 | |
978 | test_perl: |
42165d27 |
979 | $(CECOPY) pc:test.pl ce:/netzwerk/compaq/bin |
980 | ceexec /netzwerk/compaq/bin/perl.exe $(INSTALL_ROOT)/test.pl |
e4451f11 |
981 | |
982 | install_lib: ../lib/Config.pm |
18f68570 |
983 | $(CECOPY) pc:../lib/Config.pm ce:$(INSTALL_ROOT)/lib |
42165d27 |
984 | |
985 | !ELSEIF "$(MACHINE)" == "wince-x86em-pocket" |
e4451f11 |
986 | |
e4451f11 |
987 | install_lib: |
988 | ftpcopy ../lib/Config.pm ftp!ftp@localhost:/perl/lib |
989 | ftpcopy ../lib/Exporter.pm ftp!ftp@localhost:/perl/lib |
990 | ftpcopy ../lib/Exporter/Heavy.pm ftp!ftp@localhost:/perl/lib/Exporter |
991 | |
992 | install_perlexe: $(PERLEXE) |
18f68570 |
993 | $(CECOPY) pc:../perl.exe ce:$(INSTALL_ROOT)/bin |
e4451f11 |
994 | |
995 | install_perldll: $(PERLDLL) |
18f68570 |
996 | $(CECOPY) pc:../perl$(PV).dll ce:$(INSTALL_ROOT)/bin |
e4451f11 |
997 | |
998 | install_perl: install_perlexe install_perldll |
999 | |
1000 | test_perl: |
1001 | echo Not yet |
42165d27 |
1002 | !ENDIF |
e4451f11 |
1003 | |
1004 | |
1005 | XDLLOBJS = \ |
1006 | $(DLLDIR)\av.obj \ |
1007 | $(DLLDIR)\deb.obj \ |
1008 | $(DLLDIR)\doio.obj \ |
1009 | $(DLLDIR)\doop.obj \ |
1010 | $(DLLDIR)\dump.obj \ |
1011 | $(DLLDIR)\globals.obj \ |
1012 | $(DLLDIR)\gv.obj \ |
1013 | $(DLLDIR)\hv.obj \ |
1014 | $(DLLDIR)\locale.obj \ |
1015 | $(DLLDIR)\mg.obj \ |
1016 | $(DLLDIR)\numeric.obj \ |
1017 | $(DLLDIR)\op.obj \ |
1018 | $(DLLDIR)\perl.obj \ |
1019 | $(DLLDIR)\perlapi.obj \ |
1020 | $(DLLDIR)\perlio.obj \ |
1021 | $(DLLDIR)\perly.obj \ |
1022 | $(DLLDIR)\pp.obj \ |
1023 | $(DLLDIR)\pp_ctl.obj \ |
1024 | $(DLLDIR)\pp_hot.obj \ |
1025 | $(DLLDIR)\pp_pack.obj \ |
84d4ea48 |
1026 | $(DLLDIR)\pp_sort.obj \ |
e4451f11 |
1027 | $(DLLDIR)\pp_sys.obj \ |
10bc17b6 |
1028 | $(DLLDIR)\reentr.obj \ |
e4451f11 |
1029 | $(DLLDIR)\regcomp.obj \ |
1030 | $(DLLDIR)\regexec.obj \ |
1031 | $(DLLDIR)\run.obj \ |
1032 | $(DLLDIR)\scope.obj \ |
1033 | $(DLLDIR)\sv.obj \ |
1034 | $(DLLDIR)\taint.obj \ |
1035 | $(DLLDIR)\toke.obj \ |
1036 | $(DLLDIR)\universal.obj \ |
1037 | $(DLLDIR)\utf8.obj \ |
1038 | $(DLLDIR)\util.obj \ |
1039 | $(DLLDIR)\win32thread.obj \ |
1040 | $(DLLDIR)\wince.obj \ |
42165d27 |
1041 | $(DLLDIR)\win32io.obj \ |
e4451f11 |
1042 | $(DLLDIR)\wincesck.obj \ |
1043 | $(DLLDIR)\xsutils.obj \ |
1044 | $(DLLDIR)\perllib.obj \ |
1045 | $(DLLDIR)\DynaLoader.obj |
1046 | |
1047 | {$(SRCDIR)}.c{$(DLLDIR)}.obj: |
1048 | $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $< |
1049 | |
1050 | {$(SRCDIR)/wince}.c{$(DLLDIR)}.obj: |
1051 | $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $< |
1052 | |
47bcb90d |
1053 | perldll.def : $(HPERL) $(CONFIGPM) ..\global.sym ..\pp.sym ..\makedef.pl |
18f68570 |
1054 | $(HPERL) -w ..\makedef.pl PLATFORM=wince $(OPTIMIZE) $(DEFINES) $(BUILDOPT) \ |
1055 | CCTYPE=$(CCTYPE) -DPERL_DLL=$(PERLDLL) > perldll.def |
1056 | |
e4451f11 |
1057 | $(PERLDLL) : $(DLLDIR) perldll.def $(XDLLOBJS) $(PERLDLL_RES) |
1058 | $(LINK32) -dll -def:perldll.def -out:$@ \ |
1059 | $(SUBSYS) $(LDLIBPATH) \ |
1060 | $(LINK_FLAGS) $(LIBFILES) \ |
1061 | $(XDLLOBJS) $(PERLDLL_RES) |
1062 | |
1063 | $(DLLDIR) : |
1064 | if not exist "$(DLLDIR)" mkdir "$(DLLDIR)" |
1065 | |
1066 | $(DLLDIR)\DynaLoader.obj: $(EXTDIR)\DynaLoader\DynaLoader.c |
1067 | $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ \ |
1068 | $(EXTDIR)\DynaLoader\DynaLoader.c |
1069 | |
1070 | XPERLEXEOBJS = \ |
1071 | $(MACHINE)\perlmain.obj |
1072 | |
1073 | $(PERLEXE) : $(PERLDLL) $(CONFIGPM) $(XPERLEXEOBJS) $(PERLEXE_RES) $(STARTOBJS) |
e2a02c1e |
1074 | $(XCOPY) $(MACHINE)\*.lib $(XCOREDIR) |
1075 | $(LINK32) $(SUBSYS) $(LDLIBPATH) \ |
e4451f11 |
1076 | -entry:wWinMainCRTStartup \ |
1077 | -out:$(MACHINE)\perl.exe \ |
1078 | -stack:0x100000 $(LINK_FLAGS) $(STARTOBJS) $(XPERLEXEOBJS) \ |
1079 | $(PERLIMPLIB) $(PERLEXE_RES) $(LIBFILES) |
1080 | |
1081 | $(MACHINE)\perlmain.obj : perlmain.c |
1082 | $(CC) $(CFLAGS_O) -UPERLDLL -Fo$(MACHINE)\ -c perlmain.c |
1083 | |
1084 | iodll: $(IO_DLL) |
1085 | socketdll: $(SOCKET_DLL) |
1086 | dumperdll: $(DUMPER_DLL) |
1087 | |
1088 | dlls: socketdll iodll dumperdll |
1089 | -xmkdir -p $(MACHINE)/lib/auto/IO |
1090 | cp ../lib/auto/IO/IO.bs $(MACHINE)/lib/auto/IO |
1091 | cp ../lib/auto/IO/IO.dll $(MACHINE)/lib/auto/IO |
1092 | -xmkdir $(MACHINE)/lib/auto/Socket |
1093 | cp ../lib/auto/Socket/Socket.bs $(MACHINE)/lib/auto/Socket |
1094 | cp ../lib/auto/Socket/Socket.dll $(MACHINE)/lib/auto/Socket |
1095 | -xmkdir -p $(MACHINE)/lib/auto/Data/Dumper |
1096 | cp ../lib/auto/Data/Dumper/Dumper.bs $(MACHINE)/lib/auto/Data/Dumper |
1097 | cp ../lib/auto/Data/Dumper/Dumper.dll $(MACHINE)/lib/auto/Data/Dumper |
1098 | |
1099 | makedist: all dlls |
1100 | $(COPY) $(CELIBPATH)\celib.dll $(MACHINE) |
1101 | cp perl.txt $(MACHINE) |
1102 | cp registry.bat $(MACHINE) |
1103 | cp ../lib/Config.pm $(MACHINE)/lib |
1104 | cd $(MACHINE) |
1105 | rm -f perl-$(MACHINE).tar.gz |
1106 | sh -c "tar cf perl-$(MACHINE).tar *.exe *.dll *.txt *.bat lib" |
1107 | gzip -9 perl-$(MACHINE).tar |
1108 | mv perl-$(MACHINE).tar.gz h:/freenet/new |
1109 | cd .. |
1110 | |
1111 | !if "$(MACHINE)" == "wince-arm-hpc-wce300" |
1112 | install: all |
18f68570 |
1113 | $(CECOPY) pc:$(MACHINE)/perl.exe ce:$(INSTALL_ROOT)/bin |
1114 | $(CECOPY) pc:$(MACHINE)/perl$(PV).dll ce:$(INSTALL_ROOT)/bin |
e4451f11 |
1115 | install_dlls: dlls |
18f68570 |
1116 | $(CECOPY) pc:../lib/auto/IO/io.dll ce:$(INSTALL_ROOT)/lib/auto/IO/io.dll |
42165d27 |
1117 | !else |
1118 | install: all |
1119 | -cemkdir "$(INSTALL_ROOT)" |
1120 | -cemkdir "$(INSTALL_ROOT)\bin" |
1121 | -cemkdir "$(INSTALL_ROOT)\lib" |
1122 | $(CECOPY) "pc:$(MACHINE)/perl.exe" "ce:$(INSTALL_ROOT)/bin" |
18f68570 |
1123 | $(CECOPY) "pc:$(MACHINE)/perl$(PV).dll" "ce:$(INSTALL_ROOT)/bin" |
e2a02c1e |
1124 | $(CECOPY) "pc:../xlib/$(CROSS_NAME)/Config.pm" "ce:$(INSTALL_ROOT)/lib" |
e4451f11 |
1125 | !endif |
1126 | |
18f68570 |
1127 | perl.ico: |
1128 | $(HPERL) makeico.pl |
e4451f11 |
1129 | |
18f68570 |
1130 | hostminiperl: ..\miniperl.exe |
e4451f11 |
1131 | |
18f68570 |
1132 | ..\miniperl.exe: |
1133 | cd ../win32 |
1134 | set PATH=$(CCHOME)\bin;$(PATH) |
47bcb90d |
1135 | $(MAKE) -f Makefile "CCHOME=$(MSVCDIR)" "CCINCDIR=$(CCHOME)\include" "CCLIBDIR=$(CCHOME)\lib" "INCLUDE=$(CCHOME)\include" "LIB=$(CCHOME)\lib" "LINK_FLAGS=" .\config.h ..\miniperl.exe |
18f68570 |
1136 | cd ../wince |
476a6acb |
1137 | |
47bcb90d |
1138 | host-install: |
1139 | perl -MConfig -MExtUtils::Install -we "install({'../lib/CORE', qq#$$Config{installprefixexp}/xlib/$(CROSS_NAME)/CORE#},1)" |
1140 | perl -MConfig -MExtUtils::Install -we "install({'../xlib/$(CROSS_NAME)', qq#$$Config{installprefixexp}/xlib/$(CROSS_NAME)#},1)" |
1141 | perl -MConfig -MFile::Copy -we "copy qq#./$(MACHINE)/perl$(PV).lib#, qq#$$Config{installprefixexp}/xlib/$(CROSS_NAME)/CORE#" |
1142 | perl -MConfig -MFile::Copy -we "copy qq#../lib/Cross.pm#, qq#$$Config{installprefixexp}/lib#" |
74a9a7e5 |
1143 | perl -MConfig -we "system qq#perl -pi.bak -we \"s{((arch^|priv)libexp)='.*'}{\$$1='# . \ |
1144 | quotemeta($$Config{installprefixexp}) . \ |
1145 | qq#/xlib/$(CROSS_NAME)'}\" $$Config{installprefixexp}/xlib/$(CROSS_NAME)/Config.pm#" |