Add command line arguments (cmdargs)
This commit is contained in:
parent
835ac70815
commit
2558a0579e
33
Main.hs
33
Main.hs
@ -1,3 +1,4 @@
|
|||||||
|
{-# LANGUAGE DeriveDataTypeable #-}
|
||||||
{-# LANGUAGE RecordWildCards #-}
|
{-# LANGUAGE RecordWildCards #-}
|
||||||
|
|
||||||
module Main
|
module Main
|
||||||
@ -12,23 +13,55 @@ import Licensor
|
|||||||
import Control.Monad
|
import Control.Monad
|
||||||
import Data.List
|
import Data.List
|
||||||
import Data.Monoid ((<>))
|
import Data.Monoid ((<>))
|
||||||
|
import qualified Data.Version as Version
|
||||||
|
import System.Environment
|
||||||
import qualified System.Exit as Exit
|
import qualified System.Exit as Exit
|
||||||
|
|
||||||
-- Cabal
|
-- Cabal
|
||||||
import Distribution.PackageDescription
|
import Distribution.PackageDescription
|
||||||
import Distribution.Text
|
import Distribution.Text
|
||||||
|
|
||||||
|
-- cmdargs
|
||||||
|
import System.Console.CmdArgs
|
||||||
|
|
||||||
-- containers
|
-- containers
|
||||||
import qualified Data.Map.Strict as Map
|
import qualified Data.Map.Strict as Map
|
||||||
import qualified Data.Set as Set
|
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 :: IO ()
|
||||||
main = do
|
main = do
|
||||||
|
LiArgs <- cmdArgsRun . liArgs =<< getProgName
|
||||||
|
|
||||||
maybePackage <- getPackage
|
maybePackage <- getPackage
|
||||||
|
|
||||||
pid <-
|
pid <-
|
||||||
|
|||||||
@ -19,6 +19,8 @@ library
|
|||||||
src
|
src
|
||||||
exposed-modules:
|
exposed-modules:
|
||||||
Licensor
|
Licensor
|
||||||
|
other-modules:
|
||||||
|
Paths_licensor
|
||||||
build-depends:
|
build-depends:
|
||||||
base >= 4.8 && < 5.0
|
base >= 4.8 && < 5.0
|
||||||
, Cabal >= 1.22 && < 1.25
|
, Cabal >= 1.22 && < 1.25
|
||||||
@ -37,6 +39,7 @@ executable licensor
|
|||||||
build-depends:
|
build-depends:
|
||||||
base >= 4.8 && < 5.0
|
base >= 4.8 && < 5.0
|
||||||
, Cabal >= 1.22 && < 1.25
|
, Cabal >= 1.22 && < 1.25
|
||||||
|
, cmdargs >= 0.10 && < 0.11
|
||||||
, containers
|
, containers
|
||||||
, licensor
|
, licensor
|
||||||
default-language:
|
default-language:
|
||||||
|
|||||||
@ -8,11 +8,16 @@ module Licensor
|
|||||||
, getDependencies
|
, getDependencies
|
||||||
, getPackage
|
, getPackage
|
||||||
, orderPackagesByLicense
|
, orderPackagesByLicense
|
||||||
|
, version
|
||||||
)
|
)
|
||||||
where
|
where
|
||||||
|
|
||||||
|
-- licensor
|
||||||
|
import qualified Paths_licensor as Paths
|
||||||
|
|
||||||
-- base
|
-- base
|
||||||
import Data.Monoid ((<>))
|
import Data.Monoid ((<>))
|
||||||
|
import Data.Version (Version)
|
||||||
import System.IO
|
import System.IO
|
||||||
|
|
||||||
-- Cabal
|
-- Cabal
|
||||||
@ -151,3 +156,12 @@ orderPackagesByLicense p =
|
|||||||
orderedPackages
|
orderedPackages
|
||||||
in
|
in
|
||||||
foldr insertPackage (pure mempty)
|
foldr insertPackage (pure mempty)
|
||||||
|
|
||||||
|
|
||||||
|
-- |
|
||||||
|
--
|
||||||
|
--
|
||||||
|
|
||||||
|
version :: Version
|
||||||
|
version =
|
||||||
|
Paths.version
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user