[package] name = "devices" version = "0.1.0" authors = ["The Chromium OS Authors"] edition = "2021" [features] arc_quota = ["dbus", "protobuf", "system_api"] audio = [] audio_cras = ["libcras"] balloon = [] chromeos = ["dbus", "protobuf", "system_api"] direct = [] gpu = ["gpu_display"] libvda-stub = ["libvda/libvda-stub"] tpm = ["tpm2"] usb = [] vaapi = ["libva", "cros-codecs/vaapi", "downcast-rs", "crc32fast"] video-decoder = [] video-encoder = [] minigbm = ["rutabaga_gfx/minigbm"] x = ["gpu_display/x", "rutabaga_gfx/x"] virgl_renderer = ["gpu", "rutabaga_gfx/virgl_renderer"] virgl_renderer_next = ["gpu", "rutabaga_gfx/virgl_renderer_next"] vtpm = ["system_api", "protobuf", "dbus"] gfxstream = ["gpu", "rutabaga_gfx/gfxstream"] slirp = ["net_util/slirp"] stats = [] whpx = [] [dependencies] argh = "0.1.7" async-task = "4" acpi_tables = {path = "../acpi_tables" } anyhow = "*" async-trait = "0.1.36" audio_streams = "*" balloon_control = { path = "../common/balloon_control" } base = { path = "../base" } bit_field = { path = "../bit_field" } cfg-if = "1.0.0" chrono = "*" crc32fast = { version = "1.2.1", optional = true } cros_async = { path = "../cros_async" } cros-codecs = { path = "../media/cros-codecs", optional = true } crosvm_cli = { path = "../crosvm_cli" } data_model = { path = "../common/data_model" } dbus = { version = "0.9", optional = true } disk = { path = "../disk" } downcast-rs = { version = "1.2.0", optional = true } enumn = "0.1.0" ffmpeg = { path = "../media/ffmpeg", optional = true } gpu_display = { path = "../gpu_display", optional = true } rutabaga_gfx = { path = "../rutabaga_gfx" } hypervisor = { path = "../hypervisor" } kvm_sys = { path = "../kvm_sys" } libc = "*" libva = { path = "../media/libva", optional = true } libvda = { path = "../media/libvda", optional = true } linux_input_sys = { path = "../linux_input_sys" } memoffset = { version = "0.6" } net_sys = { path = "../net_sys" } net_util = { path = "../net_util", features = ["slirp"] } num-traits = "0.2" once_cell = "1.7.2" protobuf = { version = "2.3", optional = true } protos = { path = "../protos", optional = true } rand = "0.8" remain = "*" resources = { path = "../resources" } serde = { version = "1", features = [ "derive" ] } serde_json = "1" serde_keyvalue = { path = "../serde_keyvalue", features = ["argh_derive"] } smallvec = "1.6.1" sync = { path = "../common/sync" } system_api = { path = "../system_api", optional = true } thiserror = "1.0.20" tpm2 = { path = "../tpm2", optional = true } cros_tracing = { path = "../cros_tracing" } uuid = { version = "0.8.2", features = [ "serde" ] } vhost = { path = "../vhost" } vmm_vhost = { path = "../third_party/vmm_vhost", features = ["vmm", "device", "vfio-device"] } virtio_sys = { path = "../virtio_sys" } vm_control = { path = "../vm_control" } vm_memory = { path = "../vm_memory" } [target.'cfg(unix)'.dependencies] fuse = {path = "../fuse" } libcras = { version = "*", optional = true } minijail = "*" p9 = "*" power_monitor = { path = "../power_monitor" } usb_util = { path = "../usb_util" } vfio_sys = { path = "../vfio_sys" } [target.'cfg(windows)'.dependencies] broker_ipc = { path = "../broker_ipc" } metrics = { path = "../metrics" } tube_transporter = { path = "../tube_transporter" } win_audio = { path = "../win_audio"} win_util = { path = "../win_util"} winapi = "*" [dependencies.futures] version = "*" features = ["async-await", "std"] default-features = false [target.'cfg(windows)'.dev-dependencies] regex = "*" [dev-dependencies] bytes = "1.1.0" tempfile = "3" crc32fast = "1"