lhc-0.8: src/Setup.hs
module Setup where
import System.Exit
import System.Environment
import System.Console.GetOpt
import System.Directory
import System.IO
import Data.Maybe
import Data.Char
data Action
= LibCheck
| Install
| Build
data ConfigFlag
= Help
parseArgs :: [String] -> IO (Action)
parseArgs args
= case getOpt RequireOrder [] args of
(flags, (cmdStr:args), []) | Just cmd <- lookup cmdStr commands
-> do
--exitWith ExitSuccess
return cmd
(flags, _, []) -> do hPutStrLn stderr "Usage!"
exitWith ExitSuccess
(flags, _, errs) -> do hPutStrLn stderr $ unlines errs
exitFailure
commands = [ ("install", Install)
, ("libcheck", LibCheck) ]