blob: 4b564721d0b9e399986910423744a84295a5d617 [file] [log] [blame]
Chih-Hung Hsieh4cadcb42020-11-09 15:54:21 -08001[package]
2name = "ahash"
David LeGare0b206a32022-02-03 21:32:05 +00003version = "0.7.6"
Chih-Hung Hsieh4cadcb42020-11-09 15:54:21 -08004authors = ["Tom Kaitchuck <Tom.Kaitchuck@gmail.com>"]
5license = "MIT OR Apache-2.0"
6description = "A non-cryptographic hash function using AES-NI for high performance"
7documentation = "https://docs.rs/ahash"
8repository = "https://github.com/tkaitchuck/ahash"
9keywords = ["hash", "hasher", "hashmap", "aes", "no-std"]
10categories = ["algorithms", "data-structures", "no-std"]
11edition = "2018"
12readme = "README.md"
Haibo Huang7fad7bf2020-11-25 02:05:55 -080013build = "./build.rs"
David LeGare0b206a32022-02-03 21:32:05 +000014exclude = ["/smhasher", "/benchmark_tools"]
Chih-Hung Hsieh4cadcb42020-11-09 15:54:21 -080015
16[lib]
17name = "ahash"
18path = "src/lib.rs"
19test = true
20doctest = true
21bench = true
22doc = true
23
24[features]
25default = ["std"]
26
Haibo Huang7fad7bf2020-11-25 02:05:55 -080027# Enabling this will enable `AHashMap` and `AHashSet`.
28std = []
Chih-Hung Hsieh4cadcb42020-11-09 15:54:21 -080029
Haibo Huang7fad7bf2020-11-25 02:05:55 -080030# This is an alternitive to runtime key generation which does compile time key generation if getrandom is not available.
31# (If getrandom is available this does nothing.)
32# If this is on (and getrandom is off) it implies the produced binary will not be identical.
33# If this is disabled and gerrandom is unavailable constant keys are used.
Chih-Hung Hsieh4cadcb42020-11-09 15:54:21 -080034compile-time-rng = ["const-random"]
35
Chih-Hung Hsieh4cadcb42020-11-09 15:54:21 -080036[[bench]]
37name = "ahash"
38path = "tests/bench.rs"
39harness = false
40
41[[bench]]
42name = "map"
43path = "tests/map_tests.rs"
44harness = false
45
46[profile.test]
47opt-level = 2
48lto = 'fat'
49
50[profile.release]
51opt-level = 3
52debug = false
53lto = 'fat'
54debug-assertions = false
55codegen-units = 1
56
57[profile.bench]
58opt-level = 3
59debug = false
60lto = 'fat'
61debug-assertions = false
62codegen-units = 1
63
Haibo Huang7fad7bf2020-11-25 02:05:55 -080064[build-dependencies]
65version_check = "0.9"
66
67[target.'cfg(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi"))'.dependencies]
David LeGare0b206a32022-02-03 21:32:05 +000068getrandom = { version = "0.2.3" }
Haibo Huang7fad7bf2020-11-25 02:05:55 -080069const-random = { version = "0.1.12", optional = true }
70serde = { version = "1.0.117", optional = true }
71
72[target.'cfg(not(any(target_os = "linux", target_os = "android", target_os = "windows", target_os = "macos", target_os = "ios", target_os = "freebsd", target_os = "openbsd", target_os = "netbsd", target_os = "dragonfly", target_os = "solaris", target_os = "illumos", target_os = "fuchsia", target_os = "redox", target_os = "cloudabi", target_os = "haiku", target_os = "vxworks", target_os = "emscripten", target_os = "wasi")))'.dependencies]
73const-random = { version = "0.1.12", optional = true }
74serde = { version = "1.0.117", optional = true }
Chih-Hung Hsieh4cadcb42020-11-09 15:54:21 -080075
David LeGare0b206a32022-02-03 21:32:05 +000076[target.'cfg(not(all(target_arch = "arm", target_os = "none")))'.dependencies]
77once_cell = { version = "1.8", default-features = false, features = ["alloc"] }
78
Chih-Hung Hsieh4cadcb42020-11-09 15:54:21 -080079[dev-dependencies]
80no-panic = "0.1.10"
81criterion = {version = "0.3.2"}
82seahash = "4.0"
83fnv = "1.0.5"
84fxhash = "0.2.1"
85hex = "0.4.2"
86rand = "0.7.3"
Haibo Huang7fad7bf2020-11-25 02:05:55 -080087serde_json = "1.0.59"
Chih-Hung Hsieh4cadcb42020-11-09 15:54:21 -080088
89[package.metadata.docs.rs]
90rustc-args = ["-C", "target-feature=+aes"]
91rustdoc-args = ["-C", "target-feature=+aes"]
92features = ["std"]