# Makefile for international PGP 2.6.3i, using Acorn ANSI C Release 3
# (for the nostalgic feeling :-)), the as assembler (from the gcc
# distribution), and drlink.
# 08 Febuary 1997, Philipp Hullmann <hullmann@nano.fkp.uni-hannover.de>

CC	= cc
CFLAGS	= -W
#CFLAGS	= -W -g

AS 	= as
ASFLAGS	=
LINK    = drlink
LDFLAGS	=
#LDFLAGS = -debug

.SUFFIXES: .c .s .o

.c.o:; $(CC) $(CFLAGS) -c -o $@ $<
.s.o:; $(AS) $(ASFLAGS) -o $@ $<

OBJS= armor.o charset.o config.o crypto.o fileio.o genprime.o getopt.o \
	idea.o keyadd.o keymaint.o keymgmt.o language.o md5.o mdfile.o \
	more.o mpiio.o mpilib.o passwd.o pgp.o random.o rsagen.o rsaglue.o \
	system.o zbits.o zdeflate.o zfile_io.o zglobals.o zinflate.o zip.o \
	zipup.o ztrees.o zunzip.o randpool.o noise.o arm_mpi.o ro_support.o \
	arm_idea.o

pgp: $(OBJS) objects
	$(LINK) $(LDFLAGS) -o pgp -via objects

ideatest: ideatest.o randpool.o md5.o arm_idea.o
	$(LINK) $(LDFLAGS) -o ideatest ideatest.o arm_idea.o randpool.o \
		md5.o $.clib.o.stubs

ideatest.o : idea.c idea.h usuals.h
	$(CC) $(CFLAGS) -DTEST -c idea.c -o o.ideatest

## Dependencies ##

o.arm_idea: s.arm_idea s.arm_regs
o.arm_mpi: s.arm_mpi s.arm_regs
o.ro_support: s.ro_support s.arm_regs
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.h ro_ftypes.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 rsaglue.h
fileio.o : fileio.c random.h idea.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 \
  ro_ftypes.h
genprime.o : genprime.c mpilib.h usuals.h platform.h genprime.h random.h \
  idea.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 ro_ftypes.h platform.h
keymaint.o : keymaint.c mpilib.h usuals.h platform.h random.h idea.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 ro_ftypes.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
noise.o: noise.c noise.h usuals.h randpool.h
passwd.o : passwd.c random.h idea.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 idea.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 rsaglue.h ro_ftypes.h
random.o : random.c system.h random.h idea.h usuals.h language.h ro_ftypes.h
randpool.o: randpool.c randpool.h usuals.h md5.h
rsagen.o : rsagen.c mpilib.h usuals.h platform.h genprime.h rsagen.h \
  random.h idea.h rsaglue.h
rsaglue.o : rsaglue.c mpilib.h mpiio.h pgp.h rsaglue.h
system.o : system.c exitpgp.h system.h charset.h mpilib.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 zip.h 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 language.h

crypto.h: idea.h
idea.h: usuals.h
keymaint.h: pgp.h
keymgmt.h: idea.h
mdfile.h: md5.h
mpilib.h: usuals.h platform.h
noise.h: usuals.h
pgp.h: usuals.h more.h armor.h
random.h: usuals.h idea.h
randpool.h: usuals.h
zip.h: ztailor.h
zunzip.h: usuals.h system.h
