[package]
name = "rust-ucore"
version = "0.1.0"
authors = ["Runji Wang <wangrunji0408@163.com>"]

[lib]
crate-type = ["staticlib"]

[features]
use_apic = []
test = []
qemu_auto_exit = []
link_user_program = []

[profile.dev]
# enable RVO to avoid stack overflow
opt-level = 1

[profile.release]
debug = true

[dependencies]
rlibc = "1.0"
spin = "0.4.8"
once = "0.3.3"
xmas-elf = "0.6"
bitflags = "1.0"
bit_field = "0.9.0"
volatile = "0.1.0"
lazy_static = { version = "1.0.0", features = ["spin_no_std"] }
bit-allocator = { path = "crate/bit-allocator" }
ucore-memory = { path = "crate/memory" }


[target.x86_64-blog_os.dependencies]
multiboot2 = "0.6"
x86_64 = "0.2.6"
linked_list_allocator = "0.6"
redox_syscall = "0.1"
log = "0.4"
uart_16550 = "0.1"
simple-filesystem = { git = "https://github.com/wangrunji0408/SimpleFileSystem-Rust" }

[target.riscv32-blog_os.dependencies]
linked_list_allocator = "0.5" # due to rust version
riscv = { path = "crate/riscv" }
bbl = { path = "crate/bbl" }

[build-dependencies]
cc = "1.0"
