]> gitweb.michael.orlitzky.com - list-remote-forwards.git/commitdiff
makefile: move ghc-options here from the cabal file.
authorMichael Orlitzky <michael@orlitzky.com>
Wed, 24 Aug 2022 01:07:01 +0000 (21:07 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Wed, 24 Aug 2022 01:07:01 +0000 (21:07 -0400)
list-remote-forwards.cabal
makefile

index fe8761e8e9561013c7e12ee8e0b8623ca9c89809..0d6f5d4c234f747402d6d7aad0b0241f38bf6d23 100644 (file)
@@ -177,23 +177,6 @@ executable list-remote-forwards
     Report
     String
 
-  ghc-options:
-    -Wall
-    -fwarn-hi-shadowing
-    -fwarn-missing-signatures
-    -fwarn-name-shadowing
-    -fwarn-orphans
-    -fwarn-type-defaults
-    -fwarn-tabs
-    -fwarn-incomplete-record-updates
-    -fwarn-monomorphism-restriction
-    -fwarn-unused-do-bind
-    -rtsopts
-    -threaded
-    -optc-O3
-    -optc-march=native
-
-
 test-suite testsuite
   type: exitcode-stdio-1.0
   hs-source-dirs: src test
@@ -215,21 +198,6 @@ test-suite testsuite
     tasty-hunit                 >= 0.8,
     tasty-quickcheck            >= 0.8
 
-  -- It's not entirely clear to me why I have to reproduce all of this.
-  ghc-options:
-    -Wall
-    -fwarn-hi-shadowing
-    -fwarn-missing-signatures
-    -fwarn-name-shadowing
-    -fwarn-orphans
-    -fwarn-type-defaults
-    -fwarn-tabs
-    -fwarn-incomplete-record-updates
-    -fwarn-monomorphism-restriction
-    -fwarn-unused-do-bind
-    -O2
-
-
 test-suite doctests
   type: exitcode-stdio-1.0
   hs-source-dirs: test
@@ -240,24 +208,6 @@ test-suite doctests
     doctest   >= 0.9,
     filemanip >= 0.3.6
 
-  -- It's not entirely clear to me why I have to reproduce all of this.
-  ghc-options:
-    -Wall
-    -fwarn-hi-shadowing
-    -fwarn-missing-signatures
-    -fwarn-name-shadowing
-    -fwarn-orphans
-    -fwarn-type-defaults
-    -fwarn-tabs
-    -fwarn-incomplete-record-updates
-    -fwarn-monomorphism-restriction
-    -fwarn-unused-do-bind
-    -rtsopts
-    -threaded
-    -optc-O3
-    -optc-march=native
-
-
 source-repository head
   type: git
   location: http://gitweb.michael.orlitzky.com/list-remote-forwards.git
index c024def798125ea6e2a59e6754db0e8cd0fe36c7..c6094aa68a494d6ad3e81690066303835e6350f6 100644 (file)
--- a/makefile
+++ b/makefile
@@ -2,11 +2,25 @@ PN            = list-remote-forwards
 BIN           = dist/build/$(PN)/$(PN)
 SRCS          = $(shell find src/ -type f -name '*.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 \
+           -rtsopts \
+           -threaded
+
 .PHONY : dist hlint
 
 $(BIN): $(PN).cabal $(SRCS)
        runghc Setup.hs configure --user
-       runghc Setup.hs build
+       runghc Setup.hs build --ghc-options="${HCFLAGS}"
 
 doc: $(PN).cabal $(SRCS)
        runghc Setup.hs hscolour --all
@@ -24,12 +38,12 @@ 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
+       runghc Setup.hs build --ghc-options="${HCFLAGS}"
 
 
 $(DOCTESTS_BIN): $(PN).cabal $(SRCS) $(TEST_SRCS)
        runghc Setup.hs configure --user --enable-tests
-       runghc Setup.hs build
+       runghc Setup.hs build --ghc-options="${HCFLAGS}"
 
 test: $(BIN) $(TESTSUITE_BIN) $(DOCTESTS_BIN)
        runghc Setup.hs test