04fcfeb10805520af50f33517668b21217ce654f
[p5sagit/p5-mst-13.2.git] / vms / descrip.mms
1 # Descrip.MMS for perl5 on VMS
2 # Last revised 22-Feb-1996 by Charles Bailey  bailey@genetics.upenn.edu
3 #
4 #: This file uses MMS syntax, and can be processed using DEC's MMS product,
5 #: or the free MMK clone (available by ftp at ftp.spc.edu).  If you want to
6 #: a Unix-style MAKE tool, run this file through mms2make.pl, which should
7 #: be found in the same directory as this file.  (There should be a pre-made
8 #: copy of Makefile for VAXC in this directory to allow you to build perl.)
9 #:
10 #: Lines beginning with "#:" will be removed by mms2make.pl when converting
11 #: this file to MAKE syntax.
12 #:
13 #:      Usage:
14 #: Building with VAX C, on system without DEC C installed or with VAX C default:
15 #:      $ MMS
16 #: Building with VAX C, on system with DEC C installed as default C compiler:
17 #:      $ MMS /MACRO=("cc=CC/VAXC")
18 #: Building with DEC C, on system without VAX C installed or with DEC C default:
19 #:      $ MMS /MACRO=("decc=1")
20 #: Building with DEC C, on system with VAX C installed as default C compiler:
21 #:      $ MMS /MACRO=("decc=1","cc=CC/DECC")
22 #: Building with GNU C
23 #:      $ MMS /MACRO=("gnuc=1")
24 #: To each of the above, add /Macro="__AXP__=1" if building on an AXP,
25 #:                           /Macro="__DEBUG__=1" to build a debug version
26 #:                           (i.e. VMS debugger, not perl -D), and
27 #:                           /Macro="SOCKET=1" to include socket support.
28 #
29 #       tidy      -- purge files generated by executing this file
30 #       clean     -- remove all intermediate (e.g. object files, C files generated
31 #                    during build) files generated by executing this file,
32 #                    but leave `installable' files (images, library) intact
33 #       realclean -- remove all files generated by executing this file
34 #       cleansrc  -- `realclean' + purge *.c,*.h,descrip.mms
35 #       crtl.opt  -- compiler-specific linker options file (made automatically)
36 #
37
38 #### Start of system configuration section. ####
39
40
41 #: >>>>> Architecture-specific options <<<<<
42 .ifdef AXE
43 # File type to use for object files
44 O = .abj
45 # File type to use for object libraries
46 OLB = .alb
47 # File type to use for executable images
48 E = .axe
49 .else
50 # File type to use for object files
51 O = .obj
52 # File type to use for object libraries
53 OLB = .olb
54 # File type to use for executable images
55 E = .exe
56 .endif
57
58 .ifdef __AXP__
59 DECC = 1
60 ARCH = VMS_AXP
61 OBJVAL = $(O)
62 .else
63 ARCH = VMS_VAX
64 OBJVAL = $(MMS$TARGET_NAME)$(O)
65 .endif
66 ARCHDIR =  [.lib.$(ARCH)]
67 ARCHCORE = [.lib.$(ARCH).CORE]
68 ARCHAUTO = [.lib.$(ARCH).auto]
69
70
71 #: Backwards compatibility
72 .ifdef DECC_PIPES_BROKEN
73 PIPES_BROKEN = 1
74 .endif
75
76
77 #: >>>>>Compiler-specific options <<<<<
78 .ifdef GNUC
79 .first
80         @ If F$TrnLnm("Sys").eqs."" Then Define/NoLog SYS GNU_CC_Include:[VMS]
81 CC = gcc
82 # -fno-builtin avoids bug in gcc up to version 2.6.2 which can destroy
83 # data when memcpy() is called on large (>64 kB) blocks of memory
84 # (fixed in gcc 2.6.3)
85 XTRACCFLAGS = /Obj=$(MMS$TARGET_NAME)$(O)/NoCase_Hack/Optimize=2/CC1="""""-fno-builtin"""""
86 DBGSPECFLAGS =
87 XTRADEF = ,GNUC_ATTRIBUTE_CHECK
88 XTRAOBJS =
89 LIBS1 = GNU_CC:[000000]GCCLIB.OLB/Library
90 LIBS2 = Sys$Share:VAXCRTL/Shareable
91 .else
92 XTRAOBJS = 
93 LIBS1 = $(XTRAOBJS)
94 DBGSPECFLAGS = /Show=(Source,Include,Expansion)
95 .ifdef decc
96 # Some versions of DECCRTL on AXP have a bug in chdir() which causes the change
97 # to persist after the image exits, even when this was not requested, iff
98 # SYSNAM is enabled.  This is fixed in CSC Patch # AXPACRT04_061, but turning
99 # off SYSNAM for the MM[SK] subprocess doesn't hurt anything, so we do it
100 # just in case.
101 .first
102         @ Set Process/Privilege=(NoSYSNAM)
103 LIBS2 = 
104 XTRACCFLAGS = /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=$(OBJVAL)
105 XTRADEF =
106 .else # VAXC
107 .first
108         @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("VAXC$Include").eqs."" Then Define/NoLog SYS Sys$Library
109         @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("VAXC$Include").nes."" Then Define/NoLog SYS VAXC$Include
110
111 XTRACCFLAGS = /Include=[]/Object=$(O)
112 XTRADEF =
113 LIBS2 = Sys$Share:VAXCRTL/Shareable
114 .endif
115 .endif
116
117
118 #: >>>>> Configuration options <<<<<
119 #: __DEBUG__: builds images with full VMS debugger support
120 .ifdef __DEBUG__
121 DBGCCFLAGS = /List/Debug/NoOpt$(DBGSPECFLAGS)
122 DBGLINKFLAGS = /Trace/Debug/Map/Full/Cross
123 DBG = DBG
124 .else
125 DBGCCFLAGS = /NoList
126 DBGLINKFLAGS = /NoMap
127 DBG = 
128 .endif
129
130 #: SOCKET: build in support for TCP/IP sockets
131 #: By default, used SOCKETSHR library; see ReadMe.VMS
132 #: for information on changing socket support
133 .ifdef SOCKET
134 SOCKDEF = ,VMS_DO_SOCKETS
135 SOCKLIB = SocketShr/Share
136 # N.B. the targets for $(SOCKC) and $(SOCKH) assume that the permanent
137 # copies live in [.vms], and the `clean' target will delete copies of
138 # these files in the current default directory.
139 SOCKC = sockadapt.c
140 SOCKH = sockadapt.h
141 SOCKCLIS = ,$(SOCKC)
142 SOCKHLIS = ,$(SOCKH)
143 SOCKOBJ = ,sockadapt$(O)
144 SOCKPM = [.lib]Socket.pm
145 .else
146 SOCKDEF =
147 SOCKLIB =
148 SOCKC =
149 SOCKH =
150 SOCKCLIS =
151 SOCKHLIS =
152 SOCKOBJ =
153 SOCKPM =
154 .endif
155
156 # C preprocessor manifest "DEBUGGING" ==> perl -D, not the VMS debugger
157 CFLAGS = /Define=(DEBUGGING$(SOCKDEF)$(XTRADEF))$(XTRACCFLAGS)$(DBGCCFLAGS)
158 LINKFLAGS = $(DBGLINKFLAGS)
159
160 MAKE = $(MMS)
161 MAKEFILE = [.VMS]Descrip.MMS   # this file
162 NOOP = continue
163
164 # Macros to invoke a copy of miniperl during the build.  Targets which
165 # are built using these macros should depend on $(MINIPERL_EXE)
166 MINIPERL_EXE = Sys$Disk:[]miniperl$(E)
167 MINIPERL = MCR $(MINIPERL_EXE) "-I[.lib]"
168 XSUBPP = $(MINIPERL) [.lib.extutils]xsubpp
169 # Macro to invoke a preexisting copy of Perl.  This is used to regenerate
170 # some header files when rebuilding Perl, but premade versions are provided
171 # in the distribution, so it's OK if this doesn't work; it's here to make
172 # life easier for those who modify Perl and rebuild it.
173 INSTPERL = perl
174
175 # Space-separated list of "static" extensions to build into perlshr (case counts).
176 MYEXT = DynaLoader
177 # object files for these extensions; the trailing comma is required if
178 # there are any object files specified
179 # These must be built separately, or you must add rules below to build them
180 myextobj = [.ext.dynaloader]dl_vms$(O),
181 #: We include the Socket extension by default if we're building with socket
182 #: support, since it's small and not really worth bothering to keep track
183 #: of separately.
184 .ifdef SOCKET
185 EXT = $(MYEXT) Socket
186 extobj = $(myextobj) [.ext.socket]socket$(O), 
187 .else
188 EXT = $(MYEXT)
189 extobj = $(myextobj)
190 .endif
191
192
193 #### End of system configuration section. ####
194
195
196 h1 = EXTERN.h, INTERN.h, XSUB.h, av.h, config.h, cop.h, cv.h
197 h2 = embed.h, form.h, gv.h, handy.h, hv.h, keywords.h, mg.h, op.h
198 h3 = opcode.h, patchlevel.h, perl.h, perly.h, pp.h, proto.h, regcomp.h
199 h4 = regexp.h, scope.h, sv.h, vmsish.h, util.h
200 h = $(h1), $(h2), $(h3), $(h4) $(SOCKHLIS)
201
202 c1 = av.c, scope.c, op.c, doop.c, doio.c, dump.c, hv.c, mg.c
203 c2 = perl.c, perly.c, pp.c, pp_hot.c, pp_ctl.c, pp_sys.c, regcomp.c, regexec.c
204 c3 = gv.c, sv.c, taint.c, toke.c, util.c, deb.c, run.c, globals.c, vms.c $(SOCKCLIS)
205
206 c = $(c1), $(c2), $(c3), miniperlmain.c, perlmain.c
207
208 obj1 = perl$(O), gv$(O), toke$(O), perly$(O), op$(O), regcomp$(O), dump$(O), util$(O), mg$(O)
209 obj2 = hv$(O), av$(O), run$(O), pp_hot$(O), sv$(O), pp$(O), scope$(O), pp_ctl$(O), pp_sys$(O)
210 obj3 = doop$(O), doio$(O), regexec$(O), taint$(O), deb$(O), globals$(O), vms$(O) $(SOCKOBJ)
211
212 obj = $(obj1), $(obj2), $(obj3)
213
214 ac1 = $(ARCHCORE)EXTERN.h $(ARCHCORE)INTERN.h  $(ARCHCORE)XSUB.h $(ARCHCORE)av.h
215 ac2 = $(ARCHCORE)config.h $(ARCHCORE)cop.h $(ARCHCORE)cv.h $(ARCHCORE)embed.h
216 ac3 = $(ARCHCORE)form.h $(ARCHCORE)gv.h $(ARCHCORE)handy.h $(ARCHCORE)hv.h
217 ac4 = $(ARCHCORE)keywords.h $(ARCHCORE)mg.h $(ARCHCORE)op.h $(ARCHCORE)opcode.h
218 ac5 = $(ARCHCORE)patchlevel.h $(ARCHCORE)perl.h $(ARCHCORE)perly.h
219 ac6 = $(ARCHCORE)pp.h $(ARCHCORE)proto.h $(ARCHCORE)regcomp.h
220 ac7 = $(ARCHCORE)regexp.h $(ARCHCORE)scope.h $(ARCHCORE)sv.h $(ARCHCORE)util.h
221 ac8 = $(ARCHCORE)vmsish.h $(ARCHCORE)$(DBG)libperl$(OLB) $(ARCHCORE)perlshr_attr.opt
222 ac9 = $(ARCHCORE)$(DBG)perlshr_bld.opt
223 .ifdef SOCKET
224 acs = $(ARCHCORE)$(SOCKH)
225 .else
226 acs =
227 .endif
228
229 CRTL = []crtl.opt
230 CRTLOPTS =,$(CRTL)/Options
231
232 .SUFFIXES
233
234 .ifdef LINK_ONLY
235 .else
236 .SUFFIXES $(O) .c .xs
237
238 .xs.c :
239         $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
240
241
242 .c$(O) :
243         $(CC) $(CFLAGS) $(MMS$SOURCE)
244
245 .xs$(O) :
246         $(XSUBPP) $(MMS$SOURCE) >$(MMS$SOURCE_NAME).c
247         $(CC) $(CFLAGS) $(MMS$SOURCE_NAME).c
248 .endif
249
250
251 all : base extras archcorefiles preplibrary perlpods
252         @ $(NOOP)
253 base : miniperl$(E) perl$(E)
254         @ $(NOOP)
255 extras : Fcntl FileHandle Safe libmods utils podxform
256         @ $(NOOP)
257 libmods : [.lib]Config.pm [.lib.$(ARCH)]Config.pm [.lib]DynaLoader.pm [.lib.VMS]Filespec.pm 
258         @ $(NOOP)
259 utils : [.lib.pod]perldoc [.lib.ExtUtils]Miniperl.pm [.utils]c2ph [.utils]h2ph [.utils]h2xs [.lib]perlbug
260         @ $(NOOP)
261 podxform : [.lib.pod]pod2text [.lib.pod]pod2html [.lib.pod]pod2latex [.lib.pod]pod2man
262         @ $(NOOP)
263
264 pod1 = [.lib.pod]perl.pod [.lib.pod]perlbook.pod [.lib.pod]perlbot.pod [.lib.pod]perlcall.pod
265 pod2 = [.lib.pod]perldata.pod [.lib.pod]perldebug.pod [.lib.pod]perldiag.pod [.lib.pod]perldsc.pod
266 pod3 = [.lib.pod]perlembed.pod [.lib.pod]perlform.pod [.lib.pod]perlfunc.pod [.lib.pod]perlguts.pod
267 pod4 = [.lib.pod]perlipc.pod [.lib.pod]perllol.pod [.lib.pod]perlmod.pod [.lib.pod]perlobj.pod
268 pod5 = [.lib.pod]perlop.pod [.lib.pod]perlovl.pod [.lib.pod]perlpod.pod [.lib.pod]perlre.pod
269 pod6 = [.lib.pod]perlref.pod [.lib.pod]perlrun.pod [.lib.pod]perlsec.pod [.lib.pod]perlstyle.pod
270 pod7 = [.lib.pod]perlsub.pod [.lib.pod]perlsyn.pod [.lib.pod]perltie.pod [.lib.pod]perltoc.pod
271 pod8 = [.lib.pod]perltrap.pod [.lib.pod]perlvar.pod [.lib.pod]perlxs.pod [.lib.pod]perlxstut.pod
272
273 perlpods : $(pod1) $(pod2) $(pod3) $(pod4) $(pod5) $(pod6) $(pod7) $(pod8) [.lib.pod]perlvms.pod
274         @ $(NOOP)
275
276 archcorefiles :  $(ac1) $(ac2) $(ac3) $(ac4) $(ac5) $(ac6) $(ac7) $(ac8) $(ac9) $(acs) $(ARCHAUTO)time.stamp
277         @ $(NOOP)
278
279 miniperl_objs = miniperlmain$(O), $(obj)
280 $(MINIPERL_EXE) :  miniperlmain$(O), $(DBG)libperl$(OLB) $(CRTL)
281         Link $(LINKFLAGS)/NoDebug/Exe=$(MMS$TARGET) miniperlmain$(O), $(DBG)libperl$(OLB)/Library/Include=globals $(CRTLOPTS)
282 miniperl$(E) :  $(miniperl_objs), $(DBG)libperl$(OLB) $(CRTL)
283         Link $(LINKFLAGS)/Exe=$(DBG)$(MMS$TARGET) miniperlmain$(O),$(DBG)libperl$(OLB)/Library/Include=globals  $(CRTLOPTS)
284
285 $(DBG)libperl$(OLB) : $(obj)
286         @ If F$Search("$(MMS$TARGET)").eqs."" Then Library/Object/Create $(MMS$TARGET)
287         Library/Object/Replace $(MMS$TARGET) $(obj1)
288         Library/Object/Replace $(MMS$TARGET) $(obj2)
289         Library/Object/Replace $(MMS$TARGET) $(obj3)
290
291 perlmain.c : miniperlmain.c $(MINIPERL_EXE) [.vms]writemain.pl
292         $(MINIPERL) [.VMS]Writemain.pl "$(EXT)"
293
294 $(DBG)perl$(E) : perlmain$(O), $(DBG)perlshr$(E), $(MINIPERL_EXE)
295         @ @[.vms]genopt "PerlShr.Opt/Write" "|" "''F$Environment("Default")'$(DBG)PerlShr$(E)/Share"
296 .ifdef gnuc
297         @ @[.vms]genopt "PerlShr.Opt/Append" "|" "$(LIBS1)|$(LIBS2)"
298 .endif
299         Link $(LINKFLAGS)/Exe=$(DBG)$(MMS$TARGET) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option
300
301 $(DBG)perlshr$(E) : $(DBG)libperl$(OLB) $(extobj) $(DBG)perlshr_xtras.ts
302         Link /NoTrace$(LINKFLAGS)/Share=$(DBG)$(MMS$TARGET) $(extobj) []$(DBG)perlshr_bld.opt/Option, perlshr_attr.opt/Option
303
304 # The following files are built in one go by gen_shrfls.pl:
305 #  perlshr_attr.opt, $(DBG)perlshr_bld.opt - VAX and AXP
306 #  perlshr_gbl*.mar, perlshr_gbl*$(O) - VAX only
307 # The song and dance with gen_shrfls.opt accomodates DCL's 255 character
308 # line length limit.
309 .ifdef PIPES_BROKEN
310 # This is a backup target used only with older versions of the DECCRTL which
311 # can't deal with pipes properly.  See ReadMe.VMS for details.
312 $(DBG)perlshr_xtras.ts : perl.h config.h vmsish.h proto.h [.vms]gen_shrfls.pl $(MINIPERL_EXE) $(MAKEFILE) $(CRTL)
313         $(CC) $(CFLAGS)/NoObject/NoList/PreProcess=perl.i perl.h
314         @ $(MINIPERL) -e "print join('|',@ARGV),'|';" "~~NOCC~~perl.i~~$(CC)$(CFLAGS)" >gen_shrfls.opt
315         @ $(MINIPERL) -e "print join('|',@ARGV);" "$(O)" "$(DBG)" "$(OLB)" "$(EXT)" "$(CRTL)" >>gen_shrfls.opt
316         $(MINIPERL) [.vms]gen_shrfls.pl -f gen_shrfls.opt
317         @ Delete/NoLog/NoConfirm perl.i;, gen_shrfls.opt;
318         @ If F$Search("$(DBG)perlshr_xtras.ts").nes."" Then Delete/NoLog/NoConfirm $(DBG)perlshr_xtras.ts;*
319         @ Copy NLA0: $(DBG)perlshr_xtras.ts
320 .else
321 $(DBG)perlshr_xtras.ts : perl.h config.h vmsish.h proto.h [.vms]gen_shrfls.pl $(MINIPERL_EXE) $(MAKEFILE) $(CRTL)
322         @ $(MINIPERL) -e "print join('|',@ARGV),'|';" "$(CC)$(CFLAGS)" >gen_shrfls.opt
323         @ $(MINIPERL) -e "print join('|',@ARGV);" "$(O)" "$(DBG)" "$(OLB)" "$(EXT)" "$(CRTL)" >>gen_shrfls.opt
324         $(MINIPERL) [.vms]gen_shrfls.pl -f gen_shrfls.opt
325         @ Delete/NoLog/NoConfirm gen_shrfls.opt;
326         @ If F$Search("$(DBG)perlshr_xtras.ts").nes."" Then Delete/NoLog/NoConfirm $(DBG)perlshr_xtras.ts;*
327         @ Copy NLA0: $(DBG)perlshr_xtras.ts
328 .endif
329
330 [.lib.$(ARCH)]config.pm : [.lib]config.pm
331         Create/Directory [.lib.$(ARCH)]
332         Copy $(MMS$SOURCE) $(MMS$TARGET)
333
334 # Once again, we accomodate DCL's 255 character buffer
335 [.lib]config.pm : [.vms]config.vms [.vms]genconfig.pl $(MINIPERL_EXE)
336         @ $(MINIPERL) -e "print join('|',@ARGV),'|';" "cc=$(CC)$(CFLAGS)" >genconfig.opt
337         @ $(MINIPERL) -e "print join('|',@ARGV),'|';" "ldflags=$(LINKFLAGS)|obj_ext=$(O)|exe_ext=$(E)|lib_ext=$(OLB)" >>genconfig.opt
338         $(MINIPERL) [.VMS]GenConfig.Pl -f genconfig.opt
339         @ Delete/NoLog/NoConfirm genconfig.opt;
340         $(MINIPERL) ConfigPM.
341
342 [.ext.dynaloader]dl_vms.c : [.ext.dynaloader]dl_vms.xs $(MINIPERL_EXE)
343         $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
344
345 [.ext.dynaloader]dl_vms$(O) : [.ext.dynaloader]dl_vms.c
346         $(CC) $(CFLAGS) /Object=$(MMS$TARGET) $(MMS$SOURCE)
347
348 [.lib]DynaLoader.pm : [.ext.dynaloader]dynaloader.pm
349         Copy/Log/NoConfirm [.ext.dynaloader]dynaloader.pm [.lib]DynaLoader.pm
350         @ $(MINIPERL) -e "use AutoSplit; autosplit_lib_modules(@ARGV)" [.lib]DynaLoader.pm
351
352 Safe : [.lib]Safe.pm [.lib.auto]Safe$(E)
353         @ $(NOOP)
354
355 [.lib]Safe.pm : [.ext.Safe]Descrip.MMS
356         @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
357         @ Set Default [.ext.Safe]
358         $(MMS)
359         @ Set Default [--]
360
361 [.lib.auto]Safe$(E) : [.ext.Safe]Descrip.MMS
362         @ Set Default [.ext.Safe]
363         $(MMS)
364         @ Set Default [--]
365
366 # Add "-I[--.lib]" t $(MINIPERL) so we use this copy of lib after C<chdir>
367 # ${@} necessary to distract different versions of MM[SK]/make
368 [.ext.Safe]Descrip.MMS : [.ext.Safe]Makefile.PL [.lib.$(ARCH)]Config.pm [.lib.VMS]Filespec.pm [.lib]DynaLoader.pm perlshr$(E)
369         $(MINIPERL) "-I[--.lib]" -e "chdir('[.ext.Safe]') or die $!; do 'Makefile.PL'; print ${@} if ${@};" "INST_LIB=[--.lib]" "INST_ARCHLIB=[--.lib]" 2>_nla0:
370
371 FileHandle : [.lib]FileHandle.pm [.lib.auto]FileHandle$(E)
372         @ $(NOOP)
373
374 [.lib]FileHandle.pm : [.ext.FileHandle]Descrip.MMS
375         @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
376         @ Set Default [.ext.FileHandle]
377         $(MMS)
378         @ Set Default [--]
379
380 [.lib.auto]FileHandle$(E) : [.ext.FileHandle]Descrip.MMS
381         @ Set Default [.ext.FileHandle]
382         $(MMS)
383         @ Set Default [--]
384
385 # Add "-I[--.lib]" t $(MINIPERL) so we use this copy of lib after C<chdir>
386 # ${@} necessary to distract different versions of MM[SK]/make
387 [.ext.FileHandle]Descrip.MMS : [.ext.FileHandle]Makefile.PL [.lib.$(ARCH)]Config.pm [.lib.VMS]Filespec.pm [.lib]DynaLoader.pm perlshr$(E)
388         $(MINIPERL) "-I[--.lib]" -e "chdir('[.ext.FileHandle]') or die $!; do 'Makefile.PL'; print ${@} if ${@};" "INST_LIB=[--.lib]" "INST_ARCHLIB=[--.lib]" 2>_nla0:
389
390 Fcntl : [.lib]Fcntl.pm [.lib.auto]Fcntl$(E)
391         @ $(NOOP)
392
393 [.lib]Fcntl.pm : [.ext.Fcntl]Descrip.MMS
394         @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
395         @ Set Default [.ext.Fcntl]
396         $(MMS)
397         @ Set Default [--]
398
399 [.lib.auto]Fcntl$(E) : [.ext.Fcntl]Descrip.MMS
400         @ Set Default [.ext.Fcntl]
401         $(MMS)
402         @ Set Default [--]
403
404 # Add "-I[--.lib]" t $(MINIPERL) so we use this copy of lib after C<chdir>
405 # ${@} necessary to distract different versions of MM[SK]/make
406 [.ext.Fcntl]Descrip.MMS : [.ext.Fcntl]Makefile.PL [.lib.$(ARCH)]Config.pm [.lib.VMS]Filespec.pm [.lib]DynaLoader.pm perlshr$(E)
407         $(MINIPERL) "-I[--.lib]" -e "chdir('[.ext.Fcntl]') or die $!; do 'Makefile.PL'; print ${@} if ${@};" "INST_LIB=[--.lib]" "INST_ARCHLIB=[--.lib]" 2>_nla0:
408
409 [.lib.VMS]Filespec.pm : [.vms.ext]Filespec.pm
410         @ If F$Search("[.lib]VMS.Dir").eqs."" Then Create/Directory [.lib.VMS]
411         Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
412
413 [.lib.pod]perldoc : [.utils]perldoc.PL [.lib.$(ARCH)]Config.pm
414         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
415         $(MINIPERL) $(MMS$SOURCE)
416         Copy/Log [.utils]perldoc $(MMS$TARGET)
417
418 [.lib.ExtUtils]Miniperl.pm : Minimod.PL miniperlmain.c [.lib.$(ARCH)]Config.pm
419         $(MINIPERL) $(MMS$SOURCE) >$(MMS$TARGET)
420
421 [.utils]c2ph : [.utils]c2ph.PL [.lib.$(ARCH)]Config.pm
422         $(MINIPERL) $(MMS$SOURCE)
423
424 [.utils]h2ph : [.utils]h2ph.PL [.lib.$(ARCH)]Config.pm
425         $(MINIPERL) $(MMS$SOURCE)
426
427 [.utils]h2xs : [.utils]h2xs.PL [.lib.$(ARCH)]Config.pm
428         $(MINIPERL) $(MMS$SOURCE)
429
430 [.lib]perlbug : [.utils]perlbug.PL [.lib.$(ARCH)]Config.pm
431         $(MINIPERL) $(MMS$SOURCE)
432         Rename/Log [.utils]perlbug $(MMS$TARGET)
433
434 [.utils]pl2pm : [.utils]pl2pm.PL [.lib.$(ARCH)]Config.pm
435         $(MINIPERL) $(MMS$SOURCE)
436
437 [.lib.pod]pod2html : [.pod]pod2html.PL [.lib.$(ARCH)]Config.pm
438         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
439         $(MINIPERL) $(MMS$SOURCE)
440         Rename/Log [.pod]pod2html $(MMS$TARGET)
441
442 [.lib.pod]pod2latex : [.pod]pod2latex.PL [.lib.$(ARCH)]Config.pm
443         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
444         $(MINIPERL) $(MMS$SOURCE)
445         Rename/Log [.pod]pod2latex $(MMS$TARGET)
446
447 [.lib.pod]pod2man : [.pod]pod2man.PL [.lib.$(ARCH)]Config.pm
448         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
449         $(MINIPERL) $(MMS$SOURCE)
450         Rename/Log [.pod]pod2man $(MMS$TARGET)
451
452 [.lib.pod]pod2text : [.pod]pod2text.PL [.lib.$(ARCH)]Config.pm
453         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
454         $(MINIPERL) $(MMS$SOURCE)
455         Rename/Log [.pod]pod2text $(MMS$TARGET)
456
457 preplibrary : $(MINIPERL_EXE) [.lib.$(ARCH)]Config.pm [.lib]DynaLoader.pm [.lib.VMS]Filespec.pm $(SOCKPM)
458         @ Write Sys$Output "Autosplitting Perl library . . ."
459         @ Create/Directory [.lib.auto]
460         @ $(MINIPERL) -e "use AutoSplit; autosplit_lib_modules(@ARGV)" [.lib]*.pm [.lib.*]*.pm
461
462 [.lib.pod]perl.pod : [.pod]perl.pod
463         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
464         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
465
466 [.lib.pod]perlbook.pod : [.pod]perlbook.pod
467         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
468         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
469
470 [.lib.pod]perlbot.pod : [.pod]perlbot.pod
471         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
472         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
473
474 [.lib.pod]perlcall.pod : [.pod]perlcall.pod
475         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
476         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
477
478 [.lib.pod]perldata.pod : [.pod]perldata.pod
479         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
480         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
481
482 [.lib.pod]perldebug.pod : [.pod]perldebug.pod
483         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
484         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
485
486 [.lib.pod]perldiag.pod : [.pod]perldiag.pod
487         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
488         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
489
490 [.lib.pod]perldsc.pod : [.pod]perldsc.pod
491         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
492         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
493
494 [.lib.pod]perlembed.pod : [.pod]perlembed.pod
495         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
496         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
497
498 [.lib.pod]perlform.pod : [.pod]perlform.pod
499         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
500         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
501
502 [.lib.pod]perlfunc.pod : [.pod]perlfunc.pod
503         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
504         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
505
506 [.lib.pod]perlguts.pod : [.pod]perlguts.pod
507         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
508         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
509
510 [.lib.pod]perlipc.pod : [.pod]perlipc.pod
511         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
512         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
513
514 [.lib.pod]perllol.pod : [.pod]perllol.pod
515         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
516         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
517
518 [.lib.pod]perlmod.pod : [.pod]perlmod.pod
519         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
520         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
521
522 [.lib.pod]perlobj.pod : [.pod]perlobj.pod
523         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
524         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
525
526 [.lib.pod]perlop.pod : [.pod]perlop.pod
527         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
528         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
529
530 [.lib.pod]perlovl.pod : [.pod]perlovl.pod
531         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
532         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
533
534 [.lib.pod]perlpod.pod : [.pod]perlpod.pod
535         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
536         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
537
538 [.lib.pod]perlre.pod : [.pod]perlre.pod
539         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
540         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
541
542 [.lib.pod]perlref.pod : [.pod]perlref.pod
543         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
544         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
545
546 [.lib.pod]perlrun.pod : [.pod]perlrun.pod
547         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
548         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
549
550 [.lib.pod]perlsec.pod : [.pod]perlsec.pod
551         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
552         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
553
554 [.lib.pod]perlstyle.pod : [.pod]perlstyle.pod
555         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
556         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
557
558 [.lib.pod]perlsub.pod : [.pod]perlsub.pod
559         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
560         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
561
562 [.lib.pod]perlsyn.pod : [.pod]perlsyn.pod
563         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
564         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
565
566 [.lib.pod]perltie.pod : [.pod]perltie.pod
567         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
568         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
569
570 [.lib.pod]perltoc.pod : [.pod]perltoc.pod
571         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
572         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
573
574 [.lib.pod]perltrap.pod : [.pod]perltrap.pod
575         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
576         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
577
578 [.lib.pod]perlvar.pod : [.pod]perlvar.pod
579         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
580         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
581
582 [.lib.pod]perlxs.pod : [.pod]perlxs.pod
583         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
584         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
585
586 [.lib.pod]perlxstut.pod : [.pod]perlxstut.pod
587         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
588         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
589
590 [.lib.pod]perlvms.pod : [.vms]perlvms.pod
591         @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
592         @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
593
594 printconfig :
595         @ @[.vms]make_command $(MMS) $(MMSQUALIFIERS) $(MMSTARGETS)
596         @ @[.vms]myconfig "$(CC)" "$(CFLAGS)" "$(LINKFLAGS)" "$(LIBS1)" "$(LIBS2)" "$(SOCKLIB)" "$(EXT)" "$(DBG)"
597
598 .ifdef SOCKET
599
600 .ifdef LINK_ONLY
601 .else
602 $(SOCKOBJ) : $(SOCKC) $(SOCKH)
603
604 [.ext.Socket]Socket$(O) : [.ext.Socket]Socket.c
605         $(CC) $(CFLAGS) /Object=$(MMS$TARGET) $(MMS$SOURCE)
606
607 [.ext.Socket]Socket.c : [.ext.Socket]Socket.xs $(MINIPERL_EXE)
608         $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
609 .endif # !LINK_ONLY
610
611 vmsish.h : $(SOCKH)
612
613 $(SOCKC) : [.vms]$(SOCKC)
614         Copy/Log/NoConfirm [.vms]$(SOCKC) []$(SOCKC)
615
616 $(SOCKH) : [.vms]$(SOCKH)
617         Copy/Log/NoConfirm [.vms]$(SOCKH) []$(SOCKH)
618
619 [.lib]Socket.pm : [.ext.Socket]Socket.pm
620         Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
621 .endif
622
623 # The following three header files are generated automatically
624 #       keywords.h :    keywords.pl
625 #       opcode.h :      opcode.pl
626 #       embed.h :       embed.pl global.sym interp.sym
627 # The correct versions should be already supplied with the perl kit,
628 # in case you don't have perl available.
629 # To force them to run, type
630 #       MMS regen_headers
631 regen_headers :
632         $(INSTPERL) keywords.pl
633         $(INSTPERL) opcode.pl
634         $(INSTPERL) embed.pl
635
636 # VMS uses modified perly.[ch] with tags for globaldefs if using DEC compiler
637 perly.c : [.vms]perly_c.vms
638         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
639 perly.h : [.vms]perly_h.vms
640         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
641
642 # I now supply perly.c with the kits, so the following section is
643 # commented out if you don't have byacc.
644 # Altered for VMS by Charles Bailey  bailey@genetics.upenn.edu
645 # perly.c:
646 #       @ Write Sys$Output "Expect 80 shift/reduce and 62 reduce/reduce conflicts"
647 #       \$(BYACC) -d perly.y
648 # Has to be done by hand or by POSIX shell under VMS
649 #       sh \$(shellflags) ./perly.fixer y.tab.c perly.c
650 #       rename y.tab.h perly.h
651 #       $(INSTPERL) [.vms]vms_yfix.pl perly.c perly.h [.vms]perly_c.vms [.vms]perly_h.vms
652
653 .ifdef LINK_ONLY
654 .else
655 perly$(O) : perly.c, perly.h, $(h)
656         $(CC) $(CFLAGS) $(MMS$SOURCE)
657 .endif
658
659 test : all
660         - @[.VMS]Test.Com
661
662 # CORE subset for MakeMaker, so we can build Perl without sources
663 # Should move to VMS installperl when we get one
664 $(ARCHCORE)EXTERN.h : EXTERN.h
665         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
666         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
667 $(ARCHCORE)INTERN.h : INTERN.h
668         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
669         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
670 $(ARCHCORE)XSUB.h : XSUB.h
671         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
672         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
673 $(ARCHCORE)av.h : av.h
674         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
675         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
676 $(ARCHCORE)config.h : config.h
677         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
678         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
679 $(ARCHCORE)cop.h : cop.h
680         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
681         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
682 $(ARCHCORE)cv.h : cv.h
683         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
684         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
685 $(ARCHCORE)embed.h : embed.h
686         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
687         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
688 $(ARCHCORE)form.h : form.h
689         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
690         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
691 $(ARCHCORE)gv.h : gv.h
692         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
693         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
694 $(ARCHCORE)handy.h : handy.h
695         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
696         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
697 $(ARCHCORE)hv.h : hv.h
698         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
699         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
700 $(ARCHCORE)keywords.h : keywords.h
701         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
702         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
703 $(ARCHCORE)mg.h : mg.h
704         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
705         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
706 $(ARCHCORE)op.h : op.h
707         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
708         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
709 $(ARCHCORE)opcode.h : opcode.h
710         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
711         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
712 $(ARCHCORE)patchlevel.h : patchlevel.h
713         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
714         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
715 $(ARCHCORE)perl.h : perl.h
716         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
717         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
718 $(ARCHCORE)perly.h : perly.h
719         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
720         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
721 $(ARCHCORE)pp.h : pp.h
722         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
723         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
724 $(ARCHCORE)proto.h : proto.h
725         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
726         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
727 $(ARCHCORE)regcomp.h : regcomp.h
728         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
729         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
730 $(ARCHCORE)regexp.h : regexp.h
731         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
732         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
733 $(ARCHCORE)scope.h : scope.h
734         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
735         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
736 $(ARCHCORE)sv.h : sv.h
737         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
738         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
739 $(ARCHCORE)util.h : util.h
740         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
741         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
742 $(ARCHCORE)vmsish.h : vmsish.h
743         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
744         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
745 .ifdef SOCKET
746 $(ARCHCORE)$(SOCKH) : $(SOCKH)
747         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
748         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
749 .endif
750 $(ARCHCORE)$(DBG)libperl$(OLB) : $(DBG)libperl$(OLB) $(DBG)perlshr_xtras.ts
751         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
752         Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
753 $(ARCHCORE)perlshr_attr.opt : $(DBG)perlshr_xtras.ts
754         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
755         Copy/Log perlshr_attr.opt $(MMS$TARGET)
756 $(ARCHCORE)$(DBG)perlshr_bld.opt : $(DBG)perlshr_xtras.ts
757         @ If F$Search("[.lib.$(ARCH)]CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
758         Copy/Log $(DBG)perlshr_bld.opt $(MMS$TARGET)
759 $(ARCHAUTO)time.stamp :
760         @ If F$Search("[.lib.$(ARCH)]auto.dir").eqs."" Then Create/Directory $(ARCHAUTO)
761         @ If F$Search("$(MMS$TARGET)").eqs."" Then Copy/NoConfirm _NLA0: $(MMS$TARGET)
762
763 .ifdef LINK_ONLY
764 .else
765 # AUTOMATICALLY GENERATED MAKE DEPENDENCIES--PUT NOTHING BELOW THIS LINE
766 av$(O) : EXTERN.h
767 av$(O) : av.c
768 av$(O) : av.h
769 av$(O) : config.h
770 av$(O) : cop.h
771 av$(O) : cv.h
772 av$(O) : embed.h
773 av$(O) : form.h
774 av$(O) : gv.h
775 av$(O) : handy.h
776 av$(O) : hv.h
777 av$(O) : mg.h
778 av$(O) : op.h
779 av$(O) : opcode.h
780 av$(O) : perl.h
781 av$(O) : perly.h
782 av$(O) : pp.h
783 av$(O) : proto.h
784 av$(O) : regexp.h
785 av$(O) : scope.h
786 av$(O) : sv.h
787 av$(O) : vmsish.h
788 av$(O) : util.h
789 scope$(O) : EXTERN.h
790 scope$(O) : av.h
791 scope$(O) : config.h
792 scope$(O) : cop.h
793 scope$(O) : cv.h
794 scope$(O) : embed.h
795 scope$(O) : form.h
796 scope$(O) : gv.h
797 scope$(O) : handy.h
798 scope$(O) : hv.h
799 scope$(O) : mg.h
800 scope$(O) : op.h
801 scope$(O) : opcode.h
802 scope$(O) : perl.h
803 scope$(O) : perly.h
804 scope$(O) : pp.h
805 scope$(O) : proto.h
806 scope$(O) : regexp.h
807 scope$(O) : scope.c
808 scope$(O) : scope.h
809 scope$(O) : sv.h
810 scope$(O) : vmsish.h
811 scope$(O) : util.h
812 op$(O) : EXTERN.h
813 op$(O) : av.h
814 op$(O) : config.h
815 op$(O) : cop.h
816 op$(O) : cv.h
817 op$(O) : embed.h
818 op$(O) : form.h
819 op$(O) : gv.h
820 op$(O) : handy.h
821 op$(O) : hv.h
822 op$(O) : mg.h
823 op$(O) : op.c
824 op$(O) : op.h
825 op$(O) : opcode.h
826 op$(O) : perl.h
827 op$(O) : perly.h
828 op$(O) : pp.h
829 op$(O) : proto.h
830 op$(O) : regexp.h
831 op$(O) : scope.h
832 op$(O) : sv.h
833 op$(O) : vmsish.h
834 op$(O) : util.h
835 doop$(O) : EXTERN.h
836 doop$(O) : av.h
837 doop$(O) : config.h
838 doop$(O) : cop.h
839 doop$(O) : cv.h
840 doop$(O) : doop.c
841 doop$(O) : embed.h
842 doop$(O) : form.h
843 doop$(O) : gv.h
844 doop$(O) : handy.h
845 doop$(O) : hv.h
846 doop$(O) : mg.h
847 doop$(O) : op.h
848 doop$(O) : opcode.h
849 doop$(O) : perl.h
850 doop$(O) : perly.h
851 doop$(O) : pp.h
852 doop$(O) : proto.h
853 doop$(O) : regexp.h
854 doop$(O) : scope.h
855 doop$(O) : sv.h
856 doop$(O) : vmsish.h
857 doop$(O) : util.h
858 doio$(O) : EXTERN.h
859 doio$(O) : av.h
860 doio$(O) : config.h
861 doio$(O) : cop.h
862 doio$(O) : cv.h
863 doio$(O) : doio.c
864 doio$(O) : embed.h
865 doio$(O) : form.h
866 doio$(O) : gv.h
867 doio$(O) : handy.h
868 doio$(O) : hv.h
869 doio$(O) : mg.h
870 doio$(O) : op.h
871 doio$(O) : opcode.h
872 doio$(O) : perl.h
873 doio$(O) : perly.h
874 doio$(O) : pp.h
875 doio$(O) : proto.h
876 doio$(O) : regexp.h
877 doio$(O) : scope.h
878 doio$(O) : sv.h
879 doio$(O) : vmsish.h
880 doio$(O) : util.h
881 dump$(O) : EXTERN.h
882 dump$(O) : av.h
883 dump$(O) : config.h
884 dump$(O) : cop.h
885 dump$(O) : cv.h
886 dump$(O) : dump.c
887 dump$(O) : embed.h
888 dump$(O) : form.h
889 dump$(O) : gv.h
890 dump$(O) : handy.h
891 dump$(O) : hv.h
892 dump$(O) : mg.h
893 dump$(O) : op.h
894 dump$(O) : opcode.h
895 dump$(O) : perl.h
896 dump$(O) : perly.h
897 dump$(O) : pp.h
898 dump$(O) : proto.h
899 dump$(O) : regexp.h
900 dump$(O) : scope.h
901 dump$(O) : sv.h
902 dump$(O) : vmsish.h
903 dump$(O) : util.h
904 hv$(O) : EXTERN.h
905 hv$(O) : av.h
906 hv$(O) : config.h
907 hv$(O) : cop.h
908 hv$(O) : cv.h
909 hv$(O) : embed.h
910 hv$(O) : form.h
911 hv$(O) : gv.h
912 hv$(O) : handy.h
913 hv$(O) : hv.c
914 hv$(O) : hv.h
915 hv$(O) : mg.h
916 hv$(O) : op.h
917 hv$(O) : opcode.h
918 hv$(O) : perl.h
919 hv$(O) : perly.h
920 hv$(O) : pp.h
921 hv$(O) : proto.h
922 hv$(O) : regexp.h
923 hv$(O) : scope.h
924 hv$(O) : sv.h
925 hv$(O) : vmsish.h
926 hv$(O) : util.h
927 mg$(O) : EXTERN.h
928 mg$(O) : av.h
929 mg$(O) : config.h
930 mg$(O) : cop.h
931 mg$(O) : cv.h
932 mg$(O) : embed.h
933 mg$(O) : form.h
934 mg$(O) : gv.h
935 mg$(O) : handy.h
936 mg$(O) : hv.h
937 mg$(O) : mg.c
938 mg$(O) : mg.h
939 mg$(O) : op.h
940 mg$(O) : opcode.h
941 mg$(O) : perl.h
942 mg$(O) : perly.h
943 mg$(O) : pp.h
944 mg$(O) : proto.h
945 mg$(O) : regexp.h
946 mg$(O) : scope.h
947 mg$(O) : sv.h
948 mg$(O) : vmsish.h
949 mg$(O) : util.h
950 perl$(O) : EXTERN.h
951 perl$(O) : av.h
952 perl$(O) : config.h
953 perl$(O) : cop.h
954 perl$(O) : cv.h
955 perl$(O) : embed.h
956 perl$(O) : form.h
957 perl$(O) : gv.h
958 perl$(O) : handy.h
959 perl$(O) : hv.h
960 perl$(O) : mg.h
961 perl$(O) : op.h
962 perl$(O) : opcode.h
963 perl$(O) : perl.c
964 perl$(O) : perl.h
965 perl$(O) : perly.h
966 perl$(O) : pp.h
967 perl$(O) : proto.h
968 perl$(O) : regexp.h
969 perl$(O) : scope.h
970 perl$(O) : sv.h
971 perl$(O) : vmsish.h
972 perl$(O) : util.h
973 perly$(O) : EXTERN.h
974 perly$(O) : av.h
975 perly$(O) : config.h
976 perly$(O) : cop.h
977 perly$(O) : cv.h
978 perly$(O) : embed.h
979 perly$(O) : form.h
980 perly$(O) : gv.h
981 perly$(O) : handy.h
982 perly$(O) : hv.h
983 perly$(O) : mg.h
984 perly$(O) : op.h
985 perly$(O) : opcode.h
986 perly$(O) : perl.h
987 perly$(O) : perly.h
988 perly$(O) : perly.c
989 perly$(O) : pp.h
990 perly$(O) : proto.h
991 perly$(O) : regexp.h
992 perly$(O) : scope.h
993 perly$(O) : sv.h
994 perly$(O) : vmsish.h
995 perly$(O) : util.h
996 pp$(O) : EXTERN.h
997 pp$(O) : av.h
998 pp$(O) : config.h
999 pp$(O) : cop.h
1000 pp$(O) : cv.h
1001 pp$(O) : embed.h
1002 pp$(O) : form.h
1003 pp$(O) : gv.h
1004 pp$(O) : handy.h
1005 pp$(O) : hv.h
1006 pp$(O) : mg.h
1007 pp$(O) : op.h
1008 pp$(O) : opcode.h
1009 pp$(O) : perl.h
1010 pp$(O) : perly.h
1011 pp$(O) : pp.c
1012 pp$(O) : pp.h
1013 pp$(O) : proto.h
1014 pp$(O) : regexp.h
1015 pp$(O) : scope.h
1016 pp$(O) : sv.h
1017 pp$(O) : vmsish.h
1018 pp$(O) : util.h
1019 pp_ctl$(O) : EXTERN.h
1020 pp_ctl$(O) : av.h
1021 pp_ctl$(O) : config.h
1022 pp_ctl$(O) : cop.h
1023 pp_ctl$(O) : cv.h
1024 pp_ctl$(O) : embed.h
1025 pp_ctl$(O) : form.h
1026 pp_ctl$(O) : gv.h
1027 pp_ctl$(O) : handy.h
1028 pp_ctl$(O) : hv.h
1029 pp_ctl$(O) : mg.h
1030 pp_ctl$(O) : op.h
1031 pp_ctl$(O) : opcode.h
1032 pp_ctl$(O) : perl.h
1033 pp_ctl$(O) : perly.h
1034 pp_ctl$(O) : pp_ctl.c
1035 pp_ctl$(O) : pp.h
1036 pp_ctl$(O) : proto.h
1037 pp_ctl$(O) : regexp.h
1038 pp_ctl$(O) : scope.h
1039 pp_ctl$(O) : sv.h
1040 pp_ctl$(O) : vmsish.h
1041 pp_ctl$(O) : util.h
1042 pp_hot$(O) : EXTERN.h
1043 pp_hot$(O) : av.h
1044 pp_hot$(O) : config.h
1045 pp_hot$(O) : cop.h
1046 pp_hot$(O) : cv.h
1047 pp_hot$(O) : embed.h
1048 pp_hot$(O) : form.h
1049 pp_hot$(O) : gv.h
1050 pp_hot$(O) : handy.h
1051 pp_hot$(O) : hv.h
1052 pp_hot$(O) : mg.h
1053 pp_hot$(O) : op.h
1054 pp_hot$(O) : opcode.h
1055 pp_hot$(O) : perl.h
1056 pp_hot$(O) : perly.h
1057 pp_hot$(O) : pp_hot.c
1058 pp_hot$(O) : pp.h
1059 pp_hot$(O) : proto.h
1060 pp_hot$(O) : regexp.h
1061 pp_hot$(O) : scope.h
1062 pp_hot$(O) : sv.h
1063 pp_hot$(O) : vmsish.h
1064 pp_hot$(O) : util.h
1065 pp_sys$(O) : EXTERN.h
1066 pp_sys$(O) : av.h
1067 pp_sys$(O) : config.h
1068 pp_sys$(O) : cop.h
1069 pp_sys$(O) : cv.h
1070 pp_sys$(O) : embed.h
1071 pp_sys$(O) : form.h
1072 pp_sys$(O) : gv.h
1073 pp_sys$(O) : handy.h
1074 pp_sys$(O) : hv.h
1075 pp_sys$(O) : mg.h
1076 pp_sys$(O) : op.h
1077 pp_sys$(O) : opcode.h
1078 pp_sys$(O) : perl.h
1079 pp_sys$(O) : perly.h
1080 pp_sys$(O) : pp_sys.c
1081 pp_sys$(O) : pp.h
1082 pp_sys$(O) : proto.h
1083 pp_sys$(O) : regexp.h
1084 pp_sys$(O) : scope.h
1085 pp_sys$(O) : sv.h
1086 pp_sys$(O) : vmsish.h
1087 pp_sys$(O) : util.h
1088 regcomp$(O) : EXTERN.h
1089 regcomp$(O) : INTERN.h
1090 regcomp$(O) : av.h
1091 regcomp$(O) : config.h
1092 regcomp$(O) : cop.h
1093 regcomp$(O) : cv.h
1094 regcomp$(O) : embed.h
1095 regcomp$(O) : form.h
1096 regcomp$(O) : gv.h
1097 regcomp$(O) : handy.h
1098 regcomp$(O) : hv.h
1099 regcomp$(O) : mg.h
1100 regcomp$(O) : op.h
1101 regcomp$(O) : opcode.h
1102 regcomp$(O) : perl.h
1103 regcomp$(O) : perly.h
1104 regcomp$(O) : pp.h
1105 regcomp$(O) : proto.h
1106 regcomp$(O) : regcomp.c
1107 regcomp$(O) : regcomp.h
1108 regcomp$(O) : regexp.h
1109 regcomp$(O) : scope.h
1110 regcomp$(O) : sv.h
1111 regcomp$(O) : vmsish.h
1112 regcomp$(O) : util.h
1113 regexec$(O) : EXTERN.h
1114 regexec$(O) : av.h
1115 regexec$(O) : config.h
1116 regexec$(O) : cop.h
1117 regexec$(O) : cv.h
1118 regexec$(O) : embed.h
1119 regexec$(O) : form.h
1120 regexec$(O) : gv.h
1121 regexec$(O) : handy.h
1122 regexec$(O) : hv.h
1123 regexec$(O) : mg.h
1124 regexec$(O) : op.h
1125 regexec$(O) : opcode.h
1126 regexec$(O) : perl.h
1127 regexec$(O) : perly.h
1128 regexec$(O) : pp.h
1129 regexec$(O) : proto.h
1130 regexec$(O) : regcomp.h
1131 regexec$(O) : regexec.c
1132 regexec$(O) : regexp.h
1133 regexec$(O) : scope.h
1134 regexec$(O) : sv.h
1135 regexec$(O) : vmsish.h
1136 regexec$(O) : util.h
1137 gv$(O) : EXTERN.h
1138 gv$(O) : av.h
1139 gv$(O) : config.h
1140 gv$(O) : cop.h
1141 gv$(O) : cv.h
1142 gv$(O) : embed.h
1143 gv$(O) : form.h
1144 gv$(O) : gv.c
1145 gv$(O) : gv.h
1146 gv$(O) : handy.h
1147 gv$(O) : hv.h
1148 gv$(O) : mg.h
1149 gv$(O) : op.h
1150 gv$(O) : opcode.h
1151 gv$(O) : perl.h
1152 gv$(O) : perly.h
1153 gv$(O) : pp.h
1154 gv$(O) : proto.h
1155 gv$(O) : regexp.h
1156 gv$(O) : scope.h
1157 gv$(O) : sv.h
1158 gv$(O) : vmsish.h
1159 gv$(O) : util.h
1160 sv$(O) : EXTERN.h
1161 sv$(O) : av.h
1162 sv$(O) : config.h
1163 sv$(O) : cop.h
1164 sv$(O) : cv.h
1165 sv$(O) : embed.h
1166 sv$(O) : form.h
1167 sv$(O) : gv.h
1168 sv$(O) : handy.h
1169 sv$(O) : hv.h
1170 sv$(O) : mg.h
1171 sv$(O) : op.h
1172 sv$(O) : opcode.h
1173 sv$(O) : perl.h
1174 sv$(O) : perly.h
1175 sv$(O) : pp.h
1176 sv$(O) : proto.h
1177 sv$(O) : regexp.h
1178 sv$(O) : scope.h
1179 sv$(O) : sv.c
1180 sv$(O) : sv.h
1181 sv$(O) : vmsish.h
1182 sv$(O) : util.h
1183 taint$(O) : EXTERN.h
1184 taint$(O) : av.h
1185 taint$(O) : config.h
1186 taint$(O) : cop.h
1187 taint$(O) : cv.h
1188 taint$(O) : embed.h
1189 taint$(O) : form.h
1190 taint$(O) : gv.h
1191 taint$(O) : handy.h
1192 taint$(O) : hv.h
1193 taint$(O) : mg.h
1194 taint$(O) : op.h
1195 taint$(O) : opcode.h
1196 taint$(O) : perl.h
1197 taint$(O) : perly.h
1198 taint$(O) : pp.h
1199 taint$(O) : proto.h
1200 taint$(O) : regexp.h
1201 taint$(O) : scope.h
1202 taint$(O) : sv.h
1203 taint$(O) : taint.c
1204 taint$(O) : vmsish.h
1205 taint$(O) : util.h
1206 toke$(O) : EXTERN.h
1207 toke$(O) : av.h
1208 toke$(O) : config.h
1209 toke$(O) : cop.h
1210 toke$(O) : cv.h
1211 toke$(O) : embed.h
1212 toke$(O) : form.h
1213 toke$(O) : gv.h
1214 toke$(O) : handy.h
1215 toke$(O) : hv.h
1216 toke$(O) : keywords.h
1217 toke$(O) : mg.h
1218 toke$(O) : op.h
1219 toke$(O) : opcode.h
1220 toke$(O) : perl.h
1221 toke$(O) : perly.h
1222 toke$(O) : pp.h
1223 toke$(O) : proto.h
1224 toke$(O) : regexp.h
1225 toke$(O) : scope.h
1226 toke$(O) : sv.h
1227 toke$(O) : toke.c
1228 toke$(O) : vmsish.h
1229 toke$(O) : util.h
1230 util$(O) : EXTERN.h
1231 util$(O) : av.h
1232 util$(O) : config.h
1233 util$(O) : cop.h
1234 util$(O) : cv.h
1235 util$(O) : embed.h
1236 util$(O) : form.h
1237 util$(O) : gv.h
1238 util$(O) : handy.h
1239 util$(O) : hv.h
1240 util$(O) : mg.h
1241 util$(O) : op.h
1242 util$(O) : opcode.h
1243 util$(O) : perl.h
1244 util$(O) : perly.h
1245 util$(O) : pp.h
1246 util$(O) : proto.h
1247 util$(O) : regexp.h
1248 util$(O) : scope.h
1249 util$(O) : sv.h
1250 util$(O) : vmsish.h
1251 util$(O) : util.c
1252 util$(O) : util.h
1253 deb$(O) : EXTERN.h
1254 deb$(O) : av.h
1255 deb$(O) : config.h
1256 deb$(O) : cop.h
1257 deb$(O) : cv.h
1258 deb$(O) : deb.c
1259 deb$(O) : embed.h
1260 deb$(O) : form.h
1261 deb$(O) : gv.h
1262 deb$(O) : handy.h
1263 deb$(O) : hv.h
1264 deb$(O) : mg.h
1265 deb$(O) : op.h
1266 deb$(O) : opcode.h
1267 deb$(O) : perl.h
1268 deb$(O) : perly.h
1269 deb$(O) : pp.h
1270 deb$(O) : proto.h
1271 deb$(O) : regexp.h
1272 deb$(O) : scope.h
1273 deb$(O) : sv.h
1274 deb$(O) : vmsish.h
1275 deb$(O) : util.h
1276 run$(O) : EXTERN.h
1277 run$(O) : av.h
1278 run$(O) : config.h
1279 run$(O) : cop.h
1280 run$(O) : cv.h
1281 run$(O) : embed.h
1282 run$(O) : form.h
1283 run$(O) : gv.h
1284 run$(O) : handy.h
1285 run$(O) : hv.h
1286 run$(O) : mg.h
1287 run$(O) : op.h
1288 run$(O) : opcode.h
1289 run$(O) : perl.h
1290 run$(O) : perly.h
1291 run$(O) : pp.h
1292 run$(O) : proto.h
1293 run$(O) : regexp.h
1294 run$(O) : run.c
1295 run$(O) : scope.h
1296 run$(O) : sv.h
1297 run$(O) : vmsish.h
1298 run$(O) : util.h
1299 vms$(O) : EXTERN.h
1300 vms$(O) : av.h
1301 vms$(O) : config.h
1302 vms$(O) : cop.h
1303 vms$(O) : cv.h
1304 vms$(O) : embed.h
1305 vms$(O) : form.h
1306 vms$(O) : gv.h
1307 vms$(O) : handy.h
1308 vms$(O) : hv.h
1309 vms$(O) : mg.h
1310 vms$(O) : op.h
1311 vms$(O) : opcode.h
1312 vms$(O) : perl.h
1313 vms$(O) : perly.h
1314 vms$(O) : pp.h
1315 vms$(O) : proto.h
1316 vms$(O) : regexp.h
1317 vms$(O) : vms.c
1318 vms$(O) : scope.h
1319 vms$(O) : sv.h
1320 vms$(O) : vmsish.h
1321 vms$(O) : util.h
1322 miniperlmain$(O) : EXTERN.h
1323 miniperlmain$(O) : av.h
1324 miniperlmain$(O) : config.h
1325 miniperlmain$(O) : cop.h
1326 miniperlmain$(O) : cv.h
1327 miniperlmain$(O) : embed.h
1328 miniperlmain$(O) : form.h
1329 miniperlmain$(O) : gv.h
1330 miniperlmain$(O) : handy.h
1331 miniperlmain$(O) : hv.h
1332 miniperlmain$(O) : mg.h
1333 miniperlmain$(O) : miniperlmain.c
1334 miniperlmain$(O) : op.h
1335 miniperlmain$(O) : opcode.h
1336 miniperlmain$(O) : perl.h
1337 miniperlmain$(O) : perly.h
1338 miniperlmain$(O) : pp.h
1339 miniperlmain$(O) : proto.h
1340 miniperlmain$(O) : regexp.h
1341 miniperlmain$(O) : scope.h
1342 miniperlmain$(O) : sv.h
1343 miniperlmain$(O) : vmsish.h
1344 miniperlmain$(O) : util.h
1345 perlmain$(O) : EXTERN.h
1346 perlmain$(O) : av.h
1347 perlmain$(O) : config.h
1348 perlmain$(O) : cop.h
1349 perlmain$(O) : cv.h
1350 perlmain$(O) : embed.h
1351 perlmain$(O) : form.h
1352 perlmain$(O) : gv.h
1353 perlmain$(O) : handy.h
1354 perlmain$(O) : hv.h
1355 perlmain$(O) : mg.h
1356 perlmain$(O) : op.h
1357 perlmain$(O) : opcode.h
1358 perlmain$(O) : perl.h
1359 perlmain$(O) : perly.h
1360 perlmain$(O) : perlmain.c
1361 perlmain$(O) : pp.h
1362 perlmain$(O) : proto.h
1363 perlmain$(O) : regexp.h
1364 perlmain$(O) : scope.h
1365 perlmain$(O) : sv.h
1366 perlmain$(O) : vmsish.h
1367 perlmain$(O) : util.h
1368 globals$(O) : INTERN.h
1369 globals$(O) : av.h
1370 globals$(O) : config.h
1371 globals$(O) : cop.h
1372 globals$(O) : cv.h
1373 globals$(O) : embed.h
1374 globals$(O) : form.h
1375 globals$(O) : gv.h
1376 globals$(O) : handy.h
1377 globals$(O) : hv.h
1378 globals$(O) : mg.h
1379 globals$(O) : op.h
1380 globals$(O) : opcode.h
1381 globals$(O) : perl.h
1382 globals$(O) : perly.h
1383 globals$(O) : globals.c
1384 globals$(O) : pp.h
1385 globals$(O) : proto.h
1386 globals$(O) : regexp.h
1387 globals$(O) : scope.h
1388 globals$(O) : sv.h
1389 globals$(O) : vmsish.h
1390 globals$(O) : util.h
1391 .endif # !LINK_ONLY
1392
1393 config.h : [.vms]config.vms
1394         Copy/Log/NoConfirm [.vms]config.vms []config.h
1395
1396 vmsish.h : [.vms]vmsish.h
1397         Copy/Log/NoConfirm [.vms]vmsish.h []vmsish.h
1398
1399 vms.c : [.vms]vms.c
1400         Copy/Log/Noconfirm [.vms]vms.c []
1401
1402 $(CRTL) : $(MAKEFILE)
1403         @ @[.vms]genopt "$(CRTL)/Write" "|" "$(LIBS1)|$(LIBS2)|$(SOCKLIB)"
1404
1405
1406 cleanlis :
1407         - If F$Search("*.Lis").nes."" Then Delete/NoConfirm/Log *.Lis;*
1408         - If F$Search("*.CPP").nes."" Then Delete/NoConfirm/Log *.CPP;*
1409         - If F$Search("*.Map").nes."" Then Delete/NoConfirm/Log *.Map;*
1410
1411 tidy : cleanlis
1412         - If F$Search("*.Opt;-1").nes."" Then Purge/NoConfirm/Log *.Opt
1413         - If F$Search("*$(O);-1").nes."" Then Purge/NoConfirm/Log *$(O)
1414         - If F$Search("*$(E);-1").nes."" Then Purge/NoConfirm/Log *$(E)
1415         - If F$Search("Config.H;-1").nes."" Then Purge/NoConfirm/Log Config.H
1416         - If F$Search("Config.SH;-1").nes."" Then Purge/NoConfirm/Log Config.SH
1417         - If F$Search("perly.c;-1").nes."" Then Purge/NoConfirm/Log perly.c
1418         - If F$Search("perly.h;-1").nes."" Then Purge/NoConfirm/Log perly.h
1419         - If F$Search("VMSish.H;-1").nes."" Then Purge/NoConfirm/Log VMSish.H
1420         - If F$Search("VMS.C;-1")   .nes."" Then Purge/NoConfirm/Log VMS.C
1421         - If F$Search("Perlmain.C;-1")   .nes."" Then Purge/NoConfirm/Log Perlmain.C
1422         - If F$Search("Perlshr_Gbl*.Mar;-1")   .nes."" Then Purge/NoConfirm/Log Perlshr_Gbl*.Mar
1423         - If F$Search("[.Ext.DynaLoader]DL_VMS$(O);-1").nes."" Then Purge/NoConfirm/Log [.Ext.DynaLoader]DL_VMS$(O)
1424         - If F$Search("[.Ext.DynaLoader]DL_VMS.C;-1").nes."" Then Purge/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C
1425         - If F$Search("[.Ext.Safe...];-1").nes."" Then Purge/NoConfirm/Log [.Ext.Safe]
1426         - If F$Search("[.Ext.FileHandle...];-1").nes."" Then Purge/NoConfirm/Log [.Ext.FileHandle]
1427         - If F$Search("[.VMS.Ext...]*.C;-1").nes."" Then Purge/NoConfirm/Log [.VMS.Ext...]*.C
1428         - If F$Search("[.VMS.Ext...]*$(O);-1").nes."" Then Purge/NoConfirm/Log [.VMS.Ext...]*$(O)
1429         - If F$Search("[.Lib.Auto...]*.al;-1").nes."" Then Purge/NoConfirm/Log [.Lib.Auto...]*.al
1430         - If F$Search("[.Lib.Auto...]autosplit.ix;-1").nes."" Then Purge/NoConfirm/Log [.Lib.Auto...]autosplit.ix
1431         - If F$Search("[.Lib]DynaLoader.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]DynaLoader.pm
1432         - If F$Search("[.Lib]Socket.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]Socket.pm
1433         - If F$Search("[.Lib]Config.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]Config.pm
1434         - If F$Search("[.Lib.$(ARCH)]Config.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib.$(ARCH)]Config.pm
1435         - If F$Search("[.Lib.VMS]*.*;-1").nes."" Then Purge/NoConfirm/Log [.Lib.VMS]*.*
1436         - If F$Search("[.Lib.Pod]*.Pod;-1").nes."" Then Purge/NoConfirm/Log [.Lib.Pod]*.Pod
1437         - If F$Search("$(ARCHCORE)*.*").nes."" Then Purge/NoConfirm/Log $(ARCHCORE)*.*
1438         - If F$Search("[.utils]*.;-1").nes."" Then Purge/NoConfirm/Log [.utils]*.
1439         - If F$Search("[.lib.pod]*.;-1").nes."" Then Purge/NoConfirm/Log [.lib.pod]*.
1440
1441 clean : tidy
1442         - If F$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*/Exclude=PerlShr_*.Opt
1443         - If F$Search("*$(O);*") .nes."" Then Delete/NoConfirm/Log *$(O);*
1444         - If F$Search("Config.H").nes."" Then Delete/NoConfirm/Log Config.H;*
1445         - If F$Search("Config.SH").nes."" Then Delete/NoConfirm/Log Config.SH;*
1446         - If F$Search(F$Parse("Sys$Disk:[]","$(SOCKH)")).nes."" Then Delete/NoConfirm/Log $(SOCKH);*
1447         - If F$Search(F$Parse("Sys$Disk:[]","$(SOCKC)")).nes."" Then Delete/NoConfirm/Log $(SOCKC);*
1448         - If F$Search("perly.c").nes."" Then Delete/NoConfirm/Log perly.c;*
1449         - If F$Search("perly.h").nes."" Then Delete/NoConfirm/Log perly.h;*
1450         - If F$Search("VMSish.H").nes."" Then Delete/NoConfirm/Log VMSish.H;*
1451         - If F$Search("VMS.C")   .nes."" Then Delete/NoConfirm/Log VMS.C;*
1452         - If F$Search("Perlmain.C")   .nes."" Then Delete/NoConfirm/Log Perlmain.C;*
1453         - If F$Search("Perlshr_Gbl*.Mar")   .nes."" Then Delete/NoConfirm/Log Perlshr_Gbl*.Mar;*
1454         - If F$Search("*.TS").nes."" Then Delete/NoConfirm/Log *.TS;*
1455         - If F$Search("[.Ext.DynaLoader]DL_VMS$(O)").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DL_VMS$(O);*
1456         - If F$Search("[.Ext.DynaLoader]DL_VMS.C").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C;*
1457         - If F$Search("[.Ext.Socket]Socket$(O)").nes."" Then Delete/NoConfirm/Log [.Ext.Socket]Socket$(O);*
1458         - If F$Search("[.Ext.Socket]Socket.C").nes."" Then Delete/NoConfirm/Log [.Ext.Socket]Socket.C;*
1459         - If F$Search("[.VMS.Ext...]*.C").nes."" Then Delete/NoConfirm/Log [.VMS.Ext...]*.C;*
1460         - If F$Search("[.VMS.Ext...]*$(O)").nes."" Then Delete/NoConfirm/Log [.VMS.Ext...]*$(O);*
1461         Set Default [.ext.Fcntl]
1462         - $(MMS) clean
1463         Set Default [--]
1464         Set Default [.ext.FileHandle]
1465         - $(MMS) clean
1466         Set Default [--]
1467         Set Default [.ext.Safe]
1468         - $(MMS) clean
1469         Set Default [--]
1470
1471 realclean : clean
1472         - If F$Search("*$(OLB)").nes."" Then Delete/NoConfirm/Log *$(OLB);*
1473         - If F$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*
1474         - $(MINIPERL) -e "use File::Path; rmtree(['lib/auto','lib/VMS','lib/$(ARCH)'],1,0);"
1475         - If F$Search("[.Lib]DynaLoader.pm").nes."" Then Delete/NoConfirm/Log [.Lib]DynaLoader.pm;*
1476         - If F$Search("[.Lib]Config.pm").nes."" Then Delete/NoConfirm/Log [.Lib]Config.pm;*
1477         - If F$Search("[.Lib.$(ARCH)]Config.pm").nes."" Then Delete/NoConfirm/Log [.Lib.$(ARCH)]Config.pm;*
1478         - If F$Search("[.lib.ExtUtils]Miniperl.pm").nes."" Then Delete/NoConfirm/Log [.lib.ExtUtils]Miniperl.pm;*
1479         - If F$Search("[.utils]*.").nes."" Then Delete/NoConfirm/Log [.utils]*.;*
1480         - If F$Search("[.lib.pod]*.pod").nes."" Then Delete/NoConfirm/Log [.lib.pod]*.pod;*
1481         - If F$Search("[.lib.pod]perldoc.").nes."" Then Delete/NoConfirm/Log [.lib.pod]perldoc.;*
1482         - If F$Search("[.lib.pod]pod2*.").nes."" Then Delete/NoConfirm/Log [.lib.pod]pod2*.;*
1483         Set Default [.ext.Fcntl]
1484         - $(MMS) realclean
1485         Set Default [--]
1486         Set Default [.ext.FileHandle]
1487         - $(MMS) realclean
1488         Set Default [--]
1489         Set Default [.ext.Safe]
1490         - $(MMS) realclean
1491         Set Default [--]
1492         - If F$Search("[.Lib]Config.pm").nes."" Then Delete/NoConfirm/Log [.Lib]Config.pm;*
1493         - If F$Search("*$(E)").nes."" Then Delete/NoConfirm/Log *$(E);*
1494
1495 cleansrc : clean
1496         - If F$Search("*.C;-1").nes."" Then Purge/NoConfirm/Log *.C
1497         - If F$Search("*.H;-1").nes."" Then Purge/NoConfirm/Log *.H
1498         - If F$Search("*.VMS;-1").nes."" Then Purge/NoConfirm/Log *.VMS
1499         - If F$Search("[.VMS]$(MAKEFILE);-1").nes."" Then Purge/NoConfirm/Log [.VMS]$(MAKEFILE)
1500         - If F$Search("[.VMS]*.C;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.C
1501         - If F$Search("[.VMS]*.H;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.H
1502         - If F$Search("[.VMS]*.Pl;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.Pl
1503         - If F$Search("[.VMS]*.VMS;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.VMS
1504         - If F$Search("[.VMS...]*.pm;-1").nes."" Then Purge/NoConfirm/Log [.VMS...]*.pm
1505         - If F$Search("[.VMS...]*.xs;-1").nes."" Then Purge/NoConfirm/Log [.VMS...]*.xs