# PalGar Makefile
# $Id: Makefile,v 1.20 2000/11/26 15:01:53 ranf Exp $


NAME            = palgar
ICONTEXT        = "PalGar"
APPID           = fRCS

OBJS            = gps.o	\
	garmin.o	\
	file.o		\
	host.o		\
	endian.o
HEADERS         = gps.h globals.h GarminDef.h Makefile

# where to find the ZIP. In my HOME. where else?
DISTDIR	= ../

## PREFIX       =/usr/local/gnu
## TOOLDIR      = $(PREFIX)/bin/
## INCDIR       = $(PREFIX)/m68k-palmos-coff/include
## LIBDIR       = $(PREFIX)/m68k-palmos-coff/lib
## CC           = $(TOOLDIR)/m68k-palmos-coff-gcc
CC              = m68k-palmos-gcc
POSE		= /palm/emu/emulator

#uncomment this if you want to build a gdb debuggable version
DEFINES         = -DDEBUG -g

## LIBS		= libnfm.a
## LIBS		= libgcc.a

CSFLAGS         = -O2 -S $(DEFINES) $(INCLUDES)
CFLAGS          = -Wall -O2 $(DEFINES) $(INCLUDES)

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

PRC             = $(NAME).prc


#######################################
.S.o		:
	$(CC) $(CFLAGS) -c $<

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

#######################################
all		:    $(PRC)

#######################################
$(PRC)		:	code.stamp bin.stamp
	$(BUILDPRC) $@ $(ICONTEXT) $(APPID) *.grc *.bin

code.stamp	:	$(NAME)
	$(OBJRES) $(NAME)
	touch $@

bin.stamp	:	gps.rcp gps.h
	$(PILRC) gps.rcp
	touch $@

$(NAME)	: $(OBJS)
	./make_versions.sh
	$(CC) $(CFLAGS) -c versions.c
	$(CC) $(CFLAGS) $(OBJS) versions.o $(LIBS) -o $@

#######################################
clean	:
	rm -rf *.[oa] $(NAME) *.bin *.stamp *.grc  versions.c

#######################################
distclean	:	clean
	rm -rf *.zip *.gz *.prc

#######################################
rcs	:
	ci -l gps.c garmin.c gps.rcp file.c make_versions.sh host.c \
	$(HEADERS)

#######################################
*.o	:	$(HEADERS)

#######################################
tar	:
	tar cvf $(NAME).tar gps.c garmin.c gps.h globals.h gps.rcp Makefile file.c make_versions.sh host.c gps.rcp palgar.pbm
	gzip $(NAME).tar

#######################################
zip	:	clean
	zip -r $(NAME) .

#######################################
dist	:	$(NAME).prc
	zip  $(DISTDIR)$(NAME).zip $(NAME).prc
	$(MAKE) distclean
	cd ..; zip $(NAME).zip -r $(NAME)/*

#######################################
test	:
	$(POSE) -load_apps `pwd`/$(PRC)
