Commit Graph

12 Commits

Author SHA1 Message Date
Nicholas Bishop be7a20cce1 uefi: Use unsafe_protocol! for all protocol impls
Switch all uses of `unsafe_guid!` + `derive(Protocol)` to using
`unsafe_protocol!`.

Also update the docstrings for the `Identify` and `Protocol` traits.
2022-12-26 18:10:19 -05:00
Nicholas Bishop a6bdfe54ad Replace build.py with the xtask pattern
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.
2022-01-19 15:04:08 +02:00
Nicholas Bishop 5b92cb3fc4 Move build.py to the root of the repo
build.py isn't really specific to uefi-test-runner; it has commands for
generating docs, running clippy, and running tests. Move it to the root
of the repo to reflect its broader role.

Updated various docs that reference build.py.
2021-12-23 15:14:48 +02:00
Gabriel Majeri 2165f878e0 Fix wrong link in contributing instructions 2021-12-12 16:06:30 -05:00
Gabriel Majeri ed1b3d8169 Document how to publish new versions of the crates 2021-12-12 16:06:30 -05:00
Gabriel Majeri 8aeac235ac Update and reorganize documentation 2021-11-29 18:36:30 -05:00
Nicholas Bishop 750888c2bb contributing: remove text about protocol macro limitations (#284) 2021-09-10 10:32:07 +03:00
Gabriel Majeri 520e586323 Clarify how new protocols can be defined 2020-12-07 12:52:32 +02:00
Gabriel Majeri 56375412e6 Tutorial on how to add protocols 2020-06-24 11:46:21 +03:00
Hadrien G 31585ae004 Update the contribution guide (#63)
- Clarify a few points of the workflow
- Add a section about UEFI FFI gotchas
2018-10-14 10:02:00 +02:00
Gabriel Majeri b4247eb514 Update contributing information 2018-06-05 08:43:08 +03:00
Gabriel Majeri f18c1a75c8 Expand documentation and break it into parts 2018-06-04 09:04:59 +03:00