|
1
|
1
|
module CommandLine (
|
|
2
|
2
|
optDescrs, cmdLineArgsMap, cmdFlavour, lookupFreeze1, lookupFreeze2, lookupSkipDepends,
|
|
3
|
3
|
cmdBignum, cmdBignumCheck, cmdProgressInfo, cmdCompleteSetting,
|
|
4
|
|
- cmdDocsArgs, cmdUnitIdHash, lookupBuildRoot, TestArgs(..), TestSpeed(..), defaultTestArgs,
|
|
|
4
|
+ cmdDocsArgs, cmdUnitIdHash, cmdDebugHashInputs, lookupBuildRoot, TestArgs(..), TestSpeed(..), defaultTestArgs,
|
|
5
|
5
|
cmdPrefix, DocArgs(..), defaultDocArgs
|
|
6
|
6
|
) where
|
|
7
|
7
|
|
| ... |
... |
@@ -37,7 +37,8 @@ data CommandLineArgs = CommandLineArgs |
|
37
|
37
|
, docsArgs :: DocArgs
|
|
38
|
38
|
, docTargets :: DocTargets
|
|
39
|
39
|
, prefix :: Maybe FilePath
|
|
40
|
|
- , completeStg :: Maybe String }
|
|
|
40
|
+ , completeStg :: Maybe String
|
|
|
41
|
+ , debugHashInputs :: Bool }
|
|
41
|
42
|
deriving (Eq, Show)
|
|
42
|
43
|
|
|
43
|
44
|
-- | Default values for 'CommandLineArgs'.
|
| ... |
... |
@@ -57,7 +58,8 @@ defaultCommandLineArgs = CommandLineArgs |
|
57
|
58
|
, docsArgs = defaultDocArgs
|
|
58
|
59
|
, docTargets = Set.fromList [minBound..maxBound]
|
|
59
|
60
|
, prefix = Nothing
|
|
60
|
|
- , completeStg = Nothing }
|
|
|
61
|
+ , completeStg = Nothing
|
|
|
62
|
+ , debugHashInputs = False }
|
|
61
|
63
|
|
|
62
|
64
|
-- | These arguments are used by the `test` target.
|
|
63
|
65
|
data TestArgs = TestArgs
|
| ... |
... |
@@ -143,6 +145,9 @@ readUnitIdHash = Right $ \flags -> |
|
143
|
145
|
trace "--hash-unit-ids is deprecated. It is enabled by release flavour or +hash_unit_ids flavour transformer" $
|
|
144
|
146
|
flags { unitIdHash = True }
|
|
145
|
147
|
|
|
|
148
|
+readDebugHashInputs :: Either String (CommandLineArgs -> CommandLineArgs)
|
|
|
149
|
+readDebugHashInputs = Right $ \flags -> flags { debugHashInputs = True }
|
|
|
150
|
+
|
|
146
|
151
|
readProgressInfo :: String -> Either String (CommandLineArgs -> CommandLineArgs)
|
|
147
|
152
|
readProgressInfo ms =
|
|
148
|
153
|
case lower ms of
|
| ... |
... |
@@ -278,6 +283,8 @@ optDescrs = |
|
278
|
283
|
"Freeze Stage2 GHC."
|
|
279
|
284
|
, Option [] ["hash-unit-ids"] (NoArg readUnitIdHash)
|
|
280
|
285
|
"Include package hashes in unit ids."
|
|
|
286
|
+ , Option [] ["debug-hash-inputs"] (NoArg readDebugHashInputs)
|
|
|
287
|
+ "Debug: print and log hash inputs for each package."
|
|
281
|
288
|
, Option [] ["skip-depends"] (NoArg readSkipDepends)
|
|
282
|
289
|
"Skip rebuilding dependency information."
|
|
283
|
290
|
, Option [] ["bignum"] (OptArg readBignum "BACKEND")
|
| ... |
... |
@@ -401,5 +408,8 @@ cmdBignumCheck = bignumCheck <$> cmdLineArgs |
|
401
|
408
|
cmdProgressInfo :: Action ProgressInfo
|
|
402
|
409
|
cmdProgressInfo = progressInfo <$> cmdLineArgs
|
|
403
|
410
|
|
|
|
411
|
+cmdDebugHashInputs :: Action Bool
|
|
|
412
|
+cmdDebugHashInputs = debugHashInputs <$> cmdLineArgs
|
|
|
413
|
+
|
|
404
|
414
|
cmdDocsArgs :: Action DocTargets
|
|
405
|
415
|
cmdDocsArgs = docTargets <$> cmdLineArgs |