xref: /cloud-hypervisor/Cargo.toml (revision f67b3f79ea19c9a66e04074cbbf5d292f6529e43)
1[package]
2name = "cloud-hypervisor"
3version = "18.0.0"
4authors = ["The Cloud Hypervisor Authors"]
5edition = "2018"
6default-run = "cloud-hypervisor"
7build = "build.rs"
8license = "LICENSE-APACHE & LICENSE-BSD-3-Clause"
9description = "Open source Virtual Machine Monitor (VMM) that runs on top of KVM"
10homepage = "https://github.com/cloud-hypervisor/cloud-hypervisor"
11
12[profile.release]
13lto = true
14
15[dependencies]
16anyhow = "1.0.44"
17api_client = { path = "api_client" }
18clap = { version = "2.33.3", features = ["wrap_help"] }
19epoll = "4.3.1"
20event_monitor = { path = "event_monitor" }
21hypervisor = { path = "hypervisor" }
22libc = "0.2.102"
23log = { version = "0.4.14", features = ["std"] }
24option_parser = { path = "option_parser" }
25seccompiler = { git = "https://github.com/rust-vmm/seccompiler"}
26serde_json = "1.0.68"
27signal-hook = "0.3.10"
28thiserror = "1.0.29"
29vmm = { path = "vmm" }
30vmm-sys-util = "0.9.0"
31vm-memory = "0.6.0"
32
33[build-dependencies]
34clap = { version = "2.33.3", features = ["wrap_help"] }
35
36# List of patched crates
37[patch.crates-io]
38kvm-bindings = { git = "https://github.com/cloud-hypervisor/kvm-bindings", branch = "ch-v0.5.0", features = ["with-serde", "fam-wrappers"] }
39versionize_derive = { git = "https://github.com/cloud-hypervisor/versionize_derive", branch = "ch" }
40vhost = { git = "https://github.com/rust-vmm/vhost", branch = "main", features = ["vhost-user-master", "vhost-user-slave", "vhost-kern"] }
41
42[dev-dependencies]
43credibility = "0.1.3"
44dirs = "4.0.0"
45lazy_static= "1.4.0"
46net_util = { path = "net_util" }
47serde_json = "1.0.68"
48test_infra = { path = "test_infra" }
49wait-timeout = "0.2.0"
50
51[features]
52default = ["acpi", "cmos", "io_uring", "kvm"]
53# Common features for all hypervisors
54common = ["acpi", "cmos", "fwdebug", "io_uring"]
55acpi = ["vmm/acpi"]
56cmos = ["vmm/cmos"]
57fwdebug = ["vmm/fwdebug"]
58kvm = ["vmm/kvm"]
59mshv = ["vmm/mshv"]
60io_uring = ["vmm/io_uring"]
61tdx = ["vmm/tdx"]
62
63# Integration tests require a special environment to run in
64integration_tests = []
65
66[workspace]
67members = [
68    "acpi_tables",
69    "api_client",
70    "arch",
71    "block_util",
72    "devices",
73    "event_monitor",
74    "hypervisor",
75    "net_gen",
76    "net_util",
77    "option_parser",
78    "pci",
79    "qcow",
80    "rate_limiter",
81    "vfio_user",
82    "vhdx",
83    "vhost_user_backend",
84    "vhost_user_block",
85    "vhost_user_net",
86    "virtio-devices",
87    "vmm",
88    "vm-allocator",
89    "vm-device",
90    "vm-migration",
91    "vm-virtio"
92]
93exclude = ["test_infra"]
94