name:               zeromq4-haskell
version:            0.6.3
synopsis:           Bindings to ZeroMQ 4.x
category:           System, FFI
license:            MIT
license-file:       LICENSE
author:             Toralf Wittner
maintainer:         Toralf Wittner <tw@dtex.org>
copyright:          (c) 2010 - 2015 zeromq-haskell authors
homepage:           http://github.com/twittner/zeromq-haskell/
stability:          experimental
tested-With:        GHC == 7.6.3
cabal-version:      >= 1.8
build-type:         Simple
extra-source-files:
      README.md
    , CHANGELOG.md
    , AUTHORS
    , examples/*.hs
    , examples/Makefile
    , examples/perf/*.hs
    , examples/perf/Makefile
    , tests/*.hs
    , tests/System/ZMQ4/Test/*.hs

description:
    The 0MQ lightweight messaging kernel is a library which extends
    the standard socket interfaces with features traditionally provided
    by specialised messaging middleware products.
    .
    0MQ sockets provide an abstraction of asynchronous message queues,
    multiple messaging patterns, message filtering (subscriptions),
    seamless access to multiple transport protocols and more.
    .
    This library provides the Haskell language binding to 0MQ >= 4.x

source-repository head
    type:             git
    location:         https://github.com/twittner/zeromq-haskell

library
    hs-source-dirs:    src
    ghc-options:       -Wall -O2 -fwarn-tabs -funbox-strict-fields

    exposed-modules:
        Data.Restricted
        System.ZMQ4
        System.ZMQ4.Monadic
        System.ZMQ4.Internal
        System.ZMQ4.Internal.Base
        System.ZMQ4.Internal.Error

    build-depends:
          base         >= 3 && < 5
        , async        == 2.0.*
        , bytestring
        , containers
        , exceptions   >= 0.6 && < 1.0
        , semigroups   >= 0.8
        , transformers >= 0.3

    if impl(ghc < 7.6)
        build-depends: ghc-prim == 0.3.*

    if os(windows)
        extra-libraries: zmq
    else
        pkgconfig-depends: libzmq >= 4.0 && < 5.0

    if os(freebsd)
        extra-libraries: pthread

test-suite zeromq-haskell-tests
    type:             exitcode-stdio-1.0
    hs-source-dirs:   tests
    main-is:          tests.hs
    ghc-options:      -Wall -threaded
    build-depends:
          zeromq4-haskell
        , async
        , base             >= 3 && < 5
        , bytestring
        , QuickCheck       >= 2.6
        , tasty            >= 0.8
        , tasty-hunit      >= 0.8
        , tasty-quickcheck >= 0.8