Add command line arguments (cmdargs)

This commit is contained in:
Juan Pedro Villa Isaza 2016-08-20 16:18:55 -05:00
parent 835ac70815
commit 2558a0579e
3 changed files with 50 additions and 0 deletions

33
Main.hs
View File

@ -1,3 +1,4 @@
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE RecordWildCards #-}
module Main
@ -12,23 +13,55 @@ import Licensor
import Control.Monad
import Data.List
import Data.Monoid ((<>))
import qualified Data.Version as Version
import System.Environment
import qualified System.Exit as Exit
-- Cabal
import Distribution.PackageDescription
import Distribution.Text
-- cmdargs
import System.Console.CmdArgs
-- containers
import qualified Data.Map.Strict as Map
import qualified Data.Set as Set
-- |
--
--
data LiArgs =
LiArgs
{
}
deriving (Data)
-- |
--
--
liArgs :: String -> Mode (CmdArgs LiArgs)
liArgs s =
cmdArgsMode $
LiArgs
{
}
&= program s
&= summary (unwords ["licensor", Version.showVersion version])
-- |
--
--
main :: IO ()
main = do
LiArgs <- cmdArgsRun . liArgs =<< getProgName
maybePackage <- getPackage
pid <-

View File

@ -19,6 +19,8 @@ library
src
exposed-modules:
Licensor
other-modules:
Paths_licensor
build-depends:
base >= 4.8 && < 5.0
, Cabal >= 1.22 && < 1.25
@ -37,6 +39,7 @@ executable licensor
build-depends:
base >= 4.8 && < 5.0
, Cabal >= 1.22 && < 1.25
, cmdargs >= 0.10 && < 0.11
, containers
, licensor
default-language:

View File

@ -8,11 +8,16 @@ module Licensor
, getDependencies
, getPackage
, orderPackagesByLicense
, version
)
where
-- licensor
import qualified Paths_licensor as Paths
-- base
import Data.Monoid ((<>))
import Data.Version (Version)
import System.IO
-- Cabal
@ -151,3 +156,12 @@ orderPackagesByLicense p =
orderedPackages
in
foldr insertPackage (pure mempty)
-- |
--
--
version :: Version
version =
Paths.version