-- Initial libressl.cabal generated by cabal init.  For further
-- documentation, see http://haskell.org/cabal/users-guide/

-- The name of the package.
name:                libressl

-- The package version.  See the Haskell package versioning policy (PVP)
-- for standards guiding when and how versions should be incremented.
-- https://wiki.haskell.org/Package_versioning_policy
-- PVP summary:      +-+------- breaking API changes
--                   | | +----- non-breaking API additions
--                   | | | +--- code changes with no API change
version:             0.1.0.0

-- A short (one-line) description of the package.
synopsis:            libressl and libtls bindings

-- A longer description of the package.
-- description:

-- URL for the project homepage or repository.
homepage:            https://github.com/cartazio/libressl-hs

-- The license under which the package is released.
license:             BSD2

-- The file containing the license text.
license-file:        LICENSE

-- The package author(s).
author:              Carter Tazio Schonwald

-- An email address to which users can send suggestions, bug reports, and
-- patches.
maintainer:          carter at wellposed dot com

-- A copyright notice.
-- copyright:

category:            Network

build-type:          Simple

-- Extra files to be distributed with the package, such as examples or a
-- README.
extra-source-files:  ChangeLog.md

-- Constraint on the version of Cabal needed to build this package.
cabal-version:       >=1.20


source-repository head
  type: git
  location: https://github.com/cartazio/libressl-hs.git

library
  -- Modules exported by the library.
  exposed-modules:     Network.Libre.TLS
                      ,Network.Libre.TLS.FFI.Internal
  -- Modules included in this library but not exported.
  -- other-modules:

  -- LANGUAGE extensions used by modules in this package.
  -- other-extensions:

  -- Other library packages from which modules are imported.
  build-depends:       base >=4.9 && <4.12
                     , transformers >= 0.5
                     , vector >= 0.11 && < 0.13
                     , primitive >= 0.6 && < 0.7
                     , monad-ste >= 0.1 && < 0.2


--  extra-libraries: libtls
-- mac users may want to do something like
-- set -xl PKG_CONFIG_PATH /usr/local/opt/libressl/lib/pkgconfig


  if os(linux)
    extra-lib-dirs: /usr/local/lib
    pkgconfig-depends: libtls >= 2.4.4
  if os(OSX)
    extra-lib-dirs: /usr/local/opt/libressl/lib
    include-dirs: /usr/local/opt/libressl/include

  -- Directories containing source files.
  hs-source-dirs:      src

  -- Base language which the package is written in.
  default-language:    Haskell2010


test-suite hunit
  type: exitcode-stdio-1.0
  main-is: hunit.hs
  ghc-options: -w -threaded -rtsopts -with-rtsopts=-N
  hs-source-dirs: tests
  default-language: Haskell2010
  build-depends:
      base
      ,containers
      ,HUnit >= 1.2
      ,hspec == 2.3.*
      ,libressl