[package] name = "cloud-hypervisor" version = "31.1.0" authors = ["The Cloud Hypervisor Authors"] edition = "2021" default-run = "cloud-hypervisor" build = "build.rs" license = "LICENSE-APACHE & LICENSE-BSD-3-Clause" description = "Open source Virtual Machine Monitor (VMM) that runs on top of KVM" homepage = "https://github.com/cloud-hypervisor/cloud-hypervisor" # Minimum buildable version: # Keep in sync with version in .github/workflows/build.yaml # Policy on MSRV (see #4318): # Can only be bumped by: # a.) A dependency requires it, # b.) If we want to use a new feature and that MSRV is at least 6 months old, # c.) There is a security issue that is addressed by the toolchain update. rust-version = "1.62" [profile.release] lto = true codegen-units = 1 opt-level = "s" strip = true [profile.profiling] inherits = "release" strip = false debug = true [dependencies] anyhow = "1.0.69" api_client = { path = "api_client" } argh = "0.1.9" dhat = { version = "0.3.2", optional = true } epoll = "4.3.1" event_monitor = { path = "event_monitor" } hypervisor = { path = "hypervisor" } libc = "0.2.139" log = { version = "0.4.17", features = ["std"] } option_parser = { path = "option_parser" } seccompiler = "0.3.0" serde_json = "1.0.95" signal-hook = "0.3.15" thiserror = "1.0.39" tpm = { path = "tpm"} tracer = { path = "tracer" } vmm = { path = "vmm" } vmm-sys-util = "0.11.0" vm-memory = "0.10.0" # List of patched crates [patch.crates-io] kvm-bindings = { git = "https://github.com/cloud-hypervisor/kvm-bindings", branch = "ch-v0.6.0-tdx" } kvm-ioctls = { git = "https://github.com/rust-vmm/kvm-ioctls", branch = "main" } versionize_derive = { git = "https://github.com/cloud-hypervisor/versionize_derive", branch = "ch" } [dev-dependencies] dirs = "4.0.0" net_util = { path = "net_util" } once_cell = "1.17.1" serde_json = "1.0.95" test_infra = { path = "test_infra" } wait-timeout = "0.2.0" [features] default = ["kvm"] dhat-heap = ["dhat"] # For heap profiling guest_debug = ["vmm/guest_debug"] kvm = ["vmm/kvm"] mshv = ["vmm/mshv"] tdx = ["vmm/tdx"] tracing = ["vmm/tracing", "tracer/tracing"] [workspace] members = [ "api_client", "arch", "block_util", "devices", "event_monitor", "hypervisor", "net_gen", "net_util", "option_parser", "pci", "performance-metrics", "qcow", "rate_limiter", "serial_buffer", "test_infra", "tracer", "vhdx", "vhost_user_block", "vhost_user_net", "virtio-devices", "vmm", "vm-allocator", "vm-device", "vm-migration", "vm-virtio" ]