packages feed

threads-0.3: threads.cabal

name:          threads
version:       0.3
cabal-version: >= 1.6
build-type:    Custom
stability:     experimental
author:        Bas van Dijk <v.dijk.bas@gmail.com>
               Roel van Dijk <vandijk.roel@gmail.com>
maintainer:    Bas van Dijk <v.dijk.bas@gmail.com>
               Roel van Dijk <vandijk.roel@gmail.com>
copyright:     (c) 2010 Bas van Dijk & Roel van Dijk
license:       BSD3
license-file:  LICENSE
category:      Concurrency
synopsis:      Fork threads and wait for their result
description:   This package provides functions to fork threads and
               wait for their result, whether it's an exception or a
               normal value.
               .
               Besides waiting for the termination of a single thread
               this packages also provides functions to wait for a
               group of threads to terminate.
               .
               This package is similar to the @threadmanager@
               and @async@ packages. The advantages of this package are:
               .
               * Simpler API.
               .
               * More efficient in both space and time.
               .
               * No space-leak when forking a large number of threads.
               .
               * Correct handling of asynchronous exceptions.
               .
               * GHC specific functionality like @forkOnIO@.

source-repository head
  Type: darcs
  Location: http://code.haskell.org/~basvandijk/code/threads

-------------------------------------------------------------------------------

flag test
  description: Build the testing suite
  default:     False

flag hpc
  description: Enable program coverage on test executable
  default:     False

-------------------------------------------------------------------------------

library
  build-depends: base                 >= 3     && < 4.3
               , base-unicode-symbols >= 0.1.1 && < 0.3
               , stm                  >= 2.1   && < 2.2
  exposed-modules: Control.Concurrent.Thread
                 , Control.Concurrent.Thread.Group
  ghc-options: -Wall

-------------------------------------------------------------------------------

executable test-threads
  main-is: test.hs

  ghc-options: -Wall -threaded

  if flag(test)
    build-depends: base                       >= 3     && < 4.3
                 , base-unicode-symbols       >= 0.1.1 && < 0.3
                 , stm                        >= 2.1   && < 2.2
                 , concurrent-extra           >= 0.5.1 && < 0.6
                 , HUnit                      >= 1.2.2 && < 1.3
                 , test-framework             >= 0.2.4 && < 0.4
                 , test-framework-hunit       >= 0.2.4 && < 0.3
    buildable: True
  else
    buildable: False

  if flag(hpc)
    ghc-options: -fhpc

-------------------------------------------------------------------------------