tiny_os/kernel/Cargo.toml

54 lines
1.2 KiB
TOML

[package]
name = "kernel"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features]
default = ["riscv.board.virt", "log_color"]
legacy = ["utils/legacy", "vspace/legacy"]
riscv = []
"riscv.pagetable.sv32" = []
"riscv.pagetable.sv39" = []
"riscv.pagetable.sv48" = []
"riscv.pagetable.sv57" = []
"riscv.riscv64" = ["riscv", "riscv.pagetable.sv39"]
"riscv.riscv32" = ["riscv", "riscv.pagetable.sv32", "legacy"]
"riscv.board.default" = ["riscv.riscv64"]
"riscv.board.virt" = ["riscv.riscv64"]
log_color = []
[profile.dev]
panic = "abort"
[profile.release]
panic = "abort"
lto = "thin"
[dependencies]
allocator = { path = "../lib/allocator" }
api = { path = "../api" }
utils = { path = "../lib/utils", default-features = false }
vspace = { path = "../lib/vspace", default-features = false }
bitflags = "2.5"
cfg-if = "1.0"
fdt = "0.1"
log = "0.4"
num-derive = "0.4"
num-traits = { version = "0.2", default-features = false }
spin = "0.9"
static_assertions = "1.1"
uart_16550 = "0.3"
[target.'cfg(any(target_arch = "riscv32", target_arch = "riscv64"))'.dependencies]
riscv = { version = "0.11", features = ["s-mode"] }
sbi-rt = { version = "0.0" }