TARGET = iRogue
APPNAME = "iRogue"
APPID = "RoGe"

# had my_curses and random at one point.
# move.o spec_hit.o hit.o my_machdep.o my_message.o ring.o room.o
# DUDE!  THERE IS NOTHING IN room.c ANYMORE!
#OBJS1 = my_object.o inventory.o Globals.o monster.o pack.o trap.o room.o \
#	object.o move.o spec_hit.o hit.o
OBJS1 = my_object.o chuvmey_nolib.o Globals.o inventory.o monster.o pack.o \
	trap.o object.o move.o spec_hit.o
OBJS2 = hit.o use.o zap.o throw.o $(TARGET).o main.o level.o chuvmey.o
CRT0 = /usr/local/pilot/m68k-palmos-coff/lib/crt0.o

# Make sure librogue.sa is visible (it's really in ./Lib/)
LIBS = -L./Lib -lrogue
INCS = Globals.h rogue.h rogue_defines.h rogue_prototypes.h Lib/librogue.h

# CC = cc -g
CC = m68k-palmos-coff-gcc
CFLAGS = -Wall -g -O2

PILRC = pilrc
OBJRES = m68k-palmos-coff-obj-res
BUILDPRC = build-prc
PILOTXFER = pilot-xfer

all: iRogue.prc

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

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

$(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
	$(PILRC) $(TARGET).rcp .
	touch bin.res

$(TARGET): $(OBJS1) $(OBJS2) start.o
	$(CC) $(CFLAGS) -nostartfiles start.o $(OBJS1) $(CRT0) $(OBJS2) -o $(TARGET) $(LIBS)

# $(TARGET): $(OBJS1) $(OBJS2)
#	$(CC) $(CFLAGS) $(OBJS1) $(OBJS2) -o $(TARGET) $(LIBS)

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

depend:
	makedepend -Y -I/usr/local/pilot/m68k-palmos-coff/include/ *.c

dingy:
	-rm -f *.[oa] $(TARGET)

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

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

# DO NOT DELETE

curses.o: curses.c $(INCS)
Globals.o: Globals.c $(INCS)
hit.o: hit.c $(INCS)
iRogue.o: iRogue.c $(INCS)
init.o: init.c $(INCS)
instruct.o: instruct.c $(INCS)
inventory.o: inventory.c $(INCS)
level.o: level.c $(INCS)
machdep.o: machdep.c $(INCS)
main.o: main.c $(INCS)
message.o: message.c $(INCS)
monster.o: monster.c $(INCS)
move.o: move.c $(INCS)
my_object.o: my_object.c $(INCS)
object.o: object.c $(INCS)
pack.o: pack.c $(INCS)
play.o: play.c $(INCS)
ring.o: ring.c $(INCS)
room.o: room.c $(INCS)
save.o: save.c $(INCS)
score.o: score.c $(INCS)
spec_hit.o: spec_hit.c $(INCS)
throw.o: throw.c $(INCS)
trap.o: trap.c $(INCS)
use.o: use.c $(INCS)
zap.o: zap.c $(INCS)
chuvmey.o: chuvmey.c $(INCS)
chuvmey_nolib.o: chuvmey_nolib.c $(INCS)
