packages feed

nanovg-0.5.1.0: nanovg.cabal

name:                nanovg
version:             0.5.1.0
synopsis:            Haskell bindings for nanovg
description:         Raw bindings to the OpenGL vector graphics library NanoVG
homepage:            https://github.com/cocreature/nanovg-hs
license:             ISC
license-file:        LICENSE
author:              Moritz Kiefer
maintainer:          moritz.kiefer@purelyfunctional.org
copyright:           2016 Moritz Kiefer
category:            Graphics
build-type:          Simple
extra-source-files:
  README.md
  CHANGELOG.md
cabal-version:       >=1.10
tested-with:         GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.1

source-repository head
  type:     git
  location: https://github.com/cocreature/nanovg-hs

flag examples
  description: Build examples
  default:     False
  manual:      True

library
  exposed-modules:     NanoVG
                       NanoVG.Internal
                       NanoVG.Internal.Color
                       NanoVG.Internal.Context
                       NanoVG.Internal.FFIHelpers
                       NanoVG.Internal.FixedVector
                       NanoVG.Internal.GL3
                       NanoVG.Internal.Image
                       NanoVG.Internal.Paint
                       NanoVG.Internal.Path
                       NanoVG.Internal.Scissor
                       NanoVG.Internal.State
                       NanoVG.Internal.Style
                       NanoVG.Internal.Text
                       NanoVG.Internal.Transformation
                       NanoVG.Internal.Types
  build-depends:       base >= 4.7 && <5.0
                     , bytestring >= 0.10 && < 0.11
                     , containers >= 0.5 && < 0.6
                     , text >= 1.2 && < 1.3
                     , vector >= 0.11 && < 0.12
  hs-source-dirs:      src
  default-language:    Haskell2010
  include-dirs:        nanovg/src
                       cbits
  install-includes:    fontstash.h
                       nanovg.h
                       nanovg_gl.h
                       nanovg_wrapper.h
                       stb_image.h
                       stb_truetype.h
  c-sources:           nanovg/src/nanovg.c
                       cbits/nanovg_wrapper.c
                       cbits/nanovg_gl.c
  cc-options:          -DNDEBUG
  ghc-options:         -Wall
  extra-libraries:     GLU, GL, m, GLEW
  ghc-options:         -pgml gcc "-optl-Wl,--whole-archive" "-optl-Wl,-lGLEW" "-optl-Wl,--no-whole-archive"
  build-tools:         c2hs

executable example00
  hs-source-dirs:     example
  main-is:            Example.hs
  if flag(examples)
    build-depends:      base
                      , containers
                      , gl
                      , GLFW-b
                      , monad-loops
                      , nanovg
                      , text
                      , transformers
                      , vector
  else
    buildable:        False
  default-language:   Haskell2010
  c-sources:          cbits/glew.c

test-suite nanovg-test
  type:               exitcode-stdio-1.0
  hs-source-dirs:     test
  other-modules:      NanoVGSpec
                      Contexts
  main-is:            Spec.hs
  build-depends:      base
                    , containers
                    , hspec
                    , inline-c
                    , nanovg
                    , QuickCheck
  default-language:   Haskell2010
  c-sources:          test/NanoVGSpec.c