TARGET = iLarn
APPNAME = "iLarn"
APPID = "Larn"
# NOTE: I have registered this app id.

# how to split?  hm
FORMO = form_about.o form_cast.o form_evader.o form_hwbuttons.o \
  form_invselect.o form_lrs.o form_map.o form_messagelog.o form_pad.o \
  form_pickch.o form_prefs.o form_question.o form_score.o form_store.o \
  form_trans.o
OBJS1 = dead.o store.o savelev.o cast.o nap.o object_actions.o sphere.c
OBJS2 = object_actions_cont.o main.o regen.o create.o inv.o \
       object.o movem.o moveplayer.o util.o
OBJS3 = random.o stats.o display.o md_malloc.o obj.o \
       monster.o pickchar.o alloc_env.o  global.o sum.o
OBJS = $(OBJS1) $(OBJS2) $(OBJS3) $(FORMO) $(TARGET)-sections.o

INCS = iLarnRsc.h Globals.h larn_prototypes.h types.h

CC = m68k-palmos-gcc
#CFLAGS = -Wall -g -O2 -I. -palmos2 -DI_AM_OS_2
CFLAGS = -Wall -g -O2 -I. -palmos3.1 -DNON_INTERNATIONAL

PILRC = pilrc
#OBJRES = m68k-palmos-obj-res
BUILDPRC = build-prc

#SHRINC = /usr/local/pilot/sdk/sdk/include/Core/

all: iLarn.prc

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

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

$(TARGET).prc: $(TARGET) bin.stamp
	$(BUILDPRC) $(TARGET).def $(TARGET) *.bin

$(TARGET): $(OBJS) $(TARGET)-sections.ld
	$(CC) $(CFLAGS) -o $(TARGET) $(OBJS) $(TARGET)-sections.ld

bin.stamp: $(TARGET).rcp $(TARGET).pbm Font56.txt
	$(PILRC) $(TARGET).rcp .
	touch bin.stamp

$(TARGET)-sections.o: $(TARGET)-sections.s
	$(CC) -c $(TARGET)-sections.s

$(TARGET)-sections.s $(TARGET)-sections.ld: $(TARGET).def
	multigen $(TARGET).def


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

depend:
	makedepend -Y  *.c
#	makedepend -Y -I/usr/local/pilot/m68k-palmos/include/ -I$(SHRINC) -I$(SHRINC)/UI -I$(SHRINC)/System  -I$(SHRINC)/Hardware *.c

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

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

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

# DO NOT DELETE

cast.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
cast.o: iLarnRsc.h
create.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
dead.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
dead.o: iLarnRsc.h
display.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
display.o: iLarnRsc.h
form_about.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_about.o: larn_prototypes.h sections.h
form_cast.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_cast.o: larn_prototypes.h sections.h
form_evader.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_evader.o: larn_prototypes.h sections.h
form_hwbuttons.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_hwbuttons.o: larn_prototypes.h sections.h
form_invselect.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_invselect.o: larn_prototypes.h sections.h
form_lrs.o: iLarnRsc.h Globals.h header.h defines.h types.h larn_prototypes.h
form_lrs.o: sections.h
form_map.o: iLarnRsc.h Globals.h header.h defines.h types.h larn_prototypes.h
form_map.o: sections.h
form_messagelog.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_messagelog.o: larn_prototypes.h sections.h
form_pad.o: iLarnRsc.h Globals.h header.h defines.h types.h larn_prototypes.h
form_pad.o: sections.h
form_pickch.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_pickch.o: larn_prototypes.h sections.h
form_prefs.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_prefs.o: larn_prototypes.h sections.h
form_question.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_question.o: larn_prototypes.h sections.h
form_score.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_score.o: larn_prototypes.h sections.h
form_store.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_store.o: larn_prototypes.h sections.h
form_trans.o: iLarnRsc.h Globals.h header.h defines.h types.h
form_trans.o: larn_prototypes.h sections.h
global.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
inv.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
inv.o: iLarnRsc.h
main.o: callback.h iLarnRsc.h Globals.h header.h defines.h types.h
main.o: larn_prototypes.h sections.h
monster.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
monster.o: iLarnRsc.h
movem.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
moveplayer.o: Globals.h header.h defines.h types.h larn_prototypes.h
moveplayer.o: sections.h
obj.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
object.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
object.o: iLarnRsc.h
object_actions.o: Globals.h header.h defines.h types.h larn_prototypes.h
object_actions.o: sections.h iLarnRsc.h
object_actions_cont.o: Globals.h header.h defines.h types.h larn_prototypes.h
object_actions_cont.o: sections.h
pickchar.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
regen.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
savelev.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
savelev.o: bit.h
sphere.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
stats.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
store.o: Globals.h header.h defines.h types.h larn_prototypes.h sections.h
store.o: iLarnRsc.h
