PN = spline3 BIN = dist/build/$(PN)/$(PN) SRCS := $(shell find src/ -type f -name '*.hs') BIN = dist/build/spline3/spline3 DOCTESTS_BIN = dist/build/doctests/doctests TESTSUITE_BIN = dist/build/testsuite/testsuite .PHONY : test doc dist hlint $(BIN): $(PN).cabal $(SRCS) runghc Setup.hs configure \ --user \ --prefix=/ \ --flags=${FLAGS} runghc Setup.hs build $(DOCTESTS_BIN): $(SRCS) test/Doctests.hs runghc Setup.hs configure \ --user \ --prefix=/ \ --flags=${FLAGS} \ --enable-tests runghc Setup.hs build $(TESTSUITE_BIN): $(SRCS) test/TestSuite.hs runghc Setup.hs configure \ --user \ --prefix=/ \ --flags=${FLAGS} \ --enable-tests runghc Setup.hs build llvm: $(PN).cabal $(SRCS) FLAGS="llvm" make profile: $(SRCS) runghc Setup.hs configure \ --user \ --prefix=/ \ --enable-executable-profiling runghc Setup.hs build clean: runghc Setup.hs clean rm -rf dist/ rm -f *.prof rm -f .hpc test: $(PN).cabal $(TESTSUITE_BIN) $(DOCTESTS_BIN) $(BIN) runghc Setup.hs test dist: runghc Setup.hs configure --prefix=/ TAR_OPTIONS="--format=ustar" runghc Setup.hs sdist doc: dist/doc dist/doc: $(PN).cabal $(SRCS) runghc Setup.hs configure --user --prefix=/ --flags=${FLAGS} runghc Setup.hs hscolour --all runghc Setup.hs haddock --all \ --hyperlink-source \ --haddock-options="--ignore-all-exports" hlint: hlint --ignore="Use camelCase" \ --ignore="Redundant bracket" \ --color \ src