mirror of
https://github.com/simonmichael/hledger.git
synced 2024-12-28 04:46:31 +03:00
make an explicit configure flag for the vty ui
This commit is contained in:
parent
67a764dce7
commit
15239ecf96
6
Makefile
6
Makefile
@ -2,8 +2,9 @@
|
||||
BENCHEXES=hledger ledger
|
||||
|
||||
BUILD=ghc --make hledger.hs -o hledger -O
|
||||
BUILDFLAGS=-DVTY
|
||||
build: tag
|
||||
$(BUILD)
|
||||
$(BUILD) $(BUILDFLAGS)
|
||||
|
||||
BUILDO2=ghc --make hledger.hs -o hledgero2 -O2 -fvia-C
|
||||
buildo2:
|
||||
@ -15,8 +16,9 @@ rebuild: clean build
|
||||
# recompile and run tests whenever a module changes
|
||||
# see http://searchpath.org , you may need the patched version from
|
||||
# http://joyful.com/repos/searchpath
|
||||
CICMD=test
|
||||
continuous ci:
|
||||
sp --no-exts --no-default-map -o hledger ghc --make hledger.hs --run test
|
||||
sp --no-exts --no-default-map -o hledger ghc --make hledger.hs $(BUILDFLAGS) --run $(CICMD)
|
||||
|
||||
# run code tests
|
||||
test:
|
||||
|
13
README
13
README
@ -29,8 +29,17 @@ http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hledger and do::
|
||||
sudo runhaskell Setup.hs install
|
||||
|
||||
This will complain about any missing libraries, which you can download and
|
||||
install manually from hackage.haskell.org. (The Build-Depends: in
|
||||
hledger.cabal has the full package list.)
|
||||
install manually from hackage.haskell.org. The Build-Depends: in
|
||||
hledger.cabal has the full package list.
|
||||
|
||||
You can configure with optional flags to build additional hledger
|
||||
features. These are::
|
||||
|
||||
-f vty - Build vty-based text ui (requires vty, not available on windows)
|
||||
|
||||
Eg::
|
||||
|
||||
cabal install -f "vty" hledger (or runhaskell Setup.hs configure -f "vty")
|
||||
|
||||
To get the latest development code do::
|
||||
|
||||
|
@ -17,16 +17,13 @@ License-File: LICENSE
|
||||
Extra-Source-Files: README sample.ledger
|
||||
Extra-Tmp-Files:
|
||||
Cabal-Version: >= 1.2
|
||||
Flag vty
|
||||
description: Build vty-based text ui (requires vty, not available on windows)
|
||||
default: False
|
||||
|
||||
Executable hledger
|
||||
Main-Is: hledger.hs
|
||||
|
||||
if !os(windows)
|
||||
Build-Depends:vty>=3.1.8.2
|
||||
Other-Modules:UICommand
|
||||
|
||||
Build-Depends:
|
||||
base,
|
||||
Build-Depends: base,
|
||||
containers,
|
||||
haskell98,
|
||||
directory,
|
||||
@ -38,8 +35,7 @@ Executable hledger
|
||||
HUnit,
|
||||
mtl,
|
||||
bytestring
|
||||
Other-Modules:
|
||||
BalanceCommand
|
||||
Other-Modules: BalanceCommand
|
||||
Options
|
||||
PrintCommand
|
||||
RegisterCommand
|
||||
@ -61,12 +57,15 @@ Executable hledger
|
||||
Ledger.Transaction
|
||||
Ledger.Types
|
||||
Ledger.Utils
|
||||
if flag(vty)
|
||||
Build-Depends:vty>=3.1.8.2
|
||||
Other-Modules:UICommand
|
||||
cpp-options: -DVTY
|
||||
|
||||
library
|
||||
Library
|
||||
Build-Depends: base, containers, haskell98, directory, parsec, regex-compat,
|
||||
old-locale, time, HUnit
|
||||
Exposed-modules:
|
||||
Ledger
|
||||
Exposed-modules:Ledger
|
||||
Ledger.Account
|
||||
Ledger.AccountName
|
||||
Ledger.Amount
|
||||
|
12
hledger.hs
12
hledger.hs
@ -40,10 +40,6 @@ module Main (
|
||||
module BalanceCommand,
|
||||
module PrintCommand,
|
||||
module RegisterCommand,
|
||||
#ifndef mingw32_HOST_OS
|
||||
-- the ui command requires vty which is not available on windows
|
||||
module UICommand,
|
||||
#endif
|
||||
)
|
||||
where
|
||||
import Control.Monad.Error
|
||||
@ -56,8 +52,8 @@ import Options
|
||||
import BalanceCommand
|
||||
import PrintCommand
|
||||
import RegisterCommand
|
||||
#ifndef mingw32_HOST_OS
|
||||
import UICommand
|
||||
#ifdef VTY
|
||||
import qualified UICommand
|
||||
#endif
|
||||
import Tests
|
||||
|
||||
@ -73,8 +69,8 @@ main = do
|
||||
| cmd `isPrefixOf` "balance" = parseLedgerAndDo opts args balance
|
||||
| cmd `isPrefixOf` "print" = parseLedgerAndDo opts args print'
|
||||
| cmd `isPrefixOf` "register" = parseLedgerAndDo opts args register
|
||||
#ifndef mingw32_HOST_OS
|
||||
| cmd `isPrefixOf` "ui" = parseLedgerAndDo opts args ui
|
||||
#ifdef VTY
|
||||
| cmd `isPrefixOf` "ui" = parseLedgerAndDo opts args UICommand.ui
|
||||
#endif
|
||||
| cmd `isPrefixOf` "test" = runtests opts args >> return ()
|
||||
| otherwise = putStr $ usage
|
||||
|
Loading…
Reference in New Issue
Block a user