packages feed

hledger-0.23: hledger.cabal

name:           hledger
version:        0.23
stability:      stable
category:       Finance, Console
synopsis:       The main command-line interface for the hledger accounting tool.
description:
                hledger is a library and set of user tools for working
                with financial data (or anything that can be tracked in a
                double-entry accounting ledger.) It is a haskell port and
                friendly fork of John Wiegley's Ledger. hledger provides
                command-line, curses and web interfaces, and aims to be a
                reliable, practical tool for daily use.

license:        GPL
license-file:   LICENSE
author:         Simon Michael <simon@joyful.com>
maintainer:     Simon Michael <simon@joyful.com>
homepage:       http://hledger.org
bug-reports:    http://hledger.org/bugs
tested-with:    GHC==7.2.2, GHC==7.4.2, GHC==7.6.3, GHC==7.8.2
cabal-version:  >= 1.10
build-type:     Simple
-- data-dir:       data
-- data-files:
extra-tmp-files:
extra-source-files: 
                    tests/suite.hs
                    CHANGES

-- Cabal-Version:  >= 1.9.2
-- Test-Suite test-hledger
--     type:       exitcode-stdio-1.0
--     main-is:    test-hledger.hs
--     build-depends: base

source-repository head
  type:     git
  location: https://github.com/simonmichael/hledger

flag threaded
    Description:   Build with support for multithreaded execution
    Default:       True

library
  cpp-options:    -DVERSION="0.23"
  ghc-options:    -W
  default-language: Haskell2010
  -- should be the same as below
  exposed-modules:
                  Hledger.Cli
                  Hledger.Cli.Main
                  Hledger.Cli.Options
                  Hledger.Cli.Tests
                  Hledger.Cli.Utils
                  Hledger.Cli.Version
                  Hledger.Cli.Add
                  Hledger.Cli.Accounts
                  Hledger.Cli.Balance
                  Hledger.Cli.Balancesheet
                  Hledger.Cli.Cashflow
                  Hledger.Cli.Histogram
                  Hledger.Cli.Incomestatement
                  Hledger.Cli.Print
                  Hledger.Cli.Register
                  Hledger.Cli.Stats
  -- should be the same as below
  build-depends:
                  hledger-lib == 0.23
                 ,base >= 4.3 && < 5
                 -- ,cabal-file-th
                 ,containers
                 ,cmdargs >= 0.10 && < 0.11
                 -- ,data-pprint >= 0.2.1 && < 0.3
                 ,directory
                 ,filepath
                 ,haskeline >= 0.6 && <= 0.8
                 ,HUnit
                 ,mtl
                 ,old-locale
                 ,old-time
                 ,parsec
                 ,process
                 ,regexpr >= 0.5.1
                 ,safe >= 0.2
-- http://www.yesodweb.com/blog/2014/04/consolidation-progress
-- in order to support both the old and new versions of shakespeare,
-- you just need to ensure that you have both the shakespeare and
-- deprecated packages listed in your cabal file. In other words, if
-- previously you depended on hamlet, now you should depend on hamlet
-- and shakespeare. When you're ready to drop backwards compatibility,
-- simply put a lower bound of >= 2.0 on shakespeare and remove the
-- deprecated packages.
                 ,shakespeare-text >= 1.0 && < 1.2
                 ,shakespeare      >= 1.0 && < 2.1
                 ,split >= 0.1 && < 0.3
                 ,text >= 0.11 && < 1.2
                 ,tabular >= 0.2 && < 0.3
                 ,time
                 ,utf8-string >= 0.3.5 && < 0.4
                 ,wizards == 1.0.*
  if impl(ghc >= 7.4)
    build-depends: pretty-show >= 1.6.4

-- should depend on the above to avoid double compilation but this is
-- still too complicated as of 2011/6/1 because:
-- - breaks haddock, http://hackage.haskell.org/trac/hackage/ticket/656
-- - library and executable must have different hs-source-dirs
-- - the exe may need to list all the lib's dependencies
-- - how it works seems ghc version dependent
-- leksah is reported to have this working, http://hackage.haskell.org/packages/archive/leksah/0.10.0.4/leksah.cabal
executable hledger
  main-is:        hledger-cli.hs
  -- should be the same as above
  other-modules:
                  Hledger.Cli
                  Hledger.Cli.Main
                  Hledger.Cli.Options
                  Hledger.Cli.Tests
                  Hledger.Cli.Utils
                  Hledger.Cli.Version
                  Hledger.Cli.Add
                  Hledger.Cli.Accounts
                  Hledger.Cli.Balance
                  Hledger.Cli.Balancesheet
                  Hledger.Cli.Cashflow
                  Hledger.Cli.Histogram
                  Hledger.Cli.Incomestatement
                  Hledger.Cli.Print
                  Hledger.Cli.Register
                  Hledger.Cli.Stats
  cpp-options:    -DVERSION="0.23"
  ghc-options:    -W
  if flag(threaded)
       ghc-options:   -threaded
 -- should be the same as above
  default-language: Haskell2010
  build-depends:
                  hledger-lib == 0.23
                 ,base >= 4.3 && < 5
                 ,containers
                 ,cmdargs >= 0.10 && < 0.11
                 -- ,data-pprint >= 0.2.1 && < 0.3
                 ,directory
                 ,filepath
                 ,haskeline >= 0.6 && <= 0.8
                 ,HUnit
                 ,mtl
                 ,old-locale
                 ,old-time
                 ,parsec
                 ,process
                 ,regexpr >= 0.5.1
                 ,safe >= 0.2
                 ,shakespeare-text >= 1.0 && < 1.2
                 ,shakespeare      >= 1.0 && < 2.1
                 ,split >= 0.1 && < 0.3
                 ,tabular >= 0.2 && < 0.3
                 ,text >= 0.11 && < 1.2
                 ,time
                 ,utf8-string >= 0.3.5 && < 0.4
                 ,wizards == 1.0.*
  if impl(ghc >= 7.4)
    build-depends: pretty-show >= 1.6.4

test-suite tests
  type:     exitcode-stdio-1.0
  main-is:  tests/suite.hs
  ghc-options: -Wall
  default-language: Haskell2010
  build-depends: hledger-lib
               , hledger
               , base >= 4.3 && < 5
               , cmdargs
               , containers
               , csv
               -- , data-pprint >= 0.2.1 && < 0.3
               , directory
               , filepath
               , haskeline
               , HUnit
               , mtl
               , old-locale
               , old-time
               , parsec
               , process
               , regexpr
               , safe
               , shakespeare-text >= 1.0 && < 1.2
               , shakespeare      >= 1.0 && < 2.1
               , split
               ,tabular >= 0.2 && < 0.3
               , test-framework
               , test-framework-hunit
               , text
               , time
               , transformers
               , wizards == 1.0.*
  if impl(ghc >= 7.4)
    build-depends: pretty-show >= 1.6.4