X-Git-Url: http://gitweb.michael.orlitzky.com/?p=email-validator.git;a=blobdiff_plain;f=makefile;h=efe18fd6627560dd648e80b346090507036197ac;hp=2681fc3488b7f710fa07d98bcb5468e11aab0195;hb=HEAD;hpb=031638c08a4ce9d7ea156ead71cb8ef02e23fa81 diff --git a/makefile b/makefile index 2681fc3..5052789 100644 --- a/makefile +++ b/makefile @@ -1,27 +1,44 @@ -BIN = dist/build/email-validator/email-validator +PN = email-validator +BIN = dist/build/$(PN)/$(PN) TESTSUITE_BIN = dist/build/testsuite/testsuite -.PHONY : test dist hlint - -$(BIN): src/*.hs +# Append these warnings to the HCFLAGS environment variable that gets +# passed as options to GHC. We want to see the warnings while developing +# but don't want them hard-coded in the cabal file for end users. +HCFLAGS += -Weverything \ + -Wno-implicit-prelude \ + -Wno-safe \ + -Wno-unsafe \ + -Wno-all-missed-specialisations \ + -Wno-prepositive-qualified-module \ + -Wno-missing-safe-haskell-mode \ + -Wno-missing-deriving-strategies \ + -Wno-missing-kind-signatures \ + -rtsopts \ + -threaded + +.PHONY : doc test dist hlint + +$(BIN): $(PN).cabal src/*.hs runghc Setup.hs clean runghc Setup.hs configure --user - runghc Setup.hs build + runghc Setup.hs build --ghc-options="${HCFLAGS}" -profile: src/*.hs - runghc Setup.hs clean - runghc Setup.hs configure --user --enable-executable-profiling - runghc Setup.hs build +doc: src/*.hs + runghc Setup.hs configure --user + runghc Setup.hs haddock --all \ + --hyperlink-source \ + --haddock-options="--ignore-all-exports" clean: runghc Setup.hs clean -$(TESTSUITE_BIN): src/*.hs test/TestSuite.hs - runghc Setup.hs configure --user --flags=${FLAGS} --enable-tests - runghc Setup.hs build +$(TESTSUITE_BIN): $(PN).cabal src/*.hs test/*.hs + runghc Setup.hs configure --user --enable-tests + runghc Setup.hs build --ghc-options="${HCFLAGS}" -test: $(BIN) $(TESTSUITE_BIN) +check: $(BIN) $(TESTSUITE_BIN) runghc Setup.hs test dist: