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

-- The name of the package.
name:                uniform-io

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

-- A short (one-line) description of the package.
synopsis:   Uniform IO over files, network, watever.

-- A longer description of the package.
description:
    This library defines a typeclass for abstracting
    the differences between the several IO channels available.
    It also includes implementations for standard IO, files and
    network IO, and easy to use TLS wrapping of any of those.

    Currently TLS only wraps sockets, std streams are not exported
    and there's no support for TLS certificate verification. Those
    are all planned to be added soon.

    Requires a '-threaded' compiler switch.


-- URL for the project homepage or repository.
homepage:   https://sealgram.com/git/haskell/uniform-io

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

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

-- The package author(s).
author:     Marcos Dumay de Medeiros

-- An email address to which users can send suggestions, bug reports, and 
-- patches.
maintainer: marcos@marcosdumay.com

-- A copyright notice.
-- copyright:           

category:   System

build-type: Simple

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

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

Extra-Source-Files:
  src/System/IO/Uniform/ds.c

source-repository head
  type:     git
  location: https://sealgram.com/git/haskell/uniform-io
  branch:   master

source-repository this
  type:     git
  location: https://sealgram.com/git/haskell/uniform-io
  tag:   0.1.1.0

library
  -- Modules exported by the library.
  exposed-modules:
      System.IO.Uniform,
      System.IO.Uniform.Streamline

  ghc-options: -Wall -fno-warn-unused-do-bind -fwarn-incomplete-patterns

  -- Modules included in this library but not exported.
  other-modules:       
        System.IO.Uniform.Targets

  -- LANGUAGE extensions used by modules in this package.
  other-extensions:
      OverloadedStrings,
      ExistentialQuantification,
      ForeignFunctionInterface
  
  -- Other library packages from which modules are imported.
  build-depends:
      base >=4.7 && <5.0,
      iproute >=1.4 && <2.0,
      bytestring >=0.10 && <1.0,
      network >=2.4 && <3.0,
      transformers >=0.3 && <1.0,
      word8 >=0.1 && <1.0,
      attoparsec >=0.10 && <1.0,
      data-default-class >= 0.0.1 && <1.0
  
  -- Directories containing source files.
  hs-source-dirs: src
  
  -- Base language which the package is written in.
  default-language: Haskell2010

  include-dirs: src/System/IO/Uniform
  includes: ds.h
  install-includes: ds.h
  C-Sources: src/System/IO/Uniform/ds.c
  extra-libraries: ssl

Test-suite lazyness
  type: detailed-0.9
  test-module: Lazyness
  hs-source-dirs:
    test
  build-depends:
    base >=4.7 && <5.0,
    Cabal >= 1.9.2,
    uniform-io == 0.1.1.0
  ghc-options: -Wall -fno-warn-unused-do-bind -fwarn-incomplete-patterns -threaded