ppad-sha256.cabal (2562B)
1 cabal-version: 3.0 2 name: ppad-sha256 3 version: 0.3.6 4 synopsis: The SHA-256 and HMAC-SHA256 algorithms 5 license: MIT 6 license-file: LICENSE 7 author: Jared Tobin 8 maintainer: jared@ppad.tech 9 category: Cryptography 10 build-type: Simple 11 tested-with: GHC == 9.10.3 12 extra-doc-files: CHANGELOG 13 description: 14 A pure implementation of SHA-256 and HMAC-SHA256 on strict and lazy 15 ByteStrings, as specified by RFC's 6234 and 2104. 16 17 flag llvm 18 description: Use GHC's LLVM backend. 19 default: False 20 manual: True 21 22 flag sanitize 23 description: Build with AddressSanitizer and UndefinedBehaviorSanitizer. 24 default: False 25 manual: True 26 27 source-repository head 28 type: git 29 location: git.ppad.tech/sha256.git 30 31 library 32 default-language: Haskell2010 33 hs-source-dirs: lib 34 ghc-options: 35 -Wall 36 if flag(llvm) 37 ghc-options: -fllvm -O2 38 exposed-modules: 39 Crypto.Hash.SHA256 40 Crypto.Hash.SHA256.Internal 41 Crypto.Hash.SHA256.Lazy 42 Crypto.Hash.SHA256.Pure 43 other-modules: 44 Crypto.Hash.SHA256.Native 45 Data.Barrier 46 build-depends: 47 base >= 4.9 && < 5 48 , bytestring >= 0.9 && < 0.13 49 c-sources: 50 cbits/sha256_native.c 51 if flag(sanitize) 52 cc-options: -fsanitize=address,undefined -fno-omit-frame-pointer 53 ghc-options: -optl=-fsanitize=address,undefined 54 55 test-suite sha256-tests 56 type: exitcode-stdio-1.0 57 default-language: Haskell2010 58 hs-source-dirs: test 59 main-is: Main.hs 60 other-modules: 61 Property 62 Wycheproof 63 64 ghc-options: 65 -rtsopts -Wall -O2 66 if flag(sanitize) 67 ghc-options: -optl=-fsanitize=address,undefined 68 69 build-depends: 70 aeson 71 , base 72 , bytestring 73 , ppad-base16 74 , ppad-sha256 75 , quickcheck-instances 76 , tasty 77 , tasty-hunit 78 , tasty-quickcheck 79 , text 80 81 benchmark sha256-bench 82 type: exitcode-stdio-1.0 83 default-language: Haskell2010 84 hs-source-dirs: bench 85 main-is: Main.hs 86 87 ghc-options: 88 -rtsopts -O2 -Wall 89 90 build-depends: 91 base 92 , bytestring 93 , criterion 94 , ppad-sha256 95 , SHA 96 97 benchmark sha256-weigh 98 type: exitcode-stdio-1.0 99 default-language: Haskell2010 100 hs-source-dirs: bench 101 main-is: Weight.hs 102 103 ghc-options: 104 -rtsopts -O2 -Wall -fno-warn-orphans 105 if flag(llvm) 106 ghc-options: -fllvm 107 108 build-depends: 109 base 110 , bytestring 111 , deepseq 112 , ppad-sha256 113 , weigh 114