yggdrasil/kernel/Cargo.toml

93 lines
3.1 KiB
TOML
Raw Normal View History

2023-07-18 18:03:45 +03:00
[package]
name = "yggdrasil-kernel"
version = "0.1.0"
edition = "2021"
2023-08-05 16:32:12 +03:00
build = "build.rs"
2023-12-11 03:04:49 +02:00
authors = ["Mark Poliakov <mark@alnyan.me>"]
2023-07-18 18:03:45 +03:00
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
2024-03-12 18:17:47 +02:00
abi-lib = { path = "../lib/abi-lib" }
yggdrasil-abi = { path = "../lib/abi" }
2024-03-12 13:46:24 +02:00
2024-10-12 20:43:16 +03:00
kernel-arch-interface = { path = "arch/interface" }
device-api = { path = "lib/device-api", features = ["derive"] }
2024-02-04 21:13:40 +02:00
libk = { path = "libk" }
libk-util = { path = "libk/libk-util" }
libk-mm = { path = "libk/libk-mm" }
libk-device = { path = "libk/libk-device" }
memtables = { path = "lib/memtables" }
2023-10-01 16:58:46 +03:00
vmalloc = { path = "lib/vmalloc" }
2023-12-10 12:51:53 +02:00
device-api-macros = { path = "lib/device-api/macros" }
2023-07-18 18:03:45 +03:00
kernel-arch = { path = "arch" }
# Drivers
2024-02-03 20:44:04 +02:00
ygg_driver_pci = { path = "driver/bus/pci" }
2024-02-26 23:04:51 +02:00
ygg_driver_usb = { path = "driver/bus/usb" }
ygg_driver_net_core = { path = "driver/net/core" }
2024-01-26 18:53:07 +02:00
ygg_driver_net_loopback = { path = "driver/net/loopback" }
2024-02-03 20:44:04 +02:00
ygg_driver_virtio_net = { path = "driver/virtio/net", features = ["pci"] }
2024-02-04 13:15:18 +02:00
ygg_driver_ahci = { path = "driver/block/ahci" }
2024-02-26 23:04:51 +02:00
ygg_driver_usb_xhci = { path = "driver/usb/xhci" }
ygg_driver_input = { path = "driver/input" }
2024-02-04 13:15:18 +02:00
kernel-fs = { path = "driver/fs/kernel-fs" }
2023-12-11 03:04:49 +02:00
memfs = { path = "driver/fs/memfs" }
2024-07-30 17:46:50 +03:00
ext2 = { path = "driver/fs/ext2" }
2024-07-28 12:53:30 +03:00
atomic_enum = "0.3.0"
bitflags = "2.6.0"
static_assertions = "1.1.0"
tock-registers = "0.8.1"
2024-07-28 12:53:30 +03:00
git-version = "0.3.9"
log = "0.4.22"
futures-util = { version = "0.3.30", default-features = false, features = ["alloc", "async-await"] }
crossbeam-queue = { version = "0.3.11", default-features = false, features = ["alloc"] }
bytemuck = { version = "1.16.1", features = ["derive"] }
2024-08-08 16:52:34 +03:00
async-trait = "0.1.81"
2023-07-20 18:51:56 +03:00
[dependencies.elf]
version = "0.7.2"
git = "https://git.alnyan.me/yggdrasil/yggdrasil-elf.git"
default-features = false
features = ["no_std_stream"]
2023-07-28 14:26:39 +03:00
2023-07-29 19:31:56 +03:00
[target.'cfg(target_arch = "aarch64")'.dependencies]
2024-07-28 12:53:30 +03:00
aarch64-cpu = "9.4.0"
device-tree = { path = "lib/device-tree" }
kernel-arch-aarch64 = { path = "arch/aarch64" }
2023-07-29 19:31:56 +03:00
2023-07-28 14:26:39 +03:00
[target.'cfg(target_arch = "x86_64")'.dependencies]
2024-03-12 18:17:47 +02:00
yboot-proto = { path = "../boot/yboot-proto" }
aml = { git = "https://github.com/alnyan/acpi.git", branch = "acpi-system" }
acpi_lib = { git = "https://github.com/alnyan/acpi.git", package = "acpi", branch = "acpi-system" }
acpi-system = { git = "https://github.com/alnyan/acpi-system.git" }
2024-01-04 23:04:34 +02:00
ygg_driver_nvme = { path = "driver/block/nvme" }
kernel-arch-x86_64 = { path = "arch/x86_64" }
2024-10-12 20:43:16 +03:00
kernel-arch-x86 = { path = "arch/x86" }
2024-10-10 18:06:54 +03:00
[target.'cfg(target_arch = "x86")'.dependencies]
kernel-arch-i686 = { path = "arch/i686" }
2024-10-12 20:43:16 +03:00
kernel-arch-x86 = { path = "arch/x86" }
2024-10-10 18:06:54 +03:00
2024-03-12 13:46:24 +02:00
[build-dependencies]
prettyplease = "0.2.15"
2024-03-12 18:17:47 +02:00
abi-generator = { path = "../tool/abi-generator" }
2024-03-12 13:46:24 +02:00
# To make rust-analyzer recognize those
[dev-dependencies]
2024-07-28 12:53:30 +03:00
aarch64-cpu = "9.4.0"
device-tree = { path = "lib/device-tree" }
kernel-arch-aarch64 = { path = "arch/aarch64" }
2024-10-10 18:06:54 +03:00
kernel-arch-i686 = { path = "arch/i686" }
2024-10-12 20:43:16 +03:00
kernel-arch-x86 = { path = "arch/x86" }
[features]
default = ["fb_console"]
2023-09-06 18:48:00 +03:00
fb_console = []
2024-07-25 11:58:47 +03:00
[lints.rust]
unexpected_cfgs = { level = "allow", check-cfg = ['cfg(rust_analyzer)'] }