summaryrefslogtreecommitdiff
path: root/hadrian/src/Settings/Flavours/Quick.hs
diff options
context:
space:
mode:
Diffstat (limited to 'hadrian/src/Settings/Flavours/Quick.hs')
-rw-r--r--hadrian/src/Settings/Flavours/Quick.hs34
1 files changed, 34 insertions, 0 deletions
diff --git a/hadrian/src/Settings/Flavours/Quick.hs b/hadrian/src/Settings/Flavours/Quick.hs
new file mode 100644
index 0000000000..59b58eb413
--- /dev/null
+++ b/hadrian/src/Settings/Flavours/Quick.hs
@@ -0,0 +1,34 @@
+module Settings.Flavours.Quick (quickFlavour) where
+
+import Expression
+import Flavour
+import Oracles.Flag
+import {-# SOURCE #-} Settings.Default
+import Settings.Flavours.Common
+
+-- Please update doc/flavours.md when changing this file.
+quickFlavour :: Flavour
+quickFlavour = defaultFlavour
+ { name = "quick"
+ , args = defaultBuilderArgs <> quickArgs <> defaultPackageArgs
+ , libraryWays = mconcat
+ [ pure [vanilla]
+ , notStage0 ? platformSupportsSharedLibs ? pure [dynamic] ]
+ , rtsWays = mconcat
+ [ pure
+ [ vanilla, threaded, logging, debug
+ , threadedDebug, threadedLogging, threaded ]
+ , notStage0 ? platformSupportsSharedLibs ? pure
+ [ dynamic, debugDynamic, threadedDynamic, loggingDynamic
+ , threadedDebugDynamic, threadedLoggingDynamic ]
+ ] }
+
+quickArgs :: Args
+quickArgs = sourceArgs SourceArgs
+ { hsDefault = mconcat $
+ [ pure ["-O0", "-H64m"]
+ , naturalInBaseFixArgs
+ ]
+ , hsLibrary = notStage0 ? arg "-O"
+ , hsCompiler = stage0 ? arg "-O"
+ , hsGhc = stage0 ? arg "-O" }