SRC   = path.C techno.c macro.c params.C delay.C cost.C
OBJ   = path.o techno.o macro.o params.o

CC   = gcc

CPPFLAGS = -Wall -Wstrict-prototypes -O2 -pipe
CFLAGS = -O2 -pipe

LIBS = -lm

COPTS = $(OPTS) $(CFLAGS)
CPPOPTS = $(OPTS) $(CPPFLAGS)

firsttarget: all

.C.o:
	$(CC) $(CPPFLAGS) -c $<

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

dep depend:
	$(CC) -M $(SRC) $(CPPFLAGS) > .depend

all:	delay cost cost.tex delay.inc delayt1.inc delayt2.inc delayb.inc \
	robcost.tex rscost.tex qplot1.tex comptable.tex

delay:  ${OBJ} delay.o
	$(CC) -o delay ${CPPFLAGS} ${OBJ} delay.o ${LIBS}

cost:	${OBJ} cost.o
	$(CC) -o cost ${CPPFLAGS} ${OBJ} cost.o ${LIBS}

cost.tex: cost
	./cost > cost.tex

delay.inc: delay
	./delay > delay.inc

delayt1.inc: delay
	./delay --trick1 > delayt1.inc

delayt2.inc: delay
	./delay --trick2 > delayt2.inc

delayb.inc: delay
	./delay --trick1 --trick2 > delayb.inc

robcost.tex: cost
	./cost --robtable > robcost.tex

rscost.tex: cost
	./cost --rstable > rscost.tex

comptable.tex: cost
	./cost --comptable > comptable.tex

qplot1.tex: cost
	./cost --addcache --qplot > qplot1.in
	gnuplot < qplot1.in > qplot1.tex

clean:
	rm *.o
	rm delay

#
# include a dependency file if one exists
#
ifeq (.depend,$(wildcard .depend))
include .depend
endif
