[package]
authors = ["The Cloud Hypervisor Authors"]
edition.workspace = true
name = "virtio-devices"
rust-version.workspace = true
version = "0.1.0"

[features]
default = []
kvm = ["pci/kvm"]
mshv = ["pci/mshv"]
sev_snp = ["mshv-ioctls"]

[dependencies]
anyhow = { workspace = true }
block = { path = "../block" }
byteorder = { workspace = true }
epoll = { workspace = true }
event_monitor = { path = "../event_monitor" }
hypervisor = { path = "../hypervisor" }
libc = { workspace = true }
log = { workspace = true }
mshv-ioctls = { workspace = true, optional = true }
net_util = { path = "../net_util" }
pci = { path = "../pci" }
rate_limiter = { path = "../rate_limiter" }
seccompiler = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_with = { workspace = true, default-features = false, features = [
  "macros",
] }
serial_buffer = { path = "../serial_buffer" }
smallvec = { workspace = true }
thiserror = { workspace = true }
vhost = { workspace = true, features = [
  "vhost-kern",
  "vhost-user-backend",
  "vhost-user-frontend",
  "vhost-vdpa",
] }
virtio-bindings = { workspace = true }
virtio-queue = { workspace = true }
vm-allocator = { path = "../vm-allocator" }
vm-device = { path = "../vm-device" }
vm-memory = { workspace = true, features = [
  "backend-atomic",
  "backend-bitmap",
  "backend-mmap",
] }
vm-migration = { path = "../vm-migration" }
vm-virtio = { path = "../vm-virtio" }
vmm-sys-util = { workspace = true }

[lints]
workspace = true
