gdritter repos s-cargot / master s-cargot.cabal
master

Tree @master (Download .tar.gz)

s-cargot.cabal @masterraw · history · blame

name:                s-cargot
version:             0.1.4.0
synopsis:            A flexible, extensible s-expression library.
homepage:            https://github.com/aisamanra/s-cargot
description:         S-Cargot is a library for working with s-expressions in
                     a modular and extensible way, opting for genericity and
                     flexibility instead of speed. Instead of understanding
                     one particular form of s-expression, the S-Cargot library
                     exposes tools for parsing or emitting different kinds of
                     s-expressions, including features not normally included
                     in an s-expression library like reader macros or tight
                     control over indentation in pretty-printing.
license:             BSD3
license-file:        LICENSE
author:              Getty Ritter <s-cargot@infinitenegativeutility.com>
maintainer:          Getty Ritter <s-cargot@infinitenegativeutility.com>
copyright:           ©2018 Getty Ritter
category:            Data
build-type:          Simple
cabal-version:       >=1.10
bug-reports:         https://github.com/aisamanra/s-cargot/issues
extra-source-files:  README.md,
                     CHANGELOG.md,
                     test/*.sexp

source-repository head
  type: git
  location: git://github.com/aisamanra/s-cargot.git

flag build-example
  description: Build example application
  default:     False


library
  exposed-modules:     Data.SCargot,
                       Data.SCargot.Repr,
                       Data.SCargot.Repr.Basic,
                       Data.SCargot.Repr.Rich,
                       Data.SCargot.Repr.WellFormed,
                       Data.SCargot.Parse,
                       Data.SCargot.Print,
                       Data.SCargot.Atom,
                       Data.SCargot.Comments,
                       Data.SCargot.Common,
                       Data.SCargot.Language.Basic,
                       Data.SCargot.Language.HaskLike
  build-depends:       base        >=4.7 && <5,
                       parsec      >=3.1 && <4,
                       text        >=1.2 && <2,
                       containers  >=0.5 && <1
  default-language:    Haskell2010
  default-extensions:  CPP
  ghc-options:         -Wall


executable example
  if !flag(build-example)
    buildable:         False
  main-is:           example.hs
  hs-source-dirs:      example
  build-depends:       base        >=4.7 && <5,
                       containers  >=0.5 && <1,
                       parsec      >=3.1 && <4,
                       s-cargot               ,
                       text        >=1.2 && <2
  default-language:    Haskell2010
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N


test-suite s-cargot-qc
  default-language: Haskell2010
  type:             exitcode-stdio-1.0
  hs-source-dirs:   test
  main-is:          SCargotQC.hs
  build-depends:    s-cargot,
                    base          >=4.7 && <5,
                    parsec        >=3.1 && <4,
                    QuickCheck    >=2.8 && <3,
                    text          >=1.2 && <2


test-suite s-cargot-printparse
  default-language: Haskell2010
  type:             exitcode-stdio-1.0
  hs-source-dirs:   test
  main-is:          SCargotPrintParse.hs
  build-depends:    s-cargot,
                    base          >=4.7 && <5,
                    parsec        >=3.1 && <4,
                    HUnit         >=1.6 && <1.7,
                    text          >=1.2 && <2