#
# $Header: pd:zvmRCS/makefile,v 1.3 1993/04/19 18:40:06 rvillari Exp rvillari $
#
# MakeFile for ZVM
#

CFLAGS= debug=fullflush noerrorsource unsignedchar utilitylibrary multiplecharacterconstants

ASM=asm
ASMFLAGS=-Iinclude:

#for compilation purposes
FAXOBJS=	efax.o timer.o serial.o simplerexx.o debug.o callback.o generic.o config.o tofax.o fromfax.o
FAXPRINTERDOBJS=faxprinter.o icon_support.o tofax.o faxrender.o transfer.o asc2fax.o density.o simplerexx.o
FAX2IFFOBJS = fax2iff.o fromfax.o parse.o apack.o Hook.o getopt.o iffpstrings.o

LIBS=	LIB:scm.lib LIB:sc.lib LIB:amiga.lib lib:rexxvars.o
FAXPRINTEROBJS = printertag.o init.o data.o dospecial.o fptransfer.o density.o myinit.o render.o
FPLIB = lib:amiga.lib+lib:sc.lib
FPCFLAGS = data=far nodebug nostkchk
ASC2FAXOBJS = ecasc2fax.o tofax.o getopt.o

.c.o:
	SC $(CFLAGS) csource=$*.c

.asm.o:
        asm -iINCLUDE: $*.asm

all: efax faxprinterd fax2iff faxprinter asc2fax

efax: $(FAXOBJS) $(LIBS)
	sc object=$(FAXOBJS) programname=efax library=$(LIBS) utilitylibrary link batch

fax2iff: $(FAX2IFFOBJS) $(LIBS)
	sc object=$(FAX2IFFOBJS) programname=fax2iff library=$(LIBS) utilitylibrary link batch

asc2fax: $(ASC2FAXOBJS)
	sc object=$(ASC2FAXOBJS) programname=asc2fax library=$(LIBS) utilitylibrary link batch

faxprinterd: $(FAXPRINTERDOBJS) $(LIBS)
	sc object=$(FAXPRINTERDOBJS) programname=faxprinterd library=$(LIBS) utilitylibrary link noicons batch

faxprinter: $(FAXPRINTEROBJS)
	slink from $(FAXPRINTEROBJS) to faxprinter library $(FPLIB) NODEBUG SC SD

config.o: config.c config_proto.h

debug.o: debug.c debug_proto.h ui_support_proto.h logger.h

callback.o: callback.c callback_proto.h

serial.o: serial.c serial_proto.h debug_proto.h

timer.o: timer.c timer_proto.h

simplerexx.o: simplerexx.c simplerexx.h

init.o: init.asm
        @$(ASM) $(ASMFLAGS) init.asm

printertag.o: printertag.asm hp_rev.i
        @$(ASM) $(ASMFLAGS) printertag.asm

fptransfer.o: fptransfer.asm
        @$(ASM) $(ASMFLAGS) fptransfer.asm

dospecial.o: dospecial.c
	SC $(FPCFLAGS) csource=$*.c

data.o: data.c
	SC $(FPCFLAGS) csource=$*.c

density.o: density.c
	SC $(FPCFLAGS) csource=$*.c

render.o: render.c
	SC $(FPCFLAGS) csource=$*.c

myinit.o: myinit.c
	SC $(FPCFLAGS) csource=$*.c

#header files

debug_proto.h: voice.h
	setdate debug_proto.h

#voice.h:

play_proto.h: voice.h
	setdate play_proto.h

#timer_proto.h:

ui_support_proto.h: ui_support.h voice.h
	setdate ui_support_proto.h

callback.h: voice.h
	setdate callback.h

#serial.h:

#rexx_support_proto.h: 

logs_proto.h: logs.h
	setdate logs_proto.h

#main_proto.h:

#simplrexx.h: 

voice_proto.h: voice.h callback.h
	setdate voice_proto.h

callback_proto.h: callback.h
	setdate callback_proto.h

#ui.h:

serial_proto.h: serial.h
	setdate serial_proto.h

#ui_support.h:

#logs.h:

callin_support_proto.h: voice.h callback.h
	setdate callin_support_proto.h

