packages feed

hledger-0.9: hledger.cabal

name:           hledger
version:        0.9
category:       Finance
synopsis:       A command-line (or curses or web-based) double-entry accounting tool.
description:
                hledger reads a plain text ledger file or timelog
                describing your transactions and displays precise
                balance and register reports via command-line, curses
                or web interface.  It is a remix, in haskell, of John
                Wiegley's excellent c++ ledger.  hledger aims to be a
                practical, accessible tool for end users and a useful
                library for finance-minded haskell programmers.

license:        GPL
license-file:   LICENSE
author:         Simon Michael <simon@joyful.com>
maintainer:     Simon Michael <simon@joyful.com>
homepage:       http://hledger.org
bug-reports:    http://code.google.com/p/hledger/issues
stability:      experimental
tested-with:    GHC==6.10
cabal-version:  >= 1.2
build-type:     Custom
data-dir:       data
data-files:
                web/style.css
extra-tmp-files:
extra-source-files:
  README
  sample.ledger
  sample.timelog

flag vty
  description: enable the curses ui
  default:     False

flag web
  description: enable the web ui (using simpleserver)
  default:     False

flag webhappstack
  description: enable the web ui (using happstack)
  default:     False

flag chart
  description: enable the pie chart generation
  default:     False

-- minimal library so cabal list and ghc-pkg list will show this package
library
  exposed-modules:
                  Version
--   Build-Depends:
--                   base >= 3 && < 5
--                  ,containers
--                  ,directory
--                  ,filepath
--                  ,old-time
--                  ,parsec
--                  ,time
--                  ,utf8-string >= 0.3
--                  ,HUnit

executable hledger
  main-is:        hledger.hs
  other-modules:
                  HledgerMain
                  Options
                  Paths_hledger
                  Tests
                  Utils
                  Version
                  Commands.Add
                  Commands.All
                  Commands.Balance
                  Commands.Convert
                  Commands.Histogram
                  Commands.Print
                  Commands.Register
                  Commands.Stats
  build-depends:
                  hledger-lib == 0.9
                 ,HUnit
                 ,base >= 3 && < 5
                 ,containers
                 ,csv
                 ,directory
                 ,filepath
                 ,mtl
                 ,old-locale
                 ,old-time
                 ,parsec
                 ,process
                 ,regexpr >= 0.5.1
                 ,safe >= 0.2
                 ,testpack
                 ,time
                 ,utf8-string >= 0.3

  -- should set patchlevel here as in Makefile
  cpp-options:    -DPATCHLEVEL=0

  if flag(vty)
    cpp-options: -DVTY
    other-modules:Commands.UI
    build-depends:
                  vty >= 4.0.0.1

  if flag(web)
    cpp-options: -DWEB
    other-modules:Commands.Web
    build-depends:
                  hsp
                 ,hsx
                 ,xhtml >= 3000.2
                 ,loli
                 ,io-storage
                 ,hack-contrib
                 ,hack
                 ,hack-handler-simpleserver
                 ,HTTP >= 4000.0
                 ,applicative-extras

  if flag(webhappstack)
    cpp-options: -DWEBHAPPSTACK
    other-modules:Commands.Web
    build-depends:
                  hsp
                 ,hsx
                 ,xhtml >= 3000.2
                 ,loli
                 ,io-storage
                 ,hack-contrib
                 ,hack
                 ,hack-handler-happstack
                 ,happstack >= 0.3
                 ,happstack-data >= 0.3
                 ,happstack-server >= 0.3
                 ,happstack-state >= 0.3
                 ,HTTP >= 4000.0
                 ,applicative-extras

  if flag(chart)
    cpp-options: -DCHART
    other-modules:Commands.Chart
    build-depends:
                  Chart >= 0.11
                 ,colour

-- source-repository head
--   type:     darcs
--   location: http://joyful.com/repos/hledger
-- disabled for now due to:
-- The 'source-repository' section is new in Cabal-1.6. Unfortunately it messes
-- up the parser in earlier Cabal versions so you need to specify 'cabal-version:
-- >= 1.6'.

-- cf http://www.haskell.org/cabal/release/cabal-latest/doc/users-guide/authors.html

-- Additional dependencies:
-- required for make test: test-framework, test-framework-hunit
-- required for make bench: tabular-0.1