## Makefile for `bus' task

CC = gcc
CXX = g++
OPTFLAGS = -Wall -O2 -g
BINARIES = bus bus-n3 greedy gen-tests

all: bus

everything: recheck

clean:
	-rm $(BINARIES)

.c:
	$(CC) $(OPTFLAGS) -o $@ $<

.cpp:
	$(CXX) $(OPTFLAGS) -o $@ $<

bus: bus.c
bus-n3: bus-n3.c
greedy: greedy.cpp
gen-tests: gen-tests.cpp

recheck: bus bus-n3 greedy tests eval

eval: eval-bus eval-n3 eval-greedy

eval-bus: bus
	@./evaluate bus

eval-n3: bus-n3
	@./evaluate bus-n3

eval-greedy: greedy
	@./evaluate greedy

tests: gen-tests
	@./gen-tests
	@./evaluate -g bus-n3

gen: gen-tests

.PHONY: all everything eval clean tests gen eval-bus eval-n3 eval-greedy recheck
