Name:                repa
Version:             3.4.2.0
x-revision: 1
License:             BSD3
License-file:        LICENSE
Author:              The DPH Team
Maintainer:          Ben Lippmeier <benl@ouroborus.net>
Build-Type:          Simple
Cabal-Version:       >=1.10
Stability:           experimental
Category:            Data Structures
Homepage:            http://repa.ouroborus.net
Bug-reports:         http://groups.google.com/d/forum/haskell-repa
Description:
        Repa provides high performance, regular, multi-dimensional, shape polymorphic
        parallel arrays. All numeric data is stored unboxed. Functions written with
        the Repa combinators are automatically parallel provided you supply
        +RTS -Nwhatever on the command line when running the program.

Synopsis:
        High performance, regular, shape polymorphic parallel arrays.

Flag no-template-haskell
  Default: False
  Description: Disable Template Haskell

Library
  Build-Depends:
        base                 >= 4.8 && < 4.22
      , template-haskell
      , ghc-prim
      , vector               >= 0.11 && < 0.14
      , bytestring           >= 0.10 && < 0.13
      , QuickCheck           >= 2.8  && < 2.16

  ghc-options:
        -Wall
        -O2
        -fmax-simplifier-iterations=20
        -fsimplifier-phases=3
        -funbox-strict-fields
        -fno-warn-missing-signatures

  if impl(ghc >= 8.0)
    ghc-options: -fno-cpr-anal
  else
    ghc-options: -fcpr-off

  if flag(no-template-haskell)
    cpp-options: -DREPA_NO_TH

  default-language: Haskell2010

  default-extensions:
        NoMonomorphismRestriction
        ExplicitForAll
        EmptyDataDecls
        BangPatterns
        TypeFamilies
        MultiParamTypeClasses
        FlexibleInstances
        FlexibleContexts
        StandaloneDeriving
        ScopedTypeVariables
        PatternGuards
        ExistentialQuantification

  other-extensions:
        CPP

  if !flag(no-template-haskell)
    other-extensions:
        TemplateHaskell

  Exposed-modules:
        Data.Array.Repa.Eval.Gang
        Data.Array.Repa.Operators.IndexSpace
        Data.Array.Repa.Operators.Interleave
        Data.Array.Repa.Operators.Mapping
        Data.Array.Repa.Operators.Reduction
        Data.Array.Repa.Operators.Selection
        Data.Array.Repa.Operators.Traversal
        Data.Array.Repa.Repr.ByteString
        Data.Array.Repa.Repr.Cursored
        Data.Array.Repa.Repr.Delayed
        Data.Array.Repa.Repr.ForeignPtr
        Data.Array.Repa.Repr.HintSmall
        Data.Array.Repa.Repr.HintInterleave
        Data.Array.Repa.Repr.Partitioned
        Data.Array.Repa.Repr.Unboxed
        Data.Array.Repa.Repr.Undefined
        Data.Array.Repa.Repr.Vector
        Data.Array.Repa.Specialised.Dim2
        Data.Array.Repa.Stencil.Dim2
        Data.Array.Repa.Arbitrary
        Data.Array.Repa.Eval
        Data.Array.Repa.Index
        Data.Array.Repa.Shape
        Data.Array.Repa.Slice
        Data.Array.Repa.Stencil
        Data.Array.Repa.Unsafe
        Data.Array.Repa

  Other-modules:
        Data.Array.Repa.Eval.Chunked
        Data.Array.Repa.Eval.Cursored
        Data.Array.Repa.Eval.Interleaved
        Data.Array.Repa.Eval.Elt
        Data.Array.Repa.Eval.Target
        Data.Array.Repa.Eval.Load
        Data.Array.Repa.Eval.Reduction
        Data.Array.Repa.Eval.Selection
        Data.Array.Repa.Stencil.Base
        Data.Array.Repa.Stencil.Partition
        Data.Array.Repa.Base

  if !flag(no-template-haskell)
    Other-modules:
        Data.Array.Repa.Stencil.Template

-- vim: nospell