[package]
edition = "2024"
name = "ax-task"
version = "0.6.10"
authors = ["Yuekai Jia <equation618@gmail.com>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "ArceOS task management module"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/rcore-os/tgoskits"
[package.metadata.docs.rs]
targets = [
"x86_64-unknown-none",
"aarch64-unknown-none-softfloat",
"riscv64gc-unknown-none-elf",
"loongarch64-unknown-none-softfloat",
]
[features]
default = []
host-test = [
"ax-hal/host-test",
"ax-percpu?/host-test",
]
ipi = [
"irq",
"ax-hal/ipi",
"dep:ax-ipi",
]
irq = [
"ax-hal/irq",
"dep:ax-timer-list",
]
lock-api = ["dep:lock_api"]
lockdep = [
"multitask",
"dep:axpanic",
]
multitask = [
"dep:axpoll",
"dep:ax-sched",
"dep:ax-cpumask",
"dep:ax-crate-interface",
"dep:futures-util",
"dep:ax-lazyinit",
"dep:ax-memory-addr",
"dep:ax-percpu",
]
preempt = ["irq"]
sched-cfs = [
"multitask",
"preempt",
]
sched-rr = [
"multitask",
"preempt",
]
smp = []
stack-guard-page = [
"multitask",
"dep:ax-alloc",
"dep:ax-mm",
"ax-hal/paging",
]
task-ext = ["dep:extern-trait"]
test = ["host-test"]
tls = ["ax-hal/tls"]
tracepoint-hooks = ["multitask"]
uspace = ["ax-hal/uspace"]
[lib]
name = "ax_task"
path = "src/lib.rs"
[dependencies.ax-alloc]
version = "0.8"
optional = true
default-features = false
[dependencies.ax-cpumask]
version = "0.4"
optional = true
[dependencies.ax-crate-interface]
version = "0.5"
optional = true
[dependencies.ax-hal]
version = "0.6"
[dependencies.ax-ipi]
version = "0.5"
optional = true
[dependencies.ax-lazyinit]
version = "0.5"
optional = true
[dependencies.ax-memory-addr]
version = "0.7"
optional = true
[dependencies.ax-mm]
version = "0.6"
optional = true
[dependencies.ax-percpu]
version = "0.4"
optional = true
[dependencies.ax-sched]
version = "0.5"
optional = true
[dependencies.ax-timer-list]
version = "0.3"
optional = true
[dependencies.axpanic]
version = "0.1"
optional = true
[dependencies.axpoll]
version = "0.6"
optional = true
[dependencies.cfg-if]
version = "1.0"
[dependencies.extern-trait]
version = "0.5.0"
optional = true
[dependencies.futures-util]
version = "0.3"
features = [
"alloc",
"async-await-macro",
]
optional = true
default-features = false
[dependencies.lock_api]
version = "0.4"
optional = true
default-features = false
[dependencies.log]
version = "0.4"
[dependencies.thiserror]
version = "2"
default-features = false
[build-dependencies.quote]
version = "1.0.47"
[target.'cfg(not(target_os = "none"))'.dev-dependencies]
[target.'cfg(target_arch = "riscv64")'.dependencies.sbi-rt]
version = "0.0.4"
features = ["legacy"]
default-features = false