This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perldelta for f60e676307
[perl5.git] / vms / descrip_mms.template
CommitLineData
97abc6ad
HM
1!GROK!THIS!
2# Descrip.MMS for perl5 on VMS
1f74f634 3# Last revised 5-Dec-2001 by Craig Berry -- craigberry@mac.com
97abc6ad
HM
4#
5#: This file uses MMS syntax, and can be processed using DEC's MMS product,
6#: or the free MMK clone (available by ftp at ftp.spc.edu). If you want to
7#: a Unix-style MAKE tool, run this file through mms2make.pl, which should
b4bc034f 8#: be found in the same directory as this file.
97abc6ad
HM
9#:
10#: Lines beginning with "#:" will be removed by mms2make.pl when converting
11#: this file to MAKE syntax.
97abc6ad
HM
12#
13# tidy -- purge files generated by executing this file
14# clean -- remove all intermediate (e.g. object files, C files generated
15# during build) files generated by executing this file,
c2b27382 16# but leave 'installable' files (images, library) intact
97abc6ad 17# realclean -- remove all files generated by executing this file
c2b27382 18# cleansrc -- 'realclean' + purge *.c,*.h,descrip.mms
97abc6ad
HM
19# crtl.opt -- compiler-specific linker options file (made automatically)
20#
21
22#### Start of system configuration section. ####
23
24~DECC~
7558ebc2 25~DECCXX~
97abc6ad
HM
26~GNUC~
27~ARCH-TYPE~ = 1
28~THREAD~
29~SOCKET~
429a5e67
DS
30~MALLOC~
31~CC~
3f39e13a
CB
32~MTK~
33~MTU~
498336ed 34~FLAGS~
e0261ef8 35~LARGEFILE~
44caa20c 36~ARCHNAME~
9152021d 37~USEVMSDEBUG~
b545184e 38~PREFIX~
97abc6ad
HM
39
40#: >>>>> Architecture-specific options <<<<<
86da1428
CB
41.ifdef IXE
42O = .ibj
43OLB = .ilb
44E = .ixe
45.else
97abc6ad
HM
46.ifdef AXE
47# File type to use for object files
48O = .abj
49# File type to use for object libraries
50OLB = .alb
51# File type to use for executable images
52E = .axe
53.else
54# File type to use for object files
55O = .obj
56# File type to use for object libraries
57OLB = .olb
58# File type to use for executable images
59E = .exe
60.endif
86da1428 61.endif
97abc6ad 62
86da1428 63.ifdef __IA64__
86da1428
CB
64OBJVAL = $(O)
65.else
97abc6ad 66.ifdef __AXP__
97abc6ad
HM
67OBJVAL = $(O)
68.else
97abc6ad
HM
69OBJVAL = $(MMS$TARGET_NAME)$(O)
70.endif
86da1428 71.endif
97abc6ad 72
85988417 73PERL_VERSION = ~PV~
97abc6ad 74
429a5e67 75.ifdef MALLOC
b0d5070b
CB
76MALLOC_O = malloc$(O)
77MALLOC_C = malloc$(C)
429a5e67
DS
78.endif
79
97abc6ad
HM
80.ifdef DECC_SOCKETS
81SOCKET=1
82.endif
83
44caa20c
CB
84ARCHDIR = [.lib.$(ARCHNAME).$(PERL_VERSION)]
85ARCHCORE = [.lib.$(ARCHNAME).$(PERL_VERSION).CORE]
86ARCHAUTO = [.lib.$(ARCHNAME).$(PERL_VERSION).auto]
97abc6ad 87
97abc6ad
HM
88#: >>>>>Compiler-specific options <<<<<
89.ifdef GNUC
90.first
91 @ If F$TrnLnm("Sys").eqs."" Then Define/NoLog SYS GNU_CC_Include:[VMS]
92CC = gcc
97abc6ad
HM
93# -fno-builtin avoids bug in gcc up to version 2.6.2 which can destroy
94# data when memcpy() is called on large (>64 kB) blocks of memory
95# (fixed in gcc 2.6.3)
96XTRACCFLAGS = /Obj=$(MMS$TARGET_NAME)$(O)/NoCase_Hack/Optimize=2
97DBGSPECFLAGS =
429a5e67 98XTRADEF =
97abc6ad
HM
99XTRAOBJS =
100LIBS1 = GNU_CC:[000000]GCCLIB.OLB/Library
101LIBS2 = Sys$Share:VAXCRTL/Shareable
102POSIX =
103.else
104XTRAOBJS =
105LIBS1 = $(XTRAOBJS)
6fb2e99a 106DBGSPECFLAGS = /Show=(expansion,include)/machine
97abc6ad
HM
107# Some versions of DECCRTL on AXP have a bug in chdir() which causes the change
108# to persist after the image exits, even when this was not requested, iff
109# SYSNAM is enabled. This is fixed in CSC Patch # AXPACRT04_061, but turning
110# off SYSNAM for the MM[SK] subprocess doesn't hurt anything, so we do it
111# just in case.
112.first
97abc6ad
HM
113 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("DECC$System_Include").nes."" Then Define/NoLog SYS DECC$System_Include
114.ifdef __AXP__
787c52d8 115 @ Set Process/Privilege=(NoSYSNAM)
97abc6ad
HM
116 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("DECC$System_Include").eqs."" Then Define/NoLog SYS Sys$Library
117.else
118 @ If F$TrnLnm("Sys").eqs."" .and. F$TrnLnm("DECC$System_Include").eqs."" Then Define/NoLog SYS DECC$Library_Include
119.endif
120
7558ebc2
PP
121.ifdef DECCXX
122XTRACCFLAGS = /Include=[]/Standard=ANSI/Prefix=All/Obj=$(OBJVAL)
123.else
97abc6ad 124XTRACCFLAGS = /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=$(OBJVAL)
7558ebc2 125.endif
97abc6ad
HM
126XTRADEF =
127POSIX = POSIX
97abc6ad
HM
128.endif
129
97abc6ad
HM
130#: >>>>> Configuration options <<<<<
131#: __DEBUG__: builds images with full VMS debugger support
132.ifdef __DEBUG__
133DBGCCFLAGS = /List/Debug/NoOpt$(DBGSPECFLAGS)
134DBGLINKFLAGS = /Trace/Debug/Map/Full/Cross
135DBG = DBG
136.else
137DBGCCFLAGS = /NoList
138DBGLINKFLAGS = /NoTrace/NoMap
139DBG =
140.endif
141
97abc6ad
HM
142.ifdef THREADED
143THREADDEF =
144THREAD = THREAD
145.endif
146
147.ifdef OLDTHREADED
429a5e67 148THREADDEF =
97abc6ad 149THREAD = THREAD
9ef4b0a6 150THRLIBS1 = sys$share:cma$lib_shr/share|sys$share:cma$rtl/share
97abc6ad 151.ifdef __AXP__
9ef4b0a6 152THRLIBS2 = sys$share:cma$open_lib_shr/share|sys$share:cma$open_rtl/share
97abc6ad
HM
153.endif
154.endif
155
3f39e13a
CB
156.ifdef MTU
157.ifdef MTK
158MTHREADLINKFLAGS = /THREADS=(MULTIPLE_KERNEL,UPCALLS)
159.else
160MTHREADLINKFLAGS = /THREADS=UPCALLS
161.endif
162.else
163MTHREADLINKFLAGS =
164.endif
165
97abc6ad 166# C preprocessor manifest "DEBUGGING" ==> perl -D, not the VMS debugger
e0261ef8 167.IFDEF LARGEFILE
96021e87
JM
168CFLAGS = $(XTRACCFLAGS)$(DBGCCFLAGS)$(FLAGS)/Define=$(LARGEFILE)
169X2PCFLAGS = $(XTRACCFLAGS)$(DBGCCFLAGS)$(FLAGS)/Define=(PERL_FOR_X2P,$(LARGEFILE))
170CORECFLAGS = $(XTRACCFLAGS)$(DBGCCFLAGS)$(FLAGS)/Define=(PERL_CORE,$(LARGEFILE))
e0261ef8 171.ELSE
498336ed 172CFLAGS = $(XTRACCFLAGS)$(DBGCCFLAGS)$(FLAGS)
e0261ef8
CB
173X2PCFLAGS = $(XTRACCFLAGS)$(DBGCCFLAGS)$(FLAGS)/Define=PERL_FOR_X2P
174CORECFLAGS = $(XTRACCFLAGS)$(DBGCCFLAGS)$(FLAGS)/Define=PERL_CORE
175.ENDIF
176
97abc6ad
HM
177LINKFLAGS = $(DBGLINKFLAGS)
178
179MAKE = $(MMS)
180MAKEFILE = Descrip.MMS # this file
181NOOP = continue
182
183# Macros to invoke a copy of miniperl during the build. Targets which
184# are built using these macros should depend on $(MINIPERL_EXE)
185MINIPERL_EXE = Sys$Disk:[]miniperl$(E)
f6b3c354 186MINIPERL = MCR $(MINIPERL_EXE) "-I[.lib]"
dfe814dc 187MINIPERLQ = MCR $(MINIPERL_EXE) ""-I[.lib]""
29637182 188XSUBPP = $(MINIPERL) "-I[.ext.re]" [.lib.extutils]xsubpp -noprototypes
97abc6ad
HM
189# Macro to invoke a preexisting copy of Perl. This is used to regenerate
190# some header files when rebuilding Perl, but premade versions are provided
191# in the distribution, so it's OK if this doesn't work; it's here to make
192# life easier for those who modify Perl and rebuild it.
193INSTPERL = perl
7eb47696
NC
194# Macros to invoke a copy of perl during the build. Targets which
195# are built using these macros should depend on $(PERL_EXE) EXT
bfeb8220
CB
196.IFDEF __DEBUG__
197PERL_EXE = Sys$Disk:[]n$(DBG)perl$(E)
198.ELSE
7eb47696 199PERL_EXE = Sys$Disk:[]perl$(E)
bfeb8220 200.ENDIF
7eb47696 201PERL = MCR $(PERL_EXE) "-I[.lib]"
97abc6ad
HM
202
203# Space-separated list of "static" extensions to build into perlshr (case counts).
204MYEXT = DynaLoader
205# object files for these extensions; the trailing comma is required if
206# there are any object files specified
207# These must be built separately, or you must add rules below to build them
859ef0cd 208myextobj = DynaLoader$(O),
97abc6ad
HM
209EXT = $(MYEXT)
210extobj = $(myextobj)
97abc6ad 211
429a5e67
DS
212.ifdef LIBS2
213.else
214LIBS2=
215.endif
97abc6ad 216
9ef4b0a6
BH
217.ifdef THRLIBS1
218.else
219THRLIBS1=
220.endif
221
222.ifdef THRLIBS2
223.else
224THRLIBS2=
225.endif
226
227FULLLIBS2 = $(LIBS2)|$(THRLIBS1)|$(THRLIBS2)
228
97abc6ad
HM
229#### End of system configuration section. ####
230
39aec2a9 231c0 = $(MALLOC_C) av.c caretx.c deb.c doio.c doop.c dump.c globals.c gv.c hv.c mro.c
7ee2227d 232c1 = mg.c locale.c mathoms.c miniperlmain.c numeric.c op.c pad.c perl.c perlapi.c perlio.c
10bc17b6 233c2 = perly.c pp.c pp_ctl.c pp_hot.c pp_pack.c pp_sort.c pp_sys.c regcomp.c regexec.c reentr.c
26ea9e12 234c3 = run.c scope.c sv.c taint.c toke.c universal.c utf8.c util.c vms.c keywords.c
b0d5070b
CB
235c = $(c0) $(c1) $(c2) $(c3)
236
5c9818e9 237obj0 = perl$(O)
7b74bef1 238obj1 = $(MALLOC_O) av$(O) caretx$(O) deb$(O) doio$(O) doop$(O) dump$(O) mro$(O) globals$(O) gv$(O) hv$(O)
cfc889ad 239obj2 = keywords$(O) locale$(O) mathoms$(O) mg$(O) miniperlmain$(O) numeric$(O) op$(O) pad$(O) perlapi$(O) perlio$(O)
5c9818e9 240obj3 = perly$(O) pp$(O) pp_ctl$(O) pp_hot$(O) reentr$(O) pp_pack$(O) pp_sort$(O) pp_sys$(O) regcomp$(O)
48462a74 241obj4 = regexec$(O) run$(O) scope$(O) sv$(O) taint$(O) toke$(O) universal$(O) utf8$(O) util$(O) vms$(O)
5c9818e9
CB
242
243mini_obj = perlmini$(O) $(obj1) $(obj2) $(obj3) $(obj4)
b0d5070b
CB
244obj = $(obj0) $(obj1) $(obj2) $(obj3) $(obj4)
245
63e9201e 246h0 = av.h config.h cop.h cv.h embed.h embedvar.h
02e4b6fe 247h1 = EXTERN.h form.h gv.h handy.h hv.h l1_char_class_tab.h INTERN.h intrpvar.h
8b09643d
NC
248h2 = iperlsys.h keywords.h mydtrace.h mg.h mg_vtable.h nostdio.h op.h
249h3 = op_reg_common.h opcode.h opnames.h overload.h pad.h parser.h patchlevel.h
250h4 = perl.h perlapi.h perlio.h perlsdio.h perlvars.h perly.h
66b82e1f 251h5 = pp.h pp_proto.h proto.h regcomp.h regexp.h regnodes.h scope.h
ef4abe76
NC
252h6 = sv.h thread.h utf8.h util.h vmsish.h warnings.h xsub.h
253h = $(h0) $(h1) $(h2) $(h3) $(h4) $(h5) $(h6)
787c52d8 254
787c52d8 255acopt = $(ARCHCORE)perlshr_attr.opt $(ARCHCORE)$(DBG)perlshr_bld.opt
5c0877fa 256ac = archcore_includes.ts $(acopt)
c05f8f3d 257
9387abf8
NC
258generated_headers = uudmap.h bitcount.h mg_data.h
259
97abc6ad
HM
260CRTL = []crtl.opt
261CRTLOPTS =,$(CRTL)/Options
262
263.SUFFIXES
264
265.ifdef LINK_ONLY
266.else
267.SUFFIXES $(O) .c .xs
268
269.xs.c :
270 $(XSUBPP) $(MMS$SOURCE) >$(MMS$TARGET)
271
97abc6ad
HM
272.c$(O) :
273 $(CC) $(CFLAGS) $(MMS$SOURCE)
274
275.xs$(O) :
276 $(XSUBPP) $(MMS$SOURCE) >$(MMS$SOURCE_NAME).c
277 $(CC) $(CFLAGS) $(MMS$SOURCE_NAME).c
278.endif
279
ca12659b
NC
280# Directories of Unicode data files generated by mktables
281unidatadirs = lib/unicore/To lib/unicore/lib
282
97abc6ad 283# Modules which must be installed before we can build extensions
611495fa 284LIBPREREQ = $(ARCHDIR)Config.pm $(ARCHDIR)Config_heavy.pl $(ARCHDIR)vmspipe.com
97abc6ad 285
7b4d95f7 286utils1 = [.utils]perldoc.com [.utils]c2ph.com [.utils]h2ph.com
c9dab4e9 287utils2 = [.utils]h2xs.com [.utils]libnetcfg.com [.lib]perlbug.com [.utils]json_pp.com
d658129c 288utils3 = [.utils]perlivp.com [.lib]splain.com [.utils]pl2pm.com [.utils]xsubpp.com [.utils]pod2html.com [.utils]instmodsh.com
bb4e9162 289utils4 = [.utils]enc2xs.com [.utils]piconv.com [.utils]cpan.com [.utils]prove.com [.utils]ptar.com [.utils]ptardiff.com [.utils]shasum.com
fb598ba5 290utils5 = [.utils]corelist.com [.utils]config_data.com [.utils]ptargrep.com [.utils]zipdetails.com
97abc6ad
HM
291
292.ifdef NOX2P
bfeb8220 293all : base extras archcorefiles preplibrary [.pod]perltoc.pod
1b2d7687
PP
294 @ QUALIFIERS := $(MMSQUALIFIERS)
295 @ QUALIFIERS = QUALIFIERS - """" - """"
dfe814dc 296 @ write sys$output " "
1b2d7687 297 @ write sys$output " Everything is up to date. '$(MMS)''QUALIFIERS' test' to run test suite."
97abc6ad 298.else
bfeb8220 299all : base extras x2p archcorefiles preplibrary [.pod]perltoc.pod
1b2d7687
PP
300 @ QUALIFIERS := $(MMSQUALIFIERS)
301 @ QUALIFIERS = QUALIFIERS - """" - """"
dfe814dc 302 @ write sys$output " "
1b2d7687 303 @ write sys$output " Everything is up to date. '$(MMS)''QUALIFIERS' test' to run test suite."
97abc6ad 304.endif
9c3905ef 305
5c9818e9 306git_version.h : $(MINIPERL_EXE) make_patchnum.pl
16ad9bfa 307 $(MINIPERL) make_patchnum.pl
05b0cfd1 308
f952ce75 309base : miniperl git_version.h nonxsext perl
97abc6ad 310 @ $(NOOP)
33c64ab2 311extras : dynext libmods utils extra.pods
97abc6ad
HM
312 @ $(NOOP)
313libmods : $(LIBPREREQ)
314 @ $(NOOP)
bb4e9162 315utils : $(utils1) $(utils2) $(utils3) $(utils4) $(utils5)
97abc6ad 316 @ $(NOOP)
71a0fcfa 317x2p : [.x2p]$(DBG)a2p$(E) [.x2p]s2p.com [.x2p]find2perl.com
97abc6ad 318 @ $(NOOP)
414b89cc
CB
319extra.pods : miniperl
320 @ @extra_pods.com
97abc6ad 321
03057ffb 322PERLDELTA_CURRENT = [.pod]perl5198delta.pod
600dcb9e
CB
323
324$(PERLDELTA_CURRENT) : [.pod]perldelta.pod
c6568584 325 Copy/NoConfirm/Log $(MMS$SOURCE) $(PERLDELTA_CURRENT)
1400179b 326
6e2c8928
NC
327[.pod]perlmodlib.pod : [.pod]perlmodlib.pl MANIFEST $(MINIPERL_EXE)
328 $(MINIPERL) [.pod]perlmodlib.pl "-q"
329
54df2684
NC
330[.pod]perlapi.pod : [.pod]perlintern.pod
331 @ $(NOOP)
332
30a06a3a
CB
333[.pod]perlintern.pod : embed.fnc autodoc.pl $(MINIPERL_EXE)
334 $(MINIPERL) autodoc.pl
335
600dcb9e 336[.pod]perltoc.pod : $(PERLDELTA_CURRENT) [.pod]perlapi.pod [.pod]perlintern.pod [.pod]perlmodlib.pod extra.pods $(PERL_EXE)
bfeb8220 337 @ define/user_mode $(DBG)PERLSHR SYS$DISK:[]$(DBG)perlshr$(E)
b78c1104 338 $(PERL) "-f" [.pod]buildtoc "-q"
97abc6ad 339
7e2254de 340archcorefiles : $(ac) $(ARCHAUTO)time.stamp
97abc6ad
HM
341 @ $(NOOP)
342
cb251201
NC
343# See the comment in Makefile.SH explaining this seemingly cranky ordering
344$(MINIPERL_EXE) : [.lib]buildcustomize.pl
345 @ $(NOOP)
5e4c4c91 346
93d6612c 347vmspipe.com : [.vms]vmspipe.com
1f74f634 348 Copy/NoConfirm/Log $(MMS$SOURCE) []
93d6612c
CB
349
350miniperl : $(DBG)miniperl$(E) vmspipe.com
97abc6ad 351 @ Continue
cb251201 352
2d11a7e9 353[.lib]buildcustomize.pl : miniperlmain$(O), $(DBG)libperlmini$(OLB) $(CRTL) write_buildcustomize.pl
cb251201 354 Link $(LINKFLAGS)/NoDebug/Trace/NoMap/NoFull/NoCross/Exe=$(MINIPERL_EXE) miniperlmain$(O), $(DBG)libperlmini$(OLB)/Library/Include=globals $(CRTLOPTS)
b78ac715 355 $(MINIPERL) "-f" write_buildcustomize.pl
cb251201 356
5c9818e9
CB
357$(DBG)miniperl$(E) : miniperlmain$(O), $(DBG)libperlmini$(OLB) $(CRTL)
358 Link $(LINKFLAGS)/Trace/Exe=$(MMS$TARGET) miniperlmain$(O), $(DBG)libperlmini$(OLB)/Library/Include=globals $(CRTLOPTS)
97abc6ad
HM
359
360$(DBG)libperl$(OLB) : $(obj)
361 @ If F$Search("$(MMS$TARGET)").eqs."" Then Library/Object/Create $(MMS$TARGET)
8f9bf0bf 362 Library/Object/Replace $(MMS$TARGET) $(MMS$SOURCE_LIST)
97abc6ad 363
5c9818e9
CB
364$(DBG)libperlmini$(OLB) : $(mini_obj)
365 @ If F$Search("$(MMS$TARGET)").eqs."" Then Library/Object/Create $(MMS$TARGET)
366 Library/Object/Replace $(MMS$TARGET) $(MMS$SOURCE_LIST)
367
7b4d95f7 368perlmain.c : miniperlmain.c $(MINIPERL_EXE) nonxsext
b4999888 369 $(MINIPERL) -"MExtUtils::Miniperl" -e "writemain(\'perlmain.c', @ARGV)" "$(EXT)"
97abc6ad 370
97abc6ad
HM
371.ifdef __DEBUG__
372# Link an extra perl that doesn't invoke the debugger
1f052492 373perl : $(DBG)perl$(E)
3f39e13a 374 Link $(LINKFLAGS)$(MTHREADLINKFLAGS)/NoDebug/Trace/NoMap/NoCross/NoFull/Exe=N$(DBG)perl$(E) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option $(CRTLOPTS)
97abc6ad 375.else
1f052492 376perl : $(DBG)perl$(E)
97abc6ad
HM
377 @ Continue
378.endif
379
380$(DBG)perl$(E) : perlmain$(O), $(DBG)perlshr$(E), $(MINIPERL_EXE)
381 @ @[.vms]genopt "PerlShr.Opt/Write" "|" "''F$Environment("Default")'$(DBG)PerlShr$(E)/Share"
3f39e13a 382 Link $(LINKFLAGS)$(MTHREADLINKFLAGS)/Exe=$(MMS$TARGET) perlmain$(O), perlshr.opt/Option, perlshr_attr.opt/Option $(CRTLOPTS)
97abc6ad 383
97abc6ad
HM
384$(DBG)perlshr$(E) : $(DBG)libperl$(OLB) $(extobj) $(DBG)perlshr_xtras.ts
385 Link $(LINKFLAGS)/Share=$(MMS$TARGET) $(extobj) []$(DBG)perlshr_bld.opt/Option, perlshr_attr.opt/Option
386
5c9818e9
CB
387perlmini.c : perl.c
388 @ IF F$SEARCH("$(MMS$TARGET)") .NES. "" THEN DELETE/NOCONFIRM/LOG $(MMS$TARGET);*
389 @ COPY/NOCONFIRM _NLA0: $(MMS$TARGET)
390 @ SET FILE /ATTRIBUTES=RFM:STMLF $(MMS$TARGET)
391 @ OPEN/APPEND perlmini $(MMS$TARGET)
392 @ WRITE perlmini "#define PERL_IS_MINIPERL"
393 @ CLOSE perlmini
394 @ APPEND/NOCONFIRM/LOG $(MMS$SOURCE) $(MMS$TARGET)
395
396perlmini$(O) : perlmini.c
397 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
398
6f83ef0e 399bitcount.h mg_data.h : uudmap.h
45b279ec 400 @ $(NOOP)
6999193b 401
92d23424 402uudmap.h : generate_uudmap$(E)
9387abf8 403 MCR SYS$DISK:[]generate_uudmap$(E) $(generated_headers)
9444d213 404
c3301a92 405generate_uudmap$(E) : generate_uudmap$(O) $(CRTL)
9444d213
NC
406 Link $(LINKFLAGS)/NoDebug/Trace/NoMap/NoFull/NoCross/Exe=$(MMS$TARGET) generate_uudmap$(O) $(CRTLOPTS)
407
6f83ef0e 408generate_uudmap$(O) : generate_uudmap.c mg_raw.h
b50d78f7
CB
409 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
410
97abc6ad
HM
411# The following files are built in one go by gen_shrfls.pl:
412# perlshr_attr.opt, $(DBG)perlshr_bld.opt - VAX and AXP
413# perlshr_gbl*.mar, perlshr_gbl*$(O) - VAX only
93ea32b8 414# The song and dance with gen_shrfls.opt accommodates DCL's line length limit.
97abc6ad 415$(DBG)perlshr_xtras.ts : perl.h config.h vmsish.h proto.h [.vms]gen_shrfls.pl $(MINIPERL_EXE) $(MAKEFILE) $(CRTL)
93ea32b8 416 @ $(MINIPERL) makedef.pl "PLATFORM=vms" > makedef.lis
b3ecbfd3
CB
417 @ $(MINIPERLQ) -e "print join('|',@ARGV),'|';" "$(CC)$(CFLAGS)" >gen_shrfls.opt
418 @ $(MINIPERLQ) -e "print join('|',@ARGV);" "$(O)" "$(DBG)" "$(OLB)" "$(EXT)" "$(CRTL)" >>gen_shrfls.opt
97abc6ad
HM
419 $(MINIPERL) [.vms]gen_shrfls.pl -f gen_shrfls.opt
420 @ Delete/NoLog/NoConfirm gen_shrfls.opt;
421 @ If F$Search("$(DBG)perlshr_xtras.ts").nes."" Then Delete/NoLog/NoConfirm $(DBG)perlshr_xtras.ts;*
422 @ Copy _NLA0: $(DBG)perlshr_xtras.ts
97abc6ad 423
1f74f634 424$(ARCHDIR)Config.pm : [.lib]Config.pm
97abc6ad 425 Create/Directory $(ARCHDIR)
1f74f634 426 Copy/NoConfirm/Log $(MMS$SOURCE) $(ARCHDIR)
97abc6ad 427
2d9d8159
NC
428$(ARCHDIR)Config_heavy.pl : [.lib]Config_heavy.pl
429 Create/Directory $(ARCHDIR)
430 Copy/NoConfirm/Log $(MMS$SOURCE) $(ARCHDIR)
431
1f74f634 432[.lib]Config.pm : config.h $(MINIPERL_EXE)
97abc6ad
HM
433 $(MINIPERL) ConfigPM.
434
93d6612c 435$(ARCHDIR)vmspipe.com : vmspipe.com
1f74f634 436 Copy $(MMS$SOURCE) $(ARCHDIR)
93d6612c 437
3dc3a597 438unidatafiles.ts : $(MINIPERL_EXE) [.lib]Config.pm [.lib.unicore]mktables nonxsext
3df51b85 439 $(MINIPERL) [.lib.unicore]mktables "-C" [.lib.unicore] "-P" [.pod] "-makelist" "-maketest" "-p"
23b62609
CB
440 @ If F$Search("$(MMS$TARGET)").nes."" Then Delete/NoLog/NoConfirm $(MMS$TARGET);*
441 @ Copy/NoConfirm _NLA0: $(MMS$TARGET)
ca12659b 442
2d11a7e9 443DynaLoader$(O) : [.lib]buildcustomize.pl $(ARCHDIR)Config.pm $(MINIPERL_EXE)
859ef0cd 444 $(MINIPERL) make_ext.pl "MAKE=$(MMS)" "DynaLoader"
25ea24bb 445
859ef0cd 446dynext : $(LIBPREREQ) $(DBG)perlshr$(E) unidatafiles.ts DynaLoader$(O) preplibrary makeppport $(MINIPERL_EXE)
a34ce875
NC
447 $(MINIPERL) make_ext.pl "MAKE=$(MMS)" "--dynamic" "--static"
448
291c8c21 449nonxsext : $(LIBPREREQ) preplibrary $(MINIPERL_EXE) [.pod]perlfunc.pod
a34ce875 450 $(MINIPERL) make_ext.pl "MAKE=$(MMS)" "--nonxs"
97abc6ad 451
4403bf93 452[.utils]perldoc.com : [.utils]perldoc.PL $(ARCHDIR)Config.pm
08da30e0 453 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
97abc6ad 454
cdf8b154 455[.utils]perlivp.com : [.utils]perlivp.PL $(ARCHDIR)Config.pm
08da30e0 456 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
cdf8b154 457
2bfebb05 458[.utils]cpan.com : [.utils]cpan.PL $(ARCHDIR)Config.pm
08da30e0 459 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
2bfebb05 460
4b618757 461[.utils]prove.com : [.utils]prove.PL $(ARCHDIR)Config.pm
08da30e0 462 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
291d3373
RGS
463
464[.utils]ptar.com : [.utils]ptar.PL $(ARCHDIR)Config.pm
08da30e0 465 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
4b618757 466
b8669316 467[.utils]ptardiff.com : [.utils]ptardiff.PL $(ARCHDIR)Config.pm
08da30e0 468 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
b8669316 469
deabda19
CBW
470[.utils]ptargrep.com : [.utils]ptargrep.PL $(ARCHDIR)Config.pm
471 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
472
3ddf9550 473[.utils]shasum.com : [.utils]shasum.PL $(ARCHDIR)Config.pm
08da30e0 474 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
3ddf9550 475
bb4e9162 476[.utils]config_data.com : [.utils]config_data.PL $(ARCHDIR)Config.pm
08da30e0 477 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
bb4e9162 478
6efb3e4d 479[.utils]corelist.com : [.utils]corelist.PL $(ARCHDIR)Config.pm
08da30e0 480 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
6efb3e4d 481
97abc6ad 482[.utils]c2ph.com : [.utils]c2ph.PL $(ARCHDIR)Config.pm
08da30e0 483 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
97abc6ad 484
d9f91944
CB
485[.utils]json_pp.com : [.utils]json_pp.PL $(ARCHDIR)Config.pm
486 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
487
14d70106 488[.utils]enc2xs.com : [.utils]enc2xs.PL $(ARCHDIR)Config.pm
08da30e0 489 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
14d70106 490
97abc6ad 491[.utils]h2ph.com : [.utils]h2ph.PL $(ARCHDIR)Config.pm
08da30e0 492 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
97abc6ad
HM
493
494[.utils]h2xs.com : [.utils]h2xs.PL $(ARCHDIR)Config.pm
08da30e0 495 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
97abc6ad 496
88be34b6 497[.utils]instmodsh.com : [.utils]instmodsh.PL $(ARCHDIR)Config.pm
08da30e0 498 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
88be34b6 499
5fa137f1 500[.utils]libnetcfg.com : [.utils]libnetcfg.PL $(ARCHDIR)Config.pm
08da30e0 501 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
5fa137f1 502
97abc6ad 503[.lib]perlbug.com : [.utils]perlbug.PL $(ARCHDIR)Config.pm
08da30e0 504 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
1f74f634 505 Copy/NoConfirm/Log [.utils]perlbug.com [.lib]
97abc6ad 506
14d70106 507[.utils]piconv.com : [.utils]piconv.PL $(ARCHDIR)Config.pm
08da30e0 508 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
14d70106 509
97abc6ad 510[.utils]pl2pm.com : [.utils]pl2pm.PL $(ARCHDIR)Config.pm
08da30e0 511 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
97abc6ad
HM
512
513[.lib]splain.com : [.utils]splain.PL $(ARCHDIR)Config.pm
08da30e0 514 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
1f74f634 515 Copy/NoConfirm/Log [.utils]splain.com [.lib]
97abc6ad
HM
516
517[.x2p]find2perl.com : [.x2p]find2perl.PL $(ARCHDIR)Config.pm
08da30e0 518 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
97abc6ad
HM
519
520[.x2p]s2p.com : [.x2p]s2p.PL $(ARCHDIR)Config.pm
08da30e0 521 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
97abc6ad 522
798fd3e2 523[.utils]xsubpp.com : [.utils]xsubpp.PL $(ARCHDIR)Config.pm nonxsext
08da30e0 524 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
5fa137f1 525
08ad9465
CBW
526[.utils]zipdetails.com : [.utils]zipdetails.PL $(ARCHDIR)Config.pm nonxsext
527 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
528
d658129c
FR
529[.utils]pod2html.com : [.utils]pod2html.PL $(ARCHDIR)Config.pm nonxsext
530 $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
531
97abc6ad
HM
532# Rename catches problem with some DECC versions in which object file is
533# placed in current default dir, not same one as source file.
534[.x2p]$(DBG)a2p$(E) : [.x2p]a2p$(O), [.x2p]hash$(O), [.x2p]str$(O), [.x2p]util$(O), [.x2p]walk$(O)
535 @ If F$Search("hash$(O)").nes."" Then Rename/NoLog hash$(O),str$(O),util$(O),walk$(O) [.x2p]
536 Link $(LINKFLAGS) /Exe=$(MMS$TARGET) $(MMS$SOURCE_LIST) $(CRTLOPTS)
537
8f9bf0bf 538# Accommodate buggy cpp in some version of DECC, which chokes on illegal
97abc6ad
HM
539# filespec "y.tab.c", and broken gcc cpp, which doesn't start #include ""
540# search in same dir as source file
046cc26c 541[.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 $(MINIPERL_EXE)
97abc6ad 542 $(MINIPERL) -pe "s/^#line\s+(\d+)\s+\Q""y.tab.c""/#line $1 ""y_tab.c""/;" $(MMS$SOURCE) >$(MMS$TARGET_NAME)_vms.c
fe5e93de 543 $(CC) $(X2PCFLAGS) /Object=$(MMS$TARGET)/Include=([.x2p],[],"./x2p") $(MMS$TARGET_NAME)_vms.c
97abc6ad
HM
544 Delete/Log/NoConfirm $(MMS$TARGET_NAME)_vms.c;
545
546# gcc cpp broken -- doesn't look in directory of source file for #include ""
547.ifdef GNUC
548[.x2p]hash$(O) : [.x2p]hash.c
3a385817 549 $(CC) $(X2PCFLAGS) /Include=[.x2p] $(MMS$SOURCE)
97abc6ad
HM
550
551[.x2p]str$(O) : [.x2p]str.c
3a385817 552 $(CC) $(X2PCFLAGS) /Include=[.x2p] $(MMS$SOURCE)
97abc6ad
HM
553
554[.x2p]util$(O) : [.x2p]util.c
3a385817 555 $(CC) $(X2PCFLAGS) /Include=[.x2p] $(MMS$SOURCE)
97abc6ad
HM
556
557[.x2p]walk$(O) : [.x2p]walk.c
3a385817 558 $(CC) $(X2PCFLAGS) /Include=[.x2p] $(MMS$SOURCE)
97abc6ad
HM
559.endif
560
9b5878df 561preplibrary : $(MINIPERL_EXE) $(LIBPREREQ)
c43be3e8 562 @ $(NOOP)
97abc6ad 563
d1a21686 564makeppport : $(MINIPERL_EXE) $(ARCHDIR)Config.pm nonxsext
42e07562
MHM
565 $(MINIPERL) mkppport
566
bfeb8220 567install.html : [.pod]perltoc.pod
b545184e 568 @ @perl_setup.com "$(PREFIX)"
c645ec3f
GS
569 @ If F$Search("perl_root:[lib]html.dir").eqs."" Then Create/Directory perl_root:[lib.html]
570 $(MINIPERL) installhtml. "--podroot=. --recurse --htmldir=/perl_root/lib/html --htmlroot=.. --verbose"
b4bc034f 571
97abc6ad
HM
572printconfig :
573 @ @[.vms]make_command $(MMS) $(MMSQUALIFIERS) $(MMSTARGETS)
046cc26c 574 @ @[.vms]myconfig "$(CC)" "$(CFLAGS)" "$(LINKFLAGS)" "$(LIBS1)" "$(FULLLIBS2)" "$(EXT)" "$(DBG)"
97abc6ad 575
424a8fe9 576# The following files are generated automatically
d500e60d 577# embed.pl: proto.h embed.h embedvar.h perlapi.h perlapi.c
897d3989 578# opcode.pl: opcode.h opnames.h pp_proto.h
5f286eee
CB
579# regcomp.pl: regnodes.h
580# warnings.pl: warnings.h lib/warnings.pm
97abc6ad
HM
581# The correct versions should be already supplied with the perl kit,
582# in case you don't have perl available.
5f286eee
CB
583# To force them to be regenerated, run
584# perl regen.pl
585# with your existing copy of perl
586# (make regen_headers is kept for backwards compatibility)
587
588regen :
589 $(INSTPERL) regen.pl
590
97abc6ad 591regen_headers :
5f286eee 592 $(INSTPERL) regen.pl -v
97abc6ad 593
97abc6ad
HM
594.ifdef LINK_ONLY
595.else
787c52d8 596perly$(O) : perly.c, perly.h, $(h)
97abc6ad
HM
597.endif
598
7558ebc2
PP
599check : test
600 @ Continue
601
2d11a7e9 602test : all
20533b5a 603 @ PERL_TEST_DRIVER == "TEST."
97386f52 604 - @[.vms]test.com "$(E)" "$(__DEBUG__)"
40996b78
AT
605 @ $(MINIPERL) -e "print ""Ran tests"";" > [.t]rantests.
606
2d11a7e9 607test_harness : all
20533b5a 608 @ PERL_TEST_DRIVER == "harness."
97386f52 609 - @[.vms]test.com "$(E)" "$(__DEBUG__)"
dfe814dc 610 @ $(MINIPERL) -e "print ""Ran tests"";" > [.t]rantests.
97abc6ad 611
2d11a7e9 612minitest : $(MINITEST_EXE) unidatafiles.ts
68ccb645 613 @ PERL_TEST_DRIVER == "minitest"
97386f52 614 - @[.vms]test.com "$(E)" "$(__DEBUG__)"
68ccb645 615
3a385817
GS
616# install ought not need a source, but it doesn't work if one's not
617# there. Go figure...
5ea6993d 618install : $(PERL_EXE)
b545184e 619 @ @perl_setup.com "$(PREFIX)"
29637182 620 If F$TrnLnm("Sys") .nes. "" Then Deass SYS
5ea6993d
CB
621 @ define/user_mode $(DBG)PERLSHR SYS$DISK:[]$(DBG)perlshr$(E)
622 $(PERL) installperl
97abc6ad
HM
623
624archify : all
44caa20c 625 @ Write Sys$Output "Moving files to architecture-specific locations for $(ARCHNAME)"
97abc6ad
HM
626 archroot = "$(ARCHAUTO)" - "]" + "...]"
627 Backup/Log/Verify [.lib.auto...]*.*;/Exclude=(*.al,*.ix) 'archroot'/New_Version
628 Delete/Log/NoConfirm [.lib.auto...]*.*;*/exclude=(*.al,*.ix,*.dir)
629 Delete/Log/NoConfirm [.lib]Config.pm;*
2d9d8159 630 Delete/Log/NoConfirm [.lib]Config_heavy.pl;*
71a0fcfa
PP
631 Copy/Log/NoConfirm *$(E);,[.x2p]$(DBG)a2p$(E); $(ARCHDIR)
632 Delete/Log/NoConfirm Perl*$(E);*,[.x2p]$(DBG)a2p$(E);*
1b2d7687
PP
633 @ QUALIFIERS := $(MMSQUALIFIERS)
634 @ QUALIFIERS = QUALIFIERS - """" - """"
97abc6ad
HM
635 @ Write Sys$Output "Architecture-specific setup completed."
636 @ Write Sys$Output "Before building for another architecture, be sure to"
1b2d7687 637 @ Write Sys$Output " 1. $(MMS)''QUALIFIERS' clean"
97abc6ad
HM
638 @ Write Sys$Output " 2. Delete Miniperl$(E)"
639
640# CORE subset for MakeMaker, so we can build Perl without sources
5c0877fa
CB
641
642archcore_includes.ts :
97abc6ad 643 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
5c0877fa
CB
644 Copy/NoConfirm/Log *.h $(ARCHCORE)
645 @ Copy _NLA0: $(MMS$TARGET)
97abc6ad
HM
646$(ARCHCORE)$(DBG)libperl$(OLB) : $(DBG)libperl$(OLB) $(DBG)perlshr_xtras.ts
647 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
1f74f634 648 Copy/NoConfirm/Log $(MMS$SOURCE) $(ARCHCORE)
97abc6ad
HM
649$(ARCHCORE)perlshr_attr.opt : $(DBG)perlshr_xtras.ts
650 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
d510da7a 651 Copy/NoConfirm/Log perlshr_attr.opt $(ARCHCORE)
97abc6ad
HM
652$(ARCHCORE)$(DBG)perlshr_bld.opt : $(DBG)perlshr_xtras.ts
653 @ If F$Search("$(ARCHDIR)CORE.dir").eqs."" Then Create/Directory $(ARCHCORE)
1f74f634 654 Copy/NoConfirm/Log $(DBG)perlshr_bld.opt $(ARCHCORE)
97abc6ad
HM
655$(ARCHAUTO)time.stamp :
656 @ If F$Search("$(ARCHDIR)auto.dir").eqs."" Then Create/Directory $(ARCHAUTO)
657 @ If F$Search("$(MMS$TARGET)").eqs."" Then Copy/NoConfirm _NLA0: $(MMS$TARGET)
658
659.ifdef LINK_ONLY
660.else
661# We need an action line here for broken older versions of MMS which
662# otherwise conclude that they should be compiling [.x2p]utils.c :-(
3a385817
GS
663#util$(O) : util.c
664# $(CC) $(CORECFLAGS) $(MMS$SOURCE)
97abc6ad 665# AUTOMATICALLY GENERATED MAKE DEPENDENCIES--PUT NOTHING BELOW THIS LINE
1f74f634
CB
666av$(O) : av.c $(h)
667 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
668deb$(O) : deb.c $(h)
669 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
670doio$(O) : doio.c $(h)
671 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
672doop$(O) : doop.c $(h)
673 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
674dump$(O) : dump.c $(h)
3a385817 675 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
9387abf8 676globals$(O) : globals.c $(generated_headers) $(h)
b50d78f7 677 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 678gv$(O) : gv.c $(h)
3a385817 679 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
e1a479c5
BB
680mro$(O) : mro.c $(h)
681 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 682hv$(O) : hv.c $(h)
3a385817 683 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
cfc889ad
CB
684keywords$(O) : keywords.c $(h)
685 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 686locale$(O) : locale.c $(h)
3a385817 687 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 688malloc$(O) : malloc.c $(h)
3a385817 689 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
9fcbb300
JM
690mathoms$(O) : mathoms.c $(h)
691 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 692mg$(O) : mg.c $(h)
3a385817 693 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 694miniperlmain$(O) : miniperlmain.c $(h)
3a385817 695 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 696numeric$(O) : numeric.c $(h)
cfbf4ea5 697 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 698pad$(O) : pad.c $(h)
b0bfe279 699 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 700op$(O) : op.c $(h)
3a385817 701 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
05b0cfd1 702perl$(O) : perl.c git_version.h $(h)
3a385817 703 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 704perlapi$(O) : perlapi.c $(h)
cfbf4ea5 705 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 706perlio$(O) : perlio.c config.h $(h)
3a385817 707 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
5c9818e9 708perlmain$(O) : perlmain.c $(h)
3a385817 709 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 710perly$(O) : perly.c $(h)
b0bfe279 711 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 712pp$(O) : pp.c $(h)
3a385817 713 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 714pp_ctl$(O) : pp_ctl.c $(h)
3a385817 715 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 716pp_hot$(O) : pp_hot.c $(h)
3a385817 717 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 718pp_pack$(O) : pp_pack.c $(h)
3a385817 719 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 720pp_sort$(O) : pp_sort.c $(h)
3a385817 721 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 722pp_sys$(O) : pp_sys.c $(h)
3a385817 723 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 724reentr$(O) : reentr.c $(h)
3a385817 725 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 726regcomp$(O) : regcomp.c $(h)
3a385817 727 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 728regexec$(O) : regexec.c $(h)
3a385817 729 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 730run$(O) : run.c $(h)
3a385817 731 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 732scope$(O) : scope.c $(h)
3a385817 733 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
94a11853 734sv$(O) : sv.c $(h)
3a385817 735 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 736taint$(O) : taint.c $(h)
3a385817 737 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 738toke$(O) : toke.c $(h)
3a385817 739 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 740universal$(O) : universal.c $(h)
3a385817 741 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 742utf8$(O) : utf8.c $(h)
3a385817 743 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 744util$(O) : util.c $(h)
3937c24e 745 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
1f74f634 746vms$(O) : vms.c $(h)
3a385817
GS
747 $(CC) $(CORECFLAGS) $(MMS$SOURCE)
748
046cc26c 749[.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
3a385817
GS
750 $(CC) $(X2PCFLAGS) $(MMS$SOURCE)
751
046cc26c 752[.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
3a385817
GS
753 $(CC) $(X2PCFLAGS) $(MMS$SOURCE)
754
046cc26c 755[.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
3a385817
GS
756 $(CC) $(X2PCFLAGS) $(MMS$SOURCE)
757
046cc26c 758[.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
3a385817
GS
759 $(CC) $(X2PCFLAGS) $(MMS$SOURCE)
760
97abc6ad
HM
761# End of automatically generated make dependencies
762.endif # !LINK_ONLY
763
764vmsish.h : [.vms]vmsish.h
1f74f634 765 Copy/Log/NoConfirm [.vms]vmsish.h []
97abc6ad
HM
766
767vms.c : [.vms]vms.c
768 Copy/Log/Noconfirm [.vms]vms.c []
769
770$(CRTL) : $(MAKEFILE)
046cc26c 771 @ @[.vms]genopt "$(CRTL)/Write" "|" "$(LIBS1)|$(FULLLIBS2)"
97abc6ad 772
dfe814dc
PP
773ok : $(utils)
774 $(MINIPERL) lib/perlbug.com -ok -s "(UNINSTALLED)"
775
776okfile : $(utils)
777 $(MINIPERL) lib/perlbug.com -ok -s "(UNINSTALLED)" "-F" perl.ok
778
779nok : $(utils)
780 @ write sys$output " "
781 @ write sys$output " Please type the command:"
782 @ write sys$output " "
783 @ write sys$output "$(MINIPERLQ) lib/perlbug.com -nok -s ""(UNINSTALLED)"""
784
785nokfile : $(utils)
786 @ write sys$output " "
787 @ write sys$output " Please type the command:"
788 @ write sys$output " "
789 @ write sys$output "$(MINIPERLQ) lib/perlbug.com -nok -s ""(UNINSTALLED)"" ""-F"" perl.nok"
790
97abc6ad
HM
791cleanlis :
792 - If F$Search("*.Lis").nes."" Then Delete/NoConfirm/Log *.Lis;*
793 - If F$Search("*.CPP").nes."" Then Delete/NoConfirm/Log *.CPP;*
794 - If F$Search("*.Map").nes."" Then Delete/NoConfirm/Log *.Map;*
795
59d8d783 796cleantest :
31e425b5 797 - If F$Search("[.t]Perl$(E)").nes."" Then Delete/NoConfirm/Log [.t]Perl$(E);*
59d8d783 798 - If F$Search("[.t]VMSPIPE.COM").nes."" Then Delete/NoConfirm/Log [.t]VMSPIPE.COM;*
59d8d783 799
97abc6ad
HM
800tidy : cleanlis
801 - If F$Search("[...]*.Opt;-1").nes."" Then Purge/NoConfirm/Log [...]*.Opt
802 - If F$Search("[...]*$(O);-1").nes."" Then Purge/NoConfirm/Log [...]*$(O)
803 - If F$Search("[...]*$(E);-1").nes."" Then Purge/NoConfirm/Log [...]*$(E)
97386f52
CB
804 - If F$Search("config.h;-1").nes."" Then Purge/NoConfirm/Log config.h
805 - If F$Search("config.sh;-1").nes."" Then Purge/NoConfirm/Log config.sh
806 - If F$Search("vmsish.h;-1").nes."" Then Purge/NoConfirm/Log vmsish.h
807 - If F$Search("vms.c;-1") .nes."" Then Purge/NoConfirm/Log vms.c
808 - If F$Search("perlmain.c;-1") .nes."" Then Purge/NoConfirm/Log perlmain.c
9444d213 809 - If F$Search("uudmap.h;-1") .nes."" Then Purge/NoConfirm/Log uudmap.h
efa50c51 810 - If F$Search("bitcount.h;-1") .nes."" Then Purge/NoConfirm/Log bitcount.h
6f83ef0e 811 - If F$Search("mg_data.h;-1") .nes."" Then Purge/NoConfirm/Log mg_data.h
97abc6ad 812 - If F$Search("Perlshr_Gbl*.Mar;-1") .nes."" Then Purge/NoConfirm/Log Perlshr_Gbl*.Mar
9c8fb6b6 813 - If F$Search("[.ext.Opcode...];-1").nes."" Then Purge/NoConfirm/Log [.ext.Opcode]
97386f52
CB
814 - If F$Search("[.lib.auto...]*.al;-1").nes."" Then Purge/NoConfirm/Log [.lib.auto...]*.al
815 - If F$Search("[.lib.auto...]autosplit.ix;-1").nes."" Then Purge/NoConfirm/Log [.lib.auto...]autosplit.ix
97386f52 816 - If F$Search("[.lib]Config.pm;-1").nes."" Then Purge/NoConfirm/Log [.lib]Config.pm
97abc6ad 817 - If F$Search("$(ARCHDIR)Config.pm;-1").nes."" Then Purge/NoConfirm/Log $(ARCHDIR)Config.pm
97386f52 818 - If F$Search("[.lib]Config_heavy.pl;-1").nes."" Then Purge/NoConfirm/Log [.lib]Config_heavy.pl
2d9d8159 819 - If F$Search("$(ARCHDIR)Config_heavy.pl;-1").nes."" Then Purge/NoConfirm/Log $(ARCHDIR)Config_heavy.pl
97386f52 820 - If F$Search("[.lib.VMS]*.*;-1").nes."" Then Purge/NoConfirm/Log [.lib.VMS]*.*
97abc6ad
HM
821 - If F$Search("$(ARCHCORE)*.*").nes."" Then Purge/NoConfirm/Log $(ARCHCORE)*.*
822 - If F$Search("[.lib]*.com;-1").nes."" Then Purge/NoConfirm/Log [.lib]*.com
823 - If F$Search("[.pod]*.com;-1").nes."" Then Purge/NoConfirm/Log [.pod]*.com
824 - If F$Search("[.utils]*.com;-1").nes."" Then Purge/NoConfirm/Log [.utils]*.com
825 - If F$Search("[.x2p]*.com;-1").nes."" Then Purge/NoConfirm/Log [.x2p]*.com
5e4c4c91 826 - If F$Search("[.lib]buildcustomize.pl;-1").nes."" Then Purge/NoConfirm/Log [.lib]buildcustomize.pl
97abc6ad 827
6e2cec71 828clean : tidy cleantest
c091f99a 829 - $(MINIPERL) make_ext.pl "MAKE=$(MMS)" "--all" "--target=clean"
97abc6ad
HM
830 - If F$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*/Exclude=PerlShr_*.Opt
831 - If F$Search("[...]*$(O);*") .nes."" Then Delete/NoConfirm/Log [...]*$(O);*
97386f52
CB
832 - If F$Search("vmsish.h").nes."" Then Delete/NoConfirm/Log vmsish.h;*
833 - If F$Search("vms.c") .nes."" Then Delete/NoConfirm/Log vms.c;*
834 - If F$Search("perlmain.c") .nes."" Then Delete/NoConfirm/Log perlmain.c;*
5c9818e9 835 - If F$Search("perlmini.c") .nes."" Then Delete/NoConfirm/Log perlmini.c;*
c3301a92 836 - If F$Search("uudmap.h") .nes."" Then Delete/NoConfirm/Log uudmap.h;*
efa50c51 837 - If F$Search("bitcount.h") .nes."" Then Delete/NoConfirm/Log bitcount.h;*
c73002c3 838 - If F$Search("mg_data.h") .nes."" Then Delete/NoConfirm/Log mg_data.h;*
97abc6ad
HM
839 - If F$Search("Perlshr_Gbl*.Mar") .nes."" Then Delete/NoConfirm/Log Perlshr_Gbl*.Mar;*
840 - If F$Search("*.TS").nes."" Then Delete/NoConfirm/Log *.TS;*
97abc6ad 841 - If F$Search("[.pod]*.com").nes."" Then Delete/NoConfirm/Log [.pod]*.com;*
60f0ee9d 842 - If F$Search("[.pod]roffitall").nes."" Then Delete/NoConfirm/Log [.pod]roffitall;*
600dcb9e 843 - If F$Search("$(PERLDELTA_CURRENT)").nes."" Then Delete/NoConfirm/Log $(PERLDELTA_CURRENT);*
db34a22a 844 - If F$Search("[.pod]perlapi.pod").nes."" Then Delete/NoConfirm/Log [.pod]perlapi.pod;*
344af494 845 - If F$Search("[.pod]perlintern.pod").nes."" Then Delete/NoConfirm/Log [.pod]perlintern.pod;*
6e2c8928 846 - If F$Search("[.pod]perlmodlib.pod").nes."" Then Delete/NoConfirm/Log [.pod]perlmodlib.pod;*
7eb47696 847 - If F$Search("[.pod]perltoc.pod").nes."" Then Delete/NoConfirm/Log [.pod]perltoc.pod;*
524ce141 848 - If F$Search("[.pod]perluniprops.pod").nes."" Then Delete/NoConfirm/Log [.pod]perluniprops.pod;*
414b89cc 849 - @extra_pods CLEAN
05b0cfd1
CB
850 - If F$Search("[.lib]Config_git.pl").nes."" Then Delete/NoConfirm/Log [.lib]Config_git.pl;*
851 - If F$Search("git_version.h").nes."" Then Delete/NoConfirm/Log git_version.h;*
97abc6ad 852
cc391245 853realclean : clean
c091f99a 854 - $(MINIPERL) make_ext.pl "MAKE=$(MMS)" "--all" "--target=realclean"
42e07562 855 - $(MINIPERL) mkppport "--clean"
97abc6ad
HM
856 - If F$Search("*$(OLB)").nes."" Then Delete/NoConfirm/Log *$(OLB);*
857 - If F$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*
97386f52
CB
858 - If F$Search("config.h").nes."" Then Delete/NoConfirm/Log config.h;*
859 - If F$Search("config.sh").nes."" Then Delete/NoConfirm/Log config.sh;*
52a043e6 860 - $(MINIPERL) -e "use File::Path; rmtree(\@ARGV,1,0);" config
d6521b56 861 - If F$Search("[.lib.unicore...]*.pl").nes."" Then Delete/NoConfirm/Log [.lib.unicore...]*.pl;*
23b62609 862 - If F$Search("[.lib.unicore]Properties.").nes."" Then Delete/NoConfirm/Log [.lib.unicore]Properties.;*
ca12659b 863 - $(MINIPERL) -e "use File::Path; rmtree(\@ARGV,1,0);" $(unidatadirs)
cc391245 864 - If F$Search("Descrip.MMS").nes."" Then Delete/NoConfirm/Log Descrip.MMS;*
414b89cc 865 - If F$Search("extra_pods.Com").nes."" Then Delete/NoConfirm/Log extra_pods.Com;*
96021e87 866 - If F$Search("extra.pods").nes."" Then Delete/NoConfirm/Log extra.pods;*
b2790d5e 867 - $(MINIPERL) -e "use File::Path; rmtree(['[.CXX_REPOSITORY]', 'lib/auto','lib/VMS','lib/$(ARCHNAME)'],1,0);"
25ea24bb 868 - If F$Search("*.TS").nes."" Then Delete/NoConfirm/Log *.TS;*
97386f52
CB
869 - If F$Search("[.lib]Config.pm").nes."" Then Delete/NoConfirm/Log [.lib]Config.pm;*
870 - If F$Search("[.lib]Config_heavy.pl").nes."" Then Delete/NoConfirm/Log [.lib]Config_heavy.pl;*
871 - If F$Search("[.lib]*.com").nes."" Then Delete/NoConfirm/Log [.lib]*.com;*
781f5a38 872 - If F$Search("[.lib...].exists").nes."" Then Delete/NoConfirm/Log [.lib...].exists;*
52a043e6 873 - If F$Search("[.pod]*.com").nes."" Then Delete/NoConfirm/Log [.pod]*.com;*
97abc6ad
HM
874 - If F$Search("[.utils]*.com").nes."" Then Delete/NoConfirm/Log [.utils]*.com;*
875 - If F$Search("[.x2p]*.com").nes."" Then Delete/NoConfirm/Log [.x2p]*.com;*
876 - If F$Search("$(ARCHDIR)Config.pm").nes."" Then Delete/NoConfirm/Log $(ARCHDIR)Config.pm;*
2d9d8159 877 - If F$Search("$(ARCHDIR)Config_heavy.pl").nes."" Then Delete/NoConfirm/Log $(ARCHDIR)Config_heavy.pl;*
4403bf93 878 - If F$Search("[.utils]perldoc.com").nes."" Then Delete/NoConfirm/Log [.utils]perldoc.com;*
cdf8b154 879 - If F$Search("[.utils]perlivp.com").nes."" Then Delete/NoConfirm/Log [.utils]perlivp.com;*
97abc6ad 880 - If F$Search("[...]*$(E)").nes."" Then Delete/NoConfirm/Log [...]*$(E);*
b2790d5e 881 - If F$Search("Perl_Setup.Com").nes."" Then Delete/NoConfirm/Log Perl_Setup.Com;*
dfe814dc 882 - If F$Search("[.t]rantests.").nes."" Then Delete/NoConfirm/Log [.t]rantests.;*
0279961e 883 - If F$Search("[.t]test_state.").nes."" Then Delete/NoConfirm/Log [.t]test_state.;*
d6521b56 884 - If F$Search("vmspipe.com").nes."" Then Delete/NoConfirm/Log vmspipe.com;*
ac2c13e8 885 - If F$Search("[.lib]buildcustomize.pl").nes."" Then Delete/NoConfirm/Log [.lib]buildcustomize.pl;*
b2790d5e 886 - If F$Search("[.lib]config.pod").nes."" Then Delete/NoConfirm/Log [.lib]config.pod;*
97abc6ad
HM
887
888cleansrc : clean
97386f52
CB
889 - If F$Search("*.c;-1").nes."" Then Purge/NoConfirm/Log *.c
890 - If F$Search("*.h;-1").nes."" Then Purge/NoConfirm/Log *.h
891 - If F$Search("*.vms;-1").nes."" Then Purge/NoConfirm/Log *.vms
892 - If F$Search("[.vms]$(MAKEFILE);-1").nes."" Then Purge/NoConfirm/Log [.vms]$(MAKEFILE)
893 - If F$Search("[.vms]*.c;-1").nes."" Then Purge/NoConfirm/Log [.vms]*.c
894 - If F$Search("[.vms]*.h;-1").nes."" Then Purge/NoConfirm/Log [.vms]*.h
895 - If F$Search("[.vms]*.pl;-1").nes."" Then Purge/NoConfirm/Log [.vms]*.pl
896 - If F$Search("[.vms]*.vms;-1").nes."" Then Purge/NoConfirm/Log [.vms]*.vms
897 - If F$Search("[.vms...]*.pm;-1").nes."" Then Purge/NoConfirm/Log [.vms...]*.pm
898 - If F$Search("[.vms...]*.xs;-1").nes."" Then Purge/NoConfirm/Log [.vms...]*.xs
12bc563b 899!GROK!THIS!