#
# Makefile for use with gcc
#
CC = gcc
DEBUG = -O2
LINKDBG = -s
#
# Use these settings on a standard Amiga.
#
# CFLAGS = -c $(DEBUG)
#
# use these settings on an Amiga with a 68040
#
CFLAGS = -c -m68020 -m68881 -Dmain=mymain $(DEBUG)
#
# ".o" files and libraries required to build getami
#
GOBJ = getami.o IsPAL.o plot.o
GLIBS = -lrle libiff.a
#
# ".o" files and libraries required to build show3.
#
SOBJ = show3.o IsPAL.o
SLIBS = libiff.a
IFFOBJ = IFFL_CloseIFF.o IFFL_CompressBlock.o IFFL_DecodePic.o \
	 IFFL_DecompressBlock.o IFFL_FindChunk.o IFFL_GetBMHD.o \
	 IFFL_GetColorTab.o IFFL_GetViewModes.o IFFL_IFFError.o \
	 IFFL_ModifyFrame.o IFFL_OpenIFF.o IFFL_PopChunk.o IFFL_PushChunk.o \
	 IFFL_SaveBitMap.o IFFL_SaveClip.o IFFL_WriteChunkBytes.o \
	 OpenIFF.o NewOpenIFF.o

all: getami show3

getami: $(GOBJ) libiff.a
	$(CC) -o getami $(LINKDBG) gcc:lib/rle_stderrfix.o $(GOBJ) $(GLIBS)

show3: $(SOBJ) libiff.a
	$(CC) -o show3 $(LINKDBG) gcc:lib/stderrfix.o $(SOBJ) $(SLIBS)

plot.o: plot.asm
	asm -iinclude: -oplot.o plot.asm
	hunk2gcc plot.o
	delete plot.o
	list to T:tmpscript obj\#? LFORMAT "rename %s plot.o"
	execute T:tmpscript
	list to T:tmpscript obj\#? LFORMAT "delete %s"
	execute T:tmpscript
	delete T:tmpscript

libiff.a: $(IFFOBJ)
	ar rcv libiff.a $(IFFOBJ)
	ranlib libiff.a

IFFL_CloseIFF.o: IFFGlue.S
	$(CC) -c -o IFFL_CloseIFF.o -DIFFL_CloseIFF IFFGlue.S
IFFL_CompressBlock.o: IFFGlue.S
	$(CC) -c -o IFFL_CompressBlock.o -DIFFL_CompressBlock IFFGlue.S
IFFL_DecodePic.o: IFFGlue.S
	$(CC) -c -o IFFL_DecodePic.o -DIFFL_DecodePic IFFGlue.S
IFFL_DecompressBlock.o: IFFGlue.S
	$(CC) -c -o IFFL_DecompressBlock.o -DIFFL_DecompressBlock IFFGlue.S
IFFL_FindChunk.o: IFFGlue.S
	$(CC) -c -o IFFL_FindChunk.o -DIFFL_FindChunk IFFGlue.S
IFFL_GetBMHD.o: IFFGlue.S
	$(CC) -c -o IFFL_GetBMHD.o -DIFFL_GetBMHD IFFGlue.S
IFFL_GetColorTab.o: IFFGlue.S
	$(CC) -c -o IFFL_GetColorTab.o -DIFFL_GetColorTab IFFGlue.S
IFFL_GetViewModes.o: IFFGlue.S
	$(CC) -c -o IFFL_GetViewModes.o -DIFFL_GetViewModes IFFGlue.S
IFFL_IFFError.o: IFFGlue.S
	$(CC) -c -o IFFL_IFFError.o -DIFFL_IFFError IFFGlue.S
IFFL_ModifyFrame.o: IFFGlue.S
	$(CC) -c -o IFFL_ModifyFrame.o -DIFFL_ModifyFrame IFFGlue.S
IFFL_OpenIFF.o: IFFGlue.S
	$(CC) -c -o IFFL_OpenIFF.o -DIFFL_OpenIFF IFFGlue.S
IFFL_PopChunk.o: IFFGlue.S
	$(CC) -c -o IFFL_PopChunk.o -DIFFL_PopChunk IFFGlue.S
IFFL_PushChunk.o: IFFGlue.S
	$(CC) -c -o IFFL_PushChunk.o -DIFFL_PushChunk IFFGlue.S
IFFL_SaveBitMap.o: IFFGlue.S
	$(CC) -c -o IFFL_SaveBitMap.o -DIFFL_SaveBitMap IFFGlue.S
IFFL_SaveClip.o: IFFGlue.S
	$(CC) -c -o IFFL_SaveClip.o -DIFFL_SaveClip IFFGlue.S
IFFL_WriteChunkBytes.o: IFFGlue.S
	$(CC) -c -o IFFL_WriteChunkBytes.o -DIFFL_WriteChunkBytes IFFGlue.S
OpenIFF.o: IFFGlue.S
	$(CC) -c -o OpenIFF.o -DOpenIFF IFFGlue.S
NewOpenIFF.o: IFFGlue.S
	$(CC) -c -o NewOpenIFF.o -DNewOpenIFF IFFGlue.S

clean:
	delete \#?.o getami show3 libiff.a QUIET
