packages feed

adp-multi-0.2.2: adp-multi.cabal

name:           adp-multi
version:        0.2.2
cabal-version:  >= 1.8
build-type:     Simple
author:         Maik Riechert
stability:      experimental
bug-reports:    https://github.com/adp-multi/adp-multi/issues
homepage:       http://adp-multi.ruhoh.com
copyright:      Maik Riechert, 2012
license:        BSD3
license-file:   LICENSE
tested-with:    
                GHC==7.4.1,
                GHC==7.6.2
maintainer:     Maik Riechert
category:       Algorithms, Data Structures, Bioinformatics
synopsis:       ADP for multiple context-free languages
description:    adp-multi is an implementation of Algebraic Dynamic Programming
                for multiple context-free languages.
                It is a library based on the original Haskell implementation 
                and can be considered an unoptimized prototype.


source-repository head
  type:      git
  location:  git://github.com/adp-multi/adp-multi.git

Flag buildTests
  description: Build test executable
  default: False

Flag buildBenchmark
  description: Build benchmark executable
  default: False

Flag buildBenchmark2
  description: Build second benchmark executable
  default: False

Flag DEBUG
  description: Enable/disable debug output
  default: False

library 
  build-depends:   base == 4.*,
                   array == 0.4.*,
                   containers >= 0.4 && < 0.6,
                   htrace == 0.1.*
  hs-source-dirs:   src
  ghc-options:      -Wall
  if flag(DEBUG)
    cpp-options: -DADPDEBUG
  exposed-modules: 
                   ADP.Debug,
                   ADP.Multi.All,
                   ADP.Multi.Combinators,
                   ADP.Multi.ElementaryParsers,
                   ADP.Multi.Helpers,
                   ADP.Multi.Parser,
                   ADP.Multi.Rewriting,
                   ADP.Multi.Rewriting.All,
                   ADP.Multi.Rewriting.Combinators,
                   ADP.Multi.Rewriting.Explicit,
                   ADP.Multi.Rewriting.Model,
                   ADP.Multi.Rewriting.RangesHelper,
                   ADP.Multi.Rewriting.YieldSize,
                   ADP.Multi.Tabulation

test-suite MainTestSuite
  type:            exitcode-stdio-1.0
  x-uses-tf:       true
  build-depends:   
                   base == 4.*,
                   array == 0.4.*,
                   containers >= 0.4 && < 0.6,
                   htrace == 0.1.*,
                   HUnit == 1.2.*,
                   QuickCheck == 2.5.*,
                   test-framework == 0.8.*,
                   test-framework-quickcheck2 == 0.3.*,
                   test-framework-hunit == 0.3.*,
                   random-shuffle == 0.0.4,
                   mtl >= 2.0 && < 2.2
  hs-source-dirs:  tests,src
  ghc-options:     -Wall -rtsopts
  other-modules:   
                   ADP.Multi.Rewriting.Tests.YieldSize,
                   ADP.Tests.AlignmentExample,
                   ADP.Tests.CopyExample,
                   ADP.Tests.CopyTwoTrackExample,
                   ADP.Tests.Main,
                   ADP.Tests.NestedExample,
                   ADP.Tests.Nussinov,
                   ADP.Tests.OneStructureExample,
                   ADP.Tests.RGExample,
                   ADP.Tests.RGExampleDim2,
                   ADP.Tests.RGExampleStar,
                   ADP.Tests.TermExample,
                   ADP.Tests.ZeroStructureTwoBackbonesExample,
                   MCFG.MCFG
  main-is:         ADP/Tests/Suite.hs

executable adp-multi-benchmarks
  if !flag(buildBenchmark)
    buildable: False
  else
    build-depends:   
                   base == 4.*,
                   array == 0.4.*,
                   containers >= 0.4 && < 0.6,
                   htrace == 0.1.*,
                   HUnit == 1.2.*,
                   QuickCheck == 2.5.*,
                   test-framework == 0.8.*,
                   test-framework-quickcheck2 == 0.3.*,
                   test-framework-hunit == 0.3.*,
                   random-shuffle == 0.0.4,
                   mtl >= 2.0 && < 2.2,
                   Nussinov78 == 0.1.0.0,
                   criterion == 0.6.*,
                   deepseq >= 1.1.0.0
  hs-source-dirs:  benchmarks,
                   tests,
                   src
  ghc-options:     -Wall -rtsopts
  main-is:         Benchmarks.hs
  other-modules:   Criterion.Helpers

executable adp-multi-benchmarks2
  if !flag(buildBenchmark2)
    buildable: False
  else
    build-depends:   
                   base == 4.*,
                   array == 0.4.*,
                   containers >= 0.4 && < 0.6,
                   htrace == 0.1.*,
                   HUnit == 1.2.*,
                   QuickCheck == 2.5.*,
                   test-framework == 0.8.*,
                   test-framework-quickcheck2 == 0.3.*,
                   test-framework-hunit == 0.3.*,
                   random-shuffle == 0.0.4,
                   mtl >= 2.0 && < 2.2,
                   criterion == 0.6.*,
                   deepseq >= 1.1.0.0
  hs-source-dirs:  benchmarks,
                   tests,
                   src
  ghc-options:     -Wall -rtsopts
  main-is:         Benchmarks2.hs
  other-modules:   Criterion.Helpers

executable adp-test
  if !flag(buildTests)
    buildable: False
  else
    build-depends:   
                   base == 4.*,
                   array == 0.4.*,
                   containers >= 0.4 && < 0.6,
                   htrace == 0.1.*,
                   HUnit == 1.2.*,
                   QuickCheck == 2.5.*,
                   test-framework == 0.8.*,
                   test-framework-quickcheck2 == 0.3.*,
                   test-framework-hunit == 0.3.*,
                   mtl >= 2.0 && < 2.2,
                   random-shuffle == 0.0.4
  hs-source-dirs:  tests,src
  ghc-options:     -Wall -rtsopts -O0
  if flag(DEBUG)
    cpp-options: -DADPDEBUG
  main-is:         ADP/Tests/Main.hs