android_mt6572_jiabo/external/zip/orig/vms/descrip_src.mms
2025-09-05 16:56:03 +08:00

373 lines
11 KiB
Text

# 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