PN = harbl BIN = dist/build/$(PN)/$(PN) SRCS := $(shell find src/ -type f -name '*.hs') .PHONY : dist doc hlint $(BIN): $(PN).cabal $(SRCS) runghc Setup.hs clean runghc Setup.hs configure --user --prefix=/ runghc Setup.hs build profile: $(PN).cabal $(SRCS) runghc Setup.hs clean runghc Setup.hs configure --user \ --enable-executable-profiling \ --prefix=/ runghc Setup.hs build doc: runghc Setup.hs configure --user --prefix=/ runghc Setup.hs hscolour --all runghc Setup.hs haddock --all \ --hyperlink-source \ --haddock-options="--ignore-all-exports" # # Testing. # TESTSUITE_BIN = dist/build/testsuite/testsuite TEST_SRCS := $(shell find test/ -type f -name '*.hs') $(TESTSUITE_BIN): $(PN).cabal $(SRCS) $(TEST_SRCS) runghc Setup.hs configure --user --enable-tests --prefix=/ runghc Setup.hs build test: $(BIN) $(TESTSUITE_BIN) runghc Setup.hs test # # Miscellaneous # clean: runghc Setup.hs clean rm -f *.log rm -f *.xml rm -rf tmp dist: runghc Setup.hs configure --prefix=/ TAR_OPTIONS="--format=ustar" runghc Setup.hs sdist hlint: hlint --ignore="Use camelCase" \ --ignore="Redundant bracket" \ --color \ src