2017-04-11 17:02:21 +04:00
|
|
|
[package]
|
2019-01-03 15:37:04 +04:00
|
|
|
name = "rcore"
|
2019-03-17 21:09:12 +04:00
|
|
|
version = "0.2.0"
|
2018-11-19 13:21:06 +04:00
|
|
|
edition = "2018"
|
2018-12-28 13:51:18 +04:00
|
|
|
authors = [
|
|
|
|
"WangRunji <wangrunji0408@163.com>",
|
|
|
|
"Ben Pig Chu <benpichu@gmail.com>",
|
|
|
|
"dzy <daizy15@mails.tsinghua.edu.cn>",
|
|
|
|
"equation314 <equation618@gmail.com>",
|
|
|
|
"cfgbd <cfgbdv@163.com>",
|
|
|
|
"koumingyang <1761674434@qq.com>",
|
|
|
|
"lcy1996 <992195697@qq.com>",
|
|
|
|
"chenqiuhao <haohao0924@126.com>",
|
2019-02-15 10:54:42 +04:00
|
|
|
"maoyuchaxue <wangjt15@mails.tsinghua.edu.cn>",
|
|
|
|
"Jiajie Chen <jiegec@qq.com>",
|
2019-04-03 09:53:34 +04:00
|
|
|
"chyyuu <yuchen@mail.tsinghua.edu.cn>",
|
|
|
|
"Shengqi Chen <harry-chen@outlok.com>",
|
|
|
|
"Yuhao Zhou <miskcoo@gmail.com>"
|
2018-12-28 13:51:18 +04:00
|
|
|
]
|
2017-04-11 17:02:21 +04:00
|
|
|
|
2018-04-09 13:02:18 +04:00
|
|
|
[features]
|
2019-04-19 20:15:22 +04:00
|
|
|
default = ["sv39"]
|
2019-01-31 21:09:23 +04:00
|
|
|
# Page table sv39 or sv48 (for riscv64)
|
|
|
|
sv39 = []
|
2019-03-18 14:20:27 +04:00
|
|
|
board_u540 = ["sv39", "link_user"]
|
2019-04-21 19:47:00 +04:00
|
|
|
board_k210 = ["sv39", "link_user"]
|
2019-04-27 19:01:44 +04:00
|
|
|
board_rocket_chip = ["sv39", "link_user"]
|
2018-12-01 13:37:37 +04:00
|
|
|
# (for aarch64 RaspberryPi3)
|
2018-12-20 13:34:24 +04:00
|
|
|
nographic = []
|
2019-01-25 06:28:38 +04:00
|
|
|
board_raspi3 = ["bcm2837", "link_user"]
|
2019-03-04 11:22:19 +04:00
|
|
|
raspi3_use_generic_timer = ["bcm2837/use_generic_timer"]
|
2019-04-06 17:59:16 +04:00
|
|
|
# for qemu machine
|
2019-04-05 18:57:12 +04:00
|
|
|
board_malta = ["link_user"]
|
2019-04-06 17:59:16 +04:00
|
|
|
board_mipssim = ["link_user"]
|
2019-04-03 09:53:34 +04:00
|
|
|
# for thinpad
|
2019-04-05 18:57:12 +04:00
|
|
|
board_thinpad = ["link_user"]
|
2019-04-16 20:45:44 +04:00
|
|
|
# for x86 PC
|
|
|
|
board_pc = ["link_user"]
|
2019-01-25 06:28:38 +04:00
|
|
|
# Hard link user program
|
|
|
|
link_user = []
|
2019-03-26 12:03:32 +04:00
|
|
|
# Run cmdline instead of user shell, useful for automatic testing
|
|
|
|
run_cmdline = []
|
2019-04-30 17:32:32 +04:00
|
|
|
# Add performance profiling
|
|
|
|
profile = []
|
2018-04-09 13:02:18 +04:00
|
|
|
|
2018-06-03 15:29:11 +04:00
|
|
|
[profile.dev]
|
2019-03-29 09:14:08 +04:00
|
|
|
# MUST >= 2 : Enable RVO to avoid stack overflow
|
|
|
|
opt-level = 2
|
2018-06-03 15:29:11 +04:00
|
|
|
|
2018-07-06 18:33:28 +04:00
|
|
|
[dependencies]
|
2018-08-04 12:20:25 +04:00
|
|
|
log = "0.4"
|
2019-02-22 13:33:31 +04:00
|
|
|
spin = "0.5"
|
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"
|
2019-03-16 11:44:57 +04:00
|
|
|
heapless = "0.4"
|
2019-04-03 13:41:54 +04:00
|
|
|
bitvec = { git = "https://github.com/myrrlyn/bitvec.git", default-features = false, features = ["alloc"] }
|
2019-03-16 09:15:16 +04:00
|
|
|
console-traits = "0.3"
|
2019-05-01 14:33:55 +04:00
|
|
|
buddy_system_allocator = "0.3"
|
2019-03-30 19:43:20 +04:00
|
|
|
pci = { git = "https://github.com/rcore-os/pci-rs" }
|
2019-03-17 21:09:12 +04:00
|
|
|
device_tree = { git = "https://github.com/rcore-os/device_tree-rs" }
|
2019-03-20 12:29:42 +04:00
|
|
|
isomorphic_drivers = { git = "https://github.com/rcore-os/isomorphic_drivers" }
|
2019-03-16 09:15:16 +04:00
|
|
|
lazy_static = { version = "1.3", features = ["spin_no_std"] }
|
2019-04-04 17:38:32 +04:00
|
|
|
smoltcp = { git = "https://github.com/rcore-os/smoltcp", default-features = false, features = ["alloc", "log", "proto-ipv4", "proto-igmp", "socket-icmp", "socket-udp", "socket-tcp", "socket-raw"] }
|
2019-04-04 08:45:55 +04:00
|
|
|
bitmap-allocator = { git = "https://github.com/rcore-os/bitmap-allocator" }
|
2019-01-03 15:37:04 +04:00
|
|
|
rcore-memory = { path = "../crate/memory" }
|
2019-04-04 08:45:55 +04:00
|
|
|
rcore-thread = { git = "https://github.com/rcore-os/rcore-thread" }
|
2019-03-27 14:43:59 +04:00
|
|
|
rcore-fs = { git = "https://github.com/rcore-os/rcore-fs" }
|
|
|
|
rcore-fs-sfs = { git = "https://github.com/rcore-os/rcore-fs" }
|
2018-07-06 18:33:28 +04:00
|
|
|
|
2018-08-04 12:20:25 +04:00
|
|
|
[target.'cfg(target_arch = "x86_64")'.dependencies]
|
2019-03-17 21:09:12 +04:00
|
|
|
bootloader = { git = "https://github.com/rcore-os/bootloader" }
|
|
|
|
apic = { git = "https://github.com/rcore-os/apic-rs" }
|
2019-03-25 14:13:43 +04:00
|
|
|
x86_64 = "0.5"
|
2018-10-18 21:14:21 +04:00
|
|
|
raw-cpuid = "6.0"
|
2019-04-16 20:46:39 +04:00
|
|
|
uart_16550 = "0.2"
|
2019-02-22 13:33:31 +04:00
|
|
|
pc-keyboard = "0.5"
|
2017-04-18 17:15:44 +04:00
|
|
|
|
2018-12-20 21:50:52 +04:00
|
|
|
[target.'cfg(any(target_arch = "riscv32", target_arch = "riscv64"))'.dependencies]
|
2019-03-18 20:43:06 +04:00
|
|
|
riscv = { git = "https://github.com/rcore-os/riscv", features = ["inline-asm"] }
|
2018-07-04 12:23:11 +04:00
|
|
|
|
2018-10-26 22:45:47 +04:00
|
|
|
[target.'cfg(target_arch = "aarch64")'.dependencies]
|
2019-03-18 07:55:06 +04:00
|
|
|
aarch64 = { git = "https://github.com/rcore-os/aarch64" }
|
|
|
|
bcm2837 = { git = "https://github.com/rcore-os/bcm2837", optional = true }
|
2018-10-26 22:45:47 +04:00
|
|
|
|
2019-04-01 07:53:20 +04:00
|
|
|
[target.'cfg(target_arch = "mips")'.dependencies]
|
2019-04-08 21:08:49 +04:00
|
|
|
mips = "^0.2.0"
|
2019-04-07 13:08:03 +04:00
|
|
|
paste = "0.1"
|
2019-03-31 18:04:22 +04:00
|
|
|
|
2018-09-07 08:44:40 +04:00
|
|
|
[package.metadata.bootimage]
|
2019-01-03 15:37:04 +04:00
|
|
|
default-target = "targets/x86_64.json"
|
|
|
|
output = "target/x86_64/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"
|