1 # Descrip.MMS for perl5 on VMS
2 # Last revised 22-Mar-1996 by Charles Bailey bailey@genetics.upenn.edu
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.)
10 #: Lines beginning with "#:" will be removed by mms2make.pl when converting
11 #: this file to MAKE syntax.
14 #: Building with VAX C, on system without DEC C installed or with VAX C default:
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.
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)
38 #### Start of system configuration section. ####
41 #: >>>>> Architecture-specific options <<<<<
43 # File type to use for object files
45 # File type to use for object libraries
47 # File type to use for executable images
50 # File type to use for object files
52 # File type to use for object libraries
54 # File type to use for executable images
64 OBJVAL = $(MMS$TARGET_NAME)$(O)
67 # Updated by fndvers.com -- do not edit by hand
68 PERL_VERSION = 5_00326#
71 ARCHDIR = [.lib.$(ARCH).$(PERL_VERSION)]
72 ARCHCORE = [.lib.$(ARCH).$(PERL_VERSION).CORE]
73 ARCHAUTO = [.lib.$(ARCH).$(PERL_VERSION).auto]
76 #: Backwards compatibility
77 .ifdef DECC_PIPES_BROKEN
82 #: >>>>>Compiler-specific options <<<<<
85 @ @[.vms]fndvers.com "" "" "[.vms]descrip.mms"
86 @ If F$TrnLnm("Sys").eqs."" Then Define/NoLog SYS GNU_CC_Include:[VMS]
88 # -fno-builtin avoids bug in gcc up to version 2.6.2 which can destroy
89 # data when memcpy() is called on large (>64 kB) blocks of memory
90 # (fixed in gcc 2.6.3)
91 XTRACCFLAGS = /Obj=$(MMS$TARGET_NAME)$(O)/NoCase_Hack/Optimize=2/CC1="""""-fno-builtin"""""
93 XTRADEF = ,GNUC_ATTRIBUTE_CHECK
95 LIBS1 = GNU_CC:[000000]GCCLIB.OLB/Library
96 LIBS2 = Sys$Share:VAXCRTL/Shareable
101 DBGSPECFLAGS = /Show=(Source,Include,Expansion)
103 # Some versions of DECCRTL on AXP have a bug in chdir() which causes the change
104 # to persist after the image exits, even when this was not requested, iff
105 # SYSNAM is enabled. This is fixed in CSC Patch # AXPACRT04_061, but turning
106 # off SYSNAM for the MM[SK] subprocess doesn't hurt anything, so we do it
109 @ Set Process/Privilege=(NoSYSNAM)
110 @ @[.vms]fndvers.com "" "" "[.vms]descrip.mms"
111 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("DECC$System_Include").nes."" Then Define/NoLog SYS DECC$System_Include
113 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("DECC$System_Include").eqs."" Then Define/NoLog SYS Sys$Library
115 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("DECC$System_Include").eqs."" Then Define/NoLog SYS DECC$Library_Include
119 XTRACCFLAGS = /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=$(OBJVAL)
124 @ @[.vms]fndvers.com "" "" "[.vms]descrip.mms"
125 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("VAXC$Include").eqs."" Then Define/NoLog SYS Sys$Library
126 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("VAXC$Include").nes."" Then Define/NoLog SYS VAXC$Include
128 XTRACCFLAGS = /Include=[]/Object=$(O)
130 LIBS2 = Sys$Share:VAXCRTL/Shareable
136 #: >>>>> Configuration options <<<<<
137 #: __DEBUG__: builds images with full VMS debugger support
139 DBGCCFLAGS = /List/Debug/NoOpt$(DBGSPECFLAGS)
140 DBGLINKFLAGS = /Trace/Debug/Map/Full/Cross
144 DBGLINKFLAGS = /NoMap
148 #: SOCKET: build in support for TCP/IP sockets
149 #: By default, used SOCKETSHR library; see ReadMe.VMS
150 #: for information on changing socket support
152 SOCKDEF = ,VMS_DO_SOCKETS
153 SOCKLIB = SocketShr/Share
154 # N.B. the targets for $(SOCKC) and $(SOCKH) assume that the permanent
155 # copies live in [.vms], and the `clean' target will delete copies of
156 # these files in the current default directory.
161 SOCKOBJ = ,sockadapt$(O)
162 SOCKPM = [.lib]Socket.pm
174 # C preprocessor manifest "DEBUGGING" ==> perl -D, not the VMS debugger
175 CFLAGS = /Define=(DEBUGGING$(SOCKDEF)$(XTRADEF))$(XTRACCFLAGS)$(DBGCCFLAGS)
176 LINKFLAGS = $(DBGLINKFLAGS)
179 MAKEFILE = [.VMS]Descrip.MMS # this file
182 # Macros to invoke a copy of miniperl during the build. Targets which
183 # are built using these macros should depend on $(MINIPERL_EXE)
184 MINIPERL_EXE = Sys$Disk:[]miniperl$(E)
185 MINIPERL = MCR $(MINIPERL_EXE) "-I[.lib]"
186 XSUBPP = $(MINIPERL) [.lib.extutils]xsubpp -noprototypes
187 # Macro to invoke a preexisting copy of Perl. This is used to regenerate
188 # some header files when rebuilding Perl, but premade versions are provided
189 # in the distribution, so it's OK if this doesn't work; it's here to make
190 # life easier for those who modify Perl and rebuild it.
193 # Space-separated list of "static" extensions to build into perlshr (case counts).
195 # object files for these extensions; the trailing comma is required if
196 # there are any object files specified
197 # These must be built separately, or you must add rules below to build them
198 myextobj = [.ext.dynaloader]dl_vms$(O),
199 #: We include the Socket extension by default if we're building with socket
200 #: support, since it's small and not really worth bothering to keep track
203 EXT = $(MYEXT) Socket
204 extobj = $(myextobj) [.ext.socket]socket$(O),
211 #### End of system configuration section. ####
214 h1 = EXTERN.h, INTERN.h, XSUB.h, av.h, config.h, cop.h, cv.h
215 h2 = embed.h, form.h, gv.h, handy.h, hv.h, keywords.h, mg.h, op.h
216 h3 = opcode.h, patchlevel.h, perl.h, perly.h, pp.h, proto.h, regcomp.h
217 h4 = regexp.h, scope.h, sv.h, vmsish.h, util.h, perlio.h, perlsdio.h
218 h = $(h1), $(h2), $(h3), $(h4) $(SOCKHLIS)
220 c1 = av.c, scope.c, op.c, doop.c, doio.c, dump.c, hv.c, mg.c, universal.c, perlio.c
221 c2 = perl.c, perly.c, pp.c, pp_hot.c, pp_ctl.c, pp_sys.c, regcomp.c, regexec.c
222 c3 = gv.c, sv.c, taint.c, toke.c, util.c, deb.c, run.c, globals.c, vms.c $(SOCKCLIS)
224 c = $(c1), $(c2), $(c3), miniperlmain.c, perlmain.c
226 obj1 = perl$(O), gv$(O), toke$(O), perly$(O), op$(O), regcomp$(O), dump$(O), util$(O), mg$(O), perlio$(O)
227 obj2 = hv$(O), av$(O), run$(O), pp_hot$(O), sv$(O), pp$(O), scope$(O), pp_ctl$(O), pp_sys$(O)
228 obj3 = doop$(O), doio$(O), regexec$(O), taint$(O), deb$(O), universal$(O), globals$(O), vms$(O) $(SOCKOBJ)
230 obj = $(obj1), $(obj2), $(obj3)
232 ac1 = $(ARCHCORE)EXTERN.h $(ARCHCORE)INTERN.h $(ARCHCORE)XSUB.h $(ARCHCORE)av.h
233 ac2 = $(ARCHCORE)config.h $(ARCHCORE)cop.h $(ARCHCORE)cv.h $(ARCHCORE)embed.h
234 ac3 = $(ARCHCORE)form.h $(ARCHCORE)gv.h $(ARCHCORE)handy.h $(ARCHCORE)hv.h
235 ac4 = $(ARCHCORE)keywords.h $(ARCHCORE)mg.h $(ARCHCORE)op.h $(ARCHCORE)opcode.h
236 ac5 = $(ARCHCORE)patchlevel.h $(ARCHCORE)perl.h $(ARCHCORE)perly.h
237 ac6 = $(ARCHCORE)pp.h $(ARCHCORE)proto.h $(ARCHCORE)regcomp.h $(ARCHCORE)perlio.h $(ARCHCORE)perlsdio.h
238 ac7 = $(ARCHCORE)regexp.h $(ARCHCORE)scope.h $(ARCHCORE)sv.h $(ARCHCORE)util.h
239 ac8 = $(ARCHCORE)vmsish.h $(ARCHCORE)$(DBG)libperl$(OLB) $(ARCHCORE)perlshr_attr.opt
240 ac9 = $(ARCHCORE)$(DBG)perlshr_bld.opt
242 acs = $(ARCHCORE)$(SOCKH)
248 CRTLOPTS =,$(CRTL)/Options
254 .SUFFIXES $(O) .c .xs
257 $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
261 $(CC) $(CFLAGS) $(MMS$SOURCE)
264 $(XSUBPP) $(MMS$SOURCE) >$(MMS$SOURCE_NAME).c
265 $(CC) $(CFLAGS) $(MMS$SOURCE_NAME).c
268 utils1 = [.lib.pod]perldoc.com [.lib.ExtUtils]Miniperl.pm [.utils]c2ph.com [.utils]h2ph.com [.utils]h2xs.com [.lib]perlbug.com
269 utils2 = [.lib]splain.com [.utils]pl2pm.com
271 all : base extras x2p archcorefiles preplibrary perlpods
275 extras : Fcntl IO Opcode $(POSIX) libmods utils podxform
277 libmods : [.lib]Config.pm $(ARCHDIR)Config.pm [.lib]DynaLoader.pm [.lib.VMS]Filespec.pm
279 utils : $(utils1) $(utils2)
281 podxform : [.lib.pod]pod2text.com [.lib.pod]pod2html.com [.lib.pod]pod2latex.com [.lib.pod]pod2man.com
283 x2p : [.x2p]a2p$(E) [.x2p]s2p.com [.x2p]find2perl.com
286 pod1 = [.lib.pod]perl.pod [.lib.pod]perlapio.pod [.lib.pod]perlbook.pod [.lib.pod]perlbot.pod [.lib.pod]perlcall.pod
287 pod2 = [.lib.pod]perldata.pod [.lib.pod]perldebug.pod [.lib.pod]perldiag.pod [.lib.pod]perldsc.pod
288 pod3 = [.lib.pod]perlembed.pod [.lib.pod]perlform.pod [.lib.pod]perlfunc.pod [.lib.pod]perlguts.pod
289 pod4 = [.lib.pod]perlipc.pod [.lib.pod]perllocale.pod [.lib.pod]perllol.pod [.lib.pod]perlmod.pod [.lib.pod]perlobj.pod
290 pod5 = [.lib.pod]perlop.pod [.lib.pod]perlpod.pod [.lib.pod]perlre.pod
291 pod6 = [.lib.pod]perlref.pod [.lib.pod]perlrun.pod [.lib.pod]perlsec.pod [.lib.pod]perlstyle.pod
292 pod7 = [.lib.pod]perlsub.pod [.lib.pod]perlsyn.pod [.lib.pod]perltie.pod [.lib.pod]perltoc.pod
293 pod8 = [.lib.pod]perltrap.pod [.lib.pod]perlvar.pod [.lib.pod]perlxs.pod [.lib.pod]perlxstut.pod
295 perlpods : $(pod1) $(pod2) $(pod3) $(pod4) $(pod5) $(pod6) $(pod7) $(pod8) [.lib.pod]perlvms.pod
298 archcorefiles : $(ac1) $(ac2) $(ac3) $(ac4) $(ac5) $(ac6) $(ac7) $(ac8) $(ac9) $(acs) $(ARCHAUTO)time.stamp
301 miniperl : $(DBG)miniperl$(E)
303 miniperl_objs = miniperlmain$(O), $(obj)
304 $(MINIPERL_EXE) : miniperlmain$(O), $(DBG)libperl$(OLB) $(CRTL)
305 Link $(LINKFLAGS)/NoDebug/NoMap/NoFull/NoCross/Exe=$(MMS$TARGET) miniperlmain$(O), $(DBG)libperl$(OLB)/Library/Include=globals $(CRTLOPTS)
306 $(DBG)miniperl$(E) : $(miniperl_objs), $(DBG)libperl$(OLB) $(CRTL)
307 Link $(LINKFLAGS)/Exe=$(MMS$TARGET) miniperlmain$(O),$(DBG)libperl$(OLB)/Library/Include=globals $(CRTLOPTS)
309 $(DBG)libperl$(OLB) : $(obj)
310 @ If F$Search("$(MMS$TARGET)").eqs."" Then Library/Object/Create $(MMS$TARGET)
311 Library/Object/Replace $(MMS$TARGET) $(obj1)
312 Library/Object/Replace $(MMS$TARGET) $(obj2)
313 Library/Object/Replace $(MMS$TARGET) $(obj3)
315 perlmain.c : miniperlmain.c $(MINIPERL_EXE) [.vms]writemain.pl
316 $(MINIPERL) [.VMS]Writemain.pl "$(EXT)"
318 perl : $(DBG)perl$(E)
320 $(DBG)perl$(E) : perlmain$(O), $(DBG)perlshr$(E), $(MINIPERL_EXE)
321 @ @[.vms]genopt "PerlShr.Opt/Write" "|" "''F$Environment("Default")'$(DBG)PerlShr$(E)/Share"
323 Link $(LINKFLAGS)/Exe=$(MMS$TARGET) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option, crtl.opt/Option
325 Link $(LINKFLAGS)/Exe=$(MMS$TARGET) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option
328 $(DBG)perlshr$(E) : $(DBG)libperl$(OLB) $(extobj) $(DBG)perlshr_xtras.ts
329 Link /NoTrace$(LINKFLAGS)/Share=$(MMS$TARGET) $(extobj) []$(DBG)perlshr_bld.opt/Option, perlshr_attr.opt/Option
331 # The following files are built in one go by gen_shrfls.pl:
332 # perlshr_attr.opt, $(DBG)perlshr_bld.opt - VAX and AXP
333 # perlshr_gbl*.mar, perlshr_gbl*$(O) - VAX only
334 # The song and dance with gen_shrfls.opt accomodates DCL's 255 character
337 # This is a backup target used only with older versions of the DECCRTL which
338 # can't deal with pipes properly. See ReadMe.VMS for details.
339 $(DBG)perlshr_xtras.ts : perl.h config.h vmsish.h proto.h [.vms]gen_shrfls.pl $(MINIPERL_EXE) $(MAKEFILE) $(CRTL)
340 $(CC) $(CFLAGS)/NoObject/NoList/PreProcess=perl.i perl.h
341 @ $(MINIPERL) -e "print join('|',@ARGV),'|';" "~~NOCC~~perl.i~~$(CC)$(CFLAGS)" >gen_shrfls.opt
342 @ $(MINIPERL) -e "print join('|',@ARGV);" "$(O)" "$(DBG)" "$(OLB)" "$(EXT)" "$(CRTL)" >>gen_shrfls.opt
343 $(MINIPERL) [.vms]gen_shrfls.pl -f gen_shrfls.opt
344 @ Delete/NoLog/NoConfirm perl.i;, gen_shrfls.opt;
345 @ If F$Search("$(DBG)perlshr_xtras.ts").nes."" Then Delete/NoLog/NoConfirm $(DBG)perlshr_xtras.ts;*
346 @ Copy _NLA0: $(DBG)perlshr_xtras.ts
348 $(DBG)perlshr_xtras.ts : perl.h config.h vmsish.h proto.h [.vms]gen_shrfls.pl $(MINIPERL_EXE) $(MAKEFILE) $(CRTL)
349 @ $(MINIPERL) -e "print join('|',@ARGV),'|';" "$(CC)$(CFLAGS)" >gen_shrfls.opt
350 @ $(MINIPERL) -e "print join('|',@ARGV);" "$(O)" "$(DBG)" "$(OLB)" "$(EXT)" "$(CRTL)" >>gen_shrfls.opt
351 $(MINIPERL) [.vms]gen_shrfls.pl -f gen_shrfls.opt
352 @ Delete/NoLog/NoConfirm gen_shrfls.opt;
353 @ If F$Search("$(DBG)perlshr_xtras.ts").nes."" Then Delete/NoLog/NoConfirm $(DBG)perlshr_xtras.ts;*
354 @ Copy _NLA0: $(DBG)perlshr_xtras.ts
357 $(ARCHDIR)config.pm : [.lib]config.pm
358 Create/Directory $(ARCHDIR)
359 Copy $(MMS$SOURCE) $(MMS$TARGET)
361 # Once again, we accomodate DCL's 255 character buffer
362 [.lib]config.pm : [.vms]config.vms [.vms]genconfig.pl $(MINIPERL_EXE)
363 @ $(MINIPERL) -e "print join('|',@ARGV),'|';" "cc=$(CC)$(CFLAGS)" >genconfig.opt
364 @ $(MINIPERL) -e "print join('|',@ARGV),'|';" "ldflags=$(LINKFLAGS)|obj_ext=$(O)|exe_ext=$(E)|lib_ext=$(OLB)" >>genconfig.opt
365 $(MINIPERL) [.VMS]GenConfig.Pl -f genconfig.opt
366 @ Delete/NoLog/NoConfirm genconfig.opt;
367 $(MINIPERL) ConfigPM.
369 [.ext.dynaloader]dl_vms.c : [.ext.dynaloader]dl_vms.xs $(MINIPERL_EXE)
370 $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
372 [.ext.dynaloader]dl_vms$(O) : [.ext.dynaloader]dl_vms.c
373 $(CC) $(CFLAGS) /Object=$(MMS$TARGET) $(MMS$SOURCE)
375 [.lib]DynaLoader.pm : [.ext.dynaloader]dynaloader.pm
376 Copy/Log/NoConfirm [.ext.dynaloader]dynaloader.pm [.lib]DynaLoader.pm
377 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
378 @ $(MINIPERL) -e "use AutoSplit; autosplit_lib_modules(@ARGV)" [.lib]DynaLoader.pm
380 Opcode : [.lib]Opcode.pm [.lib]ops.pm [.lib]Safe.pm [.lib.auto.Opcode]Opcode$(E)
383 [.lib]Opcode.pm : [.ext.Opcode]Descrip.MMS
384 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
385 @ Set Default [.ext.Opcode]
389 [.lib]ops.pm : [.ext.Opcode]Descrip.MMS
390 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
391 @ Set Default [.ext.Opcode]
395 [.lib]Safe.pm : [.ext.Opcode]Descrip.MMS
396 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
397 @ Set Default [.ext.Opcode]
401 [.lib.auto.Opcode]Opcode$(E) : [.ext.Opcode]Descrip.MMS
402 @ Set Default [.ext.Opcode]
406 # Add "-I[--.lib]" t $(MINIPERL) so we use this copy of lib after C<chdir>
407 # ${@} necessary to distract different versions of MM[SK]/make
408 [.ext.Opcode]Descrip.MMS : [.ext.Opcode]Makefile.PL $(ARCHDIR)Config.pm [.lib.VMS]Filespec.pm [.lib]DynaLoader.pm $(DBG)perlshr$(E)
409 $(MINIPERL) "-I[--.lib]" -e "chdir('[.ext.Opcode]') or die $!; do 'Makefile.PL'; print ${@} if ${@};" "INST_LIB=[--.lib]" "INST_ARCHLIB=[--.lib]"
411 Fcntl : [.lib]Fcntl.pm [.lib.auto.Fcntl]Fcntl$(E)
414 [.lib]Fcntl.pm : [.ext.Fcntl]Descrip.MMS
415 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
416 @ Set Default [.ext.Fcntl]
420 [.lib.auto.Fcntl]Fcntl$(E) : [.ext.Fcntl]Descrip.MMS
421 @ Set Default [.ext.Fcntl]
425 # Add "-I[--.lib]" t $(MINIPERL) so we use this copy of lib after C<chdir>
426 # ${@} necessary to distract different versions of MM[SK]/make
427 [.ext.Fcntl]Descrip.MMS : [.ext.Fcntl]Makefile.PL $(ARCHDIR)Config.pm [.lib.VMS]Filespec.pm [.lib]DynaLoader.pm $(DBG)perlshr$(E)
428 $(MINIPERL) "-I[--.lib]" -e "chdir('[.ext.Fcntl]') or die $!; do 'Makefile.PL'; print ${@} if ${@};" "INST_LIB=[--.lib]" "INST_ARCHLIB=[--.lib]"
430 POSIX : [.lib]POSIX.pm [.lib.auto.POSIX]POSIX$(E)
433 [.lib]POSIX.pm : [.ext.POSIX]Descrip.MMS
434 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
435 @ Set Default [.ext.POSIX]
439 [.lib.auto.POSIX]POSIX$(E) : [.ext.POSIX]Descrip.MMS
440 @ Set Default [.ext.POSIX]
444 # Add "-I[--.lib]" t $(MINIPERL) so we use this copy of lib after C<chdir>
445 # ${@} necessary to distract different versions of MM[SK]/make
446 [.ext.POSIX]Descrip.MMS : [.ext.POSIX]Makefile.PL $(ARCHDIR)Config.pm [.lib.VMS]Filespec.pm [.lib]DynaLoader.pm $(DBG)perlshr$(E)
447 $(MINIPERL) "-I[--.lib]" -e "chdir('[.ext.POSIX]') or die $!; do 'Makefile.PL'; print ${@} if ${@};" "INST_LIB=[--.lib]" "INST_ARCHLIB=[--.lib]"
449 IO : [.lib]IO.pm [.lib.IO]File.pm [.lib.IO]Handle.pm [.lib.IO]Pipe.pm [.lib.IO]Seekable.pm [.lib.IO]Socket.pm [.lib.auto.IO]IO$(E)
452 [.lib]IO.pm : [.ext.IO]Descrip.MMS
453 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
454 @ Set Default [.ext.IO]
458 [.lib.IO]File.pm : [.ext.IO]Descrip.MMS
459 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
460 @ Set Default [.ext.IO]
464 [.lib.IO]Handle.pm : [.ext.IO]Descrip.MMS
465 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
466 @ Set Default [.ext.IO]
470 [.lib.IO]Pipe.pm : [.ext.IO]Descrip.MMS
471 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
472 @ Set Default [.ext.IO]
476 [.lib.IO]Seekable.pm : [.ext.IO]Descrip.MMS
477 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
478 @ Set Default [.ext.IO]
482 [.lib.IO]Socket.pm : [.ext.IO]Descrip.MMS
483 @ If F$Search("[.lib]auto.dir").eqs."" Then Create/Directory [.lib.auto]
484 @ Set Default [.ext.IO]
488 [.lib.auto.IO]IO$(E) : [.ext.IO]Descrip.MMS
489 @ Set Default [.ext.IO]
493 # Add "-I[--.lib]" t $(MINIPERL) so we use this copy of lib after C<chdir>
494 # ${@} necessary to distract different versions of MM[SK]/make
495 [.ext.IO]Descrip.MMS : [.ext.IO]Makefile.PL $(ARCHDIR)Config.pm [.lib.VMS]Filespec.pm [.lib]DynaLoader.pm $(DBG)perlshr$(E)
496 $(MINIPERL) "-I[--.lib]" -e "chdir('[.ext.IO]') or die $!; do 'Makefile.PL'; print ${@} if ${@};" "INST_LIB=[--.lib]" "INST_ARCHLIB=[--.lib]"
498 [.lib.VMS]Filespec.pm : [.vms.ext]Filespec.pm
499 @ If F$Search("[.lib]VMS.Dir").eqs."" Then Create/Directory [.lib.VMS]
500 Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
502 [.lib.pod]perldoc.com : [.utils]perldoc.PL $(ARCHDIR)Config.pm
503 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
504 $(MINIPERL) $(MMS$SOURCE)
505 Copy/Log [.utils]perldoc.com $(MMS$TARGET)
507 [.lib.ExtUtils]Miniperl.pm : Minimod.PL miniperlmain.c $(ARCHDIR)Config.pm
508 $(MINIPERL) $(MMS$SOURCE) >$(MMS$TARGET)
510 [.utils]c2ph.com : [.utils]c2ph.PL $(ARCHDIR)Config.pm
511 $(MINIPERL) $(MMS$SOURCE)
513 [.utils]h2ph.com : [.utils]h2ph.PL $(ARCHDIR)Config.pm
514 $(MINIPERL) $(MMS$SOURCE)
516 [.utils]h2xs.com : [.utils]h2xs.PL $(ARCHDIR)Config.pm
517 $(MINIPERL) $(MMS$SOURCE)
519 [.lib]perlbug.com : [.utils]perlbug.PL $(ARCHDIR)Config.pm
520 $(MINIPERL) $(MMS$SOURCE)
521 Rename/Log [.utils]perlbug.com $(MMS$TARGET)
523 [.utils]pl2pm.com : [.utils]pl2pm.PL $(ARCHDIR)Config.pm
524 $(MINIPERL) $(MMS$SOURCE)
526 [.lib]splain.com : [.utils]splain.PL $(ARCHDIR)Config.pm
527 $(MINIPERL) $(MMS$SOURCE)
528 Rename/Log [.utils]splain.com $(MMS$TARGET)
530 [.x2p]find2perl.com : [.x2p]find2perl.PL $(ARCHDIR)Config.pm
531 $(MINIPERL) $(MMS$SOURCE)
533 [.x2p]s2p.com : [.x2p]s2p.PL $(ARCHDIR)Config.pm
534 $(MINIPERL) $(MMS$SOURCE)
536 # Rename catches problem with some DECC versions in which object file is
537 # placed in current default dir, not same one as source file.
538 [.x2p]$(DBG)a2p$(E) : [.x2p]a2p$(O), [.x2p]hash$(O), [.x2p]str$(O), [.x2p]util$(O), [.x2p]walk$(O)
539 @ If F$Search("a2p$(O)").nes."" Then Rename/NoLog a2p$(O),hash$(O),str$(O),util$(O),walk$(O) [.x2p]
540 Link $(LINKFLAGS) /Exe=$(MMS$TARGET) $(MMS$SOURCE_LIST) $(CRTLOPTS)
542 # Accomodate buggy cpp in some version of DECC, which chokes on illegal
544 [.x2p]a2p$(O) : [.x2p]a2p.c $(MINIPERL_EXE)
545 $(MINIPERL) -pe "s/^#line\s+(\d+)\s+\Q""y.tab.c""/#line $1 ""y_tab.c""/;" $(MMS$SOURCE) >$(MMS$TARGET_NAME)_vms.c
546 $(CC) $(CFLAGS) /Object=$(MMS$TARGET) $(MMS$TARGET_NAME)_vms.c
547 Delete/Log/NoConfirm $(MMS$TARGET_NAME)_vms.c;
549 [.lib.pod]pod2html.com : [.pod]pod2html.PL $(ARCHDIR)Config.pm
550 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
551 $(MINIPERL) $(MMS$SOURCE)
552 Rename/Log [.pod]pod2html.com $(MMS$TARGET)
554 [.lib.pod]pod2latex.com : [.pod]pod2latex.PL $(ARCHDIR)Config.pm
555 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
556 $(MINIPERL) $(MMS$SOURCE)
557 Rename/Log [.pod]pod2latex.com $(MMS$TARGET)
559 [.lib.pod]pod2man.com : [.pod]pod2man.PL $(ARCHDIR)Config.pm
560 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
561 $(MINIPERL) $(MMS$SOURCE)
562 Rename/Log [.pod]pod2man.com $(MMS$TARGET)
564 [.lib.pod]pod2text.com : [.pod]pod2text.PL $(ARCHDIR)Config.pm
565 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
566 $(MINIPERL) $(MMS$SOURCE)
567 Rename/Log [.pod]pod2text.com $(MMS$TARGET)
569 preplibrary : $(MINIPERL_EXE) $(ARCHDIR)Config.pm [.lib]DynaLoader.pm [.lib.VMS]Filespec.pm $(SOCKPM)
570 @ Write Sys$Output "Autosplitting Perl library . . ."
571 @ Create/Directory [.lib.auto]
572 @ $(MINIPERL) -e "use AutoSplit; autosplit_lib_modules(@ARGV)" [.lib]*.pm [.lib.*]*.pm
574 [.lib.pod]perl.pod : [.pod]perl.pod
575 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
576 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
578 [.lib.pod]perlapio.pod : [.pod]perlapio.pod
579 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
580 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
582 [.lib.pod]perlbook.pod : [.pod]perlbook.pod
583 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
584 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
586 [.lib.pod]perlbot.pod : [.pod]perlbot.pod
587 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
588 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
590 [.lib.pod]perlcall.pod : [.pod]perlcall.pod
591 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
592 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
594 [.lib.pod]perldata.pod : [.pod]perldata.pod
595 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
596 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
598 [.lib.pod]perldebug.pod : [.pod]perldebug.pod
599 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
600 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
602 [.lib.pod]perldiag.pod : [.pod]perldiag.pod
603 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
604 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
606 [.lib.pod]perldsc.pod : [.pod]perldsc.pod
607 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
608 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
610 [.lib.pod]perlembed.pod : [.pod]perlembed.pod
611 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
612 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
614 [.lib.pod]perlform.pod : [.pod]perlform.pod
615 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
616 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
618 [.lib.pod]perlfunc.pod : [.pod]perlfunc.pod
619 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
620 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
622 [.lib.pod]perlguts.pod : [.pod]perlguts.pod
623 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
624 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
626 [.lib.pod]perllocale.pod : [.pod]perllocale.pod
627 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
628 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
630 [.lib.pod]perlipc.pod : [.pod]perlipc.pod
631 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
632 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
634 [.lib.pod]perllol.pod : [.pod]perllol.pod
635 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
636 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
638 [.lib.pod]perlmod.pod : [.pod]perlmod.pod
639 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
640 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
642 [.lib.pod]perlobj.pod : [.pod]perlobj.pod
643 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
644 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
646 [.lib.pod]perlop.pod : [.pod]perlop.pod
647 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
648 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
650 [.lib.pod]perlpod.pod : [.pod]perlpod.pod
651 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
652 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
654 [.lib.pod]perlre.pod : [.pod]perlre.pod
655 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
656 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
658 [.lib.pod]perlref.pod : [.pod]perlref.pod
659 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
660 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
662 [.lib.pod]perlrun.pod : [.pod]perlrun.pod
663 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
664 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
666 [.lib.pod]perlsec.pod : [.pod]perlsec.pod
667 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
668 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
670 [.lib.pod]perlstyle.pod : [.pod]perlstyle.pod
671 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
672 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
674 [.lib.pod]perlsub.pod : [.pod]perlsub.pod
675 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
676 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
678 [.lib.pod]perlsyn.pod : [.pod]perlsyn.pod
679 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
680 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
682 [.lib.pod]perltie.pod : [.pod]perltie.pod
683 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
684 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
686 [.lib.pod]perltoc.pod : [.pod]perltoc.pod
687 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
688 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
690 [.lib.pod]perltrap.pod : [.pod]perltrap.pod
691 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
692 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
694 [.lib.pod]perlvar.pod : [.pod]perlvar.pod
695 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
696 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
698 [.lib.pod]perlxs.pod : [.pod]perlxs.pod
699 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
700 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
702 [.lib.pod]perlxstut.pod : [.pod]perlxstut.pod
703 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
704 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
706 [.lib.pod]perlvms.pod : [.vms]perlvms.pod
707 @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
708 @ Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
711 @ @[.vms]make_command $(MMS) $(MMSQUALIFIERS) $(MMSTARGETS)
712 @ @[.vms]myconfig "$(CC)" "$(CFLAGS)" "$(LINKFLAGS)" "$(LIBS1)" "$(LIBS2)" "$(SOCKLIB)" "$(EXT)" "$(DBG)"
718 $(SOCKOBJ) : $(SOCKC) $(SOCKH)
720 [.ext.Socket]Socket$(O) : [.ext.Socket]Socket.c
721 $(CC) $(CFLAGS) /Object=$(MMS$TARGET) $(MMS$SOURCE)
723 [.ext.Socket]Socket.c : [.ext.Socket]Socket.xs $(MINIPERL_EXE)
724 $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
729 $(SOCKC) : [.vms]$(SOCKC)
730 Copy/Log/NoConfirm [.vms]$(SOCKC) []$(SOCKC)
732 $(SOCKH) : [.vms]$(SOCKH)
733 Copy/Log/NoConfirm [.vms]$(SOCKH) []$(SOCKH)
735 [.lib]Socket.pm : [.ext.Socket]Socket.pm
736 Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
739 # The following three header files are generated automatically
740 # keywords.h : keywords.pl
741 # opcode.h : opcode.pl
742 # embed.h : embed.pl global.sym interp.sym
743 # The correct versions should be already supplied with the perl kit,
744 # in case you don't have perl available.
745 # To force them to run, type
748 $(INSTPERL) keywords.pl
749 $(INSTPERL) opcode.pl
752 # VMS uses modified perly.[ch] with tags for globaldefs if using DEC compiler
753 perly.c : [.vms]perly_c.vms
754 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
755 perly.h : [.vms]perly_h.vms
756 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
758 # I now supply perly.c with the kits, so the following section is
759 # commented out if you don't have byacc.
760 # Altered for VMS by Charles Bailey bailey@genetics.upenn.edu
762 # @ Write Sys$Output "Expect 80 shift/reduce and 62 reduce/reduce conflicts"
763 # \$(BYACC) -d perly.y
764 # Has to be done by hand or by POSIX shell under VMS
765 # sh \$(shellflags) ./perly.fixer y.tab.c perly.c
766 # rename y.tab.h perly.h
767 # $(INSTPERL) [.vms]vms_yfix.pl perly.c perly.h [.vms]perly_c.vms [.vms]perly_h.vms
771 perly$(O) : perly.c, perly.h, $(h)
772 $(CC) $(CFLAGS) $(MMS$SOURCE)
775 [.t.lib]vmsfspec.t : [.vms.ext]filespec.t
776 Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
778 test : all [.t.lib]vmsfspec.t
779 - @[.VMS]Test.Com "$(E)"
781 # CORE subset for MakeMaker, so we can build Perl without sources
782 # Should move to VMS installperl when we get one
783 $(ARCHCORE)EXTERN.h : EXTERN.h
784 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
785 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
786 $(ARCHCORE)INTERN.h : INTERN.h
787 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
788 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
789 $(ARCHCORE)XSUB.h : XSUB.h
790 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
791 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
792 $(ARCHCORE)av.h : av.h
793 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
794 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
795 $(ARCHCORE)config.h : config.h
796 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
797 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
798 $(ARCHCORE)cop.h : cop.h
799 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
800 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
801 $(ARCHCORE)cv.h : cv.h
802 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
803 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
804 $(ARCHCORE)embed.h : embed.h
805 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
806 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
807 $(ARCHCORE)form.h : form.h
808 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
809 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
810 $(ARCHCORE)gv.h : gv.h
811 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
812 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
813 $(ARCHCORE)handy.h : handy.h
814 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
815 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
816 $(ARCHCORE)hv.h : hv.h
817 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
818 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
819 $(ARCHCORE)keywords.h : keywords.h
820 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
821 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
822 $(ARCHCORE)mg.h : mg.h
823 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
824 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
825 $(ARCHCORE)op.h : op.h
826 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
827 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
828 $(ARCHCORE)opcode.h : opcode.h
829 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
830 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
831 $(ARCHCORE)patchlevel.h : patchlevel.h
832 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
833 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
834 $(ARCHCORE)perl.h : perl.h
835 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
836 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
837 $(ARCHCORE)perlio.h : perlio.h
838 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
839 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
840 $(ARCHCORE)perlsdio.h : perlsdio.h
841 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
842 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
843 $(ARCHCORE)perly.h : perly.h
844 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
845 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
846 $(ARCHCORE)pp.h : pp.h
847 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
848 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
849 $(ARCHCORE)proto.h : proto.h
850 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
851 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
852 $(ARCHCORE)regcomp.h : regcomp.h
853 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
854 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
855 $(ARCHCORE)regexp.h : regexp.h
856 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
857 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
858 $(ARCHCORE)scope.h : scope.h
859 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
860 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
861 $(ARCHCORE)sv.h : sv.h
862 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
863 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
864 $(ARCHCORE)util.h : util.h
865 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
866 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
867 $(ARCHCORE)vmsish.h : vmsish.h
868 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
869 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
871 $(ARCHCORE)$(SOCKH) : $(SOCKH)
872 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
873 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
875 $(ARCHCORE)$(DBG)libperl$(OLB) : $(DBG)libperl$(OLB) $(DBG)perlshr_xtras.ts
876 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
877 Copy/Log $(MMS$SOURCE) $(MMS$TARGET)
878 $(ARCHCORE)perlshr_attr.opt : $(DBG)perlshr_xtras.ts
879 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
880 Copy/Log perlshr_attr.opt $(MMS$TARGET)
881 $(ARCHCORE)$(DBG)perlshr_bld.opt : $(DBG)perlshr_xtras.ts
882 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
883 Copy/Log $(DBG)perlshr_bld.opt $(MMS$TARGET)
884 $(ARCHAUTO)time.stamp :
885 @ If F$Search("$(ARCHDIR)auto.dir").eqs."" Then Create/Directory $(ARCHAUTO)
886 @ If F$Search("$(MMS$TARGET)").eqs."" Then Copy/NoConfirm _NLA0: $(MMS$TARGET)
890 # AUTOMATICALLY GENERATED MAKE DEPENDENCIES--PUT NOTHING BELOW THIS LINE
1075 universal$(O) : EXTERN.h
1076 universal$(O) : av.h
1077 universal$(O) : config.h
1078 universal$(O) : cop.h
1079 universal$(O) : cv.h
1080 universal$(O) : embed.h
1081 universal$(O) : form.h
1082 universal$(O) : gv.h
1083 universal$(O) : handy.h
1084 universal$(O) : hv.h
1085 universal$(O) : mg.h
1086 universal$(O) : op.h
1087 universal$(O) : opcode.h
1088 universal$(O) : perl.h
1089 universal$(O) : perly.h
1090 universal$(O) : pp.h
1091 universal$(O) : proto.h
1092 universal$(O) : regexp.h
1093 universal$(O) : scope.h
1094 universal$(O) : sv.h
1095 universal$(O) : vmsish.h
1096 universal$(O) : util.h
1097 universal$(O) : universal.c
1121 perly$(O) : EXTERN.h
1123 perly$(O) : config.h
1133 perly$(O) : opcode.h
1139 perly$(O) : regexp.h
1142 perly$(O) : vmsish.h
1167 pp_ctl$(O) : EXTERN.h
1169 pp_ctl$(O) : config.h
1172 pp_ctl$(O) : embed.h
1175 pp_ctl$(O) : handy.h
1179 pp_ctl$(O) : opcode.h
1181 pp_ctl$(O) : perly.h
1182 pp_ctl$(O) : pp_ctl.c
1184 pp_ctl$(O) : proto.h
1185 pp_ctl$(O) : regexp.h
1186 pp_ctl$(O) : scope.h
1188 pp_ctl$(O) : vmsish.h
1190 pp_hot$(O) : EXTERN.h
1192 pp_hot$(O) : config.h
1195 pp_hot$(O) : embed.h
1198 pp_hot$(O) : handy.h
1202 pp_hot$(O) : opcode.h
1204 pp_hot$(O) : perly.h
1205 pp_hot$(O) : pp_hot.c
1207 pp_hot$(O) : proto.h
1208 pp_hot$(O) : regexp.h
1209 pp_hot$(O) : scope.h
1211 pp_hot$(O) : vmsish.h
1213 pp_sys$(O) : EXTERN.h
1215 pp_sys$(O) : config.h
1218 pp_sys$(O) : embed.h
1221 pp_sys$(O) : handy.h
1225 pp_sys$(O) : opcode.h
1227 pp_sys$(O) : perly.h
1228 pp_sys$(O) : pp_sys.c
1230 pp_sys$(O) : proto.h
1231 pp_sys$(O) : regexp.h
1232 pp_sys$(O) : scope.h
1234 pp_sys$(O) : vmsish.h
1236 regcomp$(O) : EXTERN.h
1237 regcomp$(O) : INTERN.h
1239 regcomp$(O) : config.h
1242 regcomp$(O) : embed.h
1243 regcomp$(O) : form.h
1245 regcomp$(O) : handy.h
1249 regcomp$(O) : opcode.h
1250 regcomp$(O) : perl.h
1251 regcomp$(O) : perly.h
1253 regcomp$(O) : proto.h
1254 regcomp$(O) : regcomp.c
1255 regcomp$(O) : regcomp.h
1256 regcomp$(O) : regexp.h
1257 regcomp$(O) : scope.h
1259 regcomp$(O) : vmsish.h
1260 regcomp$(O) : util.h
1261 regexec$(O) : EXTERN.h
1263 regexec$(O) : config.h
1266 regexec$(O) : embed.h
1267 regexec$(O) : form.h
1269 regexec$(O) : handy.h
1273 regexec$(O) : opcode.h
1274 regexec$(O) : perl.h
1275 regexec$(O) : perly.h
1277 regexec$(O) : proto.h
1278 regexec$(O) : regcomp.h
1279 regexec$(O) : regexec.c
1280 regexec$(O) : regexp.h
1281 regexec$(O) : scope.h
1283 regexec$(O) : vmsish.h
1284 regexec$(O) : util.h
1331 taint$(O) : EXTERN.h
1333 taint$(O) : config.h
1343 taint$(O) : opcode.h
1348 taint$(O) : regexp.h
1352 taint$(O) : vmsish.h
1364 toke$(O) : keywords.h
1470 perlio$(O) : EXTERN.h
1472 perlio$(O) : config.h
1475 perlio$(O) : embed.h
1478 perlio$(O) : handy.h
1482 perlio$(O) : opcode.h
1484 perlio$(O) : perly.h
1486 perlio$(O) : proto.h
1487 perlio$(O) : regexp.h
1488 perlio$(O) : perlio.c
1489 perlio$(O) : scope.h
1491 perlio$(O) : vmsish.h
1493 miniperlmain$(O) : EXTERN.h
1494 miniperlmain$(O) : av.h
1495 miniperlmain$(O) : config.h
1496 miniperlmain$(O) : cop.h
1497 miniperlmain$(O) : cv.h
1498 miniperlmain$(O) : embed.h
1499 miniperlmain$(O) : form.h
1500 miniperlmain$(O) : gv.h
1501 miniperlmain$(O) : handy.h
1502 miniperlmain$(O) : hv.h
1503 miniperlmain$(O) : mg.h
1504 miniperlmain$(O) : miniperlmain.c
1505 miniperlmain$(O) : op.h
1506 miniperlmain$(O) : opcode.h
1507 miniperlmain$(O) : perl.h
1508 miniperlmain$(O) : perly.h
1509 miniperlmain$(O) : pp.h
1510 miniperlmain$(O) : proto.h
1511 miniperlmain$(O) : regexp.h
1512 miniperlmain$(O) : scope.h
1513 miniperlmain$(O) : sv.h
1514 miniperlmain$(O) : vmsish.h
1515 miniperlmain$(O) : util.h
1516 perlmain$(O) : EXTERN.h
1518 perlmain$(O) : config.h
1519 perlmain$(O) : cop.h
1521 perlmain$(O) : embed.h
1522 perlmain$(O) : form.h
1524 perlmain$(O) : handy.h
1528 perlmain$(O) : opcode.h
1529 perlmain$(O) : perl.h
1530 perlmain$(O) : perly.h
1531 perlmain$(O) : perlmain.c
1533 perlmain$(O) : proto.h
1534 perlmain$(O) : regexp.h
1535 perlmain$(O) : scope.h
1537 perlmain$(O) : vmsish.h
1538 perlmain$(O) : util.h
1539 globals$(O) : INTERN.h
1541 globals$(O) : config.h
1544 globals$(O) : embed.h
1545 globals$(O) : form.h
1547 globals$(O) : handy.h
1551 globals$(O) : opcode.h
1552 globals$(O) : perl.h
1553 globals$(O) : perly.h
1554 globals$(O) : globals.c
1556 globals$(O) : proto.h
1557 globals$(O) : regexp.h
1558 globals$(O) : scope.h
1560 globals$(O) : vmsish.h
1561 globals$(O) : util.h
1562 [.x2p]a2p$(O) : [.x2p]a2p.c
1563 [.x2p]a2p$(O) : [.x2p]a2py.c
1564 [.x2p]a2p$(O) : [.x2p]INTERN.h
1565 [.x2p]a2p$(O) : [.x2p]a2p.h
1566 [.x2p]a2p$(O) : [.x2p]hash.h
1567 [.x2p]a2p$(O) : [.x2p]str.h
1568 [.x2p]a2p$(O) : handy.h
1569 [.x2p]hash$(O) : [.x2p]hash.c
1570 [.x2p]hash$(O) : [.x2p]EXTERN.h
1571 [.x2p]hash$(O) : [.x2p]a2p.h
1572 [.x2p]hash$(O) : [.x2p]hash.h
1573 [.x2p]hash$(O) : [.x2p]str.h
1574 [.x2p]hash$(O) : handy.h
1575 [.x2p]hash$(O) : [.x2p]util.h
1576 [.x2p]str$(O) : [.x2p]str.c
1577 [.x2p]str$(O) : [.x2p]EXTERN.h
1578 [.x2p]str$(O) : [.x2p]a2p.h
1579 [.x2p]str$(O) : [.x2p]hash.h
1580 [.x2p]str$(O) : [.x2p]str.h
1581 [.x2p]str$(O) : handy.h
1582 [.x2p]str$(O) : [.x2p]util.h
1583 [.x2p]util$(O) : [.x2p]util.c
1584 [.x2p]util$(O) : [.x2p]EXTERN.h
1585 [.x2p]util$(O) : [.x2p]a2p.h
1586 [.x2p]util$(O) : [.x2p]hash.h
1587 [.x2p]util$(O) : [.x2p]str.h
1588 [.x2p]util$(O) : handy.h
1589 [.x2p]util$(O) : [.x2p]INTERN.h
1590 [.x2p]util$(O) : [.x2p]util.h
1591 [.x2p]walk$(O) : [.x2p]walk.c
1592 [.x2p]walk$(O) : [.x2p]EXTERN.h
1593 [.x2p]walk$(O) : [.x2p]a2p.h
1594 [.x2p]walk$(O) : [.x2p]hash.h
1595 [.x2p]walk$(O) : [.x2p]str.h
1596 [.x2p]walk$(O) : handy.h
1597 [.x2p]walk$(O) : [.x2p]util.h
1600 config.h : [.vms]config.vms
1601 Copy/Log/NoConfirm [.vms]config.vms []config.h
1603 vmsish.h : [.vms]vmsish.h
1604 Copy/Log/NoConfirm [.vms]vmsish.h []vmsish.h
1607 Copy/Log/Noconfirm [.vms]vms.c []
1609 $(CRTL) : $(MAKEFILE)
1610 @ @[.vms]genopt "$(CRTL)/Write" "|" "$(LIBS1)|$(LIBS2)|$(SOCKLIB)"
1614 - If F$Search("*.Lis").nes."" Then Delete/NoConfirm/Log *.Lis;*
1615 - If F$Search("*.CPP").nes."" Then Delete/NoConfirm/Log *.CPP;*
1616 - If F$Search("*.Map").nes."" Then Delete/NoConfirm/Log *.Map;*
1619 - If F$Search("[...]*.Opt;-1").nes."" Then Purge/NoConfirm/Log [...]*.Opt
1620 - If F$Search("[...]*$(O);-1").nes."" Then Purge/NoConfirm/Log [...]*$(O)
1621 - If F$Search("[...]*$(E);-1").nes."" Then Purge/NoConfirm/Log [...]*$(E)
1622 - If F$Search("Config.H;-1").nes."" Then Purge/NoConfirm/Log Config.H
1623 - If F$Search("Config.SH;-1").nes."" Then Purge/NoConfirm/Log Config.SH
1624 - If F$Search("perly.c;-1").nes."" Then Purge/NoConfirm/Log perly.c
1625 - If F$Search("perly.h;-1").nes."" Then Purge/NoConfirm/Log perly.h
1626 - If F$Search("VMSish.H;-1").nes."" Then Purge/NoConfirm/Log VMSish.H
1627 - If F$Search("VMS.C;-1") .nes."" Then Purge/NoConfirm/Log VMS.C
1628 - If F$Search("Perlmain.C;-1") .nes."" Then Purge/NoConfirm/Log Perlmain.C
1629 - If F$Search("Perlshr_Gbl*.Mar;-1") .nes."" Then Purge/NoConfirm/Log Perlshr_Gbl*.Mar
1630 - If F$Search("[.Ext.DynaLoader]DL_VMS$(O);-1").nes."" Then Purge/NoConfirm/Log [.Ext.DynaLoader]DL_VMS$(O)
1631 - If F$Search("[.Ext.DynaLoader]DL_VMS.C;-1").nes."" Then Purge/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C
1632 - If F$Search("[.Ext.Opcode...];-1").nes."" Then Purge/NoConfirm/Log [.Ext.Opcode]
1633 - If F$Search("[.Ext.FileHandle...];-1").nes."" Then Purge/NoConfirm/Log [.Ext.FileHandle]
1634 - If F$Search("[.VMS.Ext...]*.C;-1").nes."" Then Purge/NoConfirm/Log [.VMS.Ext...]*.C
1635 - If F$Search("[.VMS.Ext...]*$(O);-1").nes."" Then Purge/NoConfirm/Log [.VMS.Ext...]*$(O)
1636 - If F$Search("[.Lib.Auto...]*.al;-1").nes."" Then Purge/NoConfirm/Log [.Lib.Auto...]*.al
1637 - If F$Search("[.Lib.Auto...]autosplit.ix;-1").nes."" Then Purge/NoConfirm/Log [.Lib.Auto...]autosplit.ix
1638 - If F$Search("[.Lib]DynaLoader.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]DynaLoader.pm
1639 - If F$Search("[.Lib]Socket.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]Socket.pm
1640 - If F$Search("[.Lib]Config.pm;-1").nes."" Then Purge/NoConfirm/Log [.Lib]Config.pm
1641 - If F$Search("$(ARCHDIR)Config.pm;-1").nes."" Then Purge/NoConfirm/Log $(ARCHDIR)Config.pm
1642 - If F$Search("[.Lib.VMS]*.*;-1").nes."" Then Purge/NoConfirm/Log [.Lib.VMS]*.*
1643 - If F$Search("[.Lib.Pod]*.Pod;-1").nes."" Then Purge/NoConfirm/Log [.Lib.Pod]*.Pod
1644 - If F$Search("$(ARCHCORE)*.*").nes."" Then Purge/NoConfirm/Log $(ARCHCORE)*.*
1645 - If F$Search("[.lib]*.com;-1").nes."" Then Purge/NoConfirm/Log [.lib]*.com
1646 - If F$Search("[.utils]*.com;-1").nes."" Then Purge/NoConfirm/Log [.utils]*.com
1647 - If F$Search("[.x2p]*.com;-1").nes."" Then Purge/NoConfirm/Log [.x2p]*.com
1648 - If F$Search("[.lib.pod]*.;-1").nes."" Then Purge/NoConfirm/Log [.lib.pod]*.
1651 Set Default [.ext.Fcntl]
1654 Set Default [.ext.FileHandle]
1657 Set Default [.ext.IO]
1660 Set Default [.ext.Opcode]
1664 Set Default [.ext.POSIX]
1668 - If F$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*/Exclude=PerlShr_*.Opt
1669 - If F$Search("[...]*$(O);*") .nes."" Then Delete/NoConfirm/Log [...]*$(O);*
1670 - If F$Search("Config.H").nes."" Then Delete/NoConfirm/Log Config.H;*
1671 - If F$Search("Config.SH").nes."" Then Delete/NoConfirm/Log Config.SH;*
1672 - If F$Search(F$Parse("Sys$Disk:[]","$(SOCKH)")).nes."" Then Delete/NoConfirm/Log $(SOCKH);*
1673 - If F$Search(F$Parse("Sys$Disk:[]","$(SOCKC)")).nes."" Then Delete/NoConfirm/Log $(SOCKC);*
1674 - If F$Search("perly.c").nes."" Then Delete/NoConfirm/Log perly.c;*
1675 - If F$Search("perly.h").nes."" Then Delete/NoConfirm/Log perly.h;*
1676 - If F$Search("VMSish.H").nes."" Then Delete/NoConfirm/Log VMSish.H;*
1677 - If F$Search("VMS.C") .nes."" Then Delete/NoConfirm/Log VMS.C;*
1678 - If F$Search("Perlmain.C") .nes."" Then Delete/NoConfirm/Log Perlmain.C;*
1679 - If F$Search("Perlshr_Gbl*.Mar") .nes."" Then Delete/NoConfirm/Log Perlshr_Gbl*.Mar;*
1680 - If F$Search("*.TS").nes."" Then Delete/NoConfirm/Log *.TS;*
1681 - If F$Search("[.Ext.DynaLoader]DL_VMS$(O)").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DL_VMS$(O);*
1682 - If F$Search("[.Ext.DynaLoader]DL_VMS.C").nes."" Then Delete/NoConfirm/Log [.Ext.DynaLoader]DL_VMS.C;*
1683 - If F$Search("[.Ext.Socket]Socket$(O)").nes."" Then Delete/NoConfirm/Log [.Ext.Socket]Socket$(O);*
1684 - If F$Search("[.Ext.Socket]Socket.C").nes."" Then Delete/NoConfirm/Log [.Ext.Socket]Socket.C;*
1685 - If F$Search("[.VMS.Ext...]*.C").nes."" Then Delete/NoConfirm/Log [.VMS.Ext...]*.C;*
1686 - If F$Search("[.VMS.Ext...]*$(O)").nes."" Then Delete/NoConfirm/Log [.VMS.Ext...]*$(O);*
1689 Set Default [.ext.Fcntl]
1692 Set Default [.ext.FileHandle]
1695 Set Default [.ext.IO]
1698 Set Default [.ext.Opcode]
1702 Set Default [.ext.POSIX]
1706 - If F$Search("*$(OLB)").nes."" Then Delete/NoConfirm/Log *$(OLB);*
1707 - If F$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*
1708 - $(MINIPERL) -e "use File::Path; rmtree(['lib/auto','lib/VMS','lib/$(ARCH)'],1,0);"
1709 - If F$Search("[.Lib]DynaLoader.pm").nes."" Then Delete/NoConfirm/Log [.Lib]DynaLoader.pm;*
1710 - If F$Search("[.Lib]Socket.pm").nes."" Then Delete/NoConfirm/Log [.Lib]Socket.pm;*
1711 - If F$Search("[.Lib]Config.pm").nes."" Then Delete/NoConfirm/Log [.Lib]Config.pm;*
1712 - If F$Search("[.Lib]*.com").nes."" Then Delete/NoConfirm/Log [.Lib]*.com;*
1713 - If F$Search("[.utils]*.com").nes."" Then Delete/NoConfirm/Log [.utils]*.com;*
1714 - If F$Search("[.x2p]*.com").nes."" Then Delete/NoConfirm/Log [.x2p]*.com;*
1715 - If F$Search("$(ARCHDIR)Config.pm").nes."" Then Delete/NoConfirm/Log $(ARCHDIR)Config.pm;*
1716 - If F$Search("[.lib.ExtUtils]Miniperl.pm").nes."" Then Delete/NoConfirm/Log [.lib.ExtUtils]Miniperl.pm;*
1717 - If F$Search("[.lib.pod]*.pod").nes."" Then Delete/NoConfirm/Log [.lib.pod]*.pod;*
1718 - If F$Search("[.lib.pod]perldoc.com").nes."" Then Delete/NoConfirm/Log [.lib.pod]perldoc.com;*
1719 - If F$Search("[.lib.pod]pod2*.com").nes."" Then Delete/NoConfirm/Log [.lib.pod]pod2*.com;*
1720 - If F$Search("[.t.lib]vmsfspec.t").nes."" Then Delete/NoConfirm/Log [.t.lib]vmsfspec.t;*
1721 - If F$Search("[...]*$(E)").nes."" Then Delete/NoConfirm/Log [...]*$(E);*
1724 - If F$Search("*.C;-1").nes."" Then Purge/NoConfirm/Log *.C
1725 - If F$Search("*.H;-1").nes."" Then Purge/NoConfirm/Log *.H
1726 - If F$Search("*.VMS;-1").nes."" Then Purge/NoConfirm/Log *.VMS
1727 - If F$Search("[.VMS]$(MAKEFILE);-1").nes."" Then Purge/NoConfirm/Log [.VMS]$(MAKEFILE)
1728 - If F$Search("[.VMS]*.C;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.C
1729 - If F$Search("[.VMS]*.H;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.H
1730 - If F$Search("[.VMS]*.Pl;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.Pl
1731 - If F$Search("[.VMS]*.VMS;-1").nes."" Then Purge/NoConfirm/Log [.VMS]*.VMS
1732 - If F$Search("[.VMS...]*.pm;-1").nes."" Then Purge/NoConfirm/Log [.VMS...]*.pm
1733 - If F$Search("[.VMS...]*.xs;-1").nes."" Then Purge/NoConfirm/Log [.VMS...]*.xs