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