ppad-base64.cabal (2354B)
1 cabal-version: 3.0 2 name: ppad-base64 3 version: 0.1.0 4 synopsis: Fast base64 encoding and decoding on bytestrings. 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 Fast base64 encoding and decoding on strict bytestrings. 15 16 flag llvm 17 description: Use GHC's LLVM backend. 18 default: False 19 manual: True 20 21 flag sanitize 22 description: Build with AddressSanitizer and UndefinedBehaviorSanitizer. 23 default: False 24 manual: True 25 26 source-repository head 27 type: git 28 location: git.ppad.tech/base64.git 29 30 library 31 default-language: Haskell2010 32 hs-source-dirs: lib 33 ghc-options: 34 -Wall 35 if flag(llvm) 36 ghc-options: -fllvm -O2 37 exposed-modules: 38 Data.ByteString.Base64 39 Data.ByteString.Base64.Arm 40 build-depends: 41 base >= 4.9 && < 5 42 , bytestring >= 0.9 && < 0.13 43 c-sources: 44 cbits/base64_arm.c 45 if arch(aarch64) 46 cc-options: -march=armv8-a 47 if flag(sanitize) 48 cc-options: -fsanitize=address,undefined -fno-omit-frame-pointer 49 ghc-options: -optl=-fsanitize=address,undefined 50 51 test-suite base64-tests 52 type: exitcode-stdio-1.0 53 default-language: Haskell2010 54 hs-source-dirs: test 55 main-is: Main.hs 56 57 ghc-options: 58 -rtsopts -Wall -O2 59 if flag(sanitize) 60 ghc-options: -optl=-fsanitize=address,undefined 61 62 build-depends: 63 base 64 , base64-bytestring 65 , bytestring 66 , ppad-base64 67 , tasty 68 , tasty-hunit 69 , tasty-quickcheck 70 71 benchmark base64-bench 72 type: exitcode-stdio-1.0 73 default-language: Haskell2010 74 hs-source-dirs: bench 75 main-is: Main.hs 76 77 ghc-options: 78 -rtsopts -O2 -Wall 79 80 build-depends: 81 base 82 , base64 83 , base64-bytestring 84 , bytestring 85 , criterion 86 , ppad-base64 87 88 benchmark base64-weigh 89 type: exitcode-stdio-1.0 90 default-language: Haskell2010 91 hs-source-dirs: bench 92 main-is: Weight.hs 93 94 ghc-options: 95 -rtsopts -O2 -Wall 96 97 build-depends: 98 base 99 , base64 100 , base64-bytestring 101 , bytestring 102 , criterion 103 , ppad-base64 104 , weigh