2
$! Creates Ftnchek from source code for Alpha VMS systems
4
$ On Control_Y Then GoTo The_Exit
5
$ On Warning Then GoTo The_Exit
8
$! Now compile everything and link it all.
9
$! If you have xmalloc/xrealloc, remove the /DEFINE from shell_mung
10
$! line and add them to the list of objs to link.
11
$! The CC.COM script is used in place of CC command so that if something
12
$! is changed, BUILD can be re-run and only re-compiles what changed.
13
$! Invocation: @CC PROG DEPENDENCIES [/CFLAGS...]
14
$ IF F$SEARCH("shell_mung.c") .EQS. ""
15
$ THEN! If shell_mung not found, work around it and tell the user
16
$ WRITE SYS$OUTPUT "SHELL_MUNG.C not found: wildcard expansion will not be"
17
$ WRITE SYS$OUTPUT "done. SHELL_MUNG.C is distributed separately."
18
$ @CC ftnchek config.h,ftnchek.h,intrins.h,options.h /STANDARD=RELAXED_ANSI89
20
$ @CC ftnchek config.h,ftnchek.h,intrins.h,options.h /STANDARD=RELAXED_ANSI89/DEFINE=(USE_SHELL_MUNG)
21
$ @CC shell_mung "" /STANDARD=VAXC/DEFINE=("xmalloc=malloc","xrealloc=realloc")
23
$ @CC advance config.h,ftnchek.h,symtab.h,tokdefs.h,forlex.h,advance.h /STANDARD=RELAXED_ANSI89
24
$ @CC argcheck config.h,ftnchek.h,pgsymtab.h,symtab.h /STANDARD=RELAXED_ANSI89
25
$ @CC calltree config.h,ftnchek.h,pgsymtab.h,symtab.h /STANDARD=RELAXED_ANSI89
26
$ @CC comcheck config.h,ftnchek.h,pgsymtab.h,symtab.h /STANDARD=RELAXED_ANSI89
27
$ @CC exprtype config.h,ftnchek.h,symtab.h,tokdefs.h /STANDARD=RELAXED_ANSI89
28
$ @CC forlex config.h,ftnchek.h,symtab.h,tokdefs.h,forlex.h,advance.h /STANDARD=RELAXED_ANSI89
29
$ @CC fortran config.h,ftnchek.h,symtab.h,fortran.c /STANDARD=RELAXED_ANSI89
30
$ @CC include config.h,ftnchek.h,symtab.h,forlex.h,advance.h /STANDARD=RELAXED_ANSI89
31
$ @CC intrins config.h,ftnchek.h,intrins.h,symtab.h /STANDARD=RELAXED_ANSI89
32
$ @CC keywords config.h,ftnchek.h,symtab.h,tokdefs.h,forlex.h /STANDARD=RELAXED_ANSI89
33
$ @CC labels config.h,ftnchek.h,symtab.h /STANDARD=RELAXED_ANSI89
34
$ @CC loccheck config.h,ftnchek.h,loccheck.h,plsymtab.h,symtab.h /STANDARD=RELAXED_ANSI89
35
$ @CC makedcls config.h,ftnchek.h,plsymtab.h,symtab.h /STANDARD=RELAXED_ANSI89
36
$ @CC message config.h,ftnchek.h /STANDARD=RELAXED_ANSI89
37
$ @CC options config.h,ftnchek.h,options.h /STANDARD=RELAXED_ANSI89
38
$ @CC pgsymtab config.h,ftnchek.h,pgsymtab.h,symtab.h /STANDARD=RELAXED_ANSI89
39
$ @CC plsymtab config.h,ftnchek.h,plsymtab.h,symtab.h /STANDARD=RELAXED_ANSI89
40
$ @CC prlists config.h,ftnchek.h,symtab.h,symutils.h /STANDARD=RELAXED_ANSI89
41
$ @CC prlocsym config.h,ftnchek.h,loccheck.h,plsymtab.h,symtab.h /STANDARD=RELAXED_ANSI89
42
$ @CC project config.h,ftnchek.h,symtab.h /STANDARD=RELAXED_ANSI89
43
$ @CC symspace config.h,ftnchek.h,symtab.h,symspace.h,symutils.h /STANDARD=RELAXED_ANSI89
44
$ @CC symtab config.h,ftnchek.h,iokeywds.h,intrins.h,symtab.h,tokdefs.h /STANDARD=RELAXED_ANSI89
45
$ @CC symutils config.h,ftnchek.h,symtab.h,symutils.h /STANDARD=RELAXED_ANSI89
46
$ IF F$SEARCH("shell_mung.obj") .EQS. ""
48
$ @LINK ftnchek,advance,argcheck,calltree,comcheck,exprtype,forlex,fortran,include,intrins,-
49
keywords,labels,loccheck,makedcls,message,options,pgsymtab,plsymtab,prlists,prlocsym,project,symspace,symtab,symutils
51
$ @LINK ftnchek,advance,argcheck,calltree,comcheck,exprtype,forlex,fortran,include,intrins,-
52
keywords,labels,loccheck,makedcls,message,options,pgsymtab,plsymtab,prlists,prlocsym,project,symspace,symtab,symutils,-
56
$ WRITE SYS$OUTPUT "Ftnchek created"
57
$ WRITE SYS$OUTPUT "To make it runnable as a command"
58
$ WRITE SYS$OUTPUT "say $ FTNCHEK :== $diskname:[pathname]FTNCHEK"
59
$ On Control_Y Then GoTo Help_Exit
60
$ On Warning Then GoTo Help_Exit
61
$! Create the help library.
62
$ LIBR/CREATE/HELP FTNCHEK.HLB FTNCHEK.HLP
63
$ WRITE SYS$OUTPUT "Help library created -- to access it via HELP"
64
$ WRITE SYS$OUTPUT "say $ DEFINE HLP$LIBRARY diskname:[pathname]FTNCHEK.HLB"
68
$ WRITE SYS$OUTPUT "Error- help library not created"
72
$ WRITE SYS$OUTPUT "Error- BUILD failed."