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

📄 descrip.mms

📁 完整的解压zip文件的源码。包含密码功能
💻 MMS
字号:
!==========================================================================! MMS description file for UnZip/UnZipSFX 5.32 or later           14 Sep 97!==========================================================================!! To build UnZip that uses shared libraries, edit the USER CUSTOMIZATION! lines below to taste, then do!	mms! or!	mmk! if you use Matt's Make (free MMS-compatible make utility).!! (One-time users will find it easier to use the MAKE_UNZ.COM command file,! which generates both UnZip and UnZipSFX.  Just type "@[.VMS]MAKE_UNZ", or! "@[.VMS]MAKE_UNZ GCC" if you want to use GNU C.)! To build the default target!   "all executables (linked against shareable images), and help file",! you can simply type "mmk" or "mms".! (You have to copy the description file to your working directory for MMS,! with MMK you can alternatively use the /DESCR=[.VMS] qualifier.!! In all other cases where you want to explicitely specify a makefile target,! you have to specify your compiling environment, too. These are:!!	$ MMS/MACRO=(__ALPHA__=1)		! Alpha AXP, (DEC C)!	$ MMS/MACRO=(__DECC__=1)		! VAX, using DEC C!	$ MMS/MACRO=(__FORCE_VAXC__=1)		! VAX, prefering VAXC over DECC!	$ MMS/MACRO=(__VAXC__=1)		! VAX, where VAXC is default!	$ MMS/MACRO=(__GNUC__=1)		! VAX, using GNU C!! To build UnZip without shared libraries,!	mms noshare! To delete all .OBJ, .OLB, .EXE and .HLP files,!	mms cleanDO_THE_BUILD :	@ decc = f$search("SYS$SYSTEM:DECC$COMPILER.EXE").nes.""	@ axp = f$getsyi("HW_MODEL").ge.1024	@ macro = "/MACRO=("	@ if decc then macro = macro + "__DECC__=1,"	@ if axp then macro = macro + "__ALPHA__=1,"	@ if .not.(axp.or.decc) then macro = macro + "__VAXC__=1,"	@ macro = f$extract(0,f$length(macro)-1,macro)+ ")"	$(MMS)$(MMSQUALIFIERS)'macro' default.IFDEF __ALPHA__E = .AXP_EXEO = .AXP_OBJA = .AXP_OLB.ELSE.IFDEF __DECC__E = .VAX_DECC_EXEO = .VAX_DECC_OBJA = .VAX_DECC_OLB.ENDIF.IFDEF __FORCE_VAXC____VAXC__ = 1.ENDIF.IFDEF __VAXC__E = .VAX_VAXC_EXEO = .VAX_VAXC_OBJA = .VAX_VAXC_OLB.ENDIF.IFDEF __GNUC__E = .VAX_GNUC_EXEO = .VAX_GNUC_OBJA = .VAX_GNUC_OLB.ENDIF.ENDIF.IFDEF O.ELSE!If EXE and OBJ extensions aren't defined, define themE = .EXEO = .OBJA = .OLB.ENDIF!The following preprocessor macros are set to enable the VMS CLI$ interface:CLI_DEFS = VMSCLI,!!!!!!!!!!!!!!!!!!!!!!!!!!! USER CUSTOMIZATION !!!!!!!!!!!!!!!!!!!!!!!!!!!!! add RETURN_CODES, and/or any other optional preprocessor flags (macros)! except VMSCLI to the following line for a custom version (do not forget! a trailing comma!!):COMMON_DEFS =!! WARNING: Do not use VMSCLI here!! The creation of an UnZip executable!          utilizing the VMS CLI$ command interface is handled differently.!!!!!!!!!!!!!!!!!!!!!!!! END OF USER CUSTOMIZATION !!!!!!!!!!!!!!!!!!!!!!!!.IFDEF __GNUC__CC = gccLIBS = ,GNU_CC:[000000]GCCLIB.OLB/LIB.ELSECC = ccLIBS =.ENDIFCFLAGS = /NOLIST/INCL=(SYS$DISK:[])OPTFILE = sys$disk:[.vms]vaxcshr.opt.IFDEF __ALPHA__CC_OPTIONS = /STANDARD=RELAX/PREFIX=ALL/ANSICC_DEFS = MODERN,OPTFILE_LIST =OPTIONS = $(LIBS)NOSHARE_OPTS = $(LIBS)/NOSYSSHR.ELSE.IFDEF __DECC__CC_OPTIONS = /DECC/STANDARD=VAXC/PREFIX=ALLCC_DEFS = MODERN,OPTFILE_LIST =OPTIONS = $(LIBS)NOSHARE_OPTS = $(LIBS),SYS$LIBRARY:DECCRTL.OLB/LIB/INCL=(CMA$TIS)/NOSYSSHR.ELSE.IFDEF __FORCE_VAXC__		!Select VAXC on systems where DEC C existsCC_OPTIONS = /VAXC.ELSE				!No flag allowed/needed on a pure VAXC systemCC_OPTIONS =.ENDIFCC_DEFS =OPTFILE_LIST = ,$(OPTFILE)OPTIONS = $(LIBS),$(OPTFILE)/OPTIONSNOSHARE_OPTS = $(LIBS),SYS$LIBRARY:VAXCRTL.OLB/LIB/NOSYSSHR.ENDIF.ENDIF.IFDEF __DEBUG__CDEB = /DEBUG/NOOPTIMIZELDEB = /DEBUG.ELSECDEB =LDEB = /NOTRACE.ENDIFCFLAGS_ALL  = $(CC_OPTIONS) $(CFLAGS) $(CDEB) -              /def=($(CC_DEFS) $(COMMON_DEFS) VMS)CFLAGS_SFX  = $(CC_OPTIONS) $(CFLAGS) $(CDEB) -              /def=($(CC_DEFS) $(COMMON_DEFS) SFX, VMS)CFLAGS_CLI  = $(CC_OPTIONS) $(CFLAGS) $(CDEB) -              /def=($(CC_DEFS) $(COMMON_DEFS) $(CLI_DEFS) VMS)CFLAGS_SXC = $(CC_OPTIONS) $(CFLAGS) $(CDEB) -              /def=($(CC_DEFS) $(COMMON_DEFS) $(CLI_DEFS) SFX, VMS)LINKFLAGS   = $(LDEB)OBJM =		unzip$(O), unzcli$(O), unzipsfx$(O), unzsxcli$(O)COMMON_OBJS1 =	crc32$(O),crctab$(O),crypt$(O),envargs$(O),-		explode$(O),extract$(O),fileio$(O),globals$(O)COMMON_OBJS2 =	inflate$(O),list$(O),match$(O),process$(O),ttyio$(O),-		unreduce$(O),unshrink$(O),zipinfo$(O),-		vms$(O)OBJUNZLIB =	$(COMMON_OBJS1),$(COMMON_OBJS2)COMMON_OBJX1 =	crc32$(O),crctab$(O),crypt$(O),-		EXTRACT=extract_$(O),-		fileio$(O),globals$(O)COMMON_OBJX2 =	inflate$(O),match$(O),-		PROCESS=process_$(O),-		ttyio$(O),-		VMS=vms_$(O)OBJSFXLIB =	$(COMMON_OBJX1),$(COMMON_OBJX2)UNZX_UNX = unzipUNZX_CLI = unzip_cliUNZSFX_DEF = unzipsfxUNZSFX_CLI = unzipsfx_cliOBJS = unzip$(O), $(OBJUNZLIB)OBJX = UNZIP=unzipsfx$(O), $(OBJSFXLIB)OBJSCLI = UNZIP=unzipcli$(O), -	VMS_UNZIP_CLD=unz_cli$(O),-	VMS_UNZIP_CMDLINE=cmdline$(O)OBJXCLI = UNZIP=unzsxcli$(O),-	VMS_UNZIP_CLD=unz_cli$(O),-	VMS_UNZIP_CMDLINE=cmdline_$(O)UNZHELP_UNX_RNH = [.vms]unzip_def.rnhUNZHELP_CLI_RNH = [.vms]unzip_cli.rnhOLBUNZ = unzip$(A)OLBCLI = unzipcli$(A)OLBSFX = unzipsfx$(A)OLBSXC = unzsxcli$(A)UNZIP_H = unzip.h unzpriv.h globals.hUNZIPS = $(UNZX_UNX)$(E), $(UNZX_CLI)$(E), $(UNZSFX_DEF)$(E), $(UNZSFX_CLI)$(E)UNZIPS_NOSHARE = $(UNZX_UNX)_noshare$(E), $(UNZSFX_DEF)_noshare$(E)UNZIPHELPS = $(UNZX_UNX).hlp, $(UNZX_CLI).hlp!!!!!!!!!!!!!!!!!!! override default rules: !!!!!!!!!!!!!!!!!!!.suffixes :.suffixes : .ANL $(E) $(A) .MLB .HLB .TLB .FLB $(O) -	    .FORM .BLI .B32 .C .COB -	    .FOR .BAS .B16 .PLI .PEN .PAS .MAC .MAR .M64 .CLD .MSG .COR .DBL -	    .RPG .SCN .IFDL .RBA .RC .RCO .RFO .RPA .SC .SCO .SFO .SPA .SPL -	    .SQLADA .SQLMOD .RGK .RGC .MEM .RNO .HLP .RNH .L32 .REQ .R32 -	    .L16 .R16 .TXT .H .FRM .MMS .DDL .COM .DAT .OPT .CDO .SDML .ADF -	    .GDF .LDF .MDF .RDF .TDF$(O)$(E) :	$(LINK) $(LINKFLAGS) /EXE=$(MMS$TARGET) $(MMS$SOURCE)$(O)$(A) :	If "''F$Search("$(MMS$TARGET)")'" .EQS. "" Then $(LIBR)/Create $(MMS$TARGET)	$(LIBR)$(LIBRFLAGS) $(MMS$TARGET) $(MMS$SOURCE).CLD$(O) :	SET COMMAND /OBJECT=$(MMS$TARGET) $(CLDFLAGS) $(MMS$SOURCE).c$(O) :	$(CC) $(CFLAGS_ALL) /OBJ=$(MMS$TARGET) $(MMS$SOURCE).RNH.HLP :	runoff /out=$@ $<!!!!!!!!!!!!!!!!!! here starts the unzip specific part !!!!!!!!!!!default :	$(UNZIPS), $(UNZIPHELPS)	@	!	Do nothing.noshare :	$(UNZIPS_NOSHARE), $(UNZIPHELPS)	@	!	Do nothing.$(UNZX_UNX)$(E) : $(OLBUNZ)($(OBJS))$(OPTFILE_LIST)	$(LINK)$(LINKFLAGS) /EXE=$(MMS$TARGET) -	$(OLBUNZ)/INCLUDE=UNZIP/LIBRARY$(OPTIONS), -	sys$disk:[.vms]unzip.opt/OPT$(UNZX_CLI)$(E) : $(OLBCLI)($(OBJSCLI)),$(OLBUNZ)($(OBJUNZLIB))$(OPTFILE_LIST)	$(LINK)$(LINKFLAGS) /EXE=$(MMS$TARGET) -	$(OLBCLI)/INCLUDE=UNZIP/LIBRARY, $(OLBUNZ)/LIBRARY$(OPTIONS), -	sys$disk:[.vms]unzip.opt/OPT$(UNZSFX_DEF)$(E) : $(OLBSFX)($(OBJX))$(OPTFILE_LIST)	$(LINK)$(LINKFLAGS) /EXE=$(MMS$TARGET) -	$(OLBSFX)/INCLUDE=UNZIP/LIBRARY$(OPTIONS), -	sys$disk:[.vms]unzipsfx.opt/OPT$(UNZSFX_CLI)$(E) : $(OLBSXC)($(OBJXCLI)),$(OLBSFX)($(OBJSFXLIB))$(OPTFILE_LIST)	$(LINK)$(LINKFLAGS) /EXE=$(MMS$TARGET) -	$(OLBSXC)/INCLUDE=UNZIP/LIBRARY, $(OLBSFX)/LIBRARY$(OPTIONS), -	sys$disk:[.vms]unzipsfx.opt/OPT$(UNZX_UNX)_noshare$(E) :	$(OLBUNZ)($(OBJS))	$(LINK)$(LINKFLAGS) /EXE=$(MMS$TARGET) -	$(OLBUNZ)/INCLUDE=UNZIP/LIBRARY$(NOSHARE_OPTS), -	sys$disk:[.vms]unzip.opt/OPT$(UNZSFX_DEF)_noshare$(E) :	$(OLBSFX)($(OBJX))	$(LINK)$(LINKFLAGS) /EXE=$(MMS$TARGET) -	$(OLBSFX)/INCLUDE=UNZIP/LIBRARY$(NOSHARE_OPTS), -	sys$disk:[.vms]unzipsfx.opt/OPT$(OPTFILE) :	@ open/write tmp $(MMS$TARGET)	@ write tmp "SYS$SHARE:VAXCRTL.EXE/SHARE"	@ close tmp$(UNZHELP_CLI_RNH) : [.vms]unzip_cli.help	@ set default [.vms]	edit/tpu/nosection/nodisplay/command=cvthelp.tpu unzip_cli.help	@ set default [-]$(UNZX_UNX).hlp : $(UNZHELP_UNX_RNH)	runoff /out=$@ $<$(UNZX_CLI).hlp : $(UNZHELP_CLI_RNH)clean.com :	@ open/write tmp $(MMS$TARGET)	@ write tmp "$!"	@ write tmp "$!	Clean.com --	procedure to delete files. It always returns success"	@ write tmp "$!			status despite any error or warnings. Also it extracts"	@ write tmp "$!			filename from MMS ""module=file"" format."	@ write tmp "$!"	@ write tmp "$ on control_y then goto ctly"	@ write tmp "$ if p1.eqs."""" then exit 1"	@ write tmp "$ i = -1"	@ write tmp "$scan_list:"	@ write tmp "$	i = i+1"	@ write tmp "$	item = f$elem(i,"","",p1)"	@ write tmp "$	if item.eqs."""" then goto scan_list"	@ write tmp "$	if item.eqs."","" then goto done		! End of list"	@ write tmp "$	item = f$edit(item,""trim"")		! Clean of blanks"	@ write tmp "$	wild = f$elem(1,""="",item)"	@ write tmp "$	show sym wild"	@ write tmp "$	if wild.eqs.""="" then wild = f$elem(0,""="",item)"	@ write tmp "$	vers = f$parse(wild,,,""version"",""syntax_only"")"	@ write tmp "$	if vers.eqs."";"" then wild = wild - "";"" + "";*"""	@ write tmp "$scan:"	@ write tmp "$		f = f$search(wild)"	@ write tmp "$		if f.eqs."""" then goto scan_list"	@ write tmp "$		on error then goto err"	@ write tmp "$		on warning then goto warn"	@ write tmp "$		delete/log 'f'"	@ write tmp "$warn:"	@ write tmp "$err:"	@ write tmp "$		goto scan"	@ write tmp "$done:"	@ write tmp "$ctly:"	@ write tmp "$	exit 1"	@ close tmpclean : clean.com	! delete *$(O);*, *$(A);*, unzip$(exe);*, unzipsfx$(exe);*, -	!  unzip.hlp;*, [.vms]unzip.rnh;*	@clean "$(OBJM)"	@clean "$(COMMON_OBJS1)"	@clean "$(COMMON_OBJS2)"	@clean "$(OBJSCLI)"	@clean "$(COMMON_OBJX1)"	@clean "$(COMMON_OBJX2)"	@clean "$(OBJXCLI)"	@clean "$(OPTFILE)"	@clean "$(OLBUNZ),$(OLBCLI),$(OLBSFX),$(OLBSXC)"	@clean "$(UNZIPS)"	@clean "$(UNZIPS_NOSHARE)"	@clean "$(UNZHELP_CLI_RNH)"	@clean "$(UNZIPHELPS)"	- delete/noconfirm/nolog clean.com;*crc32$(O)		: crc32.c $(UNZIP_H) zip.hcrctab$(O)		: crctab.c $(UNZIP_H) zip.hcrypt$(O)		: crypt.c $(UNZIP_H) zip.h crypt.h ttyio.henvargs$(O)		: envargs.c $(UNZIP_H)explode$(O)		: explode.c $(UNZIP_H)extract$(O)		: extract.c $(UNZIP_H) crypt.hfileio$(O)		: fileio.c $(UNZIP_H) crypt.h ttyio.h ebcdic.hglobals$(O)		: globals.c $(UNZIP_H)inflate$(O)		: inflate.c inflate.h $(UNZIP_H)list$(O)		: list.c $(UNZIP_H)match$(O)		: match.c $(UNZIP_H)process$(O)		: process.c $(UNZIP_H)ttyio$(O)		: ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.hunreduce$(O)		: unreduce.c $(UNZIP_H)unshrink$(O)		: unshrink.c $(UNZIP_H)unzip$(O)		: unzip.c $(UNZIP_H) crypt.h version.h consts.hzipinfo$(O)		: zipinfo.c $(UNZIP_H)unzipcli$(O)		: unzip.c $(UNZIP_H) crypt.h version.h consts.h	$(CC) $(CFLAGS_CLI) /OBJ=$(MMS$TARGET) $(MMS$SOURCE)cmdline$(O)		: [.vms]cmdline.c $(UNZIP_H) version.h	$(CC) $(CFLAGS_CLI) /OBJ=$(MMS$TARGET) $(MMS$SOURCE)unz_cli$(O)		: [.vms]unz_cli.cldcmdline_$(O)		: [.vms]cmdline.c $(UNZIP_H) version.h	$(CC) $(CFLAGS_SXC) /OBJ=$(MMS$TARGET) [.vms]cmdline.cextract_$(O)		: extract.c $(UNZIP_H) crypt.h	$(CC) $(CFLAGS_SFX) /OBJ=$(MMS$TARGET) extract.cprocess_$(O)		: process.c $(UNZIP_H)	$(CC) $(CFLAGS_SFX) /OBJ=$(MMS$TARGET) process.cunzipsfx$(O)		: unzip.c $(UNZIP_H) crypt.h version.h consts.h	$(CC) $(CFLAGS_SFX) /OBJ=$(MMS$TARGET) unzip.cunzsxcli$(O)		: unzip.c $(UNZIP_H) crypt.h version.h consts.h	$(CC) $(CFLAGS_SXC) /OBJ=$(MMS$TARGET) unzip.cvms$(O)			: [.vms]vms.c [.vms]vms.h [.vms]vmsdefs.h $(UNZIP_H)!	@ x = ""!	@ if f$search("SYS$LIBRARY:SYS$LIB_C.TLB").nes."" then x = "+SYS$LIBRARY:SYS$LIB_C.TLB/LIBRARY"	$(CC) $(CFLAGS_ALL) /OBJ=$(MMS$TARGET) [.vms]vms.cvms_$(O)		: [.vms]vms.c [.vms]vms.h [.vms]vmsdefs.h $(UNZIP_H)!	@ x = ""!	@ if f$search("SYS$LIBRARY:SYS$LIB_C.TLB").nes."" then x = "+SYS$LIBRARY:SYS$LIB_C.TLB/LIBRARY"	$(CC) $(CFLAGS_SFX) /OBJ=$(MMS$TARGET) [.vms]vms.c

⌨️ 快捷键说明

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