diff options
Diffstat (limited to 'vms/descrip_src.mms')
-rw-r--r-- | vms/descrip_src.mms | 373 |
1 files changed, 373 insertions, 0 deletions
diff --git a/vms/descrip_src.mms b/vms/descrip_src.mms new file mode 100644 index 0000000..33f3281 --- /dev/null +++ b/vms/descrip_src.mms @@ -0,0 +1,373 @@ +# 23 February 2007. SMS. +# +# Zip 3.0 for VMS - MMS (or MMK) Source Description File. +# + +# This description file is included by other description files. It is +# not intended to be used alone. Verify proper inclusion. + +.IFDEF INCL_DESCRIP_SRC +.ELSE +$$$$ THIS DESCRIPTION FILE IS NOT INTENDED TO BE USED THIS WAY. +.ENDIF + + +# Define MMK architecture macros when using MMS. + +.IFDEF __MMK__ # __MMK__ +.ELSE # __MMK__ +ALPHA_X_ALPHA = 1 +IA64_X_IA64 = 1 +VAX_X_VAX = 1 +.IFDEF $(MMS$ARCH_NAME)_X_ALPHA # $(MMS$ARCH_NAME)_X_ALPHA +__ALPHA__ = 1 +.ENDIF # $(MMS$ARCH_NAME)_X_ALPHA +.IFDEF $(MMS$ARCH_NAME)_X_IA64 # $(MMS$ARCH_NAME)_X_IA64 +__IA64__ = 1 +.ENDIF # $(MMS$ARCH_NAME)_X_IA64 +.IFDEF $(MMS$ARCH_NAME)_X_VAX # $(MMS$ARCH_NAME)_X_VAX +__VAX__ = 1 +.ENDIF # $(MMS$ARCH_NAME)_X_VAX +.ENDIF # __MMK__ + +# Combine command-line VAX C compiler macros. + +.IFDEF VAXC # VAXC +VAXC_OR_FORCE_VAXC = 1 +.ELSE # VAXC +.IFDEF FORCE_VAXC # FORCE_VAXC +VAXC_OR_FORCE_VAXC = 1 +.ENDIF # FORCE_VAXC +.ENDIF # VAXC + +# Analyze architecture-related and option macros. + +.IFDEF __ALPHA__ # __ALPHA__ +DECC = 1 +DESTM = ALPHA +.ELSE # __ALPHA__ +.IFDEF __IA64__ # __IA64__ +DECC = 1 +DESTM = IA64 +.ELSE # __IA64__ +.IFDEF __VAX__ # __VAX__ +.IFDEF VAXC_OR_FORCE_VAXC # VAXC_OR_FORCE_VAXC +DESTM = VAXV +.ELSE # VAXC_OR_FORCE_VAXC +.IFDEF GNUC # GNUC +CC = GCC +DESTM = VAXG +.ELSE # GNUC +DECC = 1 +DESTM = VAX +.ENDIF # GNUC +.ENDIF # VAXC_OR_FORCE_VAXC +.ELSE # __VAX__ +DESTM = UNK +UNK_DEST = 1 +.ENDIF # __VAX__ +.ENDIF # __IA64__ +.ENDIF # __ALPHA__ + +.IFDEF IM # IM +DESTI = I +.ELSE # IM +DESTI = +.ENDIF # IM + +.IFDEF LARGE # LARGE +.IFDEF __VAX__ # __VAX__ +DESTL = +.ELSE # __VAX__ +DESTL = L +.ENDIF # __VAX__ +.ELSE # LARGE +DESTL = +.ENDIF # LARGE + +DEST = $(DESTM)$(DESTI)$(DESTL) +SEEK_BZ = $(DESTM)$(DESTL) + +# Library module name suffix for XXX_.OBJ with GNU C. + +.IFDEF GNUC # GNUC +GCC_ = _ +.ELSE # GNUC +GCC_ = +.ENDIF # GNUC + +# Check for option problems. + +.IFDEF __VAX__ # __VAX__ +.IFDEF LARGE # LARGE +LARGE_VAX = 1 +.ENDIF # LARGE +.IFDEF VAXC_OR_FORCE_VAXC # VAXC_OR_FORCE_VAXC +.IFDEF GNUC # GNUC +VAX_MULTI_CMPL = 1 +.ENDIF # GNUC +.ENDIF # VAXC_OR_FORCE_VAXC +.ELSE # __VAX__ +.IFDEF VAXC_OR_FORCE_VAXC # VAXC_OR_FORCE_VAXC +NON_VAX_CMPL = 1 +.ELSE # VAXC_OR_FORCE_VAXC +.IFDEF GNUC # GNUC +NON_VAX_CMPL = 1 +.ENDIF # GNUC +.ENDIF # VAXC_OR_FORCE_VAXC +.ENDIF # __VAX__ + +# Complain if warranted. Otherwise, show destination directory. +# Make the destination directory, if necessary. + +.IFDEF UNK_DEST # UNK_DEST +.FIRST + @ write sys$output - + " Unknown system architecture." +.IFDEF __MMK__ # __MMK__ + @ write sys$output - + " MMK on IA64? Try adding ""/MACRO = __IA64__""." +.ELSE # __MMK__ + @ write sys$output - + " MMS too old? Try adding ""/MACRO = MMS$ARCH_NAME=ALPHA""," + @ write sys$output - + " or ""/MACRO = MMS$ARCH_NAME=IA64"", or ""/MACRO = MMS$ARCH_NAME=VAX""," + @ write sys$output - + " as appropriate. (Or try a newer version of MMS.)" +.ENDIF # __MMK__ + @ write sys$output "" + I_WILL_DIE_NOW. /$$$$INVALID$$$$ +.ELSE # UNK_DEST +.IFDEF VAX_MULTI_CMPL # VAX_MULTI_CMPL +.FIRST + @ write sys$output - + " Macro ""GNUC"" is incompatible with ""VAXC"" or ""FORCE_VAXC""." + @ write sys$output "" + I_WILL_DIE_NOW. /$$$$INVALID$$$$ +.ELSE # VAX_MULTI_CMPL +.IFDEF NON_VAX_CMPL # NON_VAX_CMPL +.FIRST + @ write sys$output - + " Macros ""GNUC"", ""VAXC"", and ""FORCE_VAXC"" are valid only on VAX." + @ write sys$output "" + I_WILL_DIE_NOW. /$$$$INVALID$$$$ +.ELSE # NON_VAX_CMPL +.IFDEF LARGE_VAX # LARGE_VAX +.FIRST + @ write sys$output - + " Macro ""LARGE"" is invalid on VAX." + @ write sys$output "" + I_WILL_DIE_NOW. /$$$$INVALID$$$$ +.ELSE # LARGE_VAX +.IFDEF IZ_BZIP2 # IZ_BZIP2 +CDEFS_BZ = , BZIP2_SUPPORT +CFLAGS_INCL = /INCLUDE = ([], [.VMS]) +INCL_BZIP2_M = , ZBZ2ERR +LIB_BZIP2_OPTS = LIB_BZIP2:LIBBZ2_NS.OLB /library, +.FIRST + @ define incl_bzip2 $(IZ_BZIP2) + @ @[.VMS]FIND_BZIP2_LIB.COM $(IZ_BZIP2) $(SEEK_BZ) - + LIBBZ2_NS.OLB lib_bzip2 + @ write sys$output "" + @ if (f$trnlnm( "lib_bzip2") .nes. "") then - + write sys$output " BZIP2 dir: ''f$trnlnm( "lib_bzip2")'" + @ if (f$trnlnm( "lib_bzip2") .eqs. "") then - + write sys$output " Can not find BZIP2 object library." + @ write sys$output "" + @ if (f$trnlnm( "lib_bzip2") .eqs. "") then - + I_WILL_DIE_NOW. /$$$$INVALID$$$$ + @ write sys$output " Destination: [.$(DEST)]" + @ write sys$output "" + if (f$search( "$(DEST).DIR;1") .eqs. "") then - + create /directory [.$(DEST)] +.ELSE # IZ_BZIP2 +CDEFS_BZ = +CFLAGS_INCL = /include = [] +INCL_BZIP2_M = , ZBZ2ERR +LIB_BZIP2_OPTS = +.FIRST + @ write sys$output " Destination: [.$(DEST)]" + @ write sys$output "" + if (f$search( "$(DEST).DIR;1") .eqs. "") then - + create /directory [.$(DEST)] +.ENDIF # IZ_BZIP2 +.ENDIF # LARGE_VAX +.ENDIF # NON_VAX_CMPL +.ENDIF # VAX_MULTI_CMPL +.ENDIF # UNK_DEST + +# DBG options. + +.IFDEF DBG # DBG +CFLAGS_DBG = /debug /nooptimize +LINKFLAGS_DBG = /debug /traceback +.ELSE # DBG +CFLAGS_DBG = +LINKFLAGS_DBG = /notraceback +.ENDIF # DBG + +# "IM" scheme for storing VMS/RMS file attributes. + +.IFDEF IM # IM +CDEFS_IM = , VMS_IM_EXTRA +.ELSE # IM +CDEFS_IM = +.ENDIF # IM + +# Large-file options. + +.IFDEF LARGE # LARGE +CDEFS_LARGE = , LARGE_FILE_SUPPORT +.ELSE # LARGE +CDEFS_LARGE = +.ENDIF # LARGE + +# C compiler defines. + +.IFDEF LOCAL_ZIP +C_LOCAL_ZIP = , $(LOCAL_ZIP) +.ELSE +C_LOCAL_ZIP = +.ENDIF + +CDEFS = VMS $(CDEFS_BZ) $(CDEFS_IM) $(CDEFS_LARGE) $(C_LOCAL_ZIP) + +CDEFS_UNX = /define = ($(CDEFS)) + +CDEFS_CLI = /define = ($(CDEFS), VMSCLI) + +CDEFS_UTIL = /define = ($(CDEFS), UTIL) + +# Other C compiler options. + +.IFDEF DECC # DECC +CFLAGS_ARCH = /decc /prefix = (all) +.ELSE # DECC +.IFDEF FORCE_VAXC # FORCE_VAXC +CFLAGS_ARCH = /vaxc +.IFDEF VAXC # VAXC +.ELSE # VAXC +VAXC = 1 +.ENDIF # VAXC +.ELSE # FORCE_VAXC +CFLAGS_ARCH = +.ENDIF # FORCE_VAXC +.ENDIF # DECC + +.IFDEF VAXC_OR_FORCE_VAXC # VAXC_OR_FORCE_VAXC +OPT_FILE = [.$(DEST)]VAXCSHR.OPT +LFLAGS_ARCH = $(OPT_FILE) /options, +.ELSE # VAXC_OR_FORCE_VAXC +.IFDEF GNUC # GNUC +OPT_FILE = [.$(DEST)]VAXCSHR.OPT +LFLAGS_GNU = GNU_CC:[000000]GCCLIB.OLB /LIBRARY +LFLAGS_ARCH = $(LFLAGS_GNU), SYS$DISK:$(OPT_FILE) /options, +.ELSE # GNUC +OPT_FILE = +LFLAGS_ARCH = +.ENDIF # GNUC +.ENDIF # VAXC_OR_FORCE_VAXC + +# LIST options. + +.IFDEF LIST # LIST +.IFDEF DECC # DECC +CFLAGS_LIST = /list = $*.LIS /show = (all, nomessages) +.ELSE # DECC +CFLAGS_LIST = /list = $*.LIS /show = (all) +.ENDIF # DECC +LINKFLAGS_LIST = /map = $*.MAP /cross_reference /full +.ELSE # LIST +CFLAGS_LIST = +LINKFLAGS_LIST = +.ENDIF # LIST + +# Common CFLAGS and LINKFLAGS. + +CFLAGS = \ + $(CFLAGS_ARCH) $(CFLAGS_DBG) $(CFLAGS_INCL) $(CFLAGS_LIST) $(CCOPTS) \ + /object = $(MMS$TARGET) + +LINKFLAGS = \ + $(LINKFLAGS_DBG) $(LINKFLAGS_LIST) $(LINKOPTS) \ + /executable = $(MMS$TARGET) + +# Object library module=object lists. + +# Primary object library, []. + +MODS_OBJS_LIB_ZIP_N = \ + CRC32=[.$(DEST)]CRC32.OBJ \ + CRYPT=[.$(DEST)]CRYPT.OBJ \ + DEFLATE=[.$(DEST)]DEFLATE.OBJ \ + FILEIO=[.$(DEST)]FILEIO.OBJ \ + GLOBALS=[.$(DEST)]GLOBALS.OBJ \ + TREES=[.$(DEST)]TREES.OBJ \ + TTYIO=[.$(DEST)]TTYIO.OBJ \ + UTIL=[.$(DEST)]UTIL.OBJ \ + ZBZ2ERR=[.$(DEST)]ZBZ2ERR.OBJ \ + ZIPFILE=[.$(DEST)]ZIPFILE.OBJ \ + ZIPUP=[.$(DEST)]ZIPUP.OBJ + +# Primary object library, [.VMS]. + +MODS_OBJS_LIB_ZIP_V = \ + VMS=[.$(DEST)]VMS.OBJ \ + VMSMUNCH=[.$(DEST)]VMSMUNCH.OBJ \ + VMSZIP=[.$(DEST)]VMSZIP.OBJ + +MODS_OBJS_LIB_ZIP = $(MODS_OBJS_LIB_ZIP_N) $(MODS_OBJS_LIB_ZIP_V) + +# Utility object library, normal, []. + +MODS_OBJS_LIB_ZIPUTILS_N = \ + GLOBALS=[.$(DEST)]GLOBALS.OBJ \ + TTYIO=[.$(DEST)]TTYIO.OBJ + +# Utility object library, variant, []. + +MODS_OBJS_LIB_ZIPUTILS_U = \ + CRC32$(GCC_)=[.$(DEST)]CRC32_.OBJ \ + CRYPT$(GCC_)=[.$(DEST)]CRYPT_.OBJ \ + FILEIO$(GCC_)=[.$(DEST)]FILEIO_.OBJ \ + UTIL$(GCC_)=[.$(DEST)]UTIL_.OBJ \ + ZIPFILE$(GCC_)=[.$(DEST)]ZIPFILE_.OBJ + +# Utility object library, normal, [.VMS]. + +MODS_OBJS_LIB_ZIPUTILS_N_V = \ + VMSMUNCH=[.$(DEST)]VMSMUNCH.OBJ + +# Utility object library, variant, [.VMS]. + +MODS_OBJS_LIB_ZIPUTILS_U_V = \ + VMS$(GCC_)=[.$(DEST)]VMS_.OBJ + +MODS_OBJS_LIB_ZIPUTILS = $(MODS_OBJS_LIB_ZIPUTILS_N) \ + $(MODS_OBJS_LIB_ZIPUTILS_U) \ + $(MODS_OBJS_LIB_ZIPUTILS_N_V) \ + $(MODS_OBJS_LIB_ZIPUTILS_U_V) \ + +# CLI object library, [.VMS]. + +MODS_OBJS_LIB_ZIPCLI_C_V = \ + CMDLINE=[.$(DEST)]CMDLINE.OBJ + +MODS_OBJS_LIB_ZIPCLI_CLD_V = \ + ZIP_CLITABLE=[.$(DEST)]ZIP_CLI.OBJ + +MODS_OBJS_LIB_ZIPCLI = \ + $(MODS_OBJS_LIB_ZIPCLI_C_V) \ + $(MODS_OBJS_LIB_ZIPCLI_CLD_V) + +# Executables. + +ZIP = [.$(DEST)]ZIP.EXE + +ZIP_CLI = [.$(DEST)]ZIP_CLI.EXE + +ZIPUTILS = \ + [.$(DEST)]ZIPCLOAK.EXE \ + [.$(DEST)]ZIPNOTE.EXE \ + [.$(DEST)]ZIPSPLIT.EXE + |