# general Makefile for Palm goodness
# the path to your prc-tools package must be in your path

APP=		pswd_calculator
ICONTEXT=	"pswd_calculator"
APPID=		PBK8
SRC=            $(APP).c #calc.c dict.c
ADDR=		/opt/pilotsdk/bin/

# -DTEST : everything happens on the host; this is next to useless.
MOREFLAGS=	#-02 -DTEST

# towitoko driver
#TOWITOKODIR=   /afs/citi.umich.edu/projects/sinciti/smartcards/drivers/towitoko/towitoko-0.97.6
#TOWITOKODIR=	/afs/citi.umich.edu/projects/sinciti/smartcards/drivers/towitoko/tow_chpdv-src-1.6.3/src/pilot
TOWITOKODIR=    ../../towitoko/src/pilot
CTAPILIB=	$(TOWITOKODIR)/lib.a  
#CTAPILIB=      $(TOWITOKODIR)/pilot/libctapi-chipdrive.a
#CTAPILIB=      $(TOWITOKODIR)/pilot/lib.a
CTAPIINC=	-I$(TOWITOKODIR)

INCLUDES=	$(CTAPIINC)  -I/opt/pilotsdk/m68k-palmos-coff/include/PalmOS/
LIBS=		$(CTAPILIB)

###################################################################
########## shouldn't need to change anything below here. ##########
###################################################################

RCP=		pswd_calculator.rcp
OBJ=		$(SRC:.c=.o)
PRC=		$(APP).prc
EXE=		$(APP).ex

CC=		$(ADDR)m68k-palmos-coff-gcc
#CFLAGS=		-g $(INCLUDES) -Wall -fno-builtin $(MOREFLAGS)
CFLAGS=		-g -DOO_CARD $(INCLUDES) -fno-builtin $(MOREFLAGS) -DNO_T_EQ_1
PILRC=		pilrc -q
OBJRES=		$(ADDR)m68k-palmos-coff-obj-res
BUILDPRC=	build-prc
COPILOT=	xcopilot
SERIALPTY=	qe
DEBUGPTY=	qf
GDB=		$(addr)m68k-palmos-coff-gdb

all: $(PRC)
	ls -la *.prc

$(PRC): grc.stamp bin.stamp ;
	$(BUILDPRC) $(PRC) $(ICONTEXT) $(APPID) *.grc *.bin

grc.stamp: $(APP) ;
	$(OBJRES) $(APP)
	touch $@

$(APP): $(OBJ) $(LIBS) ;
	$(CC) $(CFLAGS) -o $@ $(OBJ) $(LIBS)
#	$(CC) $(CFLAGS) $^ -o $@ $(OBJ) $(LIBS)

bin.stamp: $(RCP) ;
	$(PILRC) $(RCP)
	touch $@

debug:	$(PRC)
#pilot-xfer -i $(PRC)
#	@echo "target pilot /dev/pilot" > .gdbinit
	$(GDB) $(APP)

xdebug:	$(PRC)
	$(COPILOT) -serial -port /dev/pty$(SERIALPTY) \
	    -debug gdb -debugargs /dev/pty$(DEBUGPTY) &
	pilot-xfer /dev/ttyqe -i $(PRCDEPS) $(PRC)
	@echo "target pilot /dev/tty${DEBUGPTY}" > .gdbinit
	$(GDB) $(APP)

install: $(PRC)
	pilot-xfer -i $(PRC)

clean:
	rm -rf *.o $(APP) *.bin *.grc *.prc *.stamp *.core core *~

run:    pswd_calculator.prc
	pilot-xfer -i pswd_calculator.prc

open:	
	emacs pswd_calculator.c &
