2017-04-11 17:02:21 +04:00
|
|
|
[package]
|
2018-08-04 19:08:10 +04:00
|
|
|
name = "ucore"
|
2017-04-11 17:02:21 +04:00
|
|
|
version = "0.1.0"
|
2018-05-20 20:01:53 +04:00
|
|
|
authors = ["Runji Wang <wangrunji0408@163.com>"]
|
2018-11-19 13:21:06 +04:00
|
|
|
edition = "2018"
|
2017-04-11 17:02:21 +04:00
|
|
|
|
2018-04-09 13:02:18 +04:00
|
|
|
[features]
|
2018-12-01 13:37:37 +04:00
|
|
|
# Without BBL (for riscv32 FPGA board)
|
2018-08-07 12:11:48 +04:00
|
|
|
no_bbl = []
|
2018-12-01 13:37:37 +04:00
|
|
|
# Disable paging (for riscv32)
|
2018-11-26 21:23:07 +04:00
|
|
|
no_mmu = []
|
2018-12-01 13:37:37 +04:00
|
|
|
# Kernel in M-mode (for riscv32)
|
|
|
|
m_mode = ["no_mmu"]
|
|
|
|
# (for aarch64 RaspberryPi3)
|
2018-12-11 12:52:50 +04:00
|
|
|
board_raspi3 = ["bcm2837"]
|
|
|
|
raspi3_use_generic_timer = ["bcm2837/use_generic_timer"]
|
2018-04-09 13:02:18 +04:00
|
|
|
|
2018-06-03 15:29:11 +04:00
|
|
|
[profile.dev]
|
2018-07-12 16:45:22 +04:00
|
|
|
# MUST >= 1 : Enable RVO to avoid stack overflow
|
2018-06-03 15:29:11 +04:00
|
|
|
opt-level = 1
|
|
|
|
|
2018-05-21 20:54:18 +04:00
|
|
|
[profile.release]
|
|
|
|
debug = true
|
|
|
|
|
2018-07-06 18:33:28 +04:00
|
|
|
[dependencies]
|
2018-08-04 12:20:25 +04:00
|
|
|
log = "0.4"
|
2018-11-16 11:17:25 +04:00
|
|
|
spin = "0.4"
|
|
|
|
once = "0.3"
|
2018-07-06 18:33:28 +04:00
|
|
|
xmas-elf = "0.6"
|
2018-04-17 16:55:12 +04:00
|
|
|
bitflags = "1.0"
|
2018-11-16 11:17:25 +04:00
|
|
|
bit_field = "0.9"
|
2018-11-19 16:31:33 +04:00
|
|
|
volatile = "0.2"
|
2018-08-04 12:20:25 +04:00
|
|
|
linked_list_allocator = "0.6"
|
2018-11-16 11:17:25 +04:00
|
|
|
lazy_static = { version = "1.2", features = ["spin_no_std"] }
|
2018-07-13 08:25:39 +04:00
|
|
|
bit-allocator = { path = "../crate/bit-allocator" }
|
|
|
|
ucore-memory = { path = "../crate/memory" }
|
2018-07-16 21:56:28 +04:00
|
|
|
ucore-process = { path = "../crate/process" }
|
2018-11-06 22:00:40 +04:00
|
|
|
simple-filesystem = { git = "https://github.com/wangrunji0408/SimpleFileSystem-Rust", branch = "multi-thread" }
|
2018-07-06 18:33:28 +04:00
|
|
|
|
2018-08-04 12:20:25 +04:00
|
|
|
[target.'cfg(target_arch = "x86_64")'.dependencies]
|
2018-10-18 21:14:21 +04:00
|
|
|
bootloader = { git = "https://github.com/wangrunji0408/bootloader" }
|
|
|
|
apic = { git = "https://github.com/wangrunji0408/APIC-Rust" }
|
|
|
|
#bootloader = { path = "../crate/bootloader" }
|
|
|
|
#apic = { path = "../crate/apic" }
|
2018-11-16 11:17:25 +04:00
|
|
|
x86_64 = "0.3"
|
2018-10-18 21:14:21 +04:00
|
|
|
raw-cpuid = "6.0"
|
2018-06-19 20:24:07 +04:00
|
|
|
uart_16550 = "0.1"
|
2018-11-18 15:20:26 +04:00
|
|
|
pc-keyboard = "0.3"
|
2017-04-18 17:15:44 +04:00
|
|
|
|
2018-08-04 12:20:25 +04:00
|
|
|
[target.'cfg(target_arch = "riscv32")'.dependencies]
|
2018-10-30 09:29:00 +04:00
|
|
|
riscv = { git = "https://github.com/riscv-and-rust-and-decaf/riscv" }
|
2018-07-13 08:25:39 +04:00
|
|
|
bbl = { path = "../crate/bbl" }
|
2018-07-04 12:23:11 +04:00
|
|
|
|
2018-10-26 22:45:47 +04:00
|
|
|
[target.'cfg(target_arch = "aarch64")'.dependencies]
|
2018-12-01 18:26:55 +04:00
|
|
|
aarch64 = { git = "https://github.com/equation314/aarch64" }
|
2018-11-07 06:44:24 +04:00
|
|
|
atags = { path = "../crate/atags" }
|
2018-12-11 12:52:50 +04:00
|
|
|
bcm2837 = { path = "../crate/bcm2837", optional = true }
|
2018-10-26 22:45:47 +04:00
|
|
|
|
2018-12-20 08:27:21 +04:00
|
|
|
[patch.'https://github.com/wangrunji0408/SimpleFileSystem-Rust']
|
|
|
|
simple-filesystem = { git = "https://github.com/benpigchu/SimpleFileSystem-Rust", branch = "ucore-fs-enhance" }
|
|
|
|
|
2018-09-07 08:44:40 +04:00
|
|
|
[package.metadata.bootimage]
|
|
|
|
default-target = "x86_64-blog_os.json"
|
2018-09-18 13:47:42 +04:00
|
|
|
output = "target/x86_64-blog_os/bootimage.bin"
|
2018-09-07 08:44:40 +04:00
|
|
|
minimum-image-size = 0 # The minimum output file size (in MiB)
|
|
|
|
# The command invoked on `bootimage run`
|
|
|
|
# (the "{}" will be replaced with the path to the bootable disk image)
|
|
|
|
run-command = ["qemu-system-x86_64",
|
|
|
|
"-drive", "format=raw,file={}",
|
2018-12-03 08:30:03 +04:00
|
|
|
# TODO: use SFSIMG environment variable
|
2018-11-22 14:06:39 +04:00
|
|
|
"-drive", "format=raw,file=../user/img/ucore-i386-pic.img,media=disk,cache=writeback",
|
2018-09-18 13:47:42 +04:00
|
|
|
"-serial", "mon:stdio",
|
|
|
|
"-device", "isa-debug-exit",
|
|
|
|
"-smp", "4"
|
2018-09-07 08:44:40 +04:00
|
|
|
]
|
|
|
|
|
2018-04-11 17:27:11 +04:00
|
|
|
[build-dependencies]
|
|
|
|
cc = "1.0"
|