[package] name = "crosvm" version = "0.1.0" authors = ["The Chromium OS Authors"] edition = "2018" [lib] path = "src/crosvm.rs" [[bin]] name = "crosvm" path = "src/main.rs" [profile.release] panic = 'abort' overflow-checks = true [workspace] members = ["qcow_utils"] exclude = [ "assertions", "cros_async", "data_model", "rand_ish", "sync", "sys_util", "syscall_defines", "tempfile", "hypervisor" ] [features] default-no-sandbox = [] gpu = ["devices/gpu"] plugin = ["protos/plugin", "crosvm_plugin", "protobuf"] tpm = ["devices/tpm"] video-decoder = ["devices/video-decoder"] video-encoder = ["devices/video-encoder"] wl-dmabuf = ["devices/wl-dmabuf", "gpu_buffer", "resources/wl-dmabuf"] x = ["devices/x"] virtio-gpu-next = ["gpu_renderer/virtio-gpu-next"] composite-disk = ["protos/composite-disk", "protobuf", "disk/composite-disk"] gfxstream = ["devices/gfxstream"] [dependencies] arch = { path = "arch" } assertions = { path = "assertions" } audio_streams = "*" bit_field = { path = "bit_field" } crosvm_plugin = { path = "crosvm_plugin", optional = true } data_model = "*" devices = { path = "devices" } disk = { path = "disk" } enumn = { path = "enumn" } gpu_buffer = { path = "gpu_buffer", optional = true } gpu_renderer = { path = "gpu_renderer", optional = true } kernel_cmdline = { path = "kernel_cmdline" } kernel_loader = { path = "kernel_loader" } kvm = { path = "kvm" } kvm_sys = { path = "kvm_sys" } libc = "0.2.65" libcras = "*" minijail = "*" # provided by ebuild msg_socket = { path = "msg_socket" } net_util = { path = "net_util" } p9 = { path = "p9" } protobuf = { version = "2.3", optional = true } protos = { path = "protos", optional = true } rand_ish = { path = "rand_ish" } remain = "*" resources = { path = "resources" } sync = { path = "sync" } sys_util = "*" vhost = { path = "vhost" } vm_control = { path = "vm_control" } acpi_tables = { path = "acpi_tables" } [target.'cfg(target_arch = "x86_64")'.dependencies] x86_64 = { path = "x86_64" } [target.'cfg(any(target_arch = "aarch64", target_arch = "arm"))'.dependencies] aarch64 = { path = "aarch64" } [dev-dependencies] sys_util = "*" [patch.crates-io] assertions = { path = "assertions" } audio_streams = { path = "../../third_party/adhd/audio_streams" } # ignored by ebuild data_model = { path = "data_model" } libcras = { path = "../../third_party/adhd/cras/client/libcras" } # ignored by ebuild libvda = { path = "../../platform2/arc/vm/libvda/rust" } # ignored by ebuild minijail = { path = "../../aosp/external/minijail/rust/minijail" } # ignored by ebuild poll_token_derive = { path = "sys_util/poll_token_derive" } sync = { path = "sync" } sys_util = { path = "sys_util" } syscall_defines = { path = "syscall_defines" } tempfile = { path = "tempfile" }