use cabal-file-th to get executable name and version from cabal files

This commit is contained in:
Simon Michael 2011-10-19 19:53:42 +00:00
parent df7fc8877f
commit db7f4d1b3d
8 changed files with 21 additions and 13 deletions

View File

@ -1,3 +1,4 @@
{-# LANGUAGE TemplateHaskell #-}
{-|
-}
@ -5,14 +6,15 @@
module Hledger.Chart.Options
where
import Data.Maybe
import Distribution.PackageDescription.TH (packageVariable, package, pkgName, pkgVersion)
import System.Console.CmdArgs
import System.Console.CmdArgs.Explicit
import Hledger.Cli hiding (progname,progversion)
import qualified Hledger.Cli (progname)
progname = Hledger.Cli.progname ++ "-chart"
progversion = progversionstr progname
progname = $(packageVariable (pkgName . package))
progversion = progname ++ " " ++ $(packageVariable (pkgVersion . package)) :: String
defchartoutput = "hledger.png"
defchartitems = 10

View File

@ -41,6 +41,7 @@ executable hledger-chart
,hledger-lib == 0.16.1
,HUnit
,base >= 3 && < 5
,cabal-file-th
,cmdargs >= 0.8 && < 0.9
,containers
-- ,csv

View File

@ -1,17 +1,18 @@
{-# LANGUAGE TemplateHaskell #-}
{-|
-}
module Hledger.Vty.Options
where
import Distribution.PackageDescription.TH (packageVariable, package, pkgName, pkgVersion)
import System.Console.CmdArgs
import System.Console.CmdArgs.Explicit
import Hledger.Cli hiding (progname,progversion)
import qualified Hledger.Cli (progname)
progname = Hledger.Cli.progname ++ "-vty"
progversion = progversionstr progname
progname = $(packageVariable (pkgName . package))
progversion = progname ++ " " ++ $(packageVariable (pkgVersion . package)) :: String
vtyflags = [
flagNone ["debug-vty"] (\opts -> setboolopt "rules-file" opts) "run with no terminal output, showing console"

View File

@ -41,6 +41,7 @@ executable hledger-vty
,hledger-lib == 0.16.1
,HUnit
,base >= 3 && < 5
,cabal-file-th
,cmdargs >= 0.8 && < 0.9
-- ,containers
-- ,csv

View File

@ -1,3 +1,4 @@
{-# LANGUAGE TemplateHaskell #-}
{-|
-}
@ -5,17 +6,15 @@
module Hledger.Web.Options
where
import Data.Maybe
import Distribution.PackageDescription.TH (packageVariable, package, pkgName, pkgVersion)
import System.Console.CmdArgs
import System.Console.CmdArgs.Explicit
import Hledger.Cli hiding (progname,progversion)
import qualified Hledger.Cli (progname)
import Hledger.Web.Settings
progname = Hledger.Cli.progname ++ "-web"
-- progversion = progversionstr progname
progversion = progname ++ "-" ++ "0.16.3"
progname = $(packageVariable (pkgName . package))
progversion = progname ++ " " ++ $(packageVariable (pkgVersion . package)) :: String
defbaseurlexample = (reverse $ drop 4 $ reverse $ defbaseurl defport) ++ "PORT"

View File

@ -76,6 +76,7 @@ executable hledger-web
,HUnit
,base >= 4 && < 5
,bytestring
,cabal-file-th
,cmdargs >= 0.8 && < 0.9
,directory
,filepath

View File

@ -1,3 +1,4 @@
{-# LANGUAGE TemplateHaskell #-}
{-|
Command-line options for the hledger program, and option-parsing utilities.
@ -10,6 +11,7 @@ import Data.List
import Data.List.Split
import Data.Maybe
import Data.Time.Calendar
import Distribution.PackageDescription.TH (packageVariable, package, pkgName, pkgVersion)
import Safe
import System.Console.CmdArgs
import System.Console.CmdArgs.Explicit
@ -22,11 +24,10 @@ import Text.Printf
import Hledger
import Hledger.Cli.Format as Format
import Hledger.Cli.Version
progname = "hledger"
progversion = progversionstr progname
progname = $(packageVariable (pkgName . package))
progversion = progname ++ " " ++ $(packageVariable (pkgVersion . package)) :: String
-- 1. cmdargs mode and flag definitions, for the main and subcommand modes.
-- Flag values are parsed initially to simple RawOpts to permit reuse.

View File

@ -59,6 +59,7 @@ library
build-depends:
hledger-lib == 0.16.1
,base >= 3 && < 5
,cabal-file-th
,containers
,cmdargs >= 0.8 && < 0.9
,csv
@ -109,6 +110,7 @@ executable hledger
build-depends:
hledger-lib == 0.16.1
,base >= 3 && < 5
,cabal-file-th
,containers
,cmdargs >= 0.8 && < 0.9
,csv