mirror of
https://github.com/rust-osdev/uefi-rs
synced 2026-06-08 17:17:36 +00:00
Update docs for the switch from nightly to stable
This commit is contained in:
@@ -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`
|
||||
|
||||
@@ -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
@@ -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
@@ -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
@@ -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.
|
||||
//!
|
||||
|
||||
Reference in New Issue
Block a user