packages feed

blake2-0.1.0: blake2.cabal

name:          blake2
version:       0.1.0
synopsis:      A library providing BLAKE2
license:       PublicDomain
license-file:  LICENSE
author:        John Galt
maintainer:    jgalt@centromere.net
homepage:      https://github.com/centromere/blake2
bug-reports:   https://github.com/centromere/blake2/issues
category:      Cryptography
build-type:    Simple
cabal-version: >=1.10
tested-with:   GHC == 7.10.1, GHC == 7.10.2
description:
  This library provides the <https://blake2.net/ BLAKE2> hash algorithms.

extra-source-files:
  .travis.yml
  README.md
  changelog.md
  LICENSE
  cbits/blake2s.c
  cbits/blake2bp.c
  cbits/blake2sp.c
  cbits/blake2b.c
  include/blake2.h
  include/blake2s-round.h
  include/blake2b-round.h
  include/blake2b-load-sse41.h
  include/blake2s-load-sse2.h
  include/blake2b-load-sse2.h
  include/blake2s-load-sse41.h
  include/blake2-impl.h
  include/blake2-config.h
  include/blake2s-load-xop.h

source-repository head
  type: git
  location: https://github.com/centromere/blake2.git

--------------------------------------------------------------------------------
-- FLAGS

flag hlint

flag doctest

flag llvm
  default: False
  manual: True

--------------------------------------------------------------------------------
-- LIBRARY

library
  build-depends:
    base >=4.8 && <5,
    bytestring
  hs-source-dirs:   src
  default-language: Haskell2010
  exposed-modules:
    Crypto.Hash.BLAKE2.BLAKE2b
    Crypto.Hash.BLAKE2.BLAKE2bp
    Crypto.Hash.BLAKE2.BLAKE2s
    Crypto.Hash.BLAKE2.BLAKE2sp
    Crypto.Hash.BLAKE2.Internal
  ghc-options:      -rtsopts -with-rtsopts=-N -Wall -fwarn-tabs
  cc-options:       -std=c99
  include-dirs:     include
  c-sources:
    cbits/blake2b.c
    cbits/blake2bp.c
    cbits/blake2s.c
    cbits/blake2sp.c

  if flag(llvm)
    ghc-options: -fllvm

--------------------------------------------------------------------------------
-- TESTS

test-suite properties
  type:             exitcode-stdio-1.0
  main-is:          properties.hs
  ghc-options:      -Wall -fwarn-tabs
  hs-source-dirs:   tests
  default-language: Haskell2010

  build-depends:
    base >=4.8 && <5,
    base16-bytestring,
    bytestring,
    blake2,
    QuickCheck,
    tasty,
    tasty-quickcheck

  other-modules:
    Imports

test-suite hlint
  type:             exitcode-stdio-1.0
  main-is:          hlint.hs
  ghc-options:      -Wall -fwarn-tabs
  hs-source-dirs:   tests
  default-language: Haskell2010

  if !flag(hlint)
    buildable: False
  else
    build-depends:
      base  >=4.8 && <5,
      hlint

--------------------------------------------------------------------------------
-- BENCHMARKS

benchmark bench
  type:             exitcode-stdio-1.0
  main-is:          bench.hs
  ghc-options:      -Wall -fwarn-tabs
  hs-source-dirs:   benchmarks
  default-language: Haskell2010

  build-depends:
    base >=4.8 && <5,
    blake2,
    bytestring,
    criterion