View patterns, record wildcards, and record puns
[ghc-hetmet.git] / compiler / main / Main.hs
index 4059f1e..ad8d1f4 100644 (file)
@@ -1,4 +1,11 @@
 {-# OPTIONS -fno-warn-incomplete-patterns -optc-DNON_POSIX_SOURCE #-}
+{-# OPTIONS -w #-}
+-- The above warning supression flag is a temporary kludge.
+-- While working on this module you are encouraged to remove it and fix
+-- any warnings in the module. See
+--     http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings
+-- for details
+
 -----------------------------------------------------------------------------
 --
 -- GHC Driver program
@@ -7,13 +14,6 @@
 --
 -----------------------------------------------------------------------------
 
-{-# OPTIONS -w #-}
--- The above warning supression flag is a temporary kludge.
--- While working on this module you are encouraged to remove it and fix
--- any warnings in the module. See
---     http://hackage.haskell.org/trac/ghc/wiki/CodingStyle#Warnings
--- for details
-
 module Main (main) where
 
 #include "HsVersions.h"
@@ -96,8 +96,6 @@ main =
                                   exitWith ExitSuccess
     ShowSupportedLanguages  -> do showSupportedLanguages
                                   exitWith ExitSuccess
-    ShowDocDir              -> do showDocDir
-                                  exitWith ExitSuccess
     ShowVersion             -> do showVersion
                                   exitWith ExitSuccess
     ShowNumVersion          -> do putStrLn cProjectVersion
@@ -173,7 +171,7 @@ main =
     ShowUsage              -> showGhcUsage dflags cli_mode
     PrintLibdir            -> putStrLn (topDir dflags)
     ShowSupportedLanguages -> alreadyHandled
-    ShowDocDir             -> alreadyHandled
+    ShowDocDir             -> showDocDir (topDir dflags)
     ShowVersion            -> alreadyHandled
     ShowNumVersion         -> alreadyHandled
     ShowInterface f        -> doShowIface dflags f
@@ -477,10 +475,11 @@ showSupportedLanguages :: IO ()
 showSupportedLanguages = do mapM_ putStrLn supportedLanguages
                             exitWith ExitSuccess
 
-showDocDir :: IO ()
-showDocDir = do
-  putStrLn cDocDir
-  exitWith ExitSuccess
+showDocDir :: FilePath -> IO ()
+showDocDir topdir = putStrLn docDir
+    where docDir = if cRelocatableBuild
+                   then topdir ++ "/doc"
+                   else cDocDir
 
 showVersion :: IO ()
 showVersion = do