# Makefile for UnZip 5.11+ using Manx Aztec C 5.2               10 July 1994
#
# You may need to change directory names for stat.c, filedate.c and amiga.c.


CC = cc
CFLAGS = -d AMIGA -ps -sabfmnpu -wcpr0u
# -ps means short ints, -s... is optimizations, -w... is type checking
LD = ln
LDFLAGS = +q -m
LDLIBS = -lc16

OBJS = unzip.o crypt.o envargs.o explode.o unshrink.o \
       extract.o zipinfo.o file_io.o inflate.o match.o unreduce.o \
       amiga/amiga.o amiga/crc_68.o amiga/flate.o
XOBJS = unzip.xo crypt.o extract.xo file_io.o inflate.o amiga/flate.o \
        match.o amiga/amiga.xo
FOBJS = funzip.o crypt.fo inflate.fo amiga/flate.fo


.c.o :
	$(CC) -o $@ $(CFLAGS) $*.c

.c.xo:
	$(CC) -o $@ -d SFX $(CFLAGS) $*.c

.c.fo:
	$(CC) -o $@ -d FUNZIP $(CFLAGS) $*.c

UnZip :     $(OBJS)
	$(LD) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS)

UnZipSFX :  $(FOBJS)
	$(LD) $(LDFLAGS) -o $@ $(FOBJS) $(LDLIBS)

fUnZip :    $(FOBJS)
	$(LD) $(LDFLAGS) -o $@ $(XOBJS) $(LDLIBS)

f : fUnZip

all : UnZip UnZipSFX fUnZip

clean :
	delete #?.(o|xo|fo) quiet


$(OBJS) $(XOBJS) $(FOBJS) : unzip.h amiga/amiga.h amiga/z-stat.h

crypt.o crypt.fo : zip.h

inflate.o inflate.fo : inflate.h

file_io.o funzip.o : tables.h

crypt.o crypt.fo unzip.o unzip.xo funzip.o file_io.o : crypt.h
extract.o extract.xo inflate.o inflate.fo : crypt.h

unzip.o unzip.xo : version.h

file_io.o : file_io.c
	$(CC) -o file_io.o $(CFLAGS) -d ASM_CRC file_io.c

inflate.o : inflate.c
	$(CC) -o inflate.o $(CFLAGS) -d ASM_INFLATECODES inflate.c

inflate.fo : inflate.c
	$(CC) -o inflate.fo $(CFLAGS) -d FUNZIP -d ASM_INFLATECODES inflate.c

amiga/amiga.o : amiga/filedate.c amiga/stat.c amiga/amiga.c
	$(CC) -o amiga/amiga.o -d __VERSION__=5 -d __REVISION__=2 \
            $(CFLAGS) amiga/amiga.c

amiga/amiga.xo : amiga/filedate.c amiga/stat.c amiga/amiga.c
	$(CC) -o amiga/amiga.xo -d __VERSION__=5 -d __REVISION__=2 -d SFX \
            $(CFLAGS) amiga/amiga.c

amiga/crc_68.o : amiga/crc_68.a
	as -n -o amiga/crc_68.o -eREGARGS amiga/crc_68.a

amiga/flate.o : amiga/flate.a
	as -n -o amiga/flate.o amiga/flate.a

amiga/flate.fo : amiga/flate.a
	as -n -o amiga/flate.fo -eCRYPT -eFUNZIP amiga/flate.a
