#
# project makefile
#

MZFLAGS=
MZC=mzc

# soft dependency

.ss.o:
	$(MZC) --object $(MZFLAGS) $<

all: runme



clean:
	rm -f *.o *.kp
	rm -f runme

runme: main.o
	$(MZC) --exe runme main.ss

util.o: util.ss 
	$(MZC) $(MZFLAGS) --object util.ss

board.o: board.ss util.o struct.o
	$(MZC) $(MZFLAGS) --object board.ss

struct.o: struct.ss 
	$(MZC) $(MZFLAGS) --object struct.ss

MIT-scheme-compat.o: MIT-scheme-compat.ss 
	$(MZC) $(MZFLAGS) --object MIT-scheme-compat.ss

libcomm-client.o: libcomm-client.ss libcomm.o
	$(MZC) $(MZFLAGS) --object libcomm-client.ss

callback.o: callback.ss util.o struct.o astar.o board.o tracking.o libclient-data.o
	$(MZC) $(MZFLAGS) --object callback.ss

tracking.o: tracking.ss board.o struct.o util.o libclient-data.o
	$(MZC) $(MZFLAGS) --object tracking.ss

libclient-data.o: libclient-data.ss struct.o board.o
	$(MZC) $(MZFLAGS) --object libclient-data.ss

libclient.o: libclient.ss libcomm-client.o libcomm.o
	$(MZC) $(MZFLAGS) --object libclient.ss

main.o: main.ss astar.o callback.o libcomm-client.o libclient.o struct.o
	$(MZC) $(MZFLAGS) --object main.ss

astar.o: astar.ss board.o struct.o util.o
	$(MZC) $(MZFLAGS) --object astar.ss

libcomm.o: libcomm.ss MIT-scheme-compat.o struct.o board.o tracking.o
	$(MZC) $(MZFLAGS) --object libcomm.ss

