Update docs for the switch from nightly to stable

This commit is contained in:
Nicholas Bishop
2023-03-09 09:12:45 -05:00
parent 2a3439fba0
commit 2e1c75ad6b
5 changed files with 15 additions and 22 deletions
+3
View File
@@ -2,6 +2,9 @@
## uefi - [Unreleased]
As of this release, the UEFI crates work on the stable channel. This requires
Rust 1.68 or higher.
### Added
- Added the `ComponentName1` and `ComponentName2` protocols. The `ComponentName`
+7 -13
View File
@@ -1,24 +1,18 @@
# Building
## Nightly toolchain
## Toolchain
Rust's nightly toolchain is currently required because uefi-rs uses some
unstable features.
The easiest way to set this up is using a [rustup toolchain file]. In
the root of your repository, add `rust-toolchain.toml`:
In order to compile for UEFI, an appropriate target must be installed. The
easiest way to set this up is using a [rustup toolchain file]. In the root of
your repository, add `rust-toolchain.toml`:
```toml
[toolchain]
channel = "nightly"
targets = ["x86_64-unknown-uefi"]
targets = ["aarch64-unknown-uefi", "i686-unknown-uefi", "x86_64-unknown-uefi"]
```
Here we have specified the `x86_64-unknown-uefi` target; there are also
`i686-unknown-uefi` and `aarch64-unknown-uefi` targets available.
Note that nightly releases can sometimes break, so you might opt to pin
to a specific release. For example, `channel = "nightly-2022-11-10"`.
Here we have specified all three of the currently-supported UEFI targets; you
can remove some if you don't need them.
## Build the application
+1 -1
View File
@@ -8,7 +8,7 @@ UEFI application developed using `uefi-rs`.
## File structure
- [`rust-toolchain.toml`](rust-toolchain.toml) sets the nightly channel.
- [`rust-toolchain.toml`](rust-toolchain.toml) adds the UEFI targets.
- [`Cargo.toml`](./Cargo.toml) shows the necessary dependencies.
- [`src/main.rs`](./src/main.rs) has a minimal entry point that
initializes the `uefi-services` crate and exits successfully.
+3 -3
View File
@@ -49,10 +49,10 @@ For additional information, refer to the [UEFI specification][spec].
## MSRV
The uefi-rs crates currently require some [unstable features].
The nightly MSRV is currently 2022-11-22.
The minimum supported Rust version is currently 1.68, which is the first Rust
release that fully supports all necessary features on the stable channel.
[unstable features]: https://github.com/rust-osdev/uefi-rs/issues/452
In the future, our policy will be to support at least the past two stable releases.
## License
+1 -5
View File
@@ -54,11 +54,7 @@
//! - `panic-on-logger-errors` (enabled by default): Panic if a text
//! output error occurs in the logger.
//! - `unstable`: Enable functionality that depends on [unstable
//! features] in the nightly compiler. Note that currently the `uefi`
//! crate _always_ requires unstable features even if the `unstable`
//! feature is not enabled, but once a couple more required features
//! are stabilized we intend to make the `uefi` crate work on the
//! stable channel by default.
//! features] in the nightly compiler.
//! As example, in conjunction with the `alloc`-feature, this gate allows
//! the `allocator_api` on certain functions.
//!