haskeline-0.2: haskeline.cabal
Name: haskeline
Cabal-Version: >=1.2
Version: 0.2
Category: User Interfaces
License: BSD3
License-File: LICENSE
Copyright: (c) Judah Jacobson
Author: Judah Jacobson
Maintainer: Judah Jacobson <judah.jacobson@gmail.com>
Category: User Interfaces
Synopsis: A command-line interface for user input, written in Haskell.
Description:
Haskeline provides a user interface for line input in command-line
programs. This library is similar in purpose to readline, but since
it is written in Haskell it is (hopefully) more easily used in other
Haskell programs.
.
Haskeline runs both on POSIX-compatible systems and on Windows
(under MinGW).
Homepage: http://code.haskell.org/haskeline
Stability: Experimental
Build-Type: Simple
flag target-mingw
Description: Use native Win32 Console functionality (suitable for MinGW)
Default: False
flag old-base
Description: Use the base packages from before version 6.8
Library
if flag(old-base)
Build-depends: base < 3
else
Build-depends: base>=3.0, containers>=0.1, directory>=1.0
Build-depends: stm>=2.0, filepath>=1.1, template-haskell>=2.1,
mtl>=1.1, utf8-string>=0.3.1.1, bytestring>=0.9.0.1
Extensions: ForeignFunctionInterface, Rank2Types, FlexibleInstances,
TypeSynonymInstances
FlexibleContexts, ExistentialQuantification
ScopedTypeVariables, GeneralizedNewtypeDeriving
MultiParamTypeClasses, OverlappingInstances
PatternSignatures, CPP, DeriveDataTypeable,
PatternGuards, TemplateHaskell, StandaloneDeriving
-- Note: GADTs are needed to allow contexts of different
-- lengths (see code of Haskeline.repeatTillFinish)
GADTs
Exposed-Modules:
System.Console.Haskeline
System.Console.Haskeline.Completion
System.Console.Haskeline.Prefs
System.Console.Haskeline.MonadException
Other-Modules:
System.Console.Haskeline.Backend
System.Console.Haskeline.Command
System.Console.Haskeline.Command.Completion
System.Console.Haskeline.Command.History
System.Console.Haskeline.Emacs
System.Console.Haskeline.InputT
System.Console.Haskeline.LineState
System.Console.Haskeline.Monads
System.Console.Haskeline.Term
System.Console.Haskeline.Vi
include-dirs: includes
if flag(target-mingw) {
Build-depends: Win32>=2.0
Other-modules: System.Console.Haskeline.Backend.Win32
c-sources: cbits/win_console.c
includes: win_console.h
install-includes: win_console.h
cpp-options: -DMINGW
} else {
Build-depends: terminfo>=0.2, unix>=2.0
Other-modules:
System.Console.Haskeline.Backend.Posix
System.Console.Haskeline.Backend.DumbTerm
System.Console.Haskeline.Backend.Terminfo
}
ghc-options: -Wall