# makefile for PGP (Amiga [SAS/C v6.x])

# CFLAGS options:

# HIGHFIRST if building PGP on a big-endian system
# MPORTABLE if there is no assembly version of the mp_smul function
# DEBUG     to include debugging information
# NOTERMIO  if your system has no termios
# DYN_ALLOC if your compiler does not support large static arrays
# SMALL_MEM if your machine has a small memory (required for MSDOS)

# Define one of:
# MERRITT    Merritt's modmult (fast on risc machines)
# PEASANT    Russian peasant modulo multiply algorithm
# UPTON      default: use Upton's modmult algorithm

# To define the OS we are compiling under, define one of:
# MSDOS, UNIX, VMS, ATARI, AMIGA


CFLAGS= NOWVRET DEFINE=UNIT32 STRINGMERGE DEFINE=AMIGA \
        DEFINE=MPORTABLE DEFINE=HIGHFIRST DEFINE=DYN_ALLOC \
        PARAMETER=REGISTER CPU=ANY \
        NOSTKCHK OPTIMIZE OPTIMIZERINLINELOCAL \
        OPTIMIZERTIME OPTIMIZERCOMPLEXITY=5 \
        OPTIMIZERDEPTH=5 OPTIMIZERRECURDEPTH=5

CC      = sc
ASM     = asm

PROJ    = pgp

ZIPOBJS= zbits.o zdeflate.o zfile_io.o zglobals.o \
        zinflate.o zip.o zipup.o ztrees.o zunzip.o

OBJS_EXT= 68000.o

OBJ1 =  pgp.o crypto.o keymgmt.o fileio.o \
        mdfile.o more.o armor.o mpilib.o mpiio.o \
        genprime.o rsagen.o random.o idea.o passwd.o \
        md5.o system.o language.o getopt.o keyadd.o \
        config.o keymaint.o charset.o rsaglue.o

OBJS =  $(OBJ1) $(ZIPOBJS) $(OBJS_EXT)

.c.o:
        Avail flush
        $(CC) $(CFLAGS) $*.c
.s.o:
        $(ASM) $*.s

$(PROJ):        $(OBJS)
        $(CC) STARTUP=cres $(OBJS) TO $(PROJ) LINK
        delete $(PROJ).lnk QUIET

## Dependencies ##
armor.o : armor.c mpilib.h usuals.h platform.h fileio.h mpiio.h language.h \
  pgp.h more.h armor.h crypto.h
charset.o : charset.c usuals.h language.h charset.h system.h
config.o : config.c usuals.h fileio.h pgp.h more.h armor.h config.h \
  charset.h
crypto.o : crypto.c mpilib.h usuals.h platform.h mpiio.h random.h idea.h \
  crypto.h keymgmt.h keymaint.h mdfile.h md5.h fileio.h charset.h language.h \
  pgp.h more.h armor.h exitpgp.h zipup.h
fileio.o : fileio.c random.h usuals.h mpilib.h platform.h mpiio.h fileio.h \
  language.h pgp.h more.h armor.h exitpgp.h charset.h system.h
genprime.o : genprime.c mpilib.h usuals.h platform.h genprime.h random.h
getopt.o : getopt.c getopt.h
idea.o : idea.c idea.h usuals.h
keyadd.o : keyadd.c mpilib.h usuals.h platform.h crypto.h fileio.h \
  keymgmt.h charset.h language.h pgp.h more.h armor.h exitpgp.h keyadd.h \
  keymaint.h
keymaint.o : keymaint.c mpilib.h usuals.h platform.h random.h crypto.h \
  fileio.h keymgmt.h keymaint.h mpiio.h charset.h language.h pgp.h more.h \
  armor.h
keymgmt.o : keymgmt.c system.h mpilib.h usuals.h platform.h idea.h random.h \
  crypto.h fileio.h keymgmt.h rsagen.h mpiio.h language.h pgp.h more.h \
  armor.h md5.h charset.h keymaint.h
language.o : language.c usuals.h fileio.h language.h pgp.h more.h armor.h \
  charset.h
md5.o : md5.c md5.h
mdfile.o : mdfile.c mpilib.h usuals.h platform.h mdfile.h md5.h fileio.h \
  language.h pgp.h more.h armor.h
more.o : more.c system.h mpilib.h usuals.h platform.h language.h fileio.h \
  pgp.h more.h armor.h charset.h
mpiio.o : mpiio.c mpilib.h usuals.h platform.h mpiio.h pgp.h more.h armor.h
mpilib.o : mpilib.c mpilib.h usuals.h platform.h
passwd.o : passwd.c random.h usuals.h md5.h language.h pgp.h more.h armor.h
pgp.o : pgp.c system.h mpilib.h usuals.h platform.h random.h crypto.h \
  fileio.h keymgmt.h language.h pgp.h more.h armor.h exitpgp.h charset.h \
  getopt.h config.h keymaint.h keyadd.h
random.o : random.c system.h random.h usuals.h language.h
rsagen.o : rsagen.c mpilib.h usuals.h platform.h genprime.h rsagen.h \
  random.h
system.o : system.c exitpgp.h system.h charset.h
zbits.o : zbits.c zip.h ztailor.h ziperr.h
zdeflate.o : zdeflate.c zunzip.h usuals.h system.h zip.h ztailor.h ziperr.h
zfile_io.o : zfile_io.c zunzip.h usuals.h system.h
zglobals.o : zglobals.c zip.h ztailor.h ziperr.h
zinflate.o : zinflate.c zunzip.h usuals.h system.h exitpgp.h
zip.o : zip.c usuals.h fileio.h language.h pgp.h more.h armor.h exitpgp.h
zipup.o : zipup.c zip.h ztailor.h ziperr.h zrevisio.h
ztrees.o : ztrees.c zip.h ztailor.h ziperr.h
zunzip.o : zunzip.c zunzip.h usuals.h system.h
