]> gitweb.michael.orlitzky.com - email-validator.git/blobdiff - makefile
email-validator.cabal: bump to version 1.1.0
[email-validator.git] / makefile
index 4d37b72f961936c947ad3cf291d42ee1d135b6aa..5052789b5c401884f51d5e0dd4c69a039eed869e 100644 (file)
--- a/makefile
+++ b/makefile
@@ -1,29 +1,52 @@
-BIN           = dist/build/email_validator/email_validator
+PN            = email-validator
+BIN           = dist/build/$(PN)/$(PN)
 TESTSUITE_BIN = dist/build/testsuite/testsuite
 
-.PHONY : test
-
-$(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:
        runghc Setup.hs configure
        runghc Setup.hs sdist
+
+hlint:
+       hlint --ignore="Use camelCase"     \
+             --ignore="Redundant bracket" \
+             --color                      \
+             src