-
Notifications
You must be signed in to change notification settings - Fork 4.3k
/
Cargo.toml
101 lines (89 loc) · 3.5 KB
/
Cargo.toml
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
[package]
name = "solana-program"
description = "Solana Program"
documentation = "https://docs.rs/solana-program"
readme = "README.md"
version = { workspace = true }
authors = { workspace = true }
repository = { workspace = true }
homepage = { workspace = true }
license = { workspace = true }
edition = { workspace = true }
rust-version = "1.75.0" # solana platform-tools rust version
[dependencies]
bincode = { workspace = true }
blake3 = { workspace = true, features = ["digest", "traits-preview"] }
borsh = { workspace = true }
borsh0-10 = { package = "borsh", version = "0.10.3" }
borsh0-9 = { package = "borsh", version = "0.9.3" }
bs58 = { workspace = true }
bv = { workspace = true, features = ["serde"] }
bytemuck = { workspace = true, features = ["derive"] }
itertools = { workspace = true }
lazy_static = { workspace = true }
log = { workspace = true }
memoffset = { workspace = true }
num-derive = { workspace = true }
num-traits = { workspace = true, features = ["i128"] }
rustversion = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_bytes = { workspace = true }
serde_derive = { workspace = true }
serde_json = { workspace = true }
sha2 = { workspace = true }
sha3 = { workspace = true }
solana-frozen-abi = { workspace = true }
solana-frozen-abi-macro = { workspace = true }
solana-sdk-macro = { workspace = true }
thiserror = { workspace = true }
# This is currently needed to build on-chain programs reliably.
# Borsh 0.10 may pull in hashbrown 0.13, which uses ahash 0.8, which uses
# getrandom 0.2 underneath. This explicit dependency allows for no-std if cargo
# upgrades Borsh's dependency to hashbrown 0.13.
# Remove this once borsh 0.11 or 1.0 is released, which correctly declares the
# hashbrown dependency as optional.
[target.'cfg(target_os = "solana")'.dependencies]
getrandom = { workspace = true, features = ["custom"] }
[target.'cfg(not(target_os = "solana"))'.dependencies]
ark-bn254 = { workspace = true }
ark-ec = { workspace = true }
ark-ff = { workspace = true }
ark-serialize = { workspace = true }
base64 = { workspace = true, features = ["alloc", "std"] }
bitflags = { workspace = true }
curve25519-dalek = { workspace = true, features = ["serde"] }
itertools = { workspace = true }
libc = { workspace = true, features = ["extra_traits"] }
libsecp256k1 = { workspace = true }
light-poseidon = { workspace = true }
num-bigint = { workspace = true }
rand = { workspace = true }
tiny-bip39 = { workspace = true }
wasm-bindgen = { workspace = true }
zeroize = { workspace = true, features = ["default", "zeroize_derive"] }
[target.'cfg(not(target_os = "solana"))'.dev-dependencies]
arbitrary = { workspace = true, features = ["derive"] }
solana-logger = { workspace = true }
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = { workspace = true }
console_log = { workspace = true }
getrandom = { workspace = true, features = ["js", "wasm-bindgen"] }
js-sys = { workspace = true }
[target.'cfg(not(target_pointer_width = "64"))'.dependencies]
parking_lot = { workspace = true }
[dev-dependencies]
anyhow = { workspace = true }
array-bytes = { workspace = true }
assert_matches = { workspace = true }
serde_json = { workspace = true }
static_assertions = { workspace = true }
[build-dependencies]
rustc_version = { workspace = true }
[target.'cfg(any(unix, windows))'.build-dependencies]
cc = { workspace = true, features = ["jobserver", "parallel"] }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]
[lib]
crate-type = ["cdylib", "rlib"]
[features]
default = []