ppad-sha512.cabal (2547B)
1 cabal-version: 3.0 2 name: ppad-sha512 3 version: 0.2.2 4 synopsis: The SHA-512 and HMAC-SHA512 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-512 and HMAC-SHA512 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/sha512.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.SHA512 40 Crypto.Hash.SHA512.Arm 41 Crypto.Hash.SHA512.Internal 42 Crypto.Hash.SHA512.Lazy 43 build-depends: 44 base >= 4.9 && < 5 45 , bytestring >= 0.9 && < 0.13 46 c-sources: 47 cbits/sha512_arm.c 48 if arch(aarch64) 49 cc-options: -march=armv8.2-a+sha3 50 if flag(sanitize) 51 cc-options: -fsanitize=address,undefined -fno-omit-frame-pointer 52 ghc-options: -optl=-fsanitize=address,undefined 53 54 test-suite sha512-tests 55 type: exitcode-stdio-1.0 56 default-language: Haskell2010 57 hs-source-dirs: test 58 main-is: Main.hs 59 other-modules: 60 Property 61 Wycheproof 62 63 ghc-options: 64 -rtsopts -Wall -O2 65 if flag(sanitize) 66 ghc-options: -optl=-fsanitize=address,undefined 67 68 build-depends: 69 aeson 70 , base 71 , bytestring 72 , ppad-base16 73 , ppad-sha512 74 , quickcheck-instances 75 , tasty 76 , tasty-hunit 77 , tasty-quickcheck 78 , text 79 80 benchmark sha512-bench 81 type: exitcode-stdio-1.0 82 default-language: Haskell2010 83 hs-source-dirs: bench 84 main-is: Main.hs 85 86 ghc-options: 87 -rtsopts -O2 -Wall 88 89 build-depends: 90 base 91 , bytestring 92 , criterion 93 , ppad-sha512 94 , SHA 95 96 benchmark sha512-weigh 97 type: exitcode-stdio-1.0 98 default-language: Haskell2010 99 hs-source-dirs: bench 100 main-is: Weight.hs 101 102 ghc-options: 103 -rtsopts -O2 -Wall -fno-warn-orphans 104 if flag(llvm) 105 ghc-options: -fllvm 106 107 build-depends: 108 base 109 , bytestring 110 , deepseq 111 , ppad-sha512 112 , weigh 113