packages feed

GPipe-Core-0.2.3.1: GPipe-Core.cabal

name:           GPipe-Core
version:        0.2.3.1
cabal-version:  >= 1.10
build-type:     Simple
author:         Tobias Bexelius
license:        MIT
license-file:   LICENSE
copyright:      Tobias Bexelius
category:       Graphics
stability:      Experimental
synopsis:       Typesafe functional GPU graphics programming
homepage:       https://github.com/tobbebex/GPipe-Core#readme
bug-reports:    https://github.com/tobbebex/GPipe-Core/issues
description:
                A typesafe API based on the conceptual model of OpenGL, but without the imperative state machine.
                Aims to be as close to the raw OpenGL performance as possible, without compromising type safety or functional style.
                Includes DSL for shaders to provide type safety even when crossing into that domain.
                Uses OpenGL 4.5 core profile under the hood.
maintainer:     Pippijn van Steenhoven
data-files:     CHANGELOG.md

source-repository head
  type:     git
  location: https://github.com/homectl/workspace
  subdir:   GPipe-Core

library
  hs-source-dirs: src
  default-language: Haskell2010
  exposed-modules:
      Graphics.GPipe
      Graphics.GPipe.Buffer
      Graphics.GPipe.Context
      Graphics.GPipe.Expr
      Graphics.GPipe.Format
      Graphics.GPipe.FragmentStream
      Graphics.GPipe.FrameBuffer
      Graphics.GPipe.GeometryStream
      Graphics.GPipe.Linear
      Graphics.GPipe.PrimitiveArray
      Graphics.GPipe.PrimitiveStream
      Graphics.GPipe.Sampler
      Graphics.GPipe.Shader
      Graphics.GPipe.Texture
      Graphics.GPipe.TransformFeedback
      Graphics.GPipe.Uniform
      Graphics.GPipe.Orphans
      -- Internal modules, exported for tests and power users, but don't have
      -- a stable API and are not necessarily safe to use.
      Graphics.GPipe.Internal.Buffer
      Graphics.GPipe.Internal.Compiler
      Graphics.GPipe.Internal.Context
      Graphics.GPipe.Internal.Debug
      Graphics.GPipe.Internal.Expr
      Graphics.GPipe.Internal.Format
      Graphics.GPipe.Internal.FragmentStream
      Graphics.GPipe.Internal.FrameBuffer
      Graphics.GPipe.Internal.GeometryStream
      Graphics.GPipe.Internal.Linear
      Graphics.GPipe.Internal.PrimitiveArray
      Graphics.GPipe.Internal.PrimitiveStream
      Graphics.GPipe.Internal.Shader
      Graphics.GPipe.Internal.Texture
      Graphics.GPipe.Internal.TransformFeedback
      Graphics.GPipe.Internal.Uniform
      Graphics.GPipe.Internal.Orphans
  other-modules:
      -- Data structures, not useful for users of the library.
      Data.SNMap
  build-depends:
      base                          >= 4.9 && < 5
    , Boolean                       >= 0.2 && < 0.3
    , containers                    >= 0.5 && < 0.7
    , exception-transformers        >= 0.3 && < 0.5
    , transformers                  >= 0.5.2 && < 0.6
    , gl                            >= 0.8 && < 0.10
    , lens                          >= 5.0 && < 5.1
    , linear                        >= 1.18 && < 1.22
    , text                          >= 0.10 && < 1.3
    , unordered-containers          >= 0.2 && < 0.3

test-suite testsuite
  default-language: Haskell2010
  hs-source-dirs:   test
  type: exitcode-stdio-1.0
  main-is:          testsuite.hs
  other-modules:
      Graphics.GPipe.ExprSpec
  ghc-options:
      -Wall
      -rtsopts
      -threaded
  build-tool-depends:
      hspec-discover:hspec-discover
  build-depends:
      base < 5
    , GPipe-Core
    , hspec
    , lens

benchmark bench
  default-language: Haskell2010
  hs-source-dirs:   bench
  type: exitcode-stdio-1.0
  main-is:          bench.hs
  other-modules:
      Graphics.GPipe.ExprBench
      LambdaRay.Config
      LambdaRay.Schwarzschild
  ghc-options:
      -Wall
      -rtsopts
      -threaded
  build-depends:
      base < 5
    , GPipe-Core
    , criterion
    , lens