packages feed

cryptohash-0.7.9: cryptohash.cabal

Name:                cryptohash
Version:             0.7.9
Description:
    A collection of crypto hashes, with a practical incremental and one-pass, pure APIs,
    with performance close to the fastest implementations available in others languages.
    .
    The implementations are made in C with a haskell FFI wrapper that hide the C implementation.

License:             BSD3
License-file:        LICENSE
Copyright:           Vincent Hanquez <vincent@snarc.org>
Author:              Vincent Hanquez <vincent@snarc.org>
Maintainer:          Vincent Hanquez <vincent@snarc.org>
Synopsis:            collection of crypto hashes, fast, pure and practical
Category:            Data, Cryptography
Build-Type:          Simple
Cabal-Version:       >=1.8
Homepage:            http://github.com/vincenthz/hs-cryptohash
data-files:          README.md

extra-source-files:
  cbits/bitfn.h cbits/md2.h cbits/md4.h cbits/md5.h
  cbits/ripemd.h cbits/sha1.h cbits/sha256.h cbits/sha512.h cbits/sha3.h
  cbits/skein.h cbits/skein256.h cbits/skein512.h
  cbits/tiger.h cbits/whirlpool.h

Flag benchmark
  Description:       Build benchmark test
  Default:           False

Flag cryptoapi
  Description:       Defines crypto-api instances
  Default:           True

Library
  Build-Depends:     base >= 4 && < 6, bytestring
  if flag(cryptoapi)
    Build-depends:   crypto-api >= 0.5, tagged >= 0.1, cereal >= 0.2
    cpp-options:     -DHAVE_CRYPTOAPI
  if impl(ghc >= 7.2.1)
    Extensions:      Trustworthy
  Extensions:        ForeignFunctionInterface
  Exposed-modules:   Crypto.Hash.SHA1
                     Crypto.Hash.SHA224
                     Crypto.Hash.SHA256
                     Crypto.Hash.SHA384
                     Crypto.Hash.SHA512
                     Crypto.Hash.SHA512t
                     Crypto.Hash.SHA3
                     Crypto.Hash.MD2
                     Crypto.Hash.MD4
                     Crypto.Hash.MD5
                     Crypto.Hash.RIPEMD160
                     Crypto.Hash.Skein256
                     Crypto.Hash.Skein512
                     Crypto.Hash.Tiger
                     Crypto.Hash.Whirlpool
                     Crypto.MAC.HMAC
  ghc-options:       -Wall -O2 -optc-O3 -fno-cse -fwarn-tabs
  C-sources:         cbits/sha1.c
                     cbits/sha256.c
                     cbits/sha512.c
                     cbits/sha3.c
                     cbits/md2.c
                     cbits/md4.c
                     cbits/md5.c
                     cbits/ripemd.c
                     cbits/skein256.c
                     cbits/skein512.c
                     cbits/tiger.c
                     cbits/whirlpool.c
  Include-Dirs:      cbits

Test-Suite test-kat
  type:              exitcode-stdio-1.0
  hs-source-dirs:    Tests
  Main-Is:           KAT.hs
  Build-depends:     base >= 4 && < 5
                   , bytestring
                   , HUnit
                   , QuickCheck >= 2
                   , test-framework >= 0.3.3 && < 0.7
                   , test-framework-quickcheck2 >= 0.2.9 && < 0.3
                   , test-framework-hunit
                   , cryptohash

Executable           Bench
  Main-Is:           Bench.hs
  hs-source-dirs:    Bench
  if flag(benchmark)
    Buildable:       True
    Build-depends:   base >= 4, bytestring, criterion, cryptohash
  else
    Buildable:       False

source-repository head
  type:     git
  location: git://github.com/vincenthz/hs-cryptohash