libconfig-0.3.0.0: libconfig.cabal
name: libconfig
version: 0.3.0.0
synopsis: Haskell bindings to libconfig
description:
Low-level FFI bindings to the <http://www.hyperrealm.com/libconfig/ libconfig>
configuration file library.
.
This library only binds to version 1.4.9 of the libconfig
library, which is known as @libconfig9@ in Debian-like
distributions, including Ubuntu. It will not work with
older versions of libconfig, including the @libconfig8@
distributed in Ubuntu 12.04.
.
See below for several flags you can use to reduce
dependencies if this is a problem for you. If you disable
everything, this package will only depend on
@transformers@, @text@, @hashable@ and @deepseq@.
license: BSD3
license-file: LICENSE
author: Matthew Peddie
maintainer: mpeddie@gmail.com
homepage: https://github.com/peddie/libconfig-haskell
copyright: 2015 Matthew Peddie <mpeddie@gmail.com>
category: Language
build-type: Simple
cabal-version: >=1.10
source-repository head
type: git
location: https://github.com/peddie/libconfig-haskell
flag prisms
description: Build prisms along with lenses (adds a
dependency on the 'profunctors' package).
.
If tests are enabled, this flag also adds a
dependency on 'lens' for the test suite.
.
If this flag is disabled, no tests for
Language.Libconfig.Optics will be run at all.
default: True
flag binary
description: Provide instances for Data.Binary.Binary from
the 'binary' package. This is done by Generics
and will not work on GHCs older than 7.8,
because they ship with binary version 0.5 or
older.
default: True
flag cereal
description: Provide instances for Data.Serialize.Serialize
from the 'cereal' package.
default: True
library
exposed-modules: Language.Libconfig
, Language.Libconfig.Bindings
, Language.Libconfig.Types
, Language.Libconfig.Decode
, Language.Libconfig.Encode
, Language.Libconfig.Optics
extra-libraries: config
if flag(prisms) && flag(binary) && flag(cereal)
build-depends: base >=4.6 && <4.9
, text >= 1.1 && < 1.3
, hashable >= 1.2 && < 1.3
, deepseq >= 1.3
, transformers >= 0.3
, transformers-compat >= 0.3
, profunctors >= 4 && < 5
, binary >= 0.5 && < 0.8
, text-binary >= 0.1
, cereal >= 0.4 && < 0.5
, cereal-text >= 0.1
cpp-options: -DDEFINE_PRISMS -DBINARY_INSTANCES -DCEREAL_INSTANCES
else
if flag(prisms) && flag(binary)
build-depends: base >=4.6 && <4.9
, text >= 1.1 && < 1.3
, hashable >= 1.2 && < 1.3
, deepseq >= 1.3
, transformers >= 0.3
, transformers-compat >= 0.3
, profunctors >= 4 && < 5
, binary >= 0.5 && < 0.8
, text-binary >= 0.1
cpp-options: -DDEFINE_PRISMS -DBINARY_INSTANCES
else
if flag(prisms) && flag(cereal)
build-depends: base >=4.6 && <4.9
, text >= 1.1 && < 1.3
, hashable >= 1.2 && < 1.3
, deepseq >= 1.3
, transformers >= 0.3
, transformers-compat >= 0.3
, profunctors >= 4 && < 5
, cereal >= 0.4 && < 0.5
, cereal-text >= 0.1
cpp-options: -DDEFINE_PRISMS -DCEREAL_INSTANCES
else
if flag(binary) && flag(cereal)
build-depends: base >=4.6 && <4.9
, text >= 1.1 && < 1.3
, hashable >= 1.2 && < 1.3
, deepseq >= 1.3
, transformers >= 0.3
, transformers-compat >= 0.3
, binary >= 0.5 && < 0.8
, text-binary >= 0.1
, cereal >= 0.4 && < 0.5
, cereal-text >= 0.1
cpp-options: -DBINARY_INSTANCES -DCEREAL_INSTANCES
else
if flag(prisms)
build-depends: base >=4.6 && <4.9
, text >= 1.1 && < 1.3
, hashable >= 1.2 && < 1.3
, deepseq >= 1.3
, transformers >= 0.3
, transformers-compat >= 0.3
, profunctors >= 4 && < 5
cpp-options: -DDEFINE_PRISMS
else
if flag(binary)
build-depends: base >=4.6 && <4.9
, text >= 1.1 && < 1.3
, hashable >= 1.2 && < 1.3
, deepseq >= 1.3
, transformers >= 0.3
, transformers-compat >= 0.3
, binary >= 0.5 && < 0.8
, text-binary >= 0.1
cpp-options: -DBINARY_INSTANCES
else
if flag(cereal)
build-depends: base >=4.6 && <4.9
, text >= 1.1 && < 1.3
, hashable >= 1.2 && < 1.3
, deepseq >= 1.3
, transformers >= 0.3
, transformers-compat >= 0.3
, cereal >= 0.4 && < 0.5
, cereal-text >= 0.1
cpp-options: -DCEREAL_INSTANCES
else
build-depends: base >=4.6 && <4.9
, text >= 1.1 && < 1.3
, hashable >= 1.2 && < 1.3
, deepseq >= 1.3
, transformers >= 0.3
, transformers-compat >= 0.3
hs-source-dirs: src
build-tools: c2hs
default-language: Haskell2010
test-suite doctest
type: exitcode-stdio-1.0
default-language: Haskell2010
hs-source-dirs: test
ghc-options: -threaded -Wall -O2
main-is: doctest.hs
if flag(prisms)
cpp-options: -DDEFINE_PRISMS
build-depends: base
, libconfig
, doctest >= 0.9.9
, doctest-prop >= 0.2
, lens >= 4.7
else
build-depends: base
, libconfig
, doctest >= 0.9.9
, doctest-prop >= 0.2