packages feed

bzlib-0.4.0.3: bzlib.cabal

name:            bzlib
version:         0.4.0.3
copyright:       (c) 2006-2008 Duncan Coutts
license:         BSD3
license-file:    LICENSE
author:          Duncan Coutts <duncan@haskell.org>
maintainer:      Duncan Coutts <duncan@haskell.org>
category:        Codec
synopsis:        Compression and decompression in the bzip2 format
description:     This package provides a pure interface for compressing and 
                 decompressing streams of data represented as lazy 
                 'ByteString's. It uses the bz2 C library so it has high
                 performance.
                 .
                 It provides a convenient high level api suitable for most
                 tasks and for the few cases where more control is needed it
                 provides access to the full bzip2 feature set.
stability:       provisional
build-type:      Simple
cabal-version:   >= 1.2.1
extra-source-files: cbits/bzlib_private.h
                    -- demo programs:
                    bzip2.hs bunzip2.hs

flag bytestring-in-base
  description: In the ghc-6.6 era the bytestring modules were
               included in the base package.

library
  exposed-modules: Codec.Compression.BZip,
                   Codec.Compression.BZip.Internal
  other-modules:   Codec.Compression.BZip.Stream
  extensions:      CPP, ForeignFunctionInterface
  if flag(bytestring-in-base)
    -- bytestring was in base-2.0 and 2.1.1
    build-depends: base >= 2.0 && < 2.2
    cpp-options: -DBYTESTRING_IN_BASE
  else
    build-depends: base < 2.0 || >= 2.2, bytestring >= 0.9
  includes:        bzlib.h
  ghc-options:     -Wall
  if !os(windows)
    -- Normally we use the the standard system bz2 lib:
    extra-libraries: bz2
  else
    -- However for the benefit of users of Windows (which does not have zlib
    -- by default) we bundle a complete copy of the C sources of bzip2-1.0.4
    c-sources:     cbits/blocksort.c cbits/bzlib.c cbits/compress.c
                   cbits/crctable.c cbits/decompress.c cbits/huffman.c
                   cbits/randtable.c
    include-dirs:  cbits
    install-includes: bzlib.h