⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 descrip.mms

📁 早期freebsd实现
💻 MMS
字号:
# Descrip.MMS -- Makefile for building GNU Awk on VMS with VAXC and MMS.## usage:#  $ MMS /Description=[.vms]Descrip.MMS gawk## gawk.exe :#	You'll need to modify this Makefile to use gcc or vaxc v2.x rather#	than vaxc v3.x.  Change the CFLAGS macro definition (move '#' from#	beginning of 2nd alternative to beginning of 1st), and also perhaps#	enable the following ".first" rule and its associated action.  For#	GNU C, change the LIBS macro definition.## awktab.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#	have either yacc or bison, you'll have to make sure that the#	distributed version of "awktab.c" has its modification date later#	than the date of "awk.y", so that MMS won't try to build that#	target.  If you use bison and it is already defined system-wide,#	comment out the PARSERINIT definition.## install.help :#	You can make the target 'install.help' to load the VMS help text#	into a help library.  Modify the HELPLIB macro if you don't want#	to put entry into the regular VMS library.  (If you use an alternate#	help library, it must already exist; this target won't create it.)## gawk.dvi :#	If you have TeX, you can make the target 'gawk.dvi' to process#	_The_GAWK_Manual_ from gawk.texi.  You'll need to use a device#	specific post-processor on gawk.dvi in order to get printable data.## location of the VMS-specific files, relative to the 'main' directoryVMSDIR	= [.vms]MAKEFILE = $(VMSDIR)Descrip.MMS# debugging &c		!'ccflags' is an escape to allow external compile flags#CCFLAGS = /noOpt/Debug# work within the main directory, even when handling files in [.vms]#	note: use 2nd variant for either VAX C V2.x or for GNU CCFLAGS	= /Include=[]/Object=[]/Opt=noInline/Define="GAWK" $(CCFLAGS)#CFLAGS	= /Include=([],$(VMSDIR))/Object=[]/Define="GAWK" $(CCFLAGS)# uncomment this for GNU C#CC	= gcc# beta VAX/VMS -> Alpha/VMS cross-compiler#CC	= gemcc/Standard=VAXC/G_Float# Alpha/VMS#CC	= cc/Standard=VAXC/G_Float# uncomment these two lines for GNU C _if_ it's not installed system-wide#.first		!compiler init, needed if there's no system-wide setup#	set command gnu_cc:[000000]gcc# uncomment these three lines for VAX C V2.x#.first		!compiler init, find all #include files#	define/nolog vaxc$library sys$library:,sys$disk:$(VMSDIR)#	define/nolog c$library [],$(VMSDIR)#!(it appears that if vaxc$library is defined, then the /Include#! qualifier is ignored, making a c$library definition essential)# run-time libraries; use the 2nd one for GNU CLIBS	= sys$share:vaxcrtl.exe/Shareable#LIBS	= gnu_cc:[000000]gcclib.olb/Library,sys$library:vaxcrtl.olb/Library#LIBS	=	# DECC$SHR instead of VAXCRTL; for Alpha/VMS (or VMS V6.x?)PARSER	= bisonPARSERINIT = set command gnu_bison:[000000]bison#PARSER	= yacc#PARSERINIT = yacc := posix/run/path=posix """/bin/yacc"#PARSERINIT = yacc := $shell$exe:yacc# this is used for optional target 'install.help'HELPLIB = sys$help:helplib.hlb#HELPLIB = sys$help:local.hlb#########  nothing below this line should need to be changed  ########## ALLOCAALLOCA	= alloca.obj# object filesAWKOBJS = main.obj,eval.obj,builtin.obj,msg.obj,iop.obj,io.obj,\	field.obj,array.obj,node.obj,version.obj,missing.obj,re.obj,getopt.objALLOBJS = $(AWKOBJS),awktab.obj# GNUOBJS#	GNU stuff that gawk uses as library routines.GNUOBJS = regex.obj,dfa.obj,$(ALLOCA)# VMSOBJS#	VMS specific stuffVMSCODE = vms_misc.obj,vms_popen.obj,vms_fwrite.obj,vms_args.obj,\	vms_gawk.obj,vms_cli.objVMSCMD	= gawk_cmd.obj			# built from .cld fileVMSOBJS = $(VMSCODE),$(VMSCMD)VMSSRCS = $(VMSDIR)vms_misc.c,$(VMSDIR)vms_popen.c,$(VMSDIR)vms_fwrite.c,\	$(VMSDIR)vms_args.c,$(VMSDIR)vms_gawk.c,$(VMSDIR)vms_cli.cVMSHDRS = $(VMSDIR)vms.h,$(VMSDIR)fcntl.h,$(VMSDIR)varargs.h,$(VMSDIR)unixlib.hVMSOTHR = $(VMSDIR)Descrip.MMS,$(VMSDIR)vmsbuild.com,$(VMSDIR)version.com,\	$(VMSDIR)gawk.hlp# Release of gawkREL=2.14PATCHLVL=0# dummy target to allow building "gawk" in addition to explicit "gawk.exe"gawk : gawk.exe	write sys$output " GAWK "# rules to build gawkgawk.exe : $(ALLOBJS) $(GNUOBJS) $(VMSOBJS) gawk.opt	$(LINK) $(LINKFLAGS) gawk.opt/optionsgawk.opt : $(MAKEFILE)			# create linker options file	open/write opt gawk.opt		! ~ 'cat <<close >gawk.opt'	write opt "! GAWK -- Gnu AWK"      @ write opt "$(ALLOBJS)"      @ write opt "$(GNUOBJS)"      @ write opt "$(VMSOBJS)"      @ write opt "$(LIBS)"      @ 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 "identification=""V$(REL).$(PATCHLVL)"""	close opt$(AWKOBJS)	: awk.h config.h$(VMSCODE)	: awk.h config.h $(VMSDIR)vms.hvms_misc.obj	: $(VMSDIR)vms_misc.cvms_popen.obj	: $(VMSDIR)vms_popen.cvms_fwrite.obj	: $(VMSDIR)vms_fwrite.cvms_args.obj	: $(VMSDIR)vms_args.cvms_gawk.obj	: $(VMSDIR)vms_gawk.cvms_cli.obj	: $(VMSDIR)vms_cli.cdfa.obj		: awk.h config.h dfa.hregex.obj	: awk.h config.h regex.hgetopt.obj	: getopt.hmain.obj	: patchlevel.hawktab.obj	: awk.h awktab.c# bison or yacc requiredawktab.c	: awk.y		# foo.y :: yacc => y[_]tab.c, bison => foo_tab.c     @- if f$search("ytab.c")	.nes."" then  delete ytab.c;*	 !POSIX yacc     @- if f$search("y_tab.c")	.nes."" then  delete y_tab.c;*	 !DEC/Shell yacc     @- if f$search("awk_tab.c").nes."" then  delete awk_tab.c;* !bison      - $(PARSERINIT)	$(PARSER) $(YFLAGS) $<     @- 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("awk_tab.c").nes."" then  rename/new_vers awk_tab.c $@config.h	: [.config]vms-conf.h	copy $< $@# Alloca - C simulationalloca.obj	: alloca.c	$(CC) $(CFLAGS) /define=("STACK_DIRECTION=(-1)","exit=vms_exit") $<$(VMSCMD)	: $(VMSDIR)gawk.cld	set command $(CLDFLAGS)/object=$@ $<# special target for loading the help text into a VMS help libraryinstall.help	: $(VMS)gawk.hlp	library/help $(HELPLIB) $< /log# miscellaneous other targetstidy :      - if f$search("*.*;-1").nes."" then  purge      - if f$search("[.*]*.*;-1").nes."" then  purge [.*]clean :      - delete *.obj;*,gawk.opt;*spotless : clean tidy      - delete gawk.dvi;*,gawk.exe;*,[.support]texindex.exe;*## build gawk.dvi from within the 'support' subdirectory#gawk.dvi : [.support]texindex.exe gawk.texi      @ set default [.support]      @ write sys$output " Warnings from TeX are expected during the first pass"	TeX [-]gawk.texi	mcr []texindex gawk.cp gawk.fn gawk.ky gawk.pg gawk.tp gawk.vr      @ write sys$output " Second pass"	TeX [-]gawk.texi	mcr []texindex gawk.cp gawk.fn gawk.ky gawk.pg gawk.tp gawk.vr      @ write sys$output " Third (final) pass"	TeX [-]gawk.texi     -@ purge     -@ delete gawk.lis;,.aux;,gawk.%%;,.cps;,.fns;,.kys;,.pgs;,.toc;,.tps;,.vrs;      @ rename/new_vers gawk.dvi [-]*.*      @ set default [-][.support]texindex.exe : [.support]texindex.c      @ set default [.support]	$(CC) /noOpt/noList/Define=("lines=tlines") texindex.c	$(LINK) /noMap texindex.obj,sys$library:vaxcrtl.olb/Lib     -@ delete texindex.obj;*      @ set default [-]#eof

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -