mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
5ca23caa20
Previously, enabling only "disasm" didn't actually build. Since these two features are closely related and we don't really use one without the other, let's simplify and merge the two features together.
44 lines
1.3 KiB
TOML
44 lines
1.3 KiB
TOML
# NOTE: please avoid adding dependencies to external crates as these can
|
|
# make building and packaging YJIT more challenging.
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
[package]
|
|
name = "yjit"
|
|
version = "0.1.0" # YJIT version
|
|
edition = "2021" # Rust 2021 edition to compile with
|
|
rust-version = "1.58.1" # Minimally supported rust version
|
|
publish = false # Don't publish to crates.io
|
|
|
|
[lib]
|
|
crate-type = ["staticlib"]
|
|
|
|
[dependencies]
|
|
# No required dependencies to simplify build process. TODO: Link to yet to be
|
|
# written rationale. Optional For development and testing purposes
|
|
capstone = { version = "0.10.0", optional = true }
|
|
|
|
[features]
|
|
# NOTE: Development builds select a set of these via configure.ac
|
|
# For debugging, `make V=1` shows exact cargo invocation.
|
|
disasm = ["capstone"]
|
|
stats = []
|
|
|
|
[profile.dev]
|
|
opt-level = 0
|
|
debug = true
|
|
debug-assertions = true
|
|
overflow-checks = true
|
|
|
|
[profile.stats]
|
|
inherits = "release"
|
|
|
|
[profile.dev_nodebug]
|
|
inherits = "release"
|
|
|
|
[profile.release]
|
|
# NOTE: --enable-yjit builds use `rustc` without going through Cargo. You
|
|
# might want to update the `rustc` invocation if you change this profile.
|
|
opt-level = 3
|
|
# The extra robustness that comes from checking for arithmetic overflow is
|
|
# worth the performance cost for the compiler.
|
|
overflow-checks = true
|