content: [package]
  name = "nucleus"
  description = "Vesper nanokernel binary"
  authors = { workspace = true }
  categories = { workspace = true }
  documentation = { workspace = true }
  edition = { workspace = true }
  homepage = { workspace = true }
  license = { workspace = true }
  publish = { workspace = true }
  readme = { workspace = true }
  repository = { workspace = true }
  version = { workspace = true }
  
  [badges]
  maintenance = { status = "experimental" }
  
  [features]
  default = []
  # Enable JTAG debugging of kernel - enable jtag helpers and
  # block waiting for JTAG probe attach at the start of kernel main.
  jtag = ["libmachine/jtag"]
  noserial = ["libplatform/noserial"]
  # Build for running under QEMU with semihosting, so various halt/reboot options would for example quit QEMU instead.
  qemu = [
    "dep:libqemu",
    "libconsole/qemu",
    "libexception/qemu",
    "libmachine/qemu",
    "libplatform/qemu",
  ]
  
  [dependencies]
  aarch64-cpu = { workspace = true }
  bit_field = { workspace = true }
  bitflags = { workspace = true }
  cfg-if = { workspace = true }
  libboot = { workspace = true }
  libconsole = { workspace = true }
  libcpu = { workspace = true }
  libexception = { workspace = true }
  libkernel-state = { workspace = true }
  liblog = { workspace = true }
  libmachine = { workspace = true }
  libmemory = { workspace = true }
  libplatform = { workspace = true }
  libqemu = { workspace = true, optional = true }
  libtime = { workspace = true }
  snafu = { workspace = true }
  tock-registers = { workspace = true }
  usize_conversions = { workspace = true }
  ux = { workspace = true }
  
  [dev-dependencies]
  libexception = { workspace = true, features = ["test_build"] }
  liblocking = { workspace = true }
  libqemu = { workspace = true }
  libtest = { workspace = true }
  
  [[bin]]
  name = "nucleus"
  test = false  # test are all concentrated in integration tests/
  
  [lints]
  workspace = true
  