diff options
-rw-r--r-- | vms/descrip.mms | 157 |
1 files changed, 57 insertions, 100 deletions
diff --git a/vms/descrip.mms b/vms/descrip.mms index f00921ea..d1dc1e44 100644 --- a/vms/descrip.mms +++ b/vms/descrip.mms @@ -12,14 +12,6 @@ # gawk.exe : # This is the default target. DEC C has become the default compiler. # -# pgawk.exe : -# An alternate version which generates some profiling feedback for -# the awk programs it executes. Included with `make all'. -# -# dgawk.exe : -# An alternate version which supports debugging. -# Included with `make all'. -# # awkgram.c : # If you don't have bison but do have VMS POSIX or DEC/Shell, # change the PARSER and PASERINIT macros to use yacc. If you don't @@ -100,14 +92,15 @@ ECHO = write sys$output NOOP = continue # object files -GAWKOBJ = eval.obj,profile.obj -PGAWKOBJ = eval_p.obj,profile_p.obj -DGAWKOBJ = eval_d.obj,profile.obj,command.obj,debug.obj -AWKOBJ1 = array.obj,awkgram.obj,builtin.obj,dfa.obj,ext.obj,\ - field.obj,floatcomp.obj,gawkmisc.obj,getopt.obj,getopt1.obj,\ - io.obj -AWKOBJ2 = main.obj,msg.obj,node.obj,random.obj,re.obj,\ - regex.obj,replace.obj,version.obj +GAWKOBJ = eval.obj,profile.obj +AWKOBJ1 = array.obj,awkgram.obj,builtin.obj,cint_array.obj,\ + command.obj,debug.obj,dfa.obj,ext.obj,field.obj,\ + floatcomp.obj,gawkapi.obj,gawkmisc.obj,getopt.obj,getopt1.obj + +AWKOBJ2 = int_array.obj,io.obj,main.obj,mpfr.obj,msg.obj,node.obj,\ + random.obj,re.obj,regex.obj,replace.obj,\ + str_array.obj,symbol.obj,version.obj + AWKOBJS = $(AWKOBJ1),$(AWKOBJ2) # VMSOBJS @@ -117,25 +110,6 @@ VMSCODE = vms_misc.obj,vms_popen.obj,vms_fwrite.obj,vms_args.obj,\ VMSCMD = gawk_cmd.obj # built from .cld file VMSOBJS = $(VMSCODE),$(VMSCMD) -# primary source files -AWKSRC = array.c,builtin.c,dfa.c,eval.c,eval_p.c,ext.c,field.c,\ - floatcomp.c,gawkmisc.c,getopt.c,getopt1.c,io.c,main.c,\ - msg.c,node.c,profile.c,profile_p.c,random.c,re.c,regcomp.c,\ - regex.c,regex_internal.c,regexec.c,replace.c,version.c - -DBGSRC = eval_d.c,debug.c,command.y,cmd.h - -ALLSRC = $(AWKSRC),awkgram.y,awk.h,custom.h,dfa.h,getopt.h,\ - gettext.h,mbsupport.h,protos.h,random.h - -VMSSRC = $(VMSDIR)gawkmisc.vms,$(VMSDIR)vms_misc.c,$(VMSDIR)vms_popen.c,\ - $(VMSDIR)vms_fwrite.c,$(VMSDIR)vms_args.c,$(VMSDIR)vms_gawk.c,\ - $(VMSDIR)vms_cli.c -VMSHDRS = $(VMSDIR)redirect.h,$(VMSDIR)vms.h,$(VMSDIR)fcntl.h,\ - $(VMSDIR)varargs.h,$(VMSDIR)unixlib.h -VMSOTHR = $(VMSDIR)descrip.mms,$(VMSDIR)vmsbuild.com,$(VMSDIR)version.com,\ - $(VMSDIR)gawk.hlp - DOCS= $(DOCDIR)gawk.1,$(DOCDIR)gawk.texi,$(DOCDIR)texinfo.tex # Release of gawk @@ -143,30 +117,20 @@ REL=4.0 PATCHLVL=1 # generic target -all : gawk,pgawk,dgawk - $(NOOP) +all : gawk + @ $(NOOP) # dummy target to allow building "gawk" in addition to explicit "gawk.exe" gawk : gawk.exe - $(ECHO) " GAWK " -pgawk : pgawk.exe - $(ECHO) " PGAWK " -dgawk : dgawk.exe - $(ECHO) " DGAWK " + @ $(ECHO) "$< is upto date" # rules to build gawk gawk.exe : $(GAWKOBJ) $(AWKOBJS) $(VMSOBJS) gawk.opt $(LINK) $(LINKFLAGS) gawk.opt/options -# rules to build pgawk and dgawk -pgawk.exe : $(PGAWKOBJ) $(AWKOBJS) $(VMSOBJS) pgawk.opt - $(LINK) $(LINKFLAGS) pgawk.opt/options -dgawk.exe : $(DGAWKOBJ) $(AWKOBJS) $(VMSOBJS) dgawk.opt - $(LINK) $(LINKFLAGS) dgawk.opt/options - gawk.opt : $(MAKEFILE) # create linker options file - open/write opt gawk.opt ! ~ 'cat <<close >gawk.opt' - write opt "! GAWK -- GNU awk" + @ open/write opt gawk.opt ! ~ 'cat <<close >gawk.opt' + @ write opt "! GAWK -- GNU awk" @ write opt "$(GAWKOBJ)" @ write opt "$(AWKOBJ1)" @ write opt "$(AWKOBJ2)" @@ -174,59 +138,52 @@ gawk.opt : $(MAKEFILE) # create linker options file @ write opt "psect_attr=environ,noshr !extern [noshare] char **" @ write opt "stack=48 !preallocate more pages (default is 20)" @ write opt "iosegment=128 !ditto (default is 32)" - write opt "$(LIBS)" - write opt "identification=""V$(REL).$(PATCHLVL)""" - close opt - -pgawk.opt : $(MAKEFILE) # create linker options file - open/write opt pgawk.opt - write opt "! PGAWK -- GNU awk w/ run-time profiling" - @ write opt "$(PGAWKOBJ)" - @ write opt "$(AWKOBJ1)" - @ write opt "$(AWKOBJ2)" - @ write opt "$(VMSOBJS)" - @ write opt "psect_attr=environ,noshr !extern [noshare] char **" - @ write opt "stack=48 !preallocate more pages (default is 20)" - @ write opt "iosegment=128 !ditto (default is 32)" - write opt "$(LIBS)" - write opt "identification=""V$(REL).$(PATCHLVL)""" - close opt - -dgawk.opt : $(MAKEFILE) # create linker options file - open/write opt dgawk.opt - write opt "! DGAWK -- GNU awk w/ debugging" - @ write opt "$(DGAWKOBJ)" - @ write opt "$(AWKOBJ1)" - @ write opt "$(AWKOBJ2)" - @ write opt "$(VMSOBJS)" - @ write opt "psect_attr=environ,noshr !extern [noshare] char **" - @ write opt "stack=48 !preallocate more pages (default is 20)" - @ write opt "iosegment=128 !ditto (default is 32)" - write opt "$(LIBS)" - write opt "identification=""V$(REL).$(PATCHLVL)""" - close opt + @ write opt "$(LIBS)" + @ write opt "identification=""V$(REL).$(PATCHLVL)""" + @ close opt +$(VMSCODE) : awk.h config.h $(VMSDIR)redirect.h $(VMSDIR)vms.h +$(AWKOBJS) : awk.h gettext.h mbsupport.h regex.h dfa.h config.h $(VMSDIR)redirect.h +$(GAWKOBJ) : awk.h config.h $(VMSDIR)redirect.h + +#----------------------------------------------------------------------------- +# Older versions of MMS have problems handling lower case file names typically +# found on ODS-5 disks. Fix this by adding explicit dependencies. +#_____________________________________________________________________________ +array.obj : array.c +awkgram.obj : awkgram.c awk.h +builtin.obj : builtin.c floatmagic.h random.h +cint_array.obj : cint_array.c +command.obj : command.c cmd.h +debug.obj : debug.c cmd.h +dfa.obj : dfa.c dfa.h +ext.obj : ext.c +eval.obj : eval.c +field.obj : field.c +floatcomp.obj : floatcomp.c +gawkaoi.obj : gawkapi.c +gawkmisc.obj : gawkmisc.c $(VMSDIR)gawkmisc.vms +getopt.obj : getopt.c +getopt1.obj : getopt1.c +int_array.obj : int_array.c +io.obj : io.c +main.obj : main.c +msg.obj : msg.c +mpfr.obj : mpfr.c +node.obj : node.c +profile.obj : profile.c +random.obj : random.c random.h +re.obj : re.c +regex.obj : regex.c regcomp.c regex_internal.c regexec.c regex.h regex_internal.h +str_array.obj : str_array.c +symbol.obj : symbol.c +version.obj : version.c vms_misc.obj : $(VMSDIR)vms_misc.c vms_popen.obj : $(VMSDIR)vms_popen.c vms_fwrite.obj : $(VMSDIR)vms_fwrite.c vms_args.obj : $(VMSDIR)vms_args.c vms_gawk.obj : $(VMSDIR)vms_gawk.c vms_cli.obj : $(VMSDIR)vms_cli.c -$(VMSCODE) : awk.h config.h $(VMSDIR)redirect.h $(VMSDIR)vms.h - -gawkmisc.obj : gawkmisc.c $(VMSDIR)gawkmisc.vms - -$(AWKOBJS) : awk.h gettext.h mbsupport.h regex.h dfa.h \ - config.h $(VMSDIR)redirect.h -$(GAWKOBJ) : awk.h config.h $(VMSDIR)redirect.h -$(PGAWKOBJ) : awk.h config.h $(VMSDIR)redirect.h -$(DGAWKOBJ) : awk.h config.h $(VMSDIR)redirect.h -random.obj : random.h -builtin.obj : floatmagic.h random.h -awkgram.obj : awkgram.c awk.h -dfa.obj : dfa.c dfa.h -regex.obj : regex.c regcomp.c regex_internal.c regexec.c regex.h regex_internal.h -command.obj,debug.obj : cmd.h replace.obj : replace.c $(MISSNGD)system.c $(MISSNGD)memcmp.c \ $(MISSNGD)memcpy.c $(MISSNGD)memset.c $(MISSNGD)memmove.c \ $(MISSNGD)strncasecmp.c $(MISSNGD)strerror.c \ @@ -245,6 +202,7 @@ awkgram.c : awkgram.y # foo.y :: yacc => y[_]tab.c, bison => foo_tab.c @- if f$search("ytab.c") .nes."" then rename/new_vers ytab.c $@ @- if f$search("y_tab.c") .nes."" then rename/new_vers y_tab.c $@ @- if f$search("awkgram_tab.c").nes."" then rename/new_vers awkgram_tab.c $@ + command.c : command.y @- if f$search("ytab.c") .nes."" then delete ytab.c;* @- if f$search("y_tab.c") .nes."" then delete y_tab.c;* @@ -262,7 +220,7 @@ $(VMSCMD) : $(VMSDIR)gawk.cld set command $(CLDFLAGS)/object=$@ $< # special target for loading the help text into a VMS help library -install.help : $(VMS)gawk.hlp +install.help : $(VMSDIR)gawk.hlp library/help $(HELPLIB) $< /log # miscellaneous other targets @@ -271,13 +229,12 @@ tidy : - if f$search("[.*]*.*;-1").nes."" then purge [.*] clean : - - delete *.obj;*,gawk.opt;*,pgawk.opt;*,dgawk.opt;* + - if f$search ("*.obj") .nes. "" then delete *.obj;* + - if f$search ("gawk.opt") .nes. "" then delete gawk.opt;* spotless : clean tidy - if f$search("config.h").nes."" then rename config.h config.h-old/New - if f$search("gawk.exe").nes."" then delete gawk.exe;* - - if f$search("pgawk.exe").nes."" then delete pgawk.exe;* - - if f$search("dgawk.exe").nes."" then delete dgawk.exe;* - if f$search("gawk.dvi").nes."" then delete gawk.dvi;* - if f$search("[.doc]texindex.exe").nes."" then delete [.doc]texindex.exe;* |