SourceFiles=$(addprefix Control/Concurrent/SCC/, Foundation.hs ComponentTypes.hs Components.hs Combinators.hs) Test.hs Shell.hs DocumentationFiles=$(shell echo $(SourceFiles) | ./shsh -c 'stdin | select (>! (substring " Shell.hs" >| substring " Test.hs"))') all: test test-prof shsh shsh-prof docs docs: doc/index.html test: $(SourceFiles) ghc --make Test.hs -main-is Test -O -o test -hidir obj -odir obj test-prof: $(SourceFiles) ghc --make Test.hs -main-is Test -o test-prof -prof -auto-all -hidir prof -odir prof shsh: $(SourceFiles) ghc --make Shell.hs -O -o shsh -hidir obj -odir obj shsh-prof: $(SourceFiles) ghc --make Shell.hs -main-is Shell -o shsh-prof -prof -auto-all -hidir prof -odir prof doc/index.html: $(DocumentationFiles) haddock -h -o doc $^ clean: rm obj/* prof/* doc/*