[package] name = "rusty-hermit" version = "0.3.53" authors = [ "Stefan Lankes ", "Colin Finck ", ] license = "MIT OR Apache-2.0" readme = "README.md" keywords = ["unikernel", "libos"] categories = ["os"] repository = "https://github.com/hermitcore/rusty-hermit" documentation = "https://hermitcore.github.io/libhermit-rs/hermit/" edition = "2018" description = "A Rust-based library operting system" exclude = [ "/.github/*", "/.vscode/*", "/.gitlab-ci.yml", "/Dockerfile", "/img/*", "./CMakeLists.txt", ".gitattributes", ".gitignore", ] [lib] crate-type = ["staticlib", "lib"] # "lib" required for integration tests name = "hermit" [[test]] name = "basic_print" harness = false [[test]] name = "basic_math" harness = true [[test]] name = "measure_startup_time" harness = false [features] default = ["pci", "acpi", "fsgsbase", "smp", "aarch64-qemu-stdout"] vga = [] newlib = [] pci = [] acpi = [] smp = [] fsgsbase = [] aarch64-qemu-stdout = [] # Doesn't do anything on x86 [dependencies] bitflags = "1.3" crossbeam-utils = { version = "0.8", default-features = false } log = { version = "0.4", default-features = false } num = { version = "0.4", default-features = false } num-derive = "0.3" num-traits = { version = "0.2", default-features = false } scopeguard = { version = "1.1", default-features = false } [target.'cfg(target_arch = "x86_64")'.dependencies] multiboot = "0.7" x86 = { version = "0.41", default-features = false } [dev-dependencies] float-cmp = "0.9" num-traits = { version = "0.2", default-features = false } x86 = { version = "0.41", default-features = false } [target.'cfg(target_arch = "aarch64")'.dependencies.aarch64] version = "0.0.6" default-features = false [target.'cfg(target_arch = "aarch64")'.dependencies] qemu-exit = "2.0" # The development profile, used for `cargo build`. [profile.dev] opt-level = 1 # controls the `--opt-level` the compiler builds with debug = true # controls whether the compiler passes `-C debuginfo` # a value of `true` is equivalent to `2` rpath = false # controls whether the compiler passes `-C rpath` lto = false # controls `-C lto` for binaries and staticlibs debug-assertions = true # controls whether debug assertions are enabled # Disabled because of https://github.com/rust-lang/cargo/issues/7359 # panic = "abort" # Call abort on panic https://github.com/rust-lang/rust/pull/32900 # The release profile, used for `cargo build --release`. [profile.release] opt-level = 2 debug = false rpath = false lto = false debug-assertions = false # panic = "abort"