summaryrefslogtreecommitdiff
path: root/vms/descrip.mms
diff options
context:
space:
mode:
Diffstat (limited to 'vms/descrip.mms')
-rw-r--r--vms/descrip.mms358
1 files changed, 358 insertions, 0 deletions
diff --git a/vms/descrip.mms b/vms/descrip.mms
new file mode 100644
index 0000000..ae2bc04
--- /dev/null
+++ b/vms/descrip.mms
@@ -0,0 +1,358 @@
+# 23 February 2007. SMS.
+#
+# Zip 3.0 for VMS - MMS (or MMK) Description File.
+#
+# Usage:
+#
+# MMS /DESCRIP = [.VMS]DESCRIP.MMS [/MACRO = (<see_below>)] [target]
+#
+# Note that this description file must be used from the main
+# distribution directory, not from the [.VMS] subdirectory.
+#
+# Optional macros:
+#
+# CCOPTS=xxx Compile with CC options xxx. For example:
+# CCOPTS=/ARCH=HOST
+#
+# DBG=1 Compile with /DEBUG /NOOPTIMIZE.
+# Link with /DEBUG /TRACEBACK.
+# (Default is /NOTRACEBACK.)
+#
+# IM=1 Use the old "IM" scheme for storing VMS/RMS file
+# atributes, instead of the newer "PK" scheme.
+#
+# IZ_BZIP2=dev:[dir] Add optional BZIP2 support. The valus of the
+# MMS macro IZ_BZIP2 ("dev:[dir]", or a suitable
+# logical name) tells where to find "bzlib.h". The
+# BZIP2 object library (LIBBZ2_NS.OLB) is expected to
+# be in a "[.dest]" directory under that one
+# ("dev:[dir.ALPHAL]", for example), or in that
+# directory itself.
+#
+# LARGE=1 Enable large-file (>2GB) support. Non-VAX only.
+#
+# LINKOPTS=xxx Link with LINK options xxx. For example:
+# LINKOPTS=/NOINFO
+#
+# LIST=1 Compile with /LIST /SHOW = (ALL, NOMESSAGES).
+# Link with /MAP /CROSS_REFERENCE /FULL.
+#
+# "LOCAL_ZIP=c_macro_1=value1 [, c_macro_2=value2 [...]]"
+# Compile with these additional C macros defined.
+#
+# VAX-specific optional macros:
+#
+# VAXC=1 Use the VAX C compiler, assuming "CC" runs it.
+# (That is, DEC C is not installed, or else DEC C is
+# installed, but VAX C is the default.)
+#
+# FORCE_VAXC=1 Use the VAX C compiler, assuming "CC /VAXC" runs it.
+# (That is, DEC C is installed, and it is the
+# default, but you want VAX C anyway, you fool.)
+#
+# GNUC=1 Use the GNU C compiler. (Seriously under-tested.)
+#
+#
+# The default target, ALL, builds the selected product executables and
+# help files.
+#
+# Other targets:
+#
+# CLEAN deletes architecture-specific files, but leaves any
+# individual source dependency files and the help files.
+#
+# CLEAN_ALL deletes all generated files, except the main (collected)
+# source dependency file.
+#
+# CLEAN_EXE deletes only the architecture-specific executables.
+# Handy if all you wish to do is re-link the executables.
+#
+# Example commands:
+#
+# To build the conventional small-file product using the DEC/Compaq/HP C
+# compiler (Note: DESCRIP.MMS is the default description file name.):
+#
+# MMS /DESCRIP = [.VMS]
+#
+# To get the large-file executables (on a non-VAX system):
+#
+# MMS /DESCRIP = [.VMS] /MACRO = (LARGE=1)
+#
+# To delete the architecture-specific generated files for this system
+# type:
+#
+# MMS /DESCRIP = [.VMS] /MACRO = (LARGE=1) CLEAN ! Large-file.
+# or
+# MMS /DESCRIP = [.VMS] CLEAN ! Small-file.
+#
+# To build a complete small-file product for debug with compiler
+# listings and link maps:
+#
+# MMS /DESCRIP = [.VMS] CLEAN
+# MMS /DESCRIP = [.VMS] /MACRO = (DBG=1, LIST=1)
+#
+########################################################################
+
+# Include primary product description file.
+
+INCL_DESCRIP_SRC = 1
+.INCLUDE [.VMS]DESCRIP_SRC.MMS
+
+# Object library names.
+
+LIB_ZIP = [.$(DEST)]ZIP.OLB
+LIB_ZIPCLI = [.$(DEST)]ZIPCLI.OLB
+LIB_ZIPUTILS = [.$(DEST)]ZIPUTILS.OLB
+
+# Help file names.
+
+ZIP_HELP = ZIP.HLP ZIP_CLI.HLP
+
+# Message file names.
+
+ZIP_MSG_MSG = [.VMS]ZIP_MSG.MSG
+ZIP_MSG_EXE = [.$(DEST)]ZIP_MSG.EXE
+ZIP_MSG_OBJ = [.$(DEST)]ZIP_MSG.OBJ
+
+
+# TARGETS.
+
+# Default target, ALL. Build All Zip executables, utility executables,
+# and help files.
+
+ALL : $(ZIP) $(ZIP_CLI) $(ZIPUTILS) $(ZIP_HELP) $(ZIP_MSG_EXE)
+ @ write sys$output "Done."
+
+# CLEAN target. Delete the [.$(DEST)] directory and everything in it.
+
+CLEAN :
+ if (f$search( "[.$(DEST)]*.*") .nes. "") then -
+ delete /noconfirm [.$(DEST)]*.*;*
+ if (f$search( "$(DEST).DIR") .nes. "") then -
+ set protection = w:d $(DEST).DIR;*
+ if (f$search( "$(DEST).DIR") .nes. "") then -
+ delete /noconfirm $(DEST).DIR;*
+
+# CLEAN_ALL target. Delete:
+# The [.$(DEST)] directories and everything in them.
+# All help-related derived files,
+# All individual C dependency files.
+# Also mention:
+# Comprehensive dependency file.
+
+CLEAN_ALL :
+ if (f$search( "[.ALPHA*]*.*") .nes. "") then -
+ delete /noconfirm [.ALPHA*]*.*;*
+ if (f$search( "ALPHA*.DIR", 1) .nes. "") then -
+ set protection = w:d ALPHA*.DIR;*
+ if (f$search( "ALPHA*.DIR", 2) .nes. "") then -
+ delete /noconfirm ALPHA*.DIR;*
+ if (f$search( "[.IA64*]*.*") .nes. "") then -
+ delete /noconfirm [.IA64*]*.*;*
+ if (f$search( "IA64*.DIR", 1) .nes. "") then -
+ set protection = w:d IA64*.DIR;*
+ if (f$search( "IA64*.DIR", 2) .nes. "") then -
+ delete /noconfirm IA64*.DIR;*
+ if (f$search( "[.VAX*]*.*") .nes. "") then -
+ delete /noconfirm [.VAX*]*.*;*
+ if (f$search( "VAX*.DIR", 1) .nes. "") then -
+ set protection = w:d VAX*.DIR;*
+ if (f$search( "VAX*.DIR", 2) .nes. "") then -
+ delete /noconfirm VAX*.DIR;*
+ if (f$search( "[.vms]ZIP_CLI.RNH") .nes. "") then -
+ delete /noconfirm [.vms]ZIP_CLI.RNH;*
+ if (f$search( "ZIP_CLI.HLP") .nes. "") then -
+ delete /noconfirm ZIP_CLI.HLP;*
+ if (f$search( "ZIP.HLP") .nes. "") then -
+ delete /noconfirm ZIP.HLP;*
+ if (f$search( "*.MMSD") .nes. "") then -
+ delete /noconfirm *.MMSD;*
+ if (f$search( "[.vms]*.MMSD") .nes. "") then -
+ delete /noconfirm [.vms]*.MMSD;*
+ @ write sys$output ""
+ @ write sys$output "Note: This procedure will not"
+ @ write sys$output " DELETE [.VMS]DESCRIP_DEPS.MMS;*"
+ @ write sys$output -
+ "You may choose to, but a recent version of MMS (V3.5 or newer?) is"
+ @ write sys$output -
+ "needed to regenerate it. (It may also be recovered from the original"
+ @ write sys$output -
+ "distribution kit.) See [.VMS]DESCRIP_MKDEPS.MMS for instructions on"
+ @ write sys$output -
+ "generating [.VMS]DESCRIP_DEPS.MMS."
+ @ write sys$output ""
+ @ write sys$output -
+ "It also does not delete the error message source file:"
+ @ write sys$output " DELETE [.VMS]ZIP_MSG.MSG;*"
+ @ write sys$output -
+ "but it can regenerate it if needed."
+ @ write sys$output ""
+
+# CLEAN_EXE target. Delete the executables in [.$(DEST)].
+
+CLEAN_EXE :
+ if (f$search( "[.$(DEST)]*.EXE") .nes. "") then -
+ delete /noconfirm [.$(DEST)]*.EXE;*
+
+
+# Object library module dependencies.
+
+$(LIB_ZIP) : $(LIB_ZIP)($(MODS_OBJS_LIB_ZIP))
+ @ write sys$output "$(MMS$TARGET) updated."
+
+$(LIB_ZIPCLI) : $(LIB_ZIPCLI)($(MODS_OBJS_LIB_ZIPCLI))
+ @ write sys$output "$(MMS$TARGET) updated."
+
+$(LIB_ZIPUTILS) : $(LIB_ZIPUTILS)($(MODS_OBJS_LIB_ZIPUTILS))
+ @ write sys$output "$(MMS$TARGET) updated."
+
+# Module ID options file.
+
+OPT_ID = SYS$DISK:[.VMS]ZIP.OPT
+
+# Default C compile rule.
+
+.C.OBJ :
+ $(CC) $(CFLAGS) $(CDEFS_UNX) $(MMS$SOURCE)
+
+
+# Normal sources in [.VMS].
+
+[.$(DEST)]VMS.OBJ : [.VMS]VMS.C
+[.$(DEST)]VMSMUNCH.OBJ : [.VMS]VMSMUNCH.C
+[.$(DEST)]VMSZIP.OBJ : [.VMS]VMSZIP.C
+
+# Command-line interface files.
+
+[.$(DEST)]CMDLINE.OBJ : [.VMS]CMDLINE.C
+ $(CC) $(CFLAGS) $(CDEFS_CLI) $(MMS$SOURCE)
+
+[.$(DEST)]ZIPCLI.OBJ : ZIP.C
+ $(CC) $(CFLAGS) $(CDEFS_CLI) $(MMS$SOURCE)
+
+[.$(DEST)]ZIP_CLI.OBJ : [.VMS]ZIP_CLI.CLD
+
+# Utility variant sources.
+
+[.$(DEST)]CRC32_.OBJ : CRC32.C
+ $(CC) $(CFLAGS) $(CDEFS_UTIL) $(MMS$SOURCE)
+
+[.$(DEST)]CRYPT_.OBJ : CRYPT.C
+ $(CC) $(CFLAGS) $(CDEFS_UTIL) $(MMS$SOURCE)
+
+[.$(DEST)]FILEIO_.OBJ : FILEIO.C
+ $(CC) $(CFLAGS) $(CDEFS_UTIL) $(MMS$SOURCE)
+
+[.$(DEST)]UTIL_.OBJ : UTIL.C
+ $(CC) $(CFLAGS) $(CDEFS_UTIL) $(MMS$SOURCE)
+
+[.$(DEST)]ZIPFILE_.OBJ : ZIPFILE.C
+ $(CC) $(CFLAGS) $(CDEFS_UTIL) $(MMS$SOURCE)
+
+[.$(DEST)]VMS_.OBJ : [.VMS]VMS.C
+ $(CC) $(CFLAGS) $(CDEFS_UTIL) $(MMS$SOURCE)
+
+# Utility main sources.
+
+[.$(DEST)]ZIPCLOAK.OBJ : ZIPCLOAK.C
+ $(CC) $(CFLAGS) $(CDEFS_UTIL) $(MMS$SOURCE)
+
+[.$(DEST)]ZIPNOTE.OBJ : ZIPNOTE.C
+ $(CC) $(CFLAGS) $(CDEFS_UTIL) $(MMS$SOURCE)
+
+[.$(DEST)]ZIPSPLIT.OBJ : ZIPSPLIT.C
+ $(CC) $(CFLAGS) $(CDEFS_UTIL) $(MMS$SOURCE)
+
+# VAX C LINK options file.
+
+.IFDEF OPT_FILE
+$(OPT_FILE) :
+ open /write opt_file_ln $(OPT_FILE)
+ write opt_file_ln "SYS$SHARE:VAXCRTL.EXE /SHARE"
+ close opt_file_ln
+.ENDIF
+
+# Normal Zip executable.
+
+$(ZIP) : [.$(DEST)]ZIP.OBJ $(LIB_ZIP) $(OPT_FILE)
+ $(LINK) $(LINKFLAGS) $(MMS$SOURCE), -
+ $(LIB_ZIP) /include = (GLOBALS $(INCL_BZIP2_M)) /library, -
+ $(LIB_BZIP2_OPTS) -
+ $(LFLAGS_ARCH) -
+ $(OPT_ID) /options
+
+# CLI Zip executable.
+
+$(ZIP_CLI) : [.$(DEST)]ZIPCLI.OBJ \
+ $(LIB_ZIPCLI) $(OPT_ID) $(OPT_FILE)
+ $(LINK) $(LINKFLAGS) $(MMS$SOURCE), -
+ $(LIB_ZIPCLI) /library, -
+ $(LIB_ZIP) /include = (GLOBALS $(INCL_BZIP2_M)) /library, -
+ $(LIB_BZIP2_OPTS) -
+ $(LFLAGS_ARCH) -
+ $(OPT_ID) /options
+
+# Utility executables.
+
+[.$(DEST)]ZIPCLOAK.EXE : [.$(DEST)]ZIPCLOAK.OBJ \
+ $(LIB_ZIPUTILS) \
+ $(OPT_ID) $(OPT_FILE)
+ $(LINK) $(LINKFLAGS) $(MMS$SOURCE), -
+ $(LIB_ZIPUTILS) /include = (GLOBALS) /library, -
+ $(LFLAGS_ARCH) -
+ $(OPT_ID) /options
+
+[.$(DEST)]ZIPNOTE.EXE : [.$(DEST)]ZIPNOTE.OBJ \
+ $(LIB_ZIPUTILS) \
+ $(OPT_ID) $(OPT_FILE)
+ $(LINK) $(LINKFLAGS) $(MMS$SOURCE), -
+ $(LIB_ZIPUTILS) /include = (GLOBALS) /library, -
+ $(LFLAGS_ARCH) -
+ $(OPT_ID) /options
+
+[.$(DEST)]ZIPSPLIT.EXE : [.$(DEST)]ZIPSPLIT.OBJ \
+ $(LIB_ZIPUTILS) \
+ $(OPT_ID) $(OPT_FILE)
+ $(LINK) $(LINKFLAGS) $(MMS$SOURCE), -
+ $(LIB_ZIPUTILS) /include = (GLOBALS) /library, -
+ $(LFLAGS_ARCH) -
+ $(OPT_ID) /options
+
+# Help files.
+
+ZIP.HLP : [.VMS]VMS_ZIP.RNH
+ runoff /output = $(MMS$TARGET) $(MMS$SOURCE)
+
+ZIP_CLI.HLP : [.VMS]ZIP_CLI.HELP [.VMS]CVTHELP.TPU
+ edit := edit
+ edit /tpu /nosection /nodisplay /command = [.VMS]CVTHELP.TPU -
+ $(MMS$SOURCE)
+ rename /noconfirm ZIP_CLI.RNH; [.VMS];
+ purge /noconfirm /nolog /keep = 1 [.VMS]ZIP_CLI.RNH
+ runoff /output = $(MMS$TARGET) [.VMS]ZIP_CLI.RNH
+
+# Message file.
+
+$(ZIP_MSG_EXE) : $(ZIP_MSG_OBJ)
+ link /shareable = $(MMS$TARGET) $(ZIP_MSG_OBJ)
+
+$(ZIP_MSG_OBJ) : $(ZIP_MSG_MSG)
+ message /object = $(MMS$TARGET) /nosymbols $(ZIP_MSG_MSG)
+
+$(ZIP_MSG_MSG) : ZIPERR.H [.VMS]STREAM_LF.FDL [.VMS]VMS_MSG_GEN.C
+ $(CC) /include = [] /object = [.$(DEST)]VMS_MSG_GEN.OBJ -
+ [.VMS]VMS_MSG_GEN.C
+ $(LINK) /executable = [.$(DEST)]VMS_MSG_GEN.EXE -
+ $(LFLAGS_ARCH) -
+ [.$(DEST)]VMS_MSG_GEN.OBJ
+ create /fdl = [.VMS]STREAM_LF.FDL $(MMS$TARGET)
+ define /user_mode sys$output $(MMS$TARGET)
+ run [.$(DEST)]VMS_MSG_GEN.EXE
+ purge $(MMS$TARGET)
+ delete [.$(DEST)]VMS_MSG_GEN.EXE;*, [.$(DEST)]VMS_MSG_GEN.OBJ;*
+
+# Include generated source dependencies.
+
+INCL_DESCRIP_DEPS = 1
+.INCLUDE [.VMS]DESCRIP_DEPS.MMS
+