123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373 |
- # 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
|