cabal-version:      3.4
name:               bz3
version:            0.1.0.1
synopsis:           High-level bindings to bz3
description:
    Streaming compression/decompression in bz3 format via lazy bytestrings
license:            AGPL-3.0-or-later
license-file:       LICENSE
author:             Vanessa McHale
maintainer:         vamchale@gmail.com
category:           Codec
build-type:         Simple
extra-doc-files:    CHANGELOG.md
extra-source-files:
    include/common.h
    include/libsais.h
    test/data/LICENSE.bz3

source-repository head
    type:     darcs
    location: https://hub.darcs.net/vmchale/bz3

common warnings
    ghc-options:
        -Wall -fno-warn-missing-signatures -Wno-x-partial
        -Wincomplete-uni-patterns -Wincomplete-record-updates
        -Wredundant-constraints -Wmissing-export-lists -Wcpp-undef
        -Wunused-packages -Wno-operator-whitespace-ext-conflict

library
    import:           warnings
    exposed-modules:  Codec.Bz3
    other-modules:    Codec.Bz3.Foreign
                      Codec.Bz3.Binary
    other-extensions: OverloadedStrings
    cc-options:       -DVERSION="1.5.1"
    c-sources:        c/libbz3.c
    include-dirs:     include
    install-includes: include/libbz3.h
    build-depends:    base >=4.16.0.0 && <5
                    , bytestring >=0.11.0.0
                    , binary >=0.6.4.0
    build-tool-depends: c2hs:c2hs
    hs-source-dirs:   src
    default-language: Haskell2010

test-suite bz3-test
    import:           warnings
    default-language: Haskell2010
    type:             exitcode-stdio-1.0
    hs-source-dirs:   test
    main-is:          Main.hs
    ghc-options:      -threaded -rtsopts "-with-rtsopts=-N -k1k"
    build-depends:
        base,
        bz3,
        bytestring,
        directory >=1.2.5.0,
        tasty,
        tasty-hunit