1[package]
2name = "uefi"
3version = "0.33.0"
4readme = "README.md"
5description = """
6This crate makes it easy to develop Rust software that leverages safe,
7convenient, and performant abstractions for UEFI functionality.
8"""
9
10authors.workspace = true
11categories.workspace = true
12edition.workspace = true
13keywords.workspace = true
14license.workspace = true
15repository.workspace = true
16rust-version.workspace = true
17
18[features]
19# KEEP this feature list in sync with doc in lib.rs!
20default = [ "log-debugcon" ]
21alloc = []
22
23# Generic gate to code that uses unstable features of Rust. You usually need a nightly toolchain.
24unstable = []
25
26# Helper features:
27logger = []
28global_allocator = []
29panic_handler = []
30# Some convenience when running inside QEMU.
31# - dependency log-debugcon: logical, not technical
32# - dependency panic_handler: logical, not technical
33qemu = ["dep:qemu-exit", "panic_handler", "log-debugcon"]
34# Whether the internal logger from the helpers module should also log to
35# the debugcon device (QEMU) and debug-console (cloud-hypervisor). Only works
36# on x86.
37log-debugcon = []
38
39[dependencies]
40bitflags.workspace = true
41log.workspace = true
42ptr_meta.workspace = true
43uguid.workspace = true
44cfg-if = "1.0.0"
45ucs2 = "0.3.3"
46uefi-macros = "0.17.0"
47uefi-raw = "0.9.0"
48qemu-exit = { version = "3.0.2", optional = true }
49
50[package.metadata.docs.rs]
51all-features = true
52rustdoc-args = ["--cfg", "docsrs"]
53