all: tsp.frp tsp.nn tsp.greedy tsp.pqgreedy doc

tsp.greedy: greedy/TourEval.hs main/Main.hs point.io/Point.hs
	ghc -o tsp.greedy point.io/Point.hs \
			greedy/TourEval.hs \
			 main/Main.hs \

tsp.frp: frp/TourEval.hs main/Main.hs point.io/Point.hs kdtree/KDTree.hs
	ghc -o tsp.frp point.io/Point.hs \
			kdtree/KDTree.hs \
			frp/TourEval.hs \
			main/Main.hs \

tsp.nn: nn/TourEval.hs main/Main.hs point.io/Point.hs
	ghc -o tsp.nn point.io/Point.hs \
			nn/TourEval.hs \
			main/Main.hs \

tsp.pqgreedy: pqgreedy/TourEval.hs main/Main.hs point.io/Point.hs kdtree/KDTree.hs pq/Binpq.hs
	ghc -o tsp.pqgreedy point.io/Point.hs \
			kdtree/KDTree.hs \
			pq/Binpq.hs \
			pqgreedy/TourEval.hs \
			 main/Main.hs \

artigo.dvi:
	latex doc/artigo.tex

doc: artigo.dvi
	latex doc/artigo.tex
	dvips artigo.dvi
	ps2pdf artigo.ps artigo.pdf
	rm artigo.aux artigo.dvi artigo.log artigo.ps