[workspace] exclude = ["tests/test-kernels", "hermit-rs", "hermit-rs/*", "kernel"] [package] name = "uhyve" version = "0.4.0" authors = [ "Stefan Lankes ", "Martin Kröning ", "Jens Breitbart ", "Jonathan Klimt ", ] edition = "2021" description = "A specialized hypervisor for Hermit" repository = "https://github.com/hermit-os/uhyve" license = "MIT OR Apache-2.0" keywords = ["hypervisor", "unikernel"] categories = ["os"] exclude = [ "/.github/", "/img/", "/benches/", "/data", "/.gitattributes", "/.gitignore", "/.gitmodules", "/codecov.yml", ] [lib] name = "uhyvelib" [[bench]] name = "benchmarks" path = "benches/benchmarks.rs" harness = false [features] default = [] instrument = ["rftrace", "rftrace-frontend"] [dependencies] byte-unit = { version = "5", features = ["byte"] } clap = { version = "4.5", features = ["derive", "env"] } nix = { version = "0.29", features = ["mman", "pthread", "signal"] } core_affinity = "0.8" either = "1.13" env_logger = "0.11" gdbstub = "0.7" gdbstub_arch = "0.3" hermit-entry = { version = "0.10", features = ["loader"] } libc = "0.2" log = "0.4" mac_address = "1.1" thiserror = "2.0" time = "0.3" tun-tap = { version = "0.1.3", default-features = false } uhyve-interface = { version = "0.1.1", path = "uhyve-interface", features = ["std"] } virtio-bindings = { version = "0.2", features = ["virtio-v4_14_0"] } rftrace = { version = "0.1", optional = true } rftrace-frontend = { version = "0.1", optional = true } shell-words = "1" sysinfo = { version = "0.32.0", default-features = false, features = ["system"] } vm-fdt = "0.3" [target.'cfg(target_os = "linux")'.dependencies] kvm-bindings = "0.10" kvm-ioctls = "0.19" vmm-sys-util = "0.12" [target.'cfg(target_os = "macos")'.dependencies] burst = "0.0" xhypervisor = "0.2" [target.'cfg(target_arch = "x86_64")'.dependencies] x86_64 = { version = "0.15", default-features = false } raw-cpuid = "11" memory_addresses = { version = "0.2.2", default-features = false, features = [ "conversions", "x86_64", ] } [target.'cfg(target_arch = "aarch64")'.dependencies] bitflags = "2.6" memory_addresses = { version = "0.2.2", default-features = false, features = [ "aarch64", ] } [dev-dependencies] assert_fs = "1" criterion = "0.5"