neil-0.0: src/Main.hs
{-# LANGUAGE CPP #-}
module Main(main) where
import Control.Monad
import Data.Maybe
import System.Console.CmdArgs
import System.Environment
import System.IO
import Arguments
import Cabal
import Git
#ifndef SMALL
import Travis
#endif
import qualified Paper.Main as Paper
main :: IO ()
main = do
hSetBuffering stdout NoBuffering
a <- getArgs
case a of
"paper":a -> withArgs a Paper.main
_ -> do
args <- cmdArgsRun arguments
fromMaybe (error $ "Don't know how to deal with argument: " ++ show args) $ msum
[Git.run args
,Cabal.run args
#ifndef SMALL
,Travis.run args
#endif
]