ruby/gc/mmtk/Cargo.toml
Alan Wu 92b218fbc3 YJIT: ZJIT: Allow both JITs in the same build
This commit allows building YJIT and ZJIT simultaneously, a "combo
build". Previously, `./configure --enable-yjit --enable-zjit` failed. At
runtime, though, only one of the two can be enabled at a time.

Add a root Cargo workspace that contains both the yjit and zjit crate.
The common Rust build integration mechanisms are factored out into
defs/jit.mk.

Combo YJIT+ZJIT dev builds are supported; if either JIT uses
`--enable-*=dev`, both of them are built in dev mode.

The combo build requires Cargo, but building one JIT at a time with only
rustc in release build remains supported.
2025-05-15 00:39:03 +09:00

39 lines
827 B
TOML

[package]
name = "mmtk_ruby"
version = "0.1.0"
authors = []
edition = "2021"
[lib]
name = "mmtk_ruby"
crate-type = ["cdylib", "staticlib"]
[profile.release]
lto = true
[dependencies]
libc = "0.2"
log = "0.4.14"
env_logger = "0.11.3"
once_cell = "1.17.0"
atomic_refcell = "0.1.9"
probe = "0.5"
sysinfo = "0.32.0"
[dependencies.mmtk]
features = ["is_mmtk_object", "object_pinning", "sticky_immix_non_moving_nursery", "immix_non_moving"]
# Uncomment the following lines to use mmtk-core from the official repository.
git = "https://github.com/mmtk/mmtk-core.git"
rev = "051bc7470feef915c445305301e6113f86d3957b"
# Uncomment the following line to use mmtk-core from a local repository.
# path = "../../../mmtk-core"
[features]
default = []
# When moving an object, clear its original copy.
clear_old_copy = []
[workspace]