## Makefile for mapper

TARGET = IFmapper
APPNAME = "IFmapper"
APPID = "IFmr"

OBJS = main.o selectmap.o mapper.o db.o draw.o items.o util.o
LIBS =

CC = m68k-palmos-coff-gcc

#CFLAGS = -Wall -g -O2 -fno-builtin
CFLAGS =-g -O2 -Wall -fno-builtin -I$(HOME)/palm/pilrc2.3/

PILRC = $(HOME)/palm/pilrc2.3/pilrc
OBJRES = m68k-palmos-coff-obj-res
NM = m68k-palmos-coff-nm
BUILDPRC = build-prc
PILOTXFER = pilot-xfer

all: $(TARGET).prc

.S.o:
	$(CC) $(TARGETFLAGS) -c $<

.c.s:
	$(CC) $(CSFLAGS) $<


NOWEAVEFLAGS=-n -indexfrom mapper.defs -delay  

mapper.tex: mapper.nw
	nodefs mapper.nw >mapper.defs
	noweave $(NOWEAVEFLAGS) mapper.nw >mapper.tex
#	noweave -delay mapper.nw >mapper.tex

draw.tex: draw.nw
	nodefs draw.nw >draw.defs
	noweave $(NOWEAVEFLAGS) draw.nw >draw.tex
#	noweave -delay draw.nw >draw.tex

db.tex: db.nw
	nodefs db.nw >db.defs
	noweave $(NOWEAVEFLAGS) db.nw >db.tex
#	noweave -delay db.nw >db.tex

items.tex: items.nw
	nodefs items.nw >items.defs
	noweave $(NOWEAVEFLAGS) items.nw >items.tex
#	noweave -delay items.nw >items.tex

main.tex: main.nw
	nodefs main.nw >main.defs
	noweave $(NOWEAVEFLAGS) main.nw >main.tex
#	noweave -delay main.nw >main.tex

selectmap.tex: selectmap.nw
	nodefs selectmap.nw >selectmap.defs
	noweave $(NOWEAVEFLAGS) selectmap.nw >selectmap.tex
#	noweave -delay selectmap.nw >selectmap.tex

util.tex: util.nw
	nodefs util.nw >util.defs
	noweave $(NOWEAVEFLAGS) util.nw >util.tex
#	noweave -delay util.nw >util.tex


doc: mapper.tex draw.tex db.tex items.tex main.tex selectmap.tex util.tex
	latex IFmapper.tex
	noindex mapper
	noindex draw
	latex IFmapper.tex



NOTANGLEFLAGS=-L
mapper.c: mapper.nw
	notangle $(NOTANGLEFLAGS) mapper.nw >mapper.c

draw.c: draw.nw
	notangle $(NOTANGLEFLAGS) draw.nw >draw.c

db.c: db.nw
	notangle $(NOTANGLEFLAGS) db.nw >db.c

items.c: items.nw
	notangle $(NOTANGLEFLAGS) items.nw >items.c

main.c: main.nw
	notangle $(NOTANGLEFLAGS) main.nw >main.c

selectmap.c: selectmap.nw
	notangle $(NOTANGLEFLAGS) selectmap.nw >selectmap.c

util.c: util.nw
	notangle $(NOTANGLEFLAGS) util.nw >util.c


$(OBJS): mapper.h Makefile

$(TARGET).prc: code0000.$(TARGET).grc code0001.$(TARGET).grc data0000.$(TARGET).grc pref0000.$(TARGET).grc rloc0000.$(TARGET).grc bin.res
	$(BUILDPRC) $(TARGET).prc $(APPNAME) $(APPID) code0001.$(TARGET).grc code0000.$(TARGET).grc data0000.$(TARGET).grc *.bin pref0000.$(TARGET).grc rloc0000.$(TARGET).grc

code0000.$(TARGET).grc: $(TARGET)
	$(OBJRES) $(TARGET)

code0001.$(TARGET).grc: code0000.$(TARGET).grc

data0000.$(TARGET).grc: code0000.$(TARGET).grc

pref0000.$(TARGET).grc: code0000.$(TARGET).grc

rloc0000.$(TARGET).grc: code0000.$(TARGET).grc

bin.res: $(TARGET).rcp $(TARGET).pbm minifont.txt
	$(PILRC) $(TARGET).rcp .
	touch bin.res

$(TARGET): $(OBJS)
	$(CC) $(CFLAGS) $(OBJS) -o $(TARGET) $(LIBS)
	! $(NM) -u $(TARGET) | grep .

send: $(TARGET).prc
	$(PILOTXFER) -i $(TARGET).prc

depend:
	makedepend -Y -I. *.c

clean:
	-rm -f *.[oa] $(TARGET) *.bin bin.res *.grc Makefile.bak

veryclean: clean
	-rm -f $(TARGET).prc pilot.ram pilot.scratch

