HC = ghc
HC_OPTS = -cpp -ifgl -fglasgow-exts -hi-diffs -dcore-lint -v

SRCS = TestFGL.hs GraphTools.hs $(wildcard fgl/*.hs)
OBJS = $(patsubst %.hs, %.o, $(SRCS))

all: $(OBJS)
	$(HC) -o TestFGL $(HC_OPTS) $(OBJS)

.PHONY: clean

clean:
	rm *.o fgl/*.o

%.hi: %.o
	@:

%.o: %.hs
	$(HC) -c $< $(HC_OPTS)

depend:
	/usr/lib/ghc/mkdependHS -- $(HC_OPTS) -- $(SRCS)
# DO NOT DELETE: Beginning of Haskell dependencies
TestFGL.o : TestFGL.hs
TestFGL.o : fgl/FGL.hi
TestFGL.o : fgl/DFS.hi
TestFGL.o : fgl/Graph.hi
TestFGL.o : fgl/GraphData.hi
TestFGL.o : ./GraphTools.hi
GraphTools.o : GraphTools.hs
GraphTools.o : fgl/FGL.hi
GraphTools.o : fgl/Graph.hi
GraphTools.o : fgl/GraphData.hi
fgl/BFS.o : fgl/BFS.hs
fgl/BFS.o : fgl/Graph.hi
fgl/BFS.o : fgl/RootPath.hi
fgl/Basic.o : fgl/Basic.hs
fgl/Basic.o : fgl/Graph.hi
fgl/Basic.o : fgl/Thread.hi
fgl/DFS.o : fgl/DFS.hs
fgl/DFS.o : fgl/Graph.hi
fgl/DFS.o : fgl/Basic.hi
fgl/DFS.o : fgl/RoseTree.hi
fgl/DFS.o : fgl/Thread.hi
fgl/FGL.o : fgl/FGL.hs
fgl/FGL.o : fgl/Graph.hi
fgl/FGL.o : fgl/GraphData.hi
fgl/FGL.o : fgl/Basic.hi
fgl/FGL.o : fgl/DFS.hi
fgl/FGL.o : fgl/BFS.hi
fgl/FGL.o : fgl/SP.hi
fgl/FGL.o : fgl/GVD.hi
fgl/FGL.o : fgl/MST.hi
fgl/FGL.o : fgl/Indep.hi
fgl/GVD.o : fgl/GVD.hs
fgl/GVD.o : fgl/Heap.hi
fgl/GVD.o : fgl/Graph.hi
fgl/GVD.o : fgl/Basic.hi
fgl/GVD.o : fgl/SP.hi
fgl/GVD.o : fgl/RootPath.hi
fgl/Graph.o : fgl/Graph.hs
fgl/Graph.o : fgl/SimpleMap.hi
fgl/GraphData.o : fgl/GraphData.hs
fgl/GraphData.o : fgl/Graph.hi
fgl/GraphData.o : fgl/Basic.hi
fgl/Heap.o : fgl/Heap.hs
fgl/Indep.o : fgl/Indep.hs
fgl/Indep.o : fgl/Basic.hi
fgl/Indep.o : fgl/Graph.hi
fgl/MST.o : fgl/MST.hs
fgl/MST.o : fgl/Graph.hi
fgl/MST.o : fgl/Heap.hi
fgl/MST.o : fgl/RootPath.hi
fgl/RootPath.o : fgl/RootPath.hs
fgl/RootPath.o : fgl/Graph.hi
fgl/RoseTree.o : fgl/RoseTree.hs
fgl/SP.o : fgl/SP.hs
fgl/SP.o : fgl/Heap.hi
fgl/SP.o : fgl/Graph.hi
fgl/SP.o : fgl/RootPath.hi
fgl/SimpleMap.o : fgl/SimpleMap.hs
fgl/Thread.o : fgl/Thread.hs
# DO NOT DELETE: End of Haskell dependencies
