packages feed

hledger-web-0.20: hledger-web.cabal

name:           hledger-web
-- also in cpp-options below
version: 0.20
category:       Finance
synopsis:       A web 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://code.google.com/p/hledger/issues
stability:      beta
tested-with:    GHC==7.4.2, GHC==7.6.1
cabal-version:  >= 1.8
build-type:     Simple
extra-tmp-files:
extra-source-files:
                messages/en.msg
                config/routes
                static/combo_select.gif
                static/css/bootstrap.css
                static/dhtmlxcombo.js
                static/dhtmlxcommon.js
                static/excanvas.min.js
                static/favicon.ico
                static/hledger.js
                static/img/glyphicons-halflings-white.png
                static/img/glyphicons-halflings.png
                static/jquery.flot.js
                static/jquery.js
                static/jquery.url.js
                static/style.css
                templates/default-layout.hamlet
                templates/default-layout-wrapper.hamlet
                templates/homepage.hamlet
                templates/homepage.julius
                templates/homepage.lucius
                templates/normalize.lucius

source-repository head
  type:     darcs
  location: http://hub.darcs.net/simon/hledger

-- Flag production
--     Description:   Build fully optimised and with web files embedded (not loaded from ./static/)
--     Default:       True

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

flag blaze_html_0_4
    description:   Use the older 0.4 version of blaze-html.
    default:       False


flag dev
    Description:   Turn on development settings, like auto-reload templates.
    Default:       False

flag library-only
    Description:   Build for use with "yesod devel"
    Default:       False


library
    hs-source-dirs:  . app

    exposed-modules: Application
                     Foundation
                     Import
                     Settings
                     Settings.StaticFiles
                     Settings.Development
                     Handler.Common
                     Handler.JournalEditR
                     Handler.JournalEntriesR
                     Handler.JournalR
                     Handler.Post
                     Handler.RegisterR
                     Handler.RootR
                     Handler.Utils
    other-modules:
                      Hledger.Web
                      Hledger.Web.Main
                      Hledger.Web.Options

    -- if flag(library-only)
    --     Buildable: True
    -- else
    --     Buildable: False

    ghc-options:   -Wall -fno-warn-unused-do-bind
    cpp-options:   -DVERSION="0.20"
    if flag(dev) || flag(library-only)
        cpp-options:   -DDEVELOPMENT

    extensions: TemplateHaskell
                QuasiQuotes
                OverloadedStrings
                NoImplicitPrelude
                CPP
                MultiParamTypeClasses
                TypeFamilies
                GADTs
                GeneralizedNewtypeDeriving
                FlexibleContexts
                EmptyDataDecls
                NoMonomorphismRestriction
                RecordWildCards

    build-depends:   base                          >= 4          && < 5
                   -- , yesod-platform                >= 1.1        && < 1.2
                   , yesod                         >= 1.1.3      && < 1.2
                   , yesod-core                    >= 1.1.2      && < 1.2
                   , yesod-static                  >= 1.1        && < 1.2
                   , yesod-default                 >= 1.1        && < 1.2
                   , yesod-form                    >= 1.1        && < 1.3
                   , clientsession
                   , bytestring                    >= 0.9        && < 0.11
                   , text                          >= 0.11       && < 0.12
                   , template-haskell
                   , hamlet                        >= 1.1        && < 1.2
                   , shakespeare-css               >= 1.0        && < 1.1
                   , shakespeare-js                >= 1.0        && < 1.2
                   , shakespeare-text              >= 1.0        && < 1.1
                   , hjsmin                        >= 0.1        && < 0.2
                   , monad-control                 >= 0.3        && < 0.4
                   , wai-extra                     >= 1.3        && < 1.4
                   , yaml                          >= 0.8        && < 0.9
                   , http-conduit                  >= 1.8        && < 1.10
                   , directory                     >= 1.1        && < 1.3
                   , warp                          >= 1.3        && < 1.4
                   , data-default

                   , hledger == 0.20
                   , hledger-lib == 0.20
                   , cmdargs >= 0.10 && < 0.11
                   , directory
                   , filepath
                   , HUnit
                   , network-conduit
                   , old-locale
                   , parsec
                   , regexpr >= 0.5.1
                   , safe >= 0.2
                   , time
                   , transformers
                   , wai
                   , wai-extra
                   , wai-handler-launch       >= 1.3 && < 1.4
                   , warp
                   , yaml

    if flag(blaze_html_0_4)
      cpp-options:   -DBLAZE_HTML_0_4
      build-depends:
                     blaze-html               >= 0.4     && < 0.5
    else
      build-depends:
                     blaze-html               >= 0.5     && < 0.7
                   , blaze-markup             >= 0.5.1   && < 0.7


executable         hledger-web
    cpp-options:   -DVERSION="0.20"

    if flag(library-only)
        Buildable: False

    if flag(dev)
        cpp-options:   -DDEVELOPMENT
        ghc-options:   -O0 -Wall -fno-warn-unused-do-bind
    else
        ghc-options:   -O2 -Wall -fno-warn-unused-do-bind

    if flag(threaded)
        ghc-options:   -threaded

    extensions: TemplateHaskell
                QuasiQuotes
                OverloadedStrings
                NoImplicitPrelude
                CPP
                OverloadedStrings
                MultiParamTypeClasses
                TypeFamilies
                RecordWildCards

    hs-source-dirs:  . app

    main-is:       main.hs
    other-modules:
                     Application
                     Foundation
                     Import
                     Settings
                     Settings.StaticFiles
                     Settings.Development
                     Handler.Common
                     Handler.JournalEditR
                     Handler.JournalEntriesR
                     Handler.JournalR
                     Handler.Post
                     Handler.RegisterR
                     Handler.RootR
                     Handler.Utils
                     Hledger.Web
                     Hledger.Web.Main
                     Hledger.Web.Options

    build-depends:
                     hledger-web
                   , hledger == 0.20
                   , hledger-lib == 0.20
                   , base                          >= 4.3        && < 5
                   , cmdargs >= 0.10 && < 0.11
                   , directory
                   , filepath
                   , HUnit
                   , old-locale
                   , parsec
                   , regexpr >= 0.5.1
                   , safe >= 0.2
                   , time

                   -- , yesod-platform                == 1.1.*
                   , yesod >= 1.1.3 && < 1.2
                   , yesod-core
                   , yesod-default
                   , yesod-static
                   , clientsession
                   , hamlet
                   , network-conduit
                   , shakespeare-text
                   , template-haskell
                   , text
                   , transformers
                   , wai
                   , wai-extra
                   , wai-handler-launch       >= 1.3 && < 1.4
                   , warp
                   , yaml
                   , hjsmin                        >= 0.1        && < 0.2
                   , http-conduit                  >= 1.8        && < 1.10
                   , data-default

    if flag(blaze_html_0_4)
      cpp-options:   -DBLAZE_HTML_0_4
      build-depends:
                     blaze-html               >= 0.4     && < 0.5
    else
      build-depends:
                     blaze-html               >= 0.5     && < 0.7
                   , blaze-markup             >= 0.5.1   && < 0.7


test-suite test
    type:              exitcode-stdio-1.0
    main-is:           main.hs
    hs-source-dirs:    tests
    ghc-options:       -Wall

    build-depends: 
                   base
                 , hledger-web
                 , yesod-test >= 0.3 && < 0.4
                 , yesod-default
                 , yesod-core