summaryrefslogtreecommitdiff
path: root/Cargo.toml
blob: de5aac93749260d94be803ee11026018a52574f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
[package]
name = "blake3"
version = "0.1.3"
authors = ["Jack O'Connor <oconnor663@gmail.com>"]
description = "the BLAKE3 hash function"
repository = "https://github.com/BLAKE3-team/BLAKE3"
license = "CC0-1.0 OR Apache-2.0"
documentation = "https://docs.rs/blake3"
readme = "README.md"
edition = "2018"

[features]
default = ["std"]
# Like SSE4.1 and AVX2, the AVX-512 implementation participates in dynamic CPU
# feature detection. A binary with "c_avx512" on is still cross-platform. This
# feature has no effect on non-x86.
c_avx512 = []
# The NEON implementation does not participate in dynamic feature detection,
# which is currently x86-only. If "c_neon" is on, NEON support is assumed. Note
# that AArch64 always supports NEON, but support on ARMv7 varies.
c_neon = []
std = ["digest/std"]

[dependencies]
arrayref = "0.3.5"
arrayvec = { version = "0.5.1", default-features = false, features = ["array-sizes-33-128"] }
constant_time_eq = "0.1.5"
# A performance note for the "rayon" feature: Multi-threading can have
# significant overhead for small inputs, particularly on x86 where individual
# cores are very fast. On the other hand, on slower platforms like ARM,
# multi-threading can be beneficial for all inputs. There's no one input size
# threshold that would work well everywhere, and this crate doesn't try to be
# clever. If you're going to enable the "rayon" feature, you should benchmark
# it for your specific use case.
rayon = { version = "1.2.1", optional = true }
cfg-if = "0.1.10"
digest = "0.8.1"
crypto-mac = "0.7.0"

[dev-dependencies]
page_size = "0.4.1"
rand = "0.7.2"
rand_chacha = "0.2.1"
reference_impl = { path = "./reference_impl" }

[build-dependencies]
cc = "1.0.48"