home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 9 Archive
/
09-Archive.zip
/
zip21.zip
/
vms
/
makefile.vms
< prev
next >
Wrap
Makefile
|
1996-04-01
|
5KB
|
170 lines
#============================================================================
# Makefile for VMS Zip, ZipCloak, ZipNote and ZipSplit Greg Roelofs
# Version: 2.0 [for use with Todd Aven's MAKE/VMS 3.4] 16-JAN-1996
#============================================================================
# ChangeLog: 10-SEP-1993 08:53 by Hunter Goatley (add AXP support)
# 15-OCT-1995 22:40 by Chr. Spieler (Zip 2.1)
# 11-DEC-1995 12:09 by Chr. Spieler (AXP uses RELAXED_ANSI mode)
# 08-JAN-1996 19:08 by Chr. Spieler (updated header dependencies)
# 16-JAN-1996 19:08 by Chr. Spieler (crypt -> crypt & ttyio)
########################### USER CUSTOMIZATION ############################
# add any optional preprocessor flags (macros) to the following line
# for a custom version (do not forget a trailing comma##):
COMMON_DEFS =
######################## END OF USER CUSTOMIZATION ########################
#####################
# MACRO DEFINITIONS #
#####################
CFLAGS = /NOLIST/INCL=(SYS$DISK:[])
CC = cc
LIB =
# Define the macro __GNUC__ to use the GNU compiler (also add /undef=__STDC__
# to CFLAGS, and possibly replace /obj=$@ [below] with copy/rename/delete
# setup). NOT TESTED.
%IFDEF __ALPHA
CC = CC/STANDARD=RELAX/PREFIX=ALL/ANSI
E = .AXP_EXE
O = .AXP_OBJ
OPTIONS =
OPTFILE =
%ELSE
%IFDEF __DECC__
CC = CC/DECC/STANDARD=VAXC/PREFIX=ALL
E = .VAX_DECC_exe
O = .VAX_DECC_obj
OPTIONS =
OPTFILE =
%ELSE
%IFDEF __GNUC__
CC = gcc
E = .VAX_GNUC_exe
O = .VAX_GNUC_obj
LIB = gnu_cc:[000000]gcclib.olb/lib,
%ELSE
E = .VAX_VAXC_exe
O = .VAX_VAXC_obj
%ENDIF
OPTFILE = ,VAXCSHR.OPT
OPTIONS = $(OPTFILE)/OPTIONS
%ENDIF
%ENDIF
CFLAGS_ALL = $(CFLAGS) /def=($(COMMON_DEFS) VMS)
CFLAGS_UTIL = $(CFLAGS) /def=($(COMMON_DEFS) UTIL, VMS)
LD = LINK
LDFLAGS = /NOTRACE
ZIPS = zip$E zipcloak$E zipnote$E zipsplit$E
# object file lists
OBJZ = zip$O, crc32$O, crctab$O, crypt$O, ttyio$O,-
zipfile$O, zipup$O, fileio$O, globals$O,-
util$O, vmszip$O, vms$O, vmsmunch$O
OBJI = deflate$O, trees$O, bits$O
OBJU = zipfile_$O,fileio_$O,globals$O,-
util_$O,vmszip_$O,vms_$O,vmsmunch$O
OBJR = crctab$O, crypt_$O, ttyio$O
OBJC = zipcloak$O,$(OBJR),$(OBJU)
OBJN = zipnote$O,$(OBJU)
OBJS = zipsplit$O,$(OBJU)
ZIP_H = zip.h ziperr.h tailor.h [.vms]osdep.h
###############################################
# BASIC COMPILE INSTRUCTIONS AND DEPENDENCIES #
###############################################
default : $(ZIPS)
# suffix rules
*$O: *.c # `*.c' necessary?
$(CC)$(CFLAGS_ALL)/OBJECT=$@ $<
# executables makerules (trailing `$' makes line a data line)
zip$E : $(OBJZ), $(OBJI) $(OPTFILE)
$(LD) $(LDFLAGS)/EXEC=ZIP$E $(OBJZ), $(OBJI) $(LIB) $(OPTIONS)
zipcloak$E : $(OBJC) $(OPTFILE)
$(LD) $(LDFLAGS)/EXEC=ZIPCLOAK$E $(OBJC) $(LIB) $(OPTIONS)
zipnote$E : $(OBJN) $(OPTFILE)
$(LD) $(LDFLAGS)/EXEC=ZIPNOTE$E $(OBJN) $(LIB) $(OPTIONS)
zipsplit$E : $(OBJS) $(OPTFILE)
$(LD) $(LDFLAGS)/EXEC=ZIPSPLIT$E $(OBJS) $(LIB) $(OPTIONS)
VAXCSHR.OPT :
open/write tmp vaxcshr.opt
write tmp "SYS$SHARE:VAXCRTL.EXE/SHARE"
close tmp
# dependencies for zip, zipnote, zipcloak, and zipsplit
vmszip$O : [.vms]vmszip.c [.vms]vmsmunch.h
$(CC)$(CFLAGS_ALL)/OBJECT=vmszip$O [.vms]vmszip.c
vms$O : [.vms]vms.c [.vms]vms_im.c [.vms]vms_pk.c \
[.vms]vms.h [.vms]vmsdefs.h
$(CC)$(CFLAGS_ALL)/OBJECT=vms$O [.vms]vms.c
vmsmunch$O : [.vms]vmsmunch.c [.vms]vmsmunch.h [.vms]vmsdefs.h
$(CC)$(CFLAGS_ALL)/OBJECT=vmsmunch$O [.vms]vmsmunch.c
zipfile$O : [.vms]vmsmunch.h [.vms]vmsdefs.h
zip$O : [.vms]vmsmunch.h
crypt_$O : crypt.c crypt.h ttyio.h
$(CC)$(CFLAGS_UTIL)/OBJECT=crypt_$O crypt.c
zipfile_$O : zipfile.c [.vms]vmsmunch.h [.vms]vmsdefs.h
$(CC)$(CFLAGS_UTIL)/OBJECT=zipfile_$O zipfile.c
fileio_$O : fileio.c
$(CC)$(CFLAGS_UTIL)/OBJECT=fileio_$O fileio.c
util_$O : util.c
$(CC)$(CFLAGS_UTIL)/OBJECT=util_$O util.c
vmszip_$O : [.vms]vmszip.c [.vms]vmsmunch.h
$(CC)$(CFLAGS_UTIL)/OBJECT=vmszip_$O [.vms]vmszip.c
vms_$O : [.vms]vms.c [.vms]vms_im.c [.vms]vms_pk.c \
[.vms]vms.h [.vms]vmsdefs.h
$(CC)$(CFLAGS_UTIL)/OBJECT=vms_$O [.vms]vms.c
zip$O zipcloak$O zipnote$O zipsplit$O zipup$O : revision.h
zip$O zipcloak$O zipup$O bits$O crypt$O ttyio$O : crypt.h
zip$O zipcloak$O crypt$O ttyio$O : ttyio.h
zipup$O : [.vms]zipup.h
$(OBJZ) : $(ZIP_H)
$(OBJI) : $(ZIP_H)
$(OBJN) : $(ZIP_H)
$(OBJS) : $(ZIP_H)
$(OBJC) : $(ZIP_H)
clean :
delete *.$(O);*
delete *.$(E);* # use "purge/log" instead?
# the backslash '\' is the continuation character if it occurs as
# the last non-white character on the line.
# the hyphen '-' is the DCL continuation character, so if it occurs
# as the last non-white character on the line, the next line will
# not have the dollar sign '$' prepended.
################################
# INDIVIDUAL MACHINE MAKERULES #
################################
generic : default # first try if unknown
generic2 : default # second try if unknown
vax : default
vms : default
all : $(ZIPS)
zip : zip$E
zipcloak : zipcloak$E
zipnote : zipnote$E
zipsplit : zipsplit$E