[package]
name = "starry-api"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
homepage.workspace = true
repository.workspace = true
description = "System call API layer for Starry OS, providing Linux-compatible syscall implementations"
[features]
input = ["dep:axinput"]
memtrack = ["axfeat/dwarf", "axalloc/tracking", "dep:gimli"]
vsock = ["axnet/vsock"]
dev-log = []
[dependencies]
axalloc.workspace = true
axbacktrace.workspace = true
axconfig.workspace = true
axdisplay.workspace = true
axdriver.workspace = true
axerrno.workspace = true
axfeat.workspace = true
axfs-ng-vfs.workspace = true
axfs.workspace = true
axhal.workspace = true
axinput = { workspace = true, optional = true }
axio.workspace = true
axlog.workspace = true
axmm.workspace = true
axnet.workspace = true
axpoll.workspace = true
axsync.workspace = true
axtask.workspace = true
bitflags.workspace = true
bitmaps = { version = "3.2.1", default-features = false }
bytemuck.workspace = true
cfg-if.workspace = true
chrono = { version = "0.4.41", default-features = false }
downcast-rs = { version = "2.0", default-features = false, features = ["sync"] }
event-listener.workspace = true
flatten_objects = "0.2.4"
gimli = { version = "0.31", default-features = false, optional = true }
hashbrown = { workspace = true }
indoc = "2"
inherit-methods-macro = "0.1.0"
kspin.workspace = true
lazy_static = { workspace = true }
linkme.workspace = true
linux-raw-sys = { workspace = true, features = ["ioctl", "loop_device"] }
memory_addr.workspace = true
num_enum = { version = "0.7", default-features = false }
rand = { version = "0.9.1", default-features = false, features = [
"alloc",
"small_rng",
] }
ringbuf = { version = "0.4.8", default-features = false, features = ["alloc"] }
scope-local.workspace = true
slab.workspace = true
spin.workspace = true
starry-process.workspace = true
starry-signal.workspace = true
starry-vm.workspace = true
syscalls = { package = "starry-syscalls", version = "0.7.1-preview.1", default-features = false }
zerocopy = { version = "0.8.26", features = ["derive"] }
starry-core.workspace = true
[target.'cfg(target_arch = "x86_64")'.dependencies]
x86 = "0.52"
[target.'cfg(any(target_arch = "riscv32", target_arch = "riscv64"))'.dependencies]
riscv = "0.14"