forked from Amanieu/corosensei
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCargo.toml
80 lines (67 loc) · 2.18 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
[package]
name = "corosensei"
version = "0.2.1"
authors = ["Amanieu d'Antras <[email protected]>"]
description = "A fast and safe implementation of stackful coroutines"
license = "MIT OR Apache-2.0"
repository = "https://github.com/Amanieu/corosensei"
readme = "README.md"
keywords = ["coroutine", "stack", "fiber", "generator"]
categories = ["data-structures", "no-std", "concurrency"]
exclude = [".github", "ci"]
edition = "2021"
rust-version = "1.59.0"
[dependencies]
cfg-if = "1.0.0"
scopeguard = { version = "1.2.0", default-features = false }
[target.'cfg(unix)'.dependencies]
libc = { version = "0.2.159", optional = true }
[target.'cfg(windows)'.dependencies]
windows-sys = { version = "0.59.0", features = [
"Win32_Foundation",
"Win32_System_Diagnostics_Debug",
"Win32_System_Kernel",
"Win32_System_Memory",
"Win32_System_Threading",
"Win32_System_SystemInformation",
], optional = true }
[build-dependencies]
autocfg = "1.1.0"
[dev-dependencies]
backtrace = "0.3.69"
criterion = "0.5.1"
# criterion-cycles-per-byte only supports x86.
[target.'cfg(any(target_arch = "x86", target_arch = "x86_64"))'.dev-dependencies]
criterion-cycles-per-byte = "0.6.1"
[features]
default = ["default-stack", "unwind"]
# Provide a DefaultStack implementation. Requires std.
default-stack = ["libc", "windows-sys"]
# Support propagating panics from coroutines back up to their callers. This
# feature also allows coroutines to be safely unwound when they are suspended.
unwind = []
# Use the may_unwind feature of inline assembly for unwinding. This is more
# efficient but is only available on nightly Rust.
asm-unwind = ["unwind"]
# Build docs for all supported targets.
[package.metadata.docs.rs]
targets = [
"x86_64-unknown-linux-gnu",
"i686-unknown-linux-gnu",
"aarch64-unknown-linux-gnu",
"armv7-unknown-linux-gnueabihf",
"riscv64gc-unknown-linux-gnu",
"x86_64-apple-darwin",
"aarch64-apple-darwin",
"x86_64-pc-windows-msvc",
"i686-pc-windows-msvc",
]
[[bench]]
name = "coroutine"
harness = false
# We want debug symbols on release binaries by default. We can always strip them
# out later if necessary.
[profile.release]
debug = true
[profile.bench]
debug = true