File: Cargo.toml

package info (click to toggle)
rust-wasmtime 27.0.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: forky
  • size: 53,064 kB
  • sloc: ansic: 4,020; sh: 562; javascript: 542; cpp: 254; asm: 175; ml: 96; makefile: 55
file content (129 lines) | stat: -rw-r--r-- 4,095 bytes parent folder | download | duplicates (2)
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
[package]
authors = ["The Cranelift Project Developers"]
name = "cranelift-codegen"
version = "0.114.0"
description = "Low-level code generator library"
license = "Apache-2.0 WITH LLVM-exception"
documentation = "https://docs.rs/cranelift-codegen"
repository = "https://github.com/bytecodealliance/wasmtime"
categories = ["no-std"]
readme = "README.md"
keywords = ["compile", "compiler", "jit"]
build = "build.rs"
edition.workspace = true
rust-version.workspace = true
autobenches = false

[lints]
workspace = true

[package.metadata.docs.rs]
# Ask Cargo to build docs with the feature `all-arch`
features = ["all-arch"]

[dependencies]
anyhow = { workspace = true, optional = true, features = ['std'] }
bumpalo = "3"
capstone = { workspace = true, optional = true }
cranelift-codegen-shared = { path = "./shared", version = "0.114.0" }
cranelift-entity = { workspace = true }
cranelift-bforest = { workspace = true }
cranelift-bitset = { workspace = true }
cranelift-control = { workspace = true }
hashbrown = { workspace = true, features = ["raw"] }
target-lexicon = { workspace = true }
log = { workspace = true }
serde = { workspace = true, optional = true }
serde_derive = { workspace = true, optional = true }
postcard = { workspace = true, optional = true }
gimli = { workspace = true, features = ["write", "std"], optional = true }
smallvec = { workspace = true }
regalloc2 = { workspace = true, features = ["checker"] }
souper-ir = { version = "2.1.0", optional = true }
sha2 = { version = "0.10.2", optional = true }
rustc-hash  = { workspace = true }
# It is a goal of the cranelift-codegen crate to have minimal external dependencies.
# Please don't add any unless they are essential to the task of creating binary
# machine code. Integration tests that need external dependencies can be
# accommodated in `tests`.

[dev-dependencies]
similar = "2.1.0"
env_logger = { workspace = true }

[build-dependencies]
cranelift-codegen-meta = { path = "meta", version = "0.114.0" }
cranelift-isle = { path = "../isle/isle", version = "=0.114.0" }

[features]
default = ["std", "unwind", "host-arch", "timing"]

# The "std" feature enables use of libstd. The "core" feature enables use
# of some minimal std-like replacement libraries. At least one of these two
# features need to be enabled.
std = ["serde?/std"]

# The "core" feature used to enable a hashmap workaround, but is now
# deprecated (we (i) always use hashbrown, and (ii) don't support a
# no_std build anymore). The feature remains for backward
# compatibility as a no-op.
core = []

# Enable the `to_capstone` method on TargetIsa, for constructing a Capstone
# context, and the `disassemble` method on `MachBufferFinalized`.
disas = ["anyhow", "capstone"]

# Enables detailed logging which can be somewhat expensive.
trace-log = ["regalloc2/trace-log"]

# This enables unwind info generation functionality.
unwind = ["gimli"]

# ISA targets for which we should build.
# If no ISA targets are explicitly enabled, the ISA target for the host machine is enabled.
x86 = []
arm64 = []
s390x = []
riscv64 = []
# Enable the ISA target for the host machine
host-arch = []

# Option to enable all architectures that correspond to an actual native target
all-native-arch = [
    "x86",
    "arm64",
    "s390x",
    "riscv64",
]

# For dependent crates that want to serialize some parts of cranelift
enable-serde = [
    "serde",
    "serde_derive",
    "cranelift-entity/enable-serde",
    "cranelift-bitset/enable-serde",
    "regalloc2/enable-serde",
    "smallvec/serde"
]

# Enable the incremental compilation cache for hot-reload use cases.
incremental-cache = [
    "enable-serde",
    "postcard",
    "sha2"
]

# Enable support for the Souper harvester.
souper-harvest = ["souper-ir", "souper-ir/stringify"]

# Report any ISLE errors in pretty-printed style.
isle-errors = ["cranelift-isle/fancy-errors"]

# Put ISLE generated files in isle_generated_code/, for easier
# inspection, rather than inside of target/.
isle-in-source-tree = []

# Enable tracking how long passes take in Cranelift.
#
# Enabled by default.
timing = []