This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Integrate mainline 5.05_61
[perl5.git] / vms / descrip_mms.template
CommitLineData
97abc6ad
HM
1!GROK!THIS!
2# Descrip.MMS for perl5 on VMS
cc391245 3# Last revised 18-Oct-1998 by Charles Bailey bailey@newman.upenn.edu
97abc6ad
HM
4#
5#: This file uses MMS syntax, and can be processed using DEC's MMS product,
6#: or the free MMK clone (available by ftp at ftp.spc.edu). If you want to
7#: a Unix-style MAKE tool, run this file through mms2make.pl, which should
8#: be found in the same directory as this file. (There should be a pre-made
9#: copy of Makefile for VAXC in this directory to allow you to build perl.)
10#:
11#: Lines beginning with "#:" will be removed by mms2make.pl when converting
12#: this file to MAKE syntax.
97abc6ad
HM
13#
14# tidy -- purge files generated by executing this file
15# clean -- remove all intermediate (e.g. object files, C files generated
16# during build) files generated by executing this file,
17# but leave `installable' files (images, library) intact
18# realclean -- remove all files generated by executing this file
19# cleansrc -- `realclean' + purge *.c,*.h,descrip.mms
20# crtl.opt -- compiler-specific linker options file (made automatically)
21#
22
23#### Start of system configuration section. ####
24
25~DECC~
26~GNUC~
27~ARCH-TYPE~ = 1
28~THREAD~
29~SOCKET~
429a5e67
DS
30~MALLOC~
31~CC~
32~MT~
97abc6ad
HM
33
34#: >>>>> Architecture-specific options <<<<<
35.ifdef AXE
36# File type to use for object files
37O = .abj
38# File type to use for object libraries
39OLB = .alb
40# File type to use for executable images
41E = .axe
42.else
43# File type to use for object files
44O = .obj
45# File type to use for object libraries
46OLB = .olb
47# File type to use for executable images
48E = .exe
49.endif
50
51.ifdef __AXP__
97abc6ad
HM
52ARCH = VMS_AXP
53OBJVAL = $(O)
54.else
55ARCH = VMS_VAX
56OBJVAL = $(MMS$TARGET_NAME)$(O)
57.endif
58
85988417 59PERL_VERSION = ~PV~
97abc6ad 60
429a5e67 61.ifdef MALLOC
b0d5070b
CB
62MALLOC_O = malloc$(O)
63MALLOC_C = malloc$(C)
429a5e67
DS
64.endif
65
97abc6ad
HM
66.ifdef DECC_SOCKETS
67SOCKET=1
68.endif
69
70.ifdef SOCKETSHR_SOCKETS
71SOCKET=1
72.endif
73
74# If they defined SOCKET but didn't choose a stack, default to SOCKETSHR
75.ifdef DECC_SOCKETS
76.else
77.ifdef SOCKETSHR_SOCKETS
78.else
79.ifdef SOCKET
80SOCKETSHR_SOCKETS=1
81.endif
82.endif
83.endif
84
85
86ARCHDIR = [.lib.$(ARCH).$(PERL_VERSION)]
87ARCHCORE = [.lib.$(ARCH).$(PERL_VERSION).CORE]
88ARCHAUTO = [.lib.$(ARCH).$(PERL_VERSION).auto]
89
90
91#: Backwards compatibility
92.ifdef DECC_PIPES_BROKEN
93PIPES_BROKEN = 1
94.endif
95
96.ifdef __DEBUG__
97NOX2P = 1
98.endif
99
100#: >>>>>Compiler-specific options <<<<<
101.ifdef GNUC
102.first
103 @ If F$TrnLnm("Sys").eqs."" Then Define/NoLog SYS GNU_CC_Include:[VMS]
104CC = gcc
105PIPES_BROKEN = 1
106# -fno-builtin avoids bug in gcc up to version 2.6.2 which can destroy
107# data when memcpy() is called on large (>64 kB) blocks of memory
108# (fixed in gcc 2.6.3)
109XTRACCFLAGS = /Obj=$(MMS$TARGET_NAME)$(O)/NoCase_Hack/Optimize=2
110DBGSPECFLAGS =
429a5e67 111XTRADEF =
97abc6ad
HM
112XTRAOBJS =
113LIBS1 = GNU_CC:[000000]GCCLIB.OLB/Library
114LIBS2 = Sys$Share:VAXCRTL/Shareable
115POSIX =
116.else
117XTRAOBJS =
118LIBS1 = $(XTRAOBJS)
119DBGSPECFLAGS = /Show=All
120.ifdef decc
121# Some versions of DECCRTL on AXP have a bug in chdir() which causes the change
122# to persist after the image exits, even when this was not requested, iff
123# SYSNAM is enabled. This is fixed in CSC Patch # AXPACRT04_061, but turning
124# off SYSNAM for the MM[SK] subprocess doesn't hurt anything, so we do it
125# just in case.
126.first
127 @ Set Process/Privilege=(NoSYSNAM)
128 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("DECC$System_Include").nes."" Then Define/NoLog SYS DECC$System_Include
129.ifdef __AXP__
130 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("DECC$System_Include").eqs."" Then Define/NoLog SYS Sys$Library
131.else
132 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("DECC$System_Include").eqs."" Then Define/NoLog SYS DECC$Library_Include
133.endif
134
97abc6ad
HM
135XTRACCFLAGS = /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=$(OBJVAL)
136XTRADEF =
137POSIX = POSIX
138.else # VAXC
139.first
140 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("VAXC$Include").eqs."" Then Define/NoLog SYS Sys$Library
141 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("VAXC$Include").nes."" Then Define/NoLog SYS VAXC$Include
142
143XTRACCFLAGS = /Include=[]/Object=$(O)
144XTRADEF =
145LIBS2 = Sys$Share:VAXCRTL/Shareable
146POSIX =
147.endif
148.endif
149
150
151#: >>>>> Configuration options <<<<<
152#: __DEBUG__: builds images with full VMS debugger support
153.ifdef __DEBUG__
154DBGCCFLAGS = /List/Debug/NoOpt$(DBGSPECFLAGS)
155DBGLINKFLAGS = /Trace/Debug/Map/Full/Cross
156DBG = DBG
157.else
158DBGCCFLAGS = /NoList
159DBGLINKFLAGS = /NoTrace/NoMap
160DBG =
161.endif
162
163#: SOCKET: build in support for TCP/IP sockets
164#: By default, used SOCKETSHR library; see ReadMe.VMS
165#: for information on changing socket support
166.ifdef SOCKET
167.ifdef DECC_SOCKETS
429a5e67 168SOCKDEF =
97abc6ad
HM
169SOCKLIB =
170.else
429a5e67 171SOCKDEF =
97abc6ad
HM
172SOCKLIB = SocketShr/Share
173.endif
174# N.B. the targets for $(SOCKC) and $(SOCKH) assume that the permanent
175# copies live in [.vms], and the `clean' target will delete copies of
176# these files in the current default directory.
177SOCKC = sockadapt.c
178SOCKH = sockadapt.h
b0d5070b
CB
179SOCKARCH = $(ARCHCORE)$(SOCKH)
180SOCKOBJ = sockadapt$(O)
97abc6ad
HM
181SOCKPM = [.lib]Socket.pm
182.else
183SOCKDEF =
184SOCKLIB =
185SOCKC =
186SOCKH =
b0d5070b 187SOCKARCH =
97abc6ad
HM
188SOCKOBJ =
189SOCKPM =
190.endif
191
97abc6ad
HM
192.ifdef THREADED
193THREADDEF =
194THREAD = THREAD
195.endif
196
197.ifdef OLDTHREADED
429a5e67 198THREADDEF =
97abc6ad 199THREAD = THREAD
9ef4b0a6 200THRLIBS1 = sys$share:cma$lib_shr/share|sys$share:cma$rtl/share
97abc6ad 201.ifdef __AXP__
9ef4b0a6 202THRLIBS2 = sys$share:cma$open_lib_shr/share|sys$share:cma$open_rtl/share
97abc6ad
HM
203.endif
204.endif
205
206.ifdef FAKETHREADED
429a5e67 207THREADDEF =
97abc6ad
HM
208THREADH = fakethr.h
209acth = $(ARCHCORE)fakethr.h
210THREAD = THREAD
211.else
212THREADH =
213acth =
214.endif
215
216# C preprocessor manifest "DEBUGGING" ==> perl -D, not the VMS debugger
429a5e67 217CFLAGS = $(XTRACCFLAGS)$(DBGCCFLAGS)
3a385817
GS
218# Flags for a core compile
219X2PCFLAGS = $(CFLAGS)/Define=PERL_FOR_X2P
220# Flags for an x2p compile
221CORECFLAGS = $(CFLAGS)/Define=PERL_CORE
97abc6ad
HM
222LINKFLAGS = $(DBGLINKFLAGS)
223
224MAKE = $(MMS)
225MAKEFILE = Descrip.MMS # this file
226NOOP = continue
227
228# Macros to invoke a copy of miniperl during the build. Targets which
229# are built using these macros should depend on $(MINIPERL_EXE)
230MINIPERL_EXE = Sys$Disk:[]miniperl$(E)
231MINIPERL = MCR $(MINIPERL_EXE) "-I[.lib]"
232XSUBPP = $(MINIPERL) [.lib.extutils]xsubpp -noprototypes
233# Macro to invoke a preexisting copy of Perl. This is used to regenerate
234# some header files when rebuilding Perl, but premade versions are provided
235# in the distribution, so it's OK if this doesn't work; it's here to make
236# life easier for those who modify Perl and rebuild it.
237INSTPERL = perl
238
cc391245
CB
239# Space-separated list of "dynamic" extensions which should be built for
240# run-time dynamic loading.
cc077a9f 241dynamic_ext = $extensions
cc391245 242
97abc6ad
HM
243# Space-separated list of "static" extensions to build into perlshr (case counts).
244MYEXT = DynaLoader
245# object files for these extensions; the trailing comma is required if
246# there are any object files specified
247# These must be built separately, or you must add rules below to build them
248myextobj = [.ext.dynaloader]dl_vms$(O),
249#: We include the Socket extension by default if we're building with socket
250#: support, since it's small and not really worth bothering to keep track
251#: of separately.
252.ifdef SOCKET
253EXT = $(MYEXT) Socket
254extobj = $(myextobj) [.ext.socket]socket$(O),
255.else
256EXT = $(MYEXT)
257extobj = $(myextobj)
258.endif
259
429a5e67
DS
260.ifdef LIBS2
261.else
262LIBS2=
263.endif
97abc6ad 264
9ef4b0a6
BH
265.ifdef THRLIBS1
266.else
267THRLIBS1=
268.endif
269
270.ifdef THRLIBS2
271.else
272THRLIBS2=
273.endif
274
275FULLLIBS2 = $(LIBS2)|$(THRLIBS1)|$(THRLIBS2)
276
97abc6ad
HM
277#### End of system configuration section. ####
278
b0d5070b
CB
279c0 = $(MALLOC_C) $(SOCKC) av.c deb.c doio.c doop.c dump.c globals.c gv.c
280c1 = hv.c mg.c miniperlmain.c op.c perl.c perlio.c perly.c pp.c pp_ctl.c
281c2 = pp_hot.c pp_sys.c regcomp.c regexec.c run.c scope.c sockadapt.c sv.c
282c3 = taint.c toke.c universal.c utf8.c util.c vms.c
283c = $(c0) $(c1) $(c2) $(c3)
284
285obj0 = $(MALLOC_O) $(SOCKOBJ) av$(O) deb$(O) doio$(O) doop$(O) dump$(O)
286obj1 = globals$(O) gv$(O) hv$(O) mg$(O) miniperlmain$(O) op$(O) perl$(O)
287obj2 = perlio$(O) perly$(O) pp$(O) pp_ctl$(O) pp_hot$(O) pp_sys$(O)
288obj3 = regcomp$(O) regexec$(O) run$(O) scope$(O) sockadapt$(O) sv$(O)
289obj4 = taint$(O) toke$(O) universal$(O) utf8$(O) util$(O) vms$(O)
290obj = $(obj0) $(obj1) $(obj2) $(obj3) $(obj4)
291
292h0 = $(SOCKH) av.h cc_runtime.h config.h cop.h cv.h embed.h embedvar.h
293h1 = extern.h $(THREADH) form.h gv.h handy.h hv.h intern.h intrpvar.h
294h2 = iperlsys.h keywords.h mg.h nostdio.h op.h opcode.h patchlevel.h perl.h
295h3 = perlio.h perlsdio.h perlvars.h perly.h pp.h pp_proto.h proto.h
296h4 = regcomp.h regexp.h regnodes.h scope.h sv.h thrdvar.h
424a8fe9 297h5 = thread.h utf8.h util.h vmsish.h warnings.h xsub.h opnames.h
b0d5070b
CB
298h = $(h0) $(h1) $(h2) $(h3) $(h4) $(h5)
299
300ac0 = $(SOCKARCH) $(ARCHCORE)av.h $(ARCHCORE)cc_runtime.h
301ac1 = $(ARCHCORE)config.h $(ARCHCORE)cop.h $(ARCHCORE)cv.h $(ARCHCORE)embed.h
302ac2 = $(ARCHCORE)embedvar.h $(ARCHCORE)extern.h $(acth)
303ac3 = $(ARCHCORE)form.h $(ARCHCORE)gv.h $(ARCHCORE)handy.h $(ARCHCORE)hv.h
304ac4 = $(ARCHCORE)intern.h $(ARCHCORE)intrpvar.h $(ARCHCORE)iperlsys.h
305ac5 = $(ARCHCORE)keywords.h $(ARCHCORE)mg.h $(ARCHCORE)nostdio.h
306ac6 = $(ARCHCORE)op.h $(ARCHCORE)opcode.h $(ARCHCORE)patchlevel.h
307ac7 = $(ARCHCORE)perl.h $(ARCHCORE)perlio.h $(ARCHCORE)perlsdio.h
308ac8 = $(ARCHCORE)perlvars.h $(ARCHCORE)perly.h $(ARCHCORE)pp.h
309ac9 = $(ARCHCORE)pp_proto.h $(ARCHCORE)proto.h $(ARCHCORE)regcomp.h
310ac10 = $(ARCHCORE)regexp.h $(ARCHCORE)regnodes.h $(ARCHCORE)scope.h
424a8fe9 311ac11 = $(ARCHCORE)sv.h $(ARCHCORE)thrdvar.h $(ARCHCORE)opnames.h
b0d5070b 312ac12 = $(ARCHCORE)thread.h $(ARCHCORE)utf8.h $(ARCHCORE)util.h
424a8fe9 313ac13 = $(ARCHCORE)vmsish.h $(ARCHCORE)warnings.h $(ARCHCORE)xsub.h
b0d5070b 314ac = $(ac0) $(ac1) $(ac2) $(ac3) $(ac4) $(ac5) $(ac6) $(ac7) $(ac8) $(ac9) $(ac10) $(ac11) $(ac12) $(ac13)
c05f8f3d 315
97abc6ad
HM
316CRTL = []crtl.opt
317CRTLOPTS =,$(CRTL)/Options
318
319.SUFFIXES
320
321.ifdef LINK_ONLY
322.else
323.SUFFIXES $(O) .c .xs
324
325.xs.c :
326 $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
327
328
329.c$(O) :
330 $(CC) $(CFLAGS) $(MMS$SOURCE)
331
332.xs$(O) :
333 $(XSUBPP) $(MMS$SOURCE) >$(MMS$SOURCE_NAME).c
334 $(CC) $(CFLAGS) $(MMS$SOURCE_NAME).c
335.endif
336
337# Modules which must be installed before we can build extensions
338LIBPREREQ = $(ARCHDIR)Config.pm [.lib]DynaLoader.pm [.lib]vmsish.pm [.lib.VMS]Filespec.pm [.lib.ExtUtils]XSSymSet.pm
339
95667ae4 340utils1 = [.lib.pod]perldoc.com [.lib.ExtUtils]Miniperl.pm [.utils]c2ph.com [.utils]h2ph.com [.utils]h2xs.com [.lib]perlbug.com [.lib]perlcc.com [.utils]dprofpp.com
97abc6ad
HM
341utils2 = [.lib]splain.com [.utils]pl2pm.com
342
343.ifdef NOX2P
344all : base extras archcorefiles preplibrary perlpods
345 @ $(NOOP)
346.else
347all : base extras x2p archcorefiles preplibrary perlpods
348 @ $(NOOP)
349.endif
350base : miniperl perl
351 @ $(NOOP)
cc391245 352extras : dynext libmods utils podxform
97abc6ad
HM
353 @ $(NOOP)
354libmods : $(LIBPREREQ)
355 @ $(NOOP)
356utils : $(utils1) $(utils2)
357 @ $(NOOP)
358podxform : [.lib.pod]pod2text.com [.lib.pod]pod2html.com [.lib.pod]pod2latex.com [.lib.pod]pod2man.com
359 @ $(NOOP)
360x2p : [.x2p]a2p$(E) [.x2p]s2p.com [.x2p]find2perl.com
361 @ $(NOOP)
362
363pod1 = [.lib.pod]perl.pod [.lib.pod]perlapio.pod [.lib.pod]perlbook.pod [.lib.pod]perlbot.pod [.lib.pod]perlcall.pod
364pod2 = [.lib.pod]perldata.pod [.lib.pod]perldebug.pod [.lib.pod]perldelta.pod [.lib.pod]perldiag.pod [.lib.pod]perldsc.pod
365pod3 = [.lib.pod]perlembed.pod [.lib.pod]perlform.pod [.lib.pod]perlfunc.pod [.lib.pod]perlguts.pod
366pod4 = [.lib.pod]perlipc.pod [.lib.pod]perllocale.pod [.lib.pod]perllol.pod [.lib.pod]perlmod.pod [.lib.pod]perlobj.pod
a1e2a320
GS
367pod5 = [.lib.pod]perlop.pod [.lib.pod]perlpod.pod [.lib.pod]perlre.pod [.lib.pod]perlref.pod [.lib.pod]perlreftut.pod
368pod6 = [.lib.pod]perlrun.pod [.lib.pod]perlsec.pod [.lib.pod]perlstyle.pod [.lib.pod]perlsub.pod [.lib.pod]perlsyn.pod
97abc6ad
HM
369pod7 = [.lib.pod]perltie.pod [.lib.pod]perltoc.pod [.lib.pod]perltoot.pod
370pod8 = [.lib.pod]perltrap.pod [.lib.pod]perlvar.pod [.lib.pod]perlxs.pod [.lib.pod]perlxstut.pod
371
372perlpods : $(pod1) $(pod2) $(pod3) $(pod4) $(pod5) $(pod6) $(pod7) $(pod8) [.lib.pod]perlvms.pod
373 @ $(NOOP)
374
c05f8f3d 375archcorefiles : $(ac1) $(ac2) $(ac3) $(ac4) $(ac5) $(ac6) $(ac7) $(ac8) $(ac9) $(ac10) $(acs) $(acth) $(ARCHAUTO)time.stamp
97abc6ad
HM
376 @ $(NOOP)
377
378miniperl : $(DBG)miniperl$(E)
379 @ Continue
380$(MINIPERL_EXE) : miniperlmain$(O), $(DBG)libperl$(OLB) $(CRTL)
381 Link $(LINKFLAGS)/NoDebug/Trace/NoMap/NoFull/NoCross/Exe=$(MMS$TARGET) miniperlmain$(O), $(DBG)libperl$(OLB)/Library/Include=globals $(CRTLOPTS)
382$(DBG)miniperl$(E) : miniperlmain$(O), $(DBG)libperl$(OLB) $(CRTL)
383 Link $(LINKFLAGS)/Trace/Exe=$(MMS$TARGET) miniperlmain$(O),$(DBG)libperl$(OLB)/Library/Include=globals $(CRTLOPTS)
384
385$(DBG)libperl$(OLB) : $(obj)
386 @ If F$Search("$(MMS$TARGET)").eqs."" Then Library/Object/Create $(MMS$TARGET)
387 Library/Object/Replace $(MMS$TARGET) $(obj1)
388 Library/Object/Replace $(MMS$TARGET) $(obj2)
389 Library/Object/Replace $(MMS$TARGET) $(obj3)
390
391perlmain.c : miniperlmain.c $(MINIPERL_EXE) [.vms]writemain.pl
392 $(MINIPERL) [.VMS]Writemain.pl "$(EXT)"
393
97abc6ad
HM
394.ifdef __DEBUG__
395# Link an extra perl that doesn't invoke the debugger
1f052492 396perl : $(DBG)perl$(E)
97abc6ad 397 Link $(LINKFLAGS)/NoDebug/Trace/NoMap/NoCross/NoFull/Exe=N$(DBG)perl$(E) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option $(CRTLOPTS)
97abc6ad 398.else
1f052492 399perl : $(DBG)perl$(E)
97abc6ad
HM
400 @ Continue
401.endif
402
403$(DBG)perl$(E) : perlmain$(O), $(DBG)perlshr$(E), $(MINIPERL_EXE)
404 @ @[.vms]genopt "PerlShr.Opt/Write" "|" "''F$Environment("Default")'$(DBG)PerlShr$(E)/Share"
429a5e67
DS
405.ifdef MT
406 Link $(LINKFLAGS)/Exe=$(MMS$TARGET) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option $(CRTLOPTS)/THREAD=(MULTI,UPCALL)
407.else
97abc6ad 408 Link $(LINKFLAGS)/Exe=$(MMS$TARGET) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option $(CRTLOPTS)
429a5e67 409.endif
97abc6ad 410
97abc6ad
HM
411$(DBG)perlshr$(E) : $(DBG)libperl$(OLB) $(extobj) $(DBG)perlshr_xtras.ts
412 Link $(LINKFLAGS)/Share=$(MMS$TARGET) $(extobj) []$(DBG)perlshr_bld.opt/Option, perlshr_attr.opt/Option
413
414# The following files are built in one go by gen_shrfls.pl:
415# perlshr_attr.opt, $(DBG)perlshr_bld.opt - VAX and AXP
416# perlshr_gbl*.mar, perlshr_gbl*$(O) - VAX only
417# The song and dance with gen_shrfls.opt accomodates DCL's 255 character
418# line length limit.
419.ifdef PIPES_BROKEN
420# This is a backup target used only with older versions of the DECCRTL which
421# can't deal with pipes properly. See ReadMe.VMS for details.
422$(DBG)perlshr_xtras.ts : perl.h config.h vmsish.h proto.h [.vms]gen_shrfls.pl $(MINIPERL_EXE) $(MAKEFILE) $(CRTL)
423 $(CC) $(CFLAGS)/NoObject/NoList/PreProcess=perl.i perl.h
424 @ $(MINIPERL) -e "print join('|',@ARGV),'|';" "~~NOCC~~perl.i~~$(CC)$(CFLAGS)" >gen_shrfls.opt
425 @ $(MINIPERL) -e "print join('|',@ARGV);" "$(O)" "$(DBG)" "$(OLB)" "$(EXT)" "$(CRTL)" >>gen_shrfls.opt
426 $(MINIPERL) [.vms]gen_shrfls.pl -f gen_shrfls.opt
427 @ Delete/NoLog/NoConfirm perl.i;, gen_shrfls.opt;
428 @ If F$Search("$(DBG)perlshr_xtras.ts").nes."" Then Delete/NoLog/NoConfirm $(DBG)perlshr_xtras.ts;*
429 @ Copy _NLA0: $(DBG)perlshr_xtras.ts
430.else
431$(DBG)perlshr_xtras.ts : perl.h config.h vmsish.h proto.h [.vms]gen_shrfls.pl $(MINIPERL_EXE) $(MAKEFILE) $(CRTL)
432 @ $(MINIPERL) -e "print join('|',@ARGV),'|';" "$(CC)$(CFLAGS)" >gen_shrfls.opt
433 @ $(MINIPERL) -e "print join('|',@ARGV);" "$(O)" "$(DBG)" "$(OLB)" "$(EXT)" "$(CRTL)" >>gen_shrfls.opt
434 $(MINIPERL) [.vms]gen_shrfls.pl -f gen_shrfls.opt
435 @ Delete/NoLog/NoConfirm gen_shrfls.opt;
436 @ If F$Search("$(DBG)perlshr_xtras.ts").nes."" Then Delete/NoLog/NoConfirm $(DBG)perlshr_xtras.ts;*
437 @ Copy _NLA0: $(DBG)perlshr_xtras.ts
438.endif
439
440$(ARCHDIR)config.pm : [.lib]config.pm
441 Create/Directory $(ARCHDIR)
442 Copy $(MMS$SOURCE) $(MMS$TARGET)
443
cc391245 444[.lib]config.pm : config.h $(MINIPERL_EXE)
97abc6ad
HM
445 $(MINIPERL) ConfigPM.
446
429a5e67 447[.ext.dynaloader]dl_vms.c : [.ext.dynaloader]dl_vms.xs $(ARCHDIR)Config.pm [.lib.ExtUtils]XSSymSet.pm $(MINIPERL_EXE)
97abc6ad
HM
448 $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
449
450[.ext.dynaloader]dl_vms$(O) : [.ext.dynaloader]dl_vms.c
451 $(CC) $(CFLAGS) /Include=([],[.ext.dynaloader])/Object=$(MMS$TARGET) $(MMS$SOURCE)
452
453[.lib]DynaLoader.pm : [.ext.dynaloader]dynaloader.pm
454 Copy/Log/NoConfirm [.ext.dynaloader]dynaloader.pm [.lib]DynaLoader.pm
455 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
456 @ $(MINIPERL) -e "use AutoSplit; autosplit_lib_modules(@ARGV)" [.lib]DynaLoader.pm
457
429a5e67 458[.ext.dynaloader]dynaloader.pm : [.ext.dynaloader]dynaloader_pm.pl
97abc6ad
HM
459 $(MINIPERL) $(MMS$SOURCE)
460 @ Rename/Log dynaloader.pm [.ext.dynaloader]
461
cc391245
CB
462dynext : $(LIBPREREQ) $(DBG)perlshr$(E)
463 @build_ext "$(dynamic_ext)" "$(MINIPERL_EXE)" "$(MMS)"
97abc6ad
HM
464
465[.lib]vmsish.pm : [.vms.ext]vmsish.pm
466 Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
467
468[.lib.VMS]Filespec.pm : [.vms.ext]Filespec.pm
469 @ If F$Search("[.lib]VMS.Dir").eqs."" Then Create/Directory [.lib.VMS]
470 Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
471
472[.lib.ExtUtils]XSSymSet.pm : [.vms.ext]XSSymSet.pm
473 @ If F$Search("[.lib]VMS.Dir").eqs."" Then Create/Directory [.lib.VMS]
474 Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
475
476[.lib.pod]perldoc.com : [.utils]perldoc.PL $(ARCHDIR)Config.pm
477 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
478 $(MINIPERL) $(MMS$SOURCE)
479 Copy/Log [.utils]perldoc.com $(MMS$TARGET)
480
481[.lib.ExtUtils]Miniperl.pm : Minimod.PL miniperlmain.c $(ARCHDIR)Config.pm
482 $(MINIPERL) $(MMS$SOURCE) >$(MMS$TARGET)
483
484[.utils]c2ph.com : [.utils]c2ph.PL $(ARCHDIR)Config.pm
485 $(MINIPERL) $(MMS$SOURCE)
486
95667ae4
GS
487[.utils]dprofpp.com : [.utils]dprofpp.PL $(ARCHDIR)Config.pm
488 $(MINIPERL) $(MMS$SOURCE)
489
97abc6ad
HM
490[.utils]h2ph.com : [.utils]h2ph.PL $(ARCHDIR)Config.pm
491 $(MINIPERL) $(MMS$SOURCE)
492
493[.utils]h2xs.com : [.utils]h2xs.PL $(ARCHDIR)Config.pm
494 $(MINIPERL) $(MMS$SOURCE)
495
496[.lib]perlbug.com : [.utils]perlbug.PL $(ARCHDIR)Config.pm
497 $(MINIPERL) $(MMS$SOURCE)
498 Copy/Log [.utils]perlbug.com $(MMS$TARGET)
499
be46aa5a
HM
500[.lib]perlcc.com : [.utils]perlcc.PL $(ARCHDIR)Config.pm
501 $(MINIPERL) $(MMS$SOURCE)
502 Copy/Log [.utils]perlcc.com $(MMS$TARGET)
503
97abc6ad
HM
504[.utils]pl2pm.com : [.utils]pl2pm.PL $(ARCHDIR)Config.pm
505 $(MINIPERL) $(MMS$SOURCE)
506
507[.lib]splain.com : [.utils]splain.PL $(ARCHDIR)Config.pm
508 $(MINIPERL) $(MMS$SOURCE)
509 Copy/Log [.utils]splain.com $(MMS$TARGET)
510
511[.x2p]find2perl.com : [.x2p]find2perl.PL $(ARCHDIR)Config.pm
512 $(MINIPERL) $(MMS$SOURCE)
513
514[.x2p]s2p.com : [.x2p]s2p.PL $(ARCHDIR)Config.pm
515 $(MINIPERL) $(MMS$SOURCE)
516
517# Rename catches problem with some DECC versions in which object file is
518# placed in current default dir, not same one as source file.
519[.x2p]$(DBG)a2p$(E) : [.x2p]a2p$(O), [.x2p]hash$(O), [.x2p]str$(O), [.x2p]util$(O), [.x2p]walk$(O)
520 @ If F$Search("hash$(O)").nes."" Then Rename/NoLog hash$(O),str$(O),util$(O),walk$(O) [.x2p]
521 Link $(LINKFLAGS) /Exe=$(MMS$TARGET) $(MMS$SOURCE_LIST) $(CRTLOPTS)
522
523# Accomodate buggy cpp in some version of DECC, which chokes on illegal
524# filespec "y.tab.c", and broken gcc cpp, which doesn't start #include ""
525# search in same dir as source file
b0d5070b 526[.x2p]a2p$(O) : [.x2p]a2p.c [.x2p]a2py.c [.x2p]INTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h config.h handy.h vmsish.h $(SOCKH) $(MINIPERL_EXE)
97abc6ad 527 $(MINIPERL) -pe "s/^#line\s+(\d+)\s+\Q""y.tab.c""/#line $1 ""y_tab.c""/;" $(MMS$SOURCE) >$(MMS$TARGET_NAME)_vms.c
3a385817 528 $(CC) $(X2PCFLAGS) /Object=$(MMS$TARGET)/Include=([.x2p],[]) $(MMS$TARGET_NAME)_vms.c
97abc6ad
HM
529 Delete/Log/NoConfirm $(MMS$TARGET_NAME)_vms.c;
530
531# gcc cpp broken -- doesn't look in directory of source file for #include ""
532.ifdef GNUC
533[.x2p]hash$(O) : [.x2p]hash.c
3a385817 534 $(CC) $(X2PCFLAGS) /Include=[.x2p] $(MMS$SOURCE)
97abc6ad
HM
535
536[.x2p]str$(O) : [.x2p]str.c
3a385817 537 $(CC) $(X2PCFLAGS) /Include=[.x2p] $(MMS$SOURCE)
97abc6ad
HM
538
539[.x2p]util$(O) : [.x2p]util.c
3a385817 540 $(CC) $(X2PCFLAGS) /Include=[.x2p] $(MMS$SOURCE)
97abc6ad
HM
541
542[.x2p]walk$(O) : [.x2p]walk.c
3a385817 543 $(CC) $(X2PCFLAGS) /Include=[.x2p] $(MMS$SOURCE)
97abc6ad
HM
544.endif
545
546[.lib.pod]pod2html.com : [.pod]pod2html.PL $(ARCHDIR)Config.pm
547 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
548 $(MINIPERL) $(MMS$SOURCE)
549 Copy/Log [.pod]pod2html.com $(MMS$TARGET)
550
551[.lib.pod]pod2latex.com : [.pod]pod2latex.PL $(ARCHDIR)Config.pm
552 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
553 $(MINIPERL) $(MMS$SOURCE)
554 Copy/Log [.pod]pod2latex.com $(MMS$TARGET)
555
556[.lib.pod]pod2man.com : [.pod]pod2man.PL $(ARCHDIR)Config.pm
557 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
558 $(MINIPERL) $(MMS$SOURCE)
559 Copy/Log [.pod]pod2man.com $(MMS$TARGET)
560
561[.lib.pod]pod2text.com : [.pod]pod2text.PL $(ARCHDIR)Config.pm
562 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
563 $(MINIPERL) $(MMS$SOURCE)
564 Copy/Log [.pod]pod2text.com $(MMS$TARGET)
565
566preplibrary : $(MINIPERL_EXE) $(LIBPREREQ) $(SOCKPM)
567 @ Write Sys$Output "Autosplitting Perl library . . ."
568 @ Create/Directory [.lib.auto]
569 @ $(MINIPERL) -e "use AutoSplit; autosplit_lib_modules(@ARGV)" [.lib]*.pm [.lib.*]*.pm
570
571[.lib.pod]perl.pod : [.pod]perl.pod
572 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
573 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
574
575[.lib.pod]perlapio.pod : [.pod]perlapio.pod
576 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
577 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
578
579[.lib.pod]perlbook.pod : [.pod]perlbook.pod
580 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
581 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
582
583[.lib.pod]perlbot.pod : [.pod]perlbot.pod
584 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
585 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
586
587[.lib.pod]perlcall.pod : [.pod]perlcall.pod
588 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
589 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
590
591[.lib.pod]perldata.pod : [.pod]perldata.pod
592 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
593 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
594
595[.lib.pod]perldebug.pod : [.pod]perldebug.pod
596 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
597 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
598
599[.lib.pod]perldelta.pod : [.pod]perldelta.pod
600 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
601 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
602
603[.lib.pod]perldiag.pod : [.pod]perldiag.pod
604 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
605 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
606
607[.lib.pod]perldsc.pod : [.pod]perldsc.pod
608 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
609 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
610
611[.lib.pod]perlembed.pod : [.pod]perlembed.pod
612 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
613 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
614
615[.lib.pod]perlform.pod : [.pod]perlform.pod
616 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
617 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
618
619[.lib.pod]perlfunc.pod : [.pod]perlfunc.pod
620 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
621 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
622
623[.lib.pod]perlguts.pod : [.pod]perlguts.pod
624 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
625 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
626
627[.lib.pod]perllocale.pod : [.pod]perllocale.pod
628 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
629 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
630
631[.lib.pod]perlipc.pod : [.pod]perlipc.pod
632 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
633 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
634
635[.lib.pod]perllol.pod : [.pod]perllol.pod
636 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
637 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
638
639[.lib.pod]perlmod.pod : [.pod]perlmod.pod
640 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
641 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
642
643[.lib.pod]perlobj.pod : [.pod]perlobj.pod
644 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
645 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
646
647[.lib.pod]perlop.pod : [.pod]perlop.pod
648 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
649 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
650
651[.lib.pod]perlpod.pod : [.pod]perlpod.pod
652 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
653 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
654
655[.lib.pod]perlre.pod : [.pod]perlre.pod
656 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
657 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
658
659[.lib.pod]perlref.pod : [.pod]perlref.pod
660 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
661 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
662
663[.lib.pod]perlrun.pod : [.pod]perlrun.pod
664 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
665 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
666
667[.lib.pod]perlsec.pod : [.pod]perlsec.pod
668 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
669 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
670
671[.lib.pod]perlstyle.pod : [.pod]perlstyle.pod
672 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
673 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
674
675[.lib.pod]perlsub.pod : [.pod]perlsub.pod
676 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
677 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
678
679[.lib.pod]perlsyn.pod : [.pod]perlsyn.pod
680 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
681 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
682
683[.lib.pod]perltie.pod : [.pod]perltie.pod
684 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
685 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
686
687[.lib.pod]perltoc.pod : [.pod]perltoc.pod
688 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
689 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
690
691[.lib.pod]perltoot.pod : [.pod]perltoot.pod
692 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
693 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
694
3937c24e
HM
695[.lib.pod]perlreftut.pod : [.pod]perlreftut.pod
696 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
697 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
698
97abc6ad
HM
699[.lib.pod]perltrap.pod : [.pod]perltrap.pod
700 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
701 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
702
703[.lib.pod]perlvar.pod : [.pod]perlvar.pod
704 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
705 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
706
707[.lib.pod]perlxs.pod : [.pod]perlxs.pod
708 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
709 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
710
711[.lib.pod]perlxstut.pod : [.pod]perlxstut.pod
712 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
713 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
714
715[.lib.pod]perlvms.pod : [.vms]perlvms.pod
716 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
717 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
718
719printconfig :
720 @ @[.vms]make_command $(MMS) $(MMSQUALIFIERS) $(MMSTARGETS)
9ef4b0a6 721 @ @[.vms]myconfig "$(CC)" "$(CFLAGS)" "$(LINKFLAGS)" "$(LIBS1)" "$(FULLLIBS2)" "$(SOCKLIB)" "$(EXT)" "$(DBG)"
97abc6ad
HM
722
723.ifdef SOCKET
724
725.ifdef LINK_ONLY
726.else
727[.ext.Socket]Socket$(O) : [.ext.Socket]Socket.c
728 $(CC) $(CFLAGS) /Object=$(MMS$TARGET) $(MMS$SOURCE)
729
730[.ext.Socket]Socket.c : [.ext.Socket]Socket.xs [.lib.ExtUtils]XSSymSet.pm $(MINIPERL_EXE)
731 $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
732.endif # !LINK_ONLY
733
734vmsish.h : $(SOCKH)
735
424a8fe9 736$(SOCKOBJ) : $(SOCKC) EXTERN.h perl.h config.h embed.h perlsdio.h handy.h vmsish.h regexp.h sv.h util.h form.h gv.h cv.h opcode.h opnames.h op.h cop.h av.h hv.h mg.h scope.h perly.h thread.h pp.h proto.h embedvar.h perlvars.h thrdvar.h intrpvar.h perlio.h
97abc6ad
HM
737
738$(SOCKC) : [.vms]$(SOCKC)
739 Copy/Log/NoConfirm [.vms]$(SOCKC) []$(SOCKC)
740
741$(SOCKH) : [.vms]$(SOCKH)
742 Copy/Log/NoConfirm [.vms]$(SOCKH) []$(SOCKH)
743
744[.lib]Socket.pm : [.ext.Socket]Socket.pm
745 Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
746.endif
747
424a8fe9
CB
748# The following files are generated automatically
749# keywords.h: keywords.pl
750# opcode.h: opcode.pl
751# opnames.h: opcode.pl
752# pp_proto.h: opcode.pl
753# pp.sym: opcode.pl
754# embed.h: embed.pl [* needs pp.sym generated by opcode.pl! *]
755# embedvar.h: embed.pl [* needs pp.sym generated by opcode.pl! *]
756# ext/ByteLoader/byterun.h: bytecode.pl
757# ext/ByteLoader/byterun.c: bytecode.pl
758# ext/B/Asmdata.pm: bytecode.pl
759# global.sym: embed.pl
760# regnodes.h: regcomp.pl
761# warnings.h lib/warnings.pm: warnings.pl
97abc6ad
HM
762# The correct versions should be already supplied with the perl kit,
763# in case you don't have perl available.
764# To force them to run, type
765# MMS regen_headers
766regen_headers :
767 $(INSTPERL) keywords.pl
768 $(INSTPERL) opcode.pl
769 $(INSTPERL) embed.pl
cc391245
CB
770 $(INSTPERL) bytecode.pl
771 $(INSTPERL) regcomp.pl
424a8fe9 772 $(INSTPERL) warnings.pl
97abc6ad
HM
773
774# VMS uses modified perly.[ch] with tags for globaldefs if using DEC compiler
775perly.c : [.vms]perly_c.vms
776 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
777perly.h : [.vms]perly_h.vms
778 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
779
97abc6ad
HM
780.ifdef LINK_ONLY
781.else
782perly$(O) : perly.c, perly.h, $(h)
97abc6ad
HM
783.endif
784
785[.t.lib]vmsfspec.t : [.vms.ext]filespec.t
786 Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
787
788[.t.lib]vmsish.t : [.vms.ext]vmsish.t
789 Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
790
791test : all [.t.lib]vmsfspec.t [.t.lib]vmsish.t
3eeba6fb 792 - @[.VMS]Test.Com "$(E)" "$(__DEBUG__)"
97abc6ad 793
3a385817
GS
794# install ought not need a source, but it doesn't work if one's not
795# there. Go figure...
796install : $(MINIPERL_EXE)
97abc6ad
HM
797 $(MINIPERL) installperl
798
799archify : all
800 @ Write Sys$Output "Moving files to architecture-specific locations for $(ARCH)"
801 archroot = "$(ARCHAUTO)" - "]" + "...]"
802 Backup/Log/Verify [.lib.auto...]*.*;/Exclude=(*.al,*.ix) 'archroot'/New_Version
803 Delete/Log/NoConfirm [.lib.auto...]*.*;*/exclude=(*.al,*.ix,*.dir)
804 Delete/Log/NoConfirm [.lib]Config.pm;*
805 Copy/Log/NoConfirm *$(E);,[.x2p]a2p$(E); $(ARCHDIR)
806 Delete/Log/NoConfirm Perl*$(E);*,[.x2p]a2p$(E);*
807 @ Write Sys$Output "Architecture-specific setup completed."
808 @ Write Sys$Output "Before building for another architecture, be sure to"
809 @ Write Sys$Output " 1. $(MMS)$(MMSQUALIFIERS) clean"
810 @ Write Sys$Output " 2. Delete Miniperl$(E)"
811
812# CORE subset for MakeMaker, so we can build Perl without sources
813# Should move to VMS installperl when we get one
b0d5070b
CB
814.ifdef SOCKET
815$(ARCHCORE)$(sockh) : $(sockh)
97abc6ad
HM
816 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
817 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b
CB
818.endif
819$(ARCHCORE)av.h : av.h
97abc6ad
HM
820 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
821 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b 822$(ARCHCORE)cc_runtime.h : cc_runtime.h
97abc6ad
HM
823 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
824 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
825$(ARCHCORE)config.h : config.h
826 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
827 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
828$(ARCHCORE)cop.h : cop.h
829 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
830 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
831$(ARCHCORE)cv.h : cv.h
832 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
833 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
834$(ARCHCORE)embed.h : embed.h
835 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
836 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
837$(ARCHCORE)embedvar.h : embedvar.h
838 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
839 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b
CB
840$(ARCHCORE)extern.h : extern.h
841 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
842 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
843.ifdef FAKETHREADED
844$(ARCHCORE)fakethr.h : fakethr.h
845 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
846 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
847.endif
848$(ARCHCORE)form.h : form.h
849 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
850 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
851$(ARCHCORE)gv.h : gv.h
852 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
853 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
854$(ARCHCORE)handy.h : handy.h
855 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
856 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
857$(ARCHCORE)hv.h : hv.h
858 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
859 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b
CB
860$(ARCHCORE)intern.h : intern.h
861 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
862 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
863$(ARCHCORE)intrpvar.h : intrpvar.h
864 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
865 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b
CB
866$(ARCHCORE)iperlsys.h : iperlsys.h
867 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
868 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
869$(ARCHCORE)keywords.h : keywords.h
870 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
871 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
872$(ARCHCORE)mg.h : mg.h
873 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
874 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b
CB
875$(ARCHCORE)nostdio.h : nostdio.h
876 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
877 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
878$(ARCHCORE)op.h : op.h
879 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
880 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
881$(ARCHCORE)opcode.h : opcode.h
882 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
883 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
424a8fe9
CB
884$(ARCHCORE)opnames.h : opnames.h
885 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
886 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
887$(ARCHCORE)patchlevel.h : patchlevel.h
888 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
889 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
890$(ARCHCORE)perl.h : perl.h
891 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
892 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b 893$(ARCHCORE)perlio.h : perlio.h
3a385817
GS
894 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
895 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
896$(ARCHCORE)perlsdio.h : perlsdio.h
897 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
898 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
899$(ARCHCORE)perlvars.h : perlvars.h
900 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
901 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
902$(ARCHCORE)perly.h : perly.h
903 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
904 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
905$(ARCHCORE)pp.h : pp.h
906 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
907 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
cc391245
CB
908$(ARCHCORE)pp_proto.h : pp_proto.h
909 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
910 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
911$(ARCHCORE)proto.h : proto.h
912 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
913 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
914$(ARCHCORE)regcomp.h : regcomp.h
915 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
916 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
917$(ARCHCORE)regexp.h : regexp.h
918 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
919 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b
CB
920$(ARCHCORE)regnodes.h : regnodes.h
921 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
922 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
923$(ARCHCORE)scope.h : scope.h
924 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
925 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
926$(ARCHCORE)sv.h : sv.h
927 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
928 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
929$(ARCHCORE)thrdvar.h : thrdvar.h
930 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
931 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
932$(ARCHCORE)thread.h : thread.h
933 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
934 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b 935$(ARCHCORE)utf8.h : utf8.h
97abc6ad
HM
936 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
937 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b 938$(ARCHCORE)util.h : util.h
3937c24e
HM
939 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
940 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
941$(ARCHCORE)vmsish.h : vmsish.h
942 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
943 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
424a8fe9 944$(ARCHCORE)warnings.h : warnings.h
cc391245
CB
945 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
946 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
b0d5070b 947$(ARCHCORE)xsub.h : xsub.h
97abc6ad
HM
948 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
949 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
97abc6ad
HM
950$(ARCHCORE)$(DBG)libperl$(OLB) : $(DBG)libperl$(OLB) $(DBG)perlshr_xtras.ts
951 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
952 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
953$(ARCHCORE)perlshr_attr.opt : $(DBG)perlshr_xtras.ts
954 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
955 Copy/Log perlshr_attr.opt $(MMS$TARGET)
956$(ARCHCORE)$(DBG)perlshr_bld.opt : $(DBG)perlshr_xtras.ts
957 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
958 Copy/Log $(DBG)perlshr_bld.opt $(MMS$TARGET)
959$(ARCHAUTO)time.stamp :
960 @ If F$Search("$(ARCHDIR)auto.dir").eqs."" Then Create/Directory $(ARCHAUTO)
961 @ If F$Search("$(MMS$TARGET)").eqs."" Then Copy/NoConfirm _NLA0: $(MMS$TARGET)
962
963.ifdef LINK_ONLY
964.else
965# We need an action line here for broken older versions of MMS which
966# otherwise conclude that they should be compiling [.x2p]utils.c :-(
3a385817
GS
967#util$(O) : util.c
968# $(CC) $(CORECFLAGS) $(MMS$SOURCE)
97abc6ad 969# AUTOMATICALLY GENERATED MAKE DEPENDENCIES--PUT NOTHING BELOW THIS LINE
b0d5070b 970.ifdef SOCKET
424a8fe9 971$(SOCKOBJ) : $(SOCKC) extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 972 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
b0d5070b 973.endif
424a8fe9 974av$(O) : av.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 975 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 976deb$(O) : deb.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 977 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 978doio$(O) : doio.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 979 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 980doop$(O) : doop.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 981 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 982dump$(O) : dump.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h regcomp.h regnodes.h
3a385817 983 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 984globals$(O) : globals.c intern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 985 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 986gv$(O) : gv.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 987 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 988hv$(O) : hv.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 989 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 990mg$(O) : mg.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 991 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 992miniperlmain$(O) : miniperlmain.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 993 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 994op$(O) : op.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 995 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 996perl$(O) : perl.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h intrpvar.h thrdvar.h
3a385817 997 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 998perlio$(O) : perlio.c config.h extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 999 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1000perlmain$(O) : perlmain.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1001 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1002perly$(O) : perly.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1003 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1004pp$(O) : pp.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1005 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1006pp_ctl$(O) : pp_ctl.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1007 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1008pp_hot$(O) : pp_hot.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1009 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1010pp_sys$(O) : pp_sys.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1011 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1012regcomp$(O) : regcomp.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h intern.h regcomp.h regnodes.h
3a385817 1013 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1014regexec$(O) : regexec.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h regcomp.h regnodes.h
3a385817 1015 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1016run$(O) : run.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1017 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1018scope$(O) : scope.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1019 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1020sv$(O) : sv.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1021 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1022taint$(O) : taint.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1023 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1024toke$(O) : toke.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h keywords.h
3a385817 1025 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1026universal$(O) : universal.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h xsub.h
3a385817 1027 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1028utf8$(O) : utf8.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3a385817 1029 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1030util$(O) : util.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h
3937c24e 1031 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
424a8fe9 1032vms$(O) : vms.c extern.h perl.h config.h embed.h handy.h vmsish.h $(SOCKH) iperlsys.h perlsdio.h regexp.h sv.h util.h form.h gv.h cv.h op.h cop.h av.h hv.h mg.h scope.h warnings.h utf8.h perly.h thread.h pp.h proto.h pp_proto.h opcode.h opnames.h embedvar.h intrpvar.h thrdvar.h perlvars.h patchlevel.h xsub.h
3a385817
GS
1033 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1034
b0d5070b 1035[.x2p]hash$(O) : [.x2p]hash.c [.x2p]EXTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h vmsish.h $(SOCKH)
3a385817
GS
1036 $(CC) $(X2PCFLAGS) $(MMS$SOURCE)
1037
b0d5070b 1038[.x2p]str$(O) : [.x2p]str.c [.x2p]EXTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h vmsish.h $(SOCKH)
3a385817
GS
1039 $(CC) $(X2PCFLAGS) $(MMS$SOURCE)
1040
b0d5070b 1041[.x2p]util$(O) : [.x2p]util.c [.x2p]EXTERN.h [.x2p]INTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h vmsish.h $(SOCKH)
3a385817
GS
1042 $(CC) $(X2PCFLAGS) $(MMS$SOURCE)
1043
b0d5070b 1044[.x2p]walk$(O) : [.x2p]walk.c [.x2p]EXTERN.h [.x2p]a2p.h [.x2p]hash.h [.x2p]str.h [.x2p]util.h config.h handy.h vmsish.h $(SOCKH)
3a385817
GS
1045 $(CC) $(X2PCFLAGS) $(MMS$SOURCE)
1046
97abc6ad
HM
1047# End of automatically generated make dependencies
1048.endif # !LINK_ONLY
1049
1050vmsish.h : [.vms]vmsish.h
1051 Copy/Log/NoConfirm [.vms]vmsish.h []vmsish.h
1052
1053vms.c : [.vms]vms.c
1054 Copy/Log/Noconfirm [.vms]vms.c []
1055
1056$(CRTL) : $(MAKEFILE)
9ef4b0a6 1057 @ @[.vms]genopt "$(CRTL)/Write" "|" "$(LIBS1)|$(FULLLIBS2)|$(SOCKLIB)"
97abc6ad
HM
1058
1059
1060cleanlis :
1061 - If F$Search("*.Lis").nes."" Then Delete/NoConfirm/Log *.Lis;*
1062 - If F$Search("*.CPP").nes."" Then Delete/NoConfirm/Log *.CPP;*
1063 - If F$Search("*.Map").nes."" Then Delete/NoConfirm/Log *.Map;*
1064
1065tidy : cleanlis
1066 - If F$Search("[...]*.Opt;-1").nes."" Then Purge/NoConfirm/Log [...]*.Opt
1067 - If F$Search("[...]*$(O);-1").nes."" Then Purge/NoConfirm/Log [...]*$(O)
1068 - If F$Search("[...]*$(E);-1").nes."" Then Purge/NoConfirm/Log [...]*$(E)
1069 - If F$Search("Config.H;-1").nes."" Then Purge/NoConfirm/Log Config.H
1070 - If F$Search("Config.SH;-1").nes."" Then Purge/NoConfirm/Log Config.SH
1071 - If F$Search("perly.c;-1").nes."" Then Purge/NoConfirm/Log perly.c
1072 - If F$Search("perly.h;-1").nes."" Then Purge/NoConfirm/Log perly.h
1073 - If F$Search("VMSish.H;-1").nes."" Then Purge/NoConfirm/Log VMSish.H
1074 - If F$Search("VMS.C;-1") .nes."" Then Purge/NoConfirm/Log VMS.C
1075 - If F$Search("Perlmain.C;-1") .nes."" Then Purge/NoConfirm/Log Perlmain.C
97abc6ad
HM
1076 - If F$Search("Perlshr_Gbl*.Mar;-1") .nes."" Then Purge/NoConfirm/Log Perlshr_Gbl*.Mar
1077 - If F$Search("[.Ext.DynaLoader]DL_VMS$(O);-1").nes."" Then Purge/NoConfirm/Log [.Ext.DynaLoader]DL_VMS$(O)
1078 - If F$Search("[.Ext.DynaLoader]DL_VMS.C;-1").nes."" Then Purge/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C
1079 - If F$Search("[.Ext.Socket]Socket.C;-1").nes."" Then Purge/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C
1080 - If F$Search("[.Ext.Opcode...];-1").nes."" Then Purge/NoConfirm/Log [.Ext.Opcode]
1081 - If F$Search("[.VMS.Ext...]*.C;-1").nes."" Then Purge/NoConfirm/Log [.VMS.Ext...]*.C
1082 - If F$Search("[.VMS.Ext...]*$(O);-1").nes."" Then Purge/NoConfirm/Log [.VMS.Ext...]*$(O)
1083 - If F$Search("[.Lib.Auto...]*.al;-1").nes."" Then Purge/NoConfirm/Log [.Lib.Auto...]*.al
1084 - If F$Search("[.Lib.Auto...]autosplit.ix;-1").nes."" Then Purge/NoConfirm/Log [.Lib.Auto...]autosplit.ix
1085 - If F$Search("[.Lib]DynaLoader.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]DynaLoader.pm
1086 - If F$Search("[.Lib]Socket.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]Socket.pm
1087 - If F$Search("[.Lib]Config.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]Config.pm
1088 - If F$Search("$(ARCHDIR)Config.pm;-1").nes."" Then Purge/NoConfirm/Log $(ARCHDIR)Config.pm
1089 - If F$Search("[.lib.ExtUtils]Miniperl.pm").nes."" Then Purge/NoConfirm/Log [.lib.ExtUtils]Miniperl.pm
1090 - If F$Search("[.lib.ExtUtils]XSSymSet.pm").nes."" Then Purge/NoConfirm/Log [.lib.ExtUtils]XSSymSet.pm
1091 - If F$Search("[.Lib.VMS]*.*;-1").nes."" Then Purge/NoConfirm/Log [.Lib.VMS]*.*
1092 - If F$Search("[.Lib.Pod]*.Pod;-1").nes."" Then Purge/NoConfirm/Log [.Lib.Pod]*.Pod
1093 - If F$Search("$(ARCHCORE)*.*").nes."" Then Purge/NoConfirm/Log $(ARCHCORE)*.*
1094 - If F$Search("[.lib]*.com;-1").nes."" Then Purge/NoConfirm/Log [.lib]*.com
1095 - If F$Search("[.pod]*.com;-1").nes."" Then Purge/NoConfirm/Log [.pod]*.com
1096 - If F$Search("[.utils]*.com;-1").nes."" Then Purge/NoConfirm/Log [.utils]*.com
1097 - If F$Search("[.x2p]*.com;-1").nes."" Then Purge/NoConfirm/Log [.x2p]*.com
1098 - If F$Search("[.lib.pod]*.com;-1").nes."" Then Purge/NoConfirm/Log [.lib.pod]*.com
1099
1100clean : tidy
cc391245 1101 - @build_ext "$(dynamic_ext)" "$(MINIPERL_EXE)" "$(MMS)" clean
97abc6ad
HM
1102 - If F$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*/Exclude=PerlShr_*.Opt
1103 - If F$Search("[...]*$(O);*") .nes."" Then Delete/NoConfirm/Log [...]*$(O);*
97abc6ad
HM
1104 - If F$Search(F$Parse("Sys$Disk:[]","$(SOCKH)")).nes."" Then Delete/NoConfirm/Log $(SOCKH);*
1105 - If F$Search(F$Parse("Sys$Disk:[]","$(SOCKC)")).nes."" Then Delete/NoConfirm/Log $(SOCKC);*
1106 - If F$Search("perly.c").nes."" Then Delete/NoConfirm/Log perly.c;*
52a043e6 1107 - Copy [.vms]perly_c.vms []perly.c
97abc6ad 1108 - If F$Search("perly.h").nes."" Then Delete/NoConfirm/Log perly.h;*
52a043e6 1109 - Copy [.vms]perly_h.vms []perly.h
97abc6ad
HM
1110 - If F$Search("VMSish.H").nes."" Then Delete/NoConfirm/Log VMSish.H;*
1111 - If F$Search("VMS.C") .nes."" Then Delete/NoConfirm/Log VMS.C;*
1112 - If F$Search("Perlmain.C") .nes."" Then Delete/NoConfirm/Log Perlmain.C;*
97abc6ad
HM
1113 - If F$Search("Perlshr_Gbl*.Mar") .nes."" Then Delete/NoConfirm/Log Perlshr_Gbl*.Mar;*
1114 - If F$Search("*.TS").nes."" Then Delete/NoConfirm/Log *.TS;*
1115 - If F$Search("[.Ext.DynaLoader]DL_VMS$(O)").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DL_VMS$(O);*
1116 - If F$Search("[.Ext.DynaLoader]DL_VMS.C").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C;*
52a043e6 1117 - If F$Search("[.Ext.DynaLoader]DynaLoader.pm").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DynaLoader.pm;*
97abc6ad
HM
1118 - If F$Search("[.Ext.Socket]Socket$(O)").nes."" Then Delete/NoConfirm/Log [.Ext.Socket]Socket$(O);*
1119 - If F$Search("[.Ext.Socket]Socket.C").nes."" Then Delete/NoConfirm/Log [.Ext.Socket]Socket.C;*
1120 - If F$Search("[.VMS.Ext...]*.C").nes."" Then Delete/NoConfirm/Log [.VMS.Ext...]*.C;*
1121 - If F$Search("[.VMS.Ext...]*$(O)").nes."" Then Delete/NoConfirm/Log [.VMS.Ext...]*$(O);*
1122 - If F$Search("[.pod]*.com").nes."" Then Delete/NoConfirm/Log [.pod]*.com;*
1123
cc391245
CB
1124realclean : clean
1125 - @build_ext "$(dynamic_ext)" "$(MINIPERL_EXE)" "$(MMS)" realclean
97abc6ad
HM
1126 - If F$Search("*$(OLB)").nes."" Then Delete/NoConfirm/Log *$(OLB);*
1127 - If F$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*
f24bbd7d
HM
1128 - If F$Search("Config.H").nes."" Then Delete/NoConfirm/Log Config.H;*
1129 - If F$Search("Config.SH").nes."" Then Delete/NoConfirm/Log Config.SH;*
52a043e6 1130 - $(MINIPERL) -e "use File::Path; rmtree(\@ARGV,1,0);" config
cc391245
CB
1131 - If F$Search("Descrip.MMS").nes."" Then Delete/NoConfirm/Log Descrip.MMS;*
1132 - If F$Search("Build_Ext.Com").nes."" Then Delete/NoConfirm/Log Build_Ext.Com;*
97abc6ad
HM
1133 - $(MINIPERL) -e "use File::Path; rmtree(['lib/auto','lib/VMS','lib/$(ARCH)'],1,0);"
1134 - If F$Search("[.Lib]DynaLoader.pm").nes."" Then Delete/NoConfirm/Log [.Lib]DynaLoader.pm;*
1135 - If F$Search("[.Lib]Socket.pm").nes."" Then Delete/NoConfirm/Log [.Lib]Socket.pm;*
1136 - If F$Search("[.Lib]Config.pm").nes."" Then Delete/NoConfirm/Log [.Lib]Config.pm;*
1137 - If F$Search("[.Lib]*.com").nes."" Then Delete/NoConfirm/Log [.Lib]*.com;*
52a043e6 1138 - If F$Search("[.pod]*.com").nes."" Then Delete/NoConfirm/Log [.pod]*.com;*
97abc6ad
HM
1139 - If F$Search("[.utils]*.com").nes."" Then Delete/NoConfirm/Log [.utils]*.com;*
1140 - If F$Search("[.x2p]*.com").nes."" Then Delete/NoConfirm/Log [.x2p]*.com;*
1141 - If F$Search("$(ARCHDIR)Config.pm").nes."" Then Delete/NoConfirm/Log $(ARCHDIR)Config.pm;*
1142 - If F$Search("[.lib.ExtUtils]Miniperl.pm").nes."" Then Delete/NoConfirm/Log [.lib.ExtUtils]Miniperl.pm;*
1143 - If F$Search("[.lib.ExtUtils]XSSymSet.pm").nes."" Then Delete/NoConfirm/Log [.lib.ExtUtils]XSSymSet.pm;*
1144 - If F$Search("[.lib.pod]*.pod").nes."" Then Delete/NoConfirm/Log [.lib.pod]*.pod;*
1145 - If F$Search("[.lib.pod]perldoc.com").nes."" Then Delete/NoConfirm/Log [.lib.pod]perldoc.com;*
1146 - If F$Search("[.lib.pod]pod2*.com").nes."" Then Delete/NoConfirm/Log [.lib.pod]pod2*.com;*
1147 - If F$Search("[.t.lib]vms*.t").nes."" Then Delete/NoConfirm/Log [.t.lib]vms*.t;*
1148 - If F$Search("[...]*$(E)").nes."" Then Delete/NoConfirm/Log [...]*$(E);*
52a043e6 1149 - If F$Search("[.vms]Perl_Setup.Com").nes."" Then Delete/NoConfirm/Log [.vms]Perl_Setup.Com;*
97abc6ad
HM
1150
1151cleansrc : clean
cc391245 1152!GROK!THIS!
97abc6ad
HM
1153 - If F$Search("*.C;-1").nes."" Then Purge/NoConfirm/Log *.C
1154 - If F$Search("*.H;-1").nes."" Then Purge/NoConfirm/Log *.H
1155 - If F$Search("*.VMS;-1").nes."" Then Purge/NoConfirm/Log *.VMS
1156 - If F$Search("[.VMS]$(MAKEFILE);-1").nes."" Then Purge/NoConfirm/Log [.VMS]$(MAKEFILE)
1157 - If F$Search("[.VMS]*.C;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.C
1158 - If F$Search("[.VMS]*.H;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.H
1159 - If F$Search("[.VMS]*.Pl;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.Pl
1160 - If F$Search("[.VMS]*.VMS;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.VMS
1161 - If F$Search("[.VMS...]*.pm;-1").nes."" Then Purge/NoConfirm/Log [.VMS...]*.pm
1162 - If F$Search("[.VMS...]*.xs;-1").nes."" Then Purge/NoConfirm/Log [.VMS...]*.xs