Commit | Line | Data |
---|---|---|
e4451f11 JH |
1 | # perl makefile for wince |
2 | # | |
ca6c63e1 | 3 | # Time-stamp: <26/10/01 15:10:06 keuchel@keuchelnt> |
e4451f11 JH |
4 | |
5 | SRCDIR = .. | |
6 | PV = 57 | |
e04f449f | 7 | INST_VER = 5.7.3 |
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 VK |
11 | INST_TOP=$(INSTALL_ROOT) |
12 | INST_VER= | |
42165d27 VK |
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 VK |
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 JH |
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 VK |
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 JH |
37 | COPY = copy $(YES) |
38 | XCOPY = xcopy $(YES) /f /r /i /d | |
39 | RCOPY = xcopy $(YES) /f /r /i /e /d | |
42165d27 VK |
40 | |
41 | # cecopy program. Make shure it is in your path, as well as cemkdir, cedel | |
42 | CECOPY = cecopy | |
43 | ||
18f68570 VK |
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 JH |
53 | NOOP = @echo |
54 | # keep this untouched! | |
55 | NULL = | |
56 | ||
42165d27 | 57 | |
e4451f11 JH |
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 JH |
325 | $(MCFLAGS) -D PERL |
326 | ||
e4451f11 JH |
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 JH |
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 JH |
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 VK |
402 | !IF "$(USE_PERLIO)" == "" |
403 | USE_PERLIO = undef | |
404 | !ENDIF | |
405 | ||
e4451f11 JH |
406 | !IF "$(USE_PERLCRT)" == "" |
407 | USE_PERLCRT = undef | |
408 | !ENDIF | |
409 | ||
acfe0abc | 410 | !IF "$(USE_IMP_SYS)$(USE_MULTI)$(USE_5005THREADS)" == "defineundefundef" |
e4451f11 JH |
411 | USE_MULTI = define |
412 | !ENDIF | |
413 | ||
acfe0abc | 414 | !IF "$(USE_ITHREADS)$(USE_MULTI)" == "defineundef" |
e4451f11 JH |
415 | USE_MULTI = define |
416 | USE_5005THREADS = undef | |
417 | !ENDIF | |
418 | ||
acfe0abc | 419 | !IF "$(USE_MULTI)$(USE_5005THREADS)" != "undefundef" |
e4451f11 JH |
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 VK |
427 | !IF "$(USE_PERLIO)" == "define" |
428 | BUILDOPT = $(BUILDOPT) -DUSE_PERLIO | |
429 | !ENDIF | |
430 | ||
47bcb90d VK |
431 | !IF "$(CROSS_NAME)" == "" |
432 | CROSS_NAME = wince | |
433 | !ENDIF | |
434 | ||
e4451f11 JH |
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 JH |
440 | ARCHDIR = ..\lib\$(ARCHNAME) |
441 | COREDIR = ..\lib\CORE | |
e2a02c1e | 442 | XCOREDIR = ..\xlib\$(CROSS_NAME)\CORE |
e4451f11 JH |
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 JH |
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 JH |
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 JH |
527 | MINIMOD = ..\lib\ExtUtils\Miniperl.pm |
528 | ||
529 | MAKE = nmake -nologo | |
530 | ||
531 | CFGSH_TMPL = config.ce | |
532 | CFGH_TMPL = config_H.ce | |
533 | ||
534 | # | |
535 | # filenames given to xsubpp must have forward slashes (since it puts | |
536 | # full pathnames in #line strings) | |
3f2394f2 | 537 | XSUBPP = $(HPERL) -I..\..\lib -MCross=$(CROSS_NAME) ...\$(EXTUTILSDIR)\xsubpp \ |
e4451f11 JH |
538 | -C++ -prototypes |
539 | ||
540 | MICROCORE_SRC = \ | |
541 | ..\av.c \ | |
542 | ..\deb.c \ | |
543 | ..\doio.c \ | |
544 | ..\doop.c \ | |
545 | ..\dump.c \ | |
546 | ..\globals.c \ | |
547 | ..\gv.c \ | |
548 | ..\hv.c \ | |
549 | ..\mg.c \ | |
550 | ..\op.c \ | |
551 | ..\perl.c \ | |
552 | ..\perlapi.c \ | |
553 | ..\perly.c \ | |
554 | ..\pp.c \ | |
555 | ..\pp_ctl.c \ | |
556 | ..\pp_hot.c \ | |
84d4ea48 JH |
557 | ..\pp_pack.c \ |
558 | ..\pp_sort.c \ | |
e4451f11 | 559 | ..\pp_sys.c \ |
10bc17b6 | 560 | ..\reentr.c \ |
e4451f11 JH |
561 | ..\regcomp.c \ |
562 | ..\regexec.c \ | |
563 | ..\run.c \ | |
564 | ..\scope.c \ | |
565 | ..\sv.c \ | |
566 | ..\taint.c \ | |
567 | ..\toke.c \ | |
568 | ..\universal.c \ | |
569 | ..\utf8.c \ | |
570 | ..\util.c \ | |
571 | ..\xsutils.c | |
572 | ||
573 | EXTRACORE_SRC = $(EXTRACORE_SRC) perllib.c | |
574 | ||
575 | !IF "$(PERL_MALLOC)" == "define" | |
576 | EXTRACORE_SRC = $(EXTRACORE_SRC) ..\malloc.c | |
577 | !ENDIF | |
578 | ||
42165d27 | 579 | EXTRACORE_SRC = $(EXTRACORE_SRC) ..\perlio.c .\win32io.c |
e4451f11 JH |
580 | |
581 | WIN32_SRC = \ | |
582 | .\wince.c \ | |
583 | .\wincesck.c \ | |
584 | .\win32thread.c | |
585 | ||
586 | !IF "$(CRYPT_SRC)" != "" | |
587 | WIN32_SRC = $(WIN32_SRC) .\$(CRYPT_SRC) | |
588 | !ENDIF | |
589 | ||
590 | DLL_SRC = $(DYNALOADER).c | |
591 | ||
592 | CORE_NOCFG_H = \ | |
593 | ..\av.h \ | |
594 | ..\cop.h \ | |
595 | ..\cv.h \ | |
596 | ..\dosish.h \ | |
597 | ..\embed.h \ | |
598 | ..\form.h \ | |
599 | ..\gv.h \ | |
600 | ..\handy.h \ | |
601 | ..\hv.h \ | |
602 | ..\iperlsys.h \ | |
603 | ..\mg.h \ | |
604 | ..\nostdio.h \ | |
605 | ..\op.h \ | |
606 | ..\opcode.h \ | |
607 | ..\perl.h \ | |
608 | ..\perlapi.h \ | |
609 | ..\perlsdio.h \ | |
610 | ..\perlsfio.h \ | |
611 | ..\perly.h \ | |
612 | ..\pp.h \ | |
613 | ..\proto.h \ | |
614 | ..\regexp.h \ | |
615 | ..\scope.h \ | |
616 | ..\sv.h \ | |
617 | ..\thread.h \ | |
618 | ..\unixish.h \ | |
619 | ..\utf8.h \ | |
620 | ..\util.h \ | |
621 | ..\warnings.h \ | |
622 | ..\XSUB.h \ | |
623 | ..\EXTERN.h \ | |
624 | ..\perlvars.h \ | |
625 | ..\intrpvar.h \ | |
626 | ..\thrdvar.h \ | |
627 | .\include\dirent.h \ | |
628 | .\include\netdb.h \ | |
629 | .\include\sys\socket.h \ | |
630 | .\win32.h | |
631 | ||
632 | !IF "$(USE_SETARGV)" != "" | |
633 | SETARGV_OBJ = setargv$(o) | |
634 | !ENDIF | |
635 | ||
636 | DYNAMIC_EXT = Socket IO Fcntl Opcode SDBM_File POSIX attrs Thread B re \ | |
637 | Data/Dumper Devel/Peek ByteLoader Devel/DProf File/Glob \ | |
638 | Sys/Hostname | |
639 | ||
640 | STATIC_EXT = DynaLoader | |
641 | NONXS_EXT = Errno | |
642 | ||
643 | DYNALOADER = $(EXTDIR)\DynaLoader\DynaLoader | |
644 | SOCKET = $(EXTDIR)\Socket\Socket | |
645 | IO = $(EXTDIR)\IO\IO | |
646 | DUMPER = $(EXTDIR)\Data\Dumper\Dumper | |
647 | # | |
648 | FCNTL = $(EXTDIR)\Fcntl\Fcntl | |
649 | OPCODE = $(EXTDIR)\Opcode\Opcode | |
650 | SDBM_FILE = $(EXTDIR)\SDBM_File\SDBM_File | |
651 | POSIX = $(EXTDIR)\POSIX\POSIX | |
652 | ATTRS = $(EXTDIR)\attrs\attrs | |
653 | THREAD = $(EXTDIR)\Thread\Thread | |
654 | B = $(EXTDIR)\B\B | |
655 | RE = $(EXTDIR)\re\re | |
656 | ERRNO = $(EXTDIR)\Errno\Errno | |
657 | PEEK = $(EXTDIR)\Devel\Peek\Peek | |
658 | BYTELOADER = $(EXTDIR)\ByteLoader\ByteLoader | |
659 | DPROF = $(EXTDIR)\Devel\DProf\DProf | |
660 | GLOB = $(EXTDIR)\File\Glob\Glob | |
661 | HOSTNAME = $(EXTDIR)\Sys\Hostname\Hostname | |
662 | SOCKET_DLL = $(AUTODIR)\Socket\Socket.dll | |
663 | FCNTL_DLL = $(AUTODIR)\Fcntl\Fcntl.dll | |
664 | OPCODE_DLL = $(AUTODIR)\Opcode\Opcode.dll | |
665 | SDBM_FILE_DLL = $(AUTODIR)\SDBM_File\SDBM_File.dll | |
666 | IO_DLL = $(AUTODIR)\IO\IO.dll | |
667 | POSIX_DLL = $(AUTODIR)\POSIX\POSIX.dll | |
668 | ATTRS_DLL = $(AUTODIR)\attrs\attrs.dll | |
669 | THREAD_DLL = $(AUTODIR)\Thread\Thread.dll | |
670 | B_DLL = $(AUTODIR)\B\B.dll | |
671 | DUMPER_DLL = $(AUTODIR)\Data\Dumper\Dumper.dll | |
672 | PEEK_DLL = $(AUTODIR)\Devel\Peek\Peek.dll | |
673 | RE_DLL = $(AUTODIR)\re\re.dll | |
674 | BYTELOADER_DLL = $(AUTODIR)\ByteLoader\ByteLoader.dll | |
675 | DPROF_DLL = $(AUTODIR)\Devel\DProf\DProf.dll | |
676 | GLOB_DLL = $(AUTODIR)\File\Glob\Glob.dll | |
677 | HOSTNAME_DLL = $(AUTODIR)\Sys\Hostname\Hostname.dll | |
678 | ||
679 | ERRNO_PM = $(LIBDIR)\Errno.pm | |
680 | ||
681 | EXTENSION_C = \ | |
682 | $(SOCKET).c \ | |
683 | $(FCNTL).c \ | |
684 | $(OPCODE).c \ | |
685 | $(SDBM_FILE).c \ | |
686 | $(IO).c \ | |
687 | $(POSIX).c \ | |
688 | $(ATTRS).c \ | |
689 | $(THREAD).c \ | |
690 | $(RE).c \ | |
691 | $(DUMPER).c \ | |
692 | $(PEEK).c \ | |
693 | $(B).c \ | |
694 | $(BYTELOADER).c \ | |
695 | $(DPROF).c \ | |
696 | $(GLOB).c \ | |
697 | $(HOSTNAME).c | |
698 | ||
699 | EXTENSION_DLL = \ | |
700 | $(SOCKET_DLL) \ | |
701 | $(FCNTL_DLL) \ | |
702 | $(OPCODE_DLL) \ | |
703 | $(SDBM_FILE_DLL)\ | |
704 | $(IO_DLL) \ | |
705 | $(POSIX_DLL) \ | |
706 | $(ATTRS_DLL) \ | |
707 | $(DUMPER_DLL) \ | |
708 | $(PEEK_DLL) \ | |
709 | $(B_DLL) \ | |
710 | $(RE_DLL) \ | |
711 | $(THREAD_DLL) \ | |
712 | $(BYTELOADER_DLL) \ | |
713 | $(DPROF_DLL) \ | |
714 | $(GLOB_DLL) \ | |
715 | $(HOSTNAME_DLL) | |
716 | ||
717 | EXTENSION_PM = \ | |
718 | $(ERRNO_PM) | |
719 | ||
720 | POD2HTML = $(PODDIR)\pod2html | |
721 | POD2MAN = $(PODDIR)\pod2man | |
722 | POD2LATEX = $(PODDIR)\pod2latex | |
723 | POD2TEXT = $(PODDIR)\pod2text | |
724 | ||
725 | CFG_VARS = \ | |
726 | "INST_DRV=$(INST_DRV)" \ | |
727 | "INST_TOP=$(INST_TOP)" \ | |
728 | "INST_VER=$(INST_VER)" \ | |
729 | "INST_ARCH=$(INST_ARCH)" \ | |
730 | "archname=$(ARCHNAME)" \ | |
731 | "cc=$(CC)" \ | |
732 | "ccflags=$(OPTIMIZE) $(DEFINES) $(BUILDOPT)" \ | |
733 | "cf_by=Rainer Keuchel" \ | |
734 | "cf_email=coyxc@rainer-keuchel.de" \ | |
735 | "d_crypt=$(D_CRYPT)" \ | |
736 | "d_mymalloc=$(PERL_MALLOC)" \ | |
737 | "libs=$(LIBFILES)" \ | |
738 | "incpath=$(CCINCDIR)" \ | |
739 | "libperl=$(PERLIMPLIB_EXP)" \ | |
740 | "libpth=$(LIBPATH)" \ | |
741 | "libc=$(LIBC)" \ | |
742 | "make=nmake" \ | |
743 | "static_ext=$(STATIC_EXT)" \ | |
744 | "dynamic_ext=$(DYNAMIC_EXT)" \ | |
745 | "nonxs_ext=$(NONXS_EXT)" \ | |
746 | "use5005threads=$(USE_5005THREADS)" \ | |
747 | "useithreads=$(USE_ITHREADS)" \ | |
748 | "usethreads=$(USE_5005THREADS)" \ | |
749 | "usemultiplicity=$(USE_MULTI)" \ | |
18f68570 | 750 | "useperlio=$(USE_PERLIO)" \ |
e4451f11 JH |
751 | "LINK_FLAGS=$(LDLIBPATH) $(LINK_FLAGS) $(SUBSYS)" \ |
752 | "optimize=$(OPTIMIZE)" | |
753 | ||
754 | # | |
755 | # Top targets | |
756 | # | |
757 | ||
18f68570 | 758 | all: hostminiperl $(MINIMOD) $(CONFIGPM) $(PERLEXE) |
e4451f11 JH |
759 | |
760 | $(DYNALOADER)$(o) : $(DYNALOADER).c $(CORE_H) $(EXTDIR)\DynaLoader\dlutils.c | |
761 | ||
e2a02c1e | 762 | $(CONFIGPM): .\config.h ..\config.sh ..\minimod.pl |
3f2394f2 | 763 | cd .. && $(HPERL) configpm --cross=$(CROSS_NAME) --no-glossary |
e2a02c1e VK |
764 | -mkdir $(XCOREDIR) |
765 | $(XCOPY) ..\*.h $(XCOREDIR)\*.* | |
766 | $(XCOPY) *.h $(XCOREDIR)\*.* | |
e4451f11 | 767 | $(XCOPY) ..\ext\re\re.pm $(LIBDIR)\*.* |
e2a02c1e VK |
768 | $(RCOPY) include $(XCOREDIR)\*.* |
769 | $(HPERL) -I..\lib -MCross=$(CROSS_NAME) config_h.PL "INST_VER=$(INST_VER)" "CORE_DIR=$(XCOREDIR)" | |
e4451f11 | 770 | |
e2a02c1e VK |
771 | .\config.h: |
772 | -del /f config.h | |
773 | copy config_H.ce config.h | |
774 | ||
775 | ..\config.sh: config.ce config_sh.PL | |
18f68570 | 776 | $(HPERL) -I..\lib config_sh.PL $(CFG_VARS) config.ce > ..\config.sh |
e4451f11 JH |
777 | |
778 | $(MINIMOD) : ..\minimod.pl | |
18f68570 | 779 | cd .. && $(HPERL) minimod.pl > lib\ExtUtils\Miniperl.pm |
e4451f11 JH |
780 | |
781 | perlmain.c : runperl.c | |
782 | $(COPY) runperl.c perlmain.c | |
783 | ||
784 | $(DYNALOADER).c: $(EXTDIR)\DynaLoader\dl_win32.xs $(CONFIGPM) | |
785 | if not exist $(AUTODIR) mkdir $(AUTODIR) | |
786 | cd $(EXTDIR)\$(*B) | |
3f2394f2 VK |
787 | $(HPERL) -I..\..\lib -MCross=$(CROSS_NAME) $(*B)_pm.PL |
788 | $(HPERL) -I..\..\lib -MCross=$(CROSS_NAME) XSLoader_pm.PL | |
e4451f11 JH |
789 | cd ..\..\wince |
790 | $(XCOPY) $(EXTDIR)\$(*B)\$(*B).pm $(LIBDIR)\$(NULL) | |
791 | $(XCOPY) $(EXTDIR)\$(*B)\XSLoader.pm $(LIBDIR)\$(NULL) | |
792 | cd $(EXTDIR)\$(*B) | |
793 | $(XSUBPP) dl_win32.xs > $(*B).c | |
794 | cd ..\..\wince | |
795 | ||
796 | $(EXTDIR)\DynaLoader\dl_win32.xs: dl_win32.xs | |
797 | $(COPY) dl_win32.xs $(EXTDIR)\DynaLoader\dl_win32.xs | |
798 | ||
799 | $(DUMPER_DLL): $(PERLEXE) $(DUMPER).xs | |
800 | cd $(EXTDIR)\Data\$(*B) | |
e2a02c1e | 801 | $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
802 | $(MAKE) |
803 | cd ..\..\..\wince | |
804 | ||
805 | $(DPROF_DLL): $(PERLEXE) $(DPROF).xs | |
806 | cd $(EXTDIR)\Devel\$(*B) | |
e2a02c1e | 807 | $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
808 | $(MAKE) |
809 | cd ..\..\..\wince | |
810 | ||
811 | $(GLOB_DLL): $(PERLEXE) $(GLOB).xs | |
812 | cd $(EXTDIR)\File\$(*B) | |
e2a02c1e | 813 | $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
814 | $(MAKE) |
815 | cd ..\..\..\wince | |
816 | ||
817 | $(PEEK_DLL): $(PERLEXE) $(PEEK).xs | |
818 | cd $(EXTDIR)\Devel\$(*B) | |
e2a02c1e | 819 | $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
820 | $(MAKE) |
821 | cd ..\..\..\wince | |
822 | ||
823 | $(RE_DLL): $(PERLEXE) $(RE).xs | |
824 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 825 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
826 | $(MAKE) |
827 | cd ..\..\wince | |
828 | ||
829 | $(B_DLL): $(PERLEXE) $(B).xs | |
830 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 831 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
832 | $(MAKE) |
833 | cd ..\..\wince | |
834 | ||
835 | $(THREAD_DLL): $(PERLEXE) $(THREAD).xs | |
836 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 837 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
838 | $(MAKE) |
839 | cd ..\..\wince | |
840 | ||
841 | $(ATTRS_DLL): $(PERLEXE) $(ATTRS).xs | |
842 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 843 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
844 | $(MAKE) |
845 | cd ..\..\wince | |
846 | ||
847 | $(POSIX_DLL): $(PERLEXE) $(POSIX).xs | |
848 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 849 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
850 | $(MAKE) |
851 | cd ..\..\wince | |
852 | ||
853 | $(IO_DLL): $(PERLEXE) $(IO).xs | |
854 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 855 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
856 | $(MAKE) |
857 | cd ..\..\wince | |
858 | ||
859 | $(SDBM_FILE_DLL) : $(PERLEXE) $(SDBM_FILE).xs | |
860 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 861 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
862 | $(MAKE) |
863 | cd ..\..\wince | |
864 | ||
865 | $(FCNTL_DLL): $(PERLEXE) $(FCNTL).xs | |
866 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 867 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
868 | $(MAKE) |
869 | cd ..\..\wince | |
870 | ||
871 | $(OPCODE_DLL): $(PERLEXE) $(OPCODE).xs | |
872 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 873 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
874 | $(MAKE) |
875 | cd ..\..\wince | |
876 | ||
877 | $(SOCKET_DLL): $(PERLEXE) $(SOCKET).xs | |
878 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 879 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
880 | $(MAKE) |
881 | cd ..\..\wince | |
882 | ||
883 | $(HOSTNAME_DLL): $(PERLEXE) $(HOSTNAME).xs | |
884 | cd $(EXTDIR)\Sys\$(*B) | |
e2a02c1e | 885 | $(HPERL) -I..\..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
886 | $(MAKE) |
887 | cd ..\..\..\wince | |
888 | ||
889 | $(BYTELOADER_DLL): $(PERLEXE) $(BYTELOADER).xs | |
890 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 891 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
892 | $(MAKE) |
893 | cd ..\..\wince | |
894 | ||
895 | $(ERRNO_PM): $(PERLEXE) $(ERRNO)_pm.PL | |
896 | cd $(EXTDIR)\$(*B) | |
e2a02c1e | 897 | $(HPERL) -I..\..\lib -MCross Makefile.PL PERL_CORE=1 INSTALLDIRS=perl |
e4451f11 JH |
898 | $(MAKE) |
899 | cd ..\..\wince | |
900 | ||
476a6acb | 901 | $(PERLEXE_RES): perl.rc perl.ico |
e4451f11 JH |
902 | rc $(RCDEFS) perl.rc |
903 | ||
904 | clean: | |
905 | -rm -f $(MACHINE)/dll/* | |
906 | -rm -f $(MACHINE)/*.obj | |
907 | -rm -f $(MACHINE)/*.exe | |
908 | -rm -f $(MACHINE)/*.dll | |
909 | -rm -f $(MACHINE)/*.lib | |
910 | -rm -f ../config.sh ../lib/Config.pm | |
911 | -rm -f config.h perl.res | |
912 | ||
42165d27 VK |
913 | !IF "$(MACHINE)" == "wince-sh3-hpc" |
914 | ||
e4451f11 JH |
915 | install_perlexe: $(PERLEXE) |
916 | cedel /speicherkarte2/bin/perl.exe | |
18f68570 | 917 | $(CECOPY) pc:../perl.exe ce:$(INSTALL_ROOT)/bin |
e4451f11 JH |
918 | |
919 | install_perldll: $(PERLDLL) | |
920 | cedel /speicherkarte2/bin/perl$(PV).dll | |
42165d27 | 921 | $(CECOPY) pc:../perl$(PV).dll ce:/speicherkarte2/bin |
e4451f11 JH |
922 | |
923 | install_perl: install_perlexe install_perldll | |
924 | ||
925 | test_perl: | |
42165d27 | 926 | $(CECOPY) pc:test.pl ce:/speicherkarte2/bin |
e4451f11 | 927 | ceexec /speicherkarte2/bin/perl.exe /speicherkarte2/bin/test.pl |
e4451f11 JH |
928 | |
929 | install_lib: ../lib/Config.pm | |
18f68570 | 930 | $(CECOPY) pc:../lib/Config.pm ce:$(INSTALL_ROOT)/lib |
42165d27 VK |
931 | |
932 | !ELSEIF "$(MACHINE)" == "wince-arm-hpc" | |
e4451f11 | 933 | |
e4451f11 JH |
934 | install_perlexe: $(PERLEXE) |
935 | -cedel /speicherkarte/bin/perl.exe | |
18f68570 | 936 | $(CECOPY) pc:$(MACHINE)/perl.exe ce:$(INSTALL_ROOT)/bin |
e4451f11 JH |
937 | |
938 | install_perldll: $(PERLDLL) | |
939 | -cedel /speicherkarte/bin/perl$(PV).dll | |
18f68570 | 940 | $(CECOPY) pc:$(MACHINE)/perl$(PV).dll ce:$(INSTALL_ROOT)/bin |
e4451f11 JH |
941 | |
942 | install_perl: install_perlexe install_perldll | |
943 | ||
944 | test_perl: | |
42165d27 | 945 | $(CECOPY) pc:test.pl ce:/speicherkarte/bin |
e4451f11 | 946 | ceexec /speicherkarte/bin/perl.exe /speicherkarte/bin/test.pl |
e4451f11 JH |
947 | |
948 | install_lib: ../lib/Config.pm | |
18f68570 | 949 | $(CECOPY) pc:../lib/Config.pm ce:$(INSTALL_ROOT)/lib |
42165d27 VK |
950 | |
951 | !ELSEIF "$(MACHINE)" == "wince-mips-hpc" | |
e4451f11 | 952 | |
e4451f11 | 953 | install_perlexe: $(PERLEXE) |
42165d27 | 954 | $(CECOPY) pc:../perl.exe ce:$(INSTALL_ROOT)/bin |
e4451f11 JH |
955 | |
956 | install_perldll: $(PERLDLL) | |
42165d27 | 957 | $(CECOPY) pc:../perl$(PV).dll ce:$(INSTALL_ROOT)/bin |
e4451f11 JH |
958 | |
959 | install_perl: install_perlexe install_perldll | |
960 | ||
961 | test_perl: | |
42165d27 VK |
962 | $(CECOPY) pc:test.pl ce:/netzwerk/compaq/bin |
963 | ceexec /netzwerk/compaq/bin/perl.exe $(INSTALL_ROOT)/test.pl | |
e4451f11 JH |
964 | |
965 | install_lib: ../lib/Config.pm | |
18f68570 | 966 | $(CECOPY) pc:../lib/Config.pm ce:$(INSTALL_ROOT)/lib |
42165d27 VK |
967 | |
968 | !ELSEIF "$(MACHINE)" == "wince-x86em-pocket" | |
e4451f11 | 969 | |
e4451f11 JH |
970 | install_lib: |
971 | ftpcopy ../lib/Config.pm ftp!ftp@localhost:/perl/lib | |
972 | ftpcopy ../lib/Exporter.pm ftp!ftp@localhost:/perl/lib | |
973 | ftpcopy ../lib/Exporter/Heavy.pm ftp!ftp@localhost:/perl/lib/Exporter | |
974 | ||
975 | install_perlexe: $(PERLEXE) | |
18f68570 | 976 | $(CECOPY) pc:../perl.exe ce:$(INSTALL_ROOT)/bin |
e4451f11 JH |
977 | |
978 | install_perldll: $(PERLDLL) | |
18f68570 | 979 | $(CECOPY) pc:../perl$(PV).dll ce:$(INSTALL_ROOT)/bin |
e4451f11 JH |
980 | |
981 | install_perl: install_perlexe install_perldll | |
982 | ||
983 | test_perl: | |
984 | echo Not yet | |
42165d27 | 985 | !ENDIF |
e4451f11 JH |
986 | |
987 | ||
988 | XDLLOBJS = \ | |
989 | $(DLLDIR)\av.obj \ | |
990 | $(DLLDIR)\deb.obj \ | |
991 | $(DLLDIR)\doio.obj \ | |
992 | $(DLLDIR)\doop.obj \ | |
993 | $(DLLDIR)\dump.obj \ | |
994 | $(DLLDIR)\globals.obj \ | |
995 | $(DLLDIR)\gv.obj \ | |
996 | $(DLLDIR)\hv.obj \ | |
997 | $(DLLDIR)\locale.obj \ | |
998 | $(DLLDIR)\mg.obj \ | |
999 | $(DLLDIR)\numeric.obj \ | |
1000 | $(DLLDIR)\op.obj \ | |
1001 | $(DLLDIR)\perl.obj \ | |
1002 | $(DLLDIR)\perlapi.obj \ | |
1003 | $(DLLDIR)\perlio.obj \ | |
1004 | $(DLLDIR)\perly.obj \ | |
1005 | $(DLLDIR)\pp.obj \ | |
1006 | $(DLLDIR)\pp_ctl.obj \ | |
1007 | $(DLLDIR)\pp_hot.obj \ | |
1008 | $(DLLDIR)\pp_pack.obj \ | |
84d4ea48 | 1009 | $(DLLDIR)\pp_sort.obj \ |
e4451f11 | 1010 | $(DLLDIR)\pp_sys.obj \ |
10bc17b6 | 1011 | $(DLLDIR)\reentr.obj \ |
e4451f11 JH |
1012 | $(DLLDIR)\regcomp.obj \ |
1013 | $(DLLDIR)\regexec.obj \ | |
1014 | $(DLLDIR)\run.obj \ | |
1015 | $(DLLDIR)\scope.obj \ | |
1016 | $(DLLDIR)\sv.obj \ | |
1017 | $(DLLDIR)\taint.obj \ | |
1018 | $(DLLDIR)\toke.obj \ | |
1019 | $(DLLDIR)\universal.obj \ | |
1020 | $(DLLDIR)\utf8.obj \ | |
1021 | $(DLLDIR)\util.obj \ | |
1022 | $(DLLDIR)\win32thread.obj \ | |
1023 | $(DLLDIR)\wince.obj \ | |
42165d27 | 1024 | $(DLLDIR)\win32io.obj \ |
e4451f11 JH |
1025 | $(DLLDIR)\wincesck.obj \ |
1026 | $(DLLDIR)\xsutils.obj \ | |
1027 | $(DLLDIR)\perllib.obj \ | |
1028 | $(DLLDIR)\DynaLoader.obj | |
1029 | ||
1030 | {$(SRCDIR)}.c{$(DLLDIR)}.obj: | |
1031 | $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $< | |
1032 | ||
1033 | {$(SRCDIR)/wince}.c{$(DLLDIR)}.obj: | |
1034 | $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ $< | |
1035 | ||
47bcb90d | 1036 | perldll.def : $(HPERL) $(CONFIGPM) ..\global.sym ..\pp.sym ..\makedef.pl |
18f68570 VK |
1037 | $(HPERL) -w ..\makedef.pl PLATFORM=wince $(OPTIMIZE) $(DEFINES) $(BUILDOPT) \ |
1038 | CCTYPE=$(CCTYPE) -DPERL_DLL=$(PERLDLL) > perldll.def | |
1039 | ||
e4451f11 JH |
1040 | $(PERLDLL) : $(DLLDIR) perldll.def $(XDLLOBJS) $(PERLDLL_RES) |
1041 | $(LINK32) -dll -def:perldll.def -out:$@ \ | |
1042 | $(SUBSYS) $(LDLIBPATH) \ | |
1043 | $(LINK_FLAGS) $(LIBFILES) \ | |
1044 | $(XDLLOBJS) $(PERLDLL_RES) | |
1045 | ||
1046 | $(DLLDIR) : | |
1047 | if not exist "$(DLLDIR)" mkdir "$(DLLDIR)" | |
1048 | ||
1049 | $(DLLDIR)\DynaLoader.obj: $(EXTDIR)\DynaLoader\DynaLoader.c | |
1050 | $(CC) -c $(CFLAGS) -DPERL_EXTERNAL_GLOB -Fo$(DLLDIR)\ \ | |
1051 | $(EXTDIR)\DynaLoader\DynaLoader.c | |
1052 | ||
1053 | XPERLEXEOBJS = \ | |
1054 | $(MACHINE)\perlmain.obj | |
1055 | ||
1056 | $(PERLEXE) : $(PERLDLL) $(CONFIGPM) $(XPERLEXEOBJS) $(PERLEXE_RES) $(STARTOBJS) | |
e2a02c1e VK |
1057 | $(XCOPY) $(MACHINE)\*.lib $(XCOREDIR) |
1058 | $(LINK32) $(SUBSYS) $(LDLIBPATH) \ | |
e4451f11 JH |
1059 | -entry:wWinMainCRTStartup \ |
1060 | -out:$(MACHINE)\perl.exe \ | |
1061 | -stack:0x100000 $(LINK_FLAGS) $(STARTOBJS) $(XPERLEXEOBJS) \ | |
1062 | $(PERLIMPLIB) $(PERLEXE_RES) $(LIBFILES) | |
1063 | ||
1064 | $(MACHINE)\perlmain.obj : perlmain.c | |
1065 | $(CC) $(CFLAGS_O) -UPERLDLL -Fo$(MACHINE)\ -c perlmain.c | |
1066 | ||
1067 | iodll: $(IO_DLL) | |
1068 | socketdll: $(SOCKET_DLL) | |
1069 | dumperdll: $(DUMPER_DLL) | |
1070 | ||
1071 | dlls: socketdll iodll dumperdll | |
1072 | -xmkdir -p $(MACHINE)/lib/auto/IO | |
1073 | cp ../lib/auto/IO/IO.bs $(MACHINE)/lib/auto/IO | |
1074 | cp ../lib/auto/IO/IO.dll $(MACHINE)/lib/auto/IO | |
1075 | -xmkdir $(MACHINE)/lib/auto/Socket | |
1076 | cp ../lib/auto/Socket/Socket.bs $(MACHINE)/lib/auto/Socket | |
1077 | cp ../lib/auto/Socket/Socket.dll $(MACHINE)/lib/auto/Socket | |
1078 | -xmkdir -p $(MACHINE)/lib/auto/Data/Dumper | |
1079 | cp ../lib/auto/Data/Dumper/Dumper.bs $(MACHINE)/lib/auto/Data/Dumper | |
1080 | cp ../lib/auto/Data/Dumper/Dumper.dll $(MACHINE)/lib/auto/Data/Dumper | |
1081 | ||
1082 | makedist: all dlls | |
1083 | $(COPY) $(CELIBPATH)\celib.dll $(MACHINE) | |
1084 | cp perl.txt $(MACHINE) | |
1085 | cp registry.bat $(MACHINE) | |
1086 | cp ../lib/Config.pm $(MACHINE)/lib | |
1087 | cd $(MACHINE) | |
1088 | rm -f perl-$(MACHINE).tar.gz | |
1089 | sh -c "tar cf perl-$(MACHINE).tar *.exe *.dll *.txt *.bat lib" | |
1090 | gzip -9 perl-$(MACHINE).tar | |
1091 | mv perl-$(MACHINE).tar.gz h:/freenet/new | |
1092 | cd .. | |
1093 | ||
1094 | !if "$(MACHINE)" == "wince-arm-hpc-wce300" | |
1095 | install: all | |
18f68570 VK |
1096 | $(CECOPY) pc:$(MACHINE)/perl.exe ce:$(INSTALL_ROOT)/bin |
1097 | $(CECOPY) pc:$(MACHINE)/perl$(PV).dll ce:$(INSTALL_ROOT)/bin | |
e4451f11 | 1098 | install_dlls: dlls |
18f68570 | 1099 | $(CECOPY) pc:../lib/auto/IO/io.dll ce:$(INSTALL_ROOT)/lib/auto/IO/io.dll |
42165d27 VK |
1100 | !else |
1101 | install: all | |
1102 | -cemkdir "$(INSTALL_ROOT)" | |
1103 | -cemkdir "$(INSTALL_ROOT)\bin" | |
1104 | -cemkdir "$(INSTALL_ROOT)\lib" | |
1105 | $(CECOPY) "pc:$(MACHINE)/perl.exe" "ce:$(INSTALL_ROOT)/bin" | |
18f68570 | 1106 | $(CECOPY) "pc:$(MACHINE)/perl$(PV).dll" "ce:$(INSTALL_ROOT)/bin" |
e2a02c1e | 1107 | $(CECOPY) "pc:../xlib/$(CROSS_NAME)/Config.pm" "ce:$(INSTALL_ROOT)/lib" |
e4451f11 JH |
1108 | !endif |
1109 | ||
18f68570 VK |
1110 | perl.ico: |
1111 | $(HPERL) makeico.pl | |
e4451f11 | 1112 | |
18f68570 | 1113 | hostminiperl: ..\miniperl.exe |
e4451f11 | 1114 | |
18f68570 VK |
1115 | ..\miniperl.exe: |
1116 | cd ../win32 | |
1117 | set PATH=$(CCHOME)\bin;$(PATH) | |
47bcb90d | 1118 | $(MAKE) -f Makefile "CCHOME=$(MSVCDIR)" "CCINCDIR=$(CCHOME)\include" "CCLIBDIR=$(CCHOME)\lib" "INCLUDE=$(CCHOME)\include" "LIB=$(CCHOME)\lib" "LINK_FLAGS=" .\config.h ..\miniperl.exe |
18f68570 | 1119 | cd ../wince |
476a6acb | 1120 | |
47bcb90d VK |
1121 | host-install: |
1122 | perl -MConfig -MExtUtils::Install -we "install({'../lib/CORE', qq#$$Config{installprefixexp}/xlib/$(CROSS_NAME)/CORE#},1)" | |
1123 | perl -MConfig -MExtUtils::Install -we "install({'../xlib/$(CROSS_NAME)', qq#$$Config{installprefixexp}/xlib/$(CROSS_NAME)#},1)" | |
1124 | perl -MConfig -MFile::Copy -we "copy qq#./$(MACHINE)/perl$(PV).lib#, qq#$$Config{installprefixexp}/xlib/$(CROSS_NAME)/CORE#" | |
1125 | perl -MConfig -MFile::Copy -we "copy qq#../lib/Cross.pm#, qq#$$Config{installprefixexp}/lib#" |