mirror of
https://github.com/rust-osdev/uefi-rs
synced 2026-08-26 18:26:05 -04:00
This is a rewrite of the Python build.py code in Rust. See https://github.com/matklad/cargo-xtask for details of the xtask pattern. Essentially it's a pattern for extending cargo with project-specific commands. Using Rust gives all the usual benefits of checking stuff at compile time, thorough error handling, ease of testing, etc. It is more verbose though, so the LOC goes up a bit. * Removed `build-std` settings from `.cargo/config` because we want to run `xtask` with the default compiler config. The various `cargo xtask` commands handle adding the build-std args where needed. This has the side effect of obsoleting the `uefi-macros/tests/cargo_wrapper` hack. * The build subcommand now builds the whole workspace (except for xtask, since that implicitly has already been built). So no separate CI step to test that the `tmplate` package builds is needed. * Dropped the `--verbose` option, just always print the commands being run since it's helpful info. * Looked like there was some vestigial timeout code for the VM test but no timeout was set that I could see; added a timeout to the github workflow yaml instead.
55 lines
1.3 KiB
TOML
55 lines
1.3 KiB
TOML
[package]
|
|
name = "uefi"
|
|
version = "0.14.0"
|
|
authors = ["Gabriel Majeri <gabriel.majeri6@gmail.com>"]
|
|
readme = "README.md"
|
|
edition = "2018"
|
|
exclude = [
|
|
".cargo/**",
|
|
"template/**",
|
|
"uefi-macros/**",
|
|
"uefi-services/**",
|
|
"uefi-test-runner/**",
|
|
"xtask/**",
|
|
]
|
|
description = "Safe and easy-to-use wrapper for building UEFI apps"
|
|
repository = "https://github.com/rust-osdev/uefi-rs"
|
|
keywords = ["uefi", "efi"]
|
|
categories = ["embedded", "no-std", "api-bindings"]
|
|
license = "MPL-2.0"
|
|
|
|
[badges]
|
|
travis-ci = { repository = "rust-osdev/uefi-rs" }
|
|
is-it-maintained-issue-resolution = { repository = "rust-osdev/uefi-rs" }
|
|
is-it-maintained-open-issues = { repository = "rust-osdev/uefi-rs" }
|
|
|
|
[features]
|
|
default = []
|
|
alloc = []
|
|
exts = []
|
|
logger = []
|
|
# Ignore text output errors in logger as a workaround for firmware issues that
|
|
# were observed on the VirtualBox UEFI implementation (see uefi-rs#121)
|
|
ignore-logger-errors = []
|
|
|
|
[dependencies]
|
|
bitflags = "1.3.2"
|
|
log = { version = "0.4.14", default-features = false }
|
|
ucs2 = "0.3.2"
|
|
uefi-macros = "0.5.0"
|
|
|
|
[workspace]
|
|
members = [
|
|
"template",
|
|
"uefi-macros",
|
|
"uefi-services",
|
|
"uefi-test-runner",
|
|
"xtask",
|
|
]
|
|
|
|
[patch.crates-io]
|
|
uefi-macros = { path = "uefi-macros" }
|
|
uefi = { path = "." }
|
|
|
|
[package.metadata.docs.rs]
|
|
all-features = true
|