module Main where import System.Exit (exitFailure, exitSuccess) import System.IO (hPutStrLn, stderr) import qualified CabalCargs.Args as CmdArgs import qualified CabalCargs.Format as F import qualified CabalCargs.CompilerArgs as CompilerArgs import Data.List (intercalate) main :: IO () main = do cmdArgs <- CmdArgs.get let formatting = CmdArgs.format cmdArgs cargs <- CompilerArgs.fromCmdArgs cmdArgs case cargs of Left error -> do hPutStrLn stderr ("cabal-cargs: " ++ error) exitFailure Right cargs_ -> do putStr $ intercalate " " $ F.format formatting cargs_ exitSuccess