further fix for floating point primitives
[ghc-hetmet.git] / glafp-utils / nofib-analyse / CmdLine.hs
index 4dfc9f9..6e920f8 100644 (file)
@@ -1,14 +1,14 @@
 -----------------------------------------------------------------------------
 -- CmdLine.hs
 
--- (c) Simon Marlow 1999
+-- (c) Simon Marlow 2005
 -----------------------------------------------------------------------------
 
 module CmdLine where
 
-import GetOpt
-import System
-import IOExts
+import System.Console.GetOpt
+import System.Environment      ( getArgs )
+import System.IO.Unsafe                ( unsafePerformIO )
 
 -----------------------------------------------------------------------------
 -- Command line arguments
@@ -22,10 +22,24 @@ tooquick_threshold
        [] -> default_tooquick_threshold
        (i:_) -> i
 
+devs   = OptDeviations   `elem` flags
+nodevs = OptNoDeviations `elem` flags
+
+default_title = "NoFib Results"
+reportTitle = case [ t | OptTitle t <- flags ] of
+        []    -> default_title
+        (t:_) -> t
+
 data CLIFlags
   = OptASCIIOutput
+  | OptLaTeXOutput
   | OptHTMLOutput
   | OptIgnoreSmallTimes Float
+  | OptDeviations
+  | OptNoDeviations
+  | OptTitle String
+  | OptColumns String
+  | OptRows String
   | OptHelp
   deriving Eq
 
@@ -39,5 +53,17 @@ argInfo =
        "Produce HTML output"
   , Option ['i'] ["ignore"]  (ReqArg (OptIgnoreSmallTimes . read) "secs")
        "Ignore runtimes smaller than <secs>"
+  , Option ['d'] ["deviations"] (NoArg OptDeviations)
+       "Display deviations (default)"
+  , Option ['l'] ["latex"]    (NoArg OptLaTeXOutput)  
+       "Produce LaTeX output"
+  , Option [] ["columns"] (ReqArg OptColumns "COLUMNS")
+       "Specify columns for summary table (comma separates)"
+  , Option [] ["rows"] (ReqArg OptRows "ROWS")
+       "Specify rows for summary table (comma separates)"
+  , Option ['n'] ["nodeviations"] (NoArg OptNoDeviations)
+       "Hide deviations"
+  , Option ['t'] ["title"] (ReqArg OptTitle "title")
+       "Specify report title"
   ]