Hi Pedro. Bare Rust already works in UEFI. In fact, UEFI support for
no_std Rust has been present upstream for a few years. However, as you
might be able to guess, bare Rust without any allocation and use of
external crates simply did not provide enough benefits over C to migrate
older projects to it. Additionally, without std, it's difficult to do
enough significant testing to generate enough confidence in a new
language like this.
Also to clarify, using Rust std in an application does not mean the
whole std will be bundled with the application. Only the parts of std
that are actually used by the application will be bundled in the final
binary.
You can find more information about what is already present in upstream
Rust for UEFI here:
https://doc.rust-lang.org/nightly/rustc/platform-support/unknown-uefi.html
There is also some talks about promoting UEFI target to Tier-2, and
having an std implementation will certainly help with that.
Yours Sincerely.
Ayush Singh
On 8/1/22 22:56, Pedro Falcato wrote:
Hi,
May I suggest you just port the bare rust language (no crates, no std)
to EDK2? It seems far more plausible to expect people to use a cut
down version with some bindings to the rest of the project instead of
hoping people just use the whole of rust, a lot of which isnt proven
(or even used AFAIK) in bare metal projects. Porting just the bare
minimum is way more realistic in my opinion.
Thanks,
Pedro
On Mon, 1 Aug 2022, 18:02 Ayush Singh, <ayushdevel1...@gmail.com> wrote:
Hello everyone. In the previous email thread [1], I discussed the
proposal to move Rust std work to edk2-staging and mentioned its
potential problems. After some discussion with mentors, we arrived at
the conclusion to have a rustlang [2] fork under the Tianocore
organization, and move all the std related work there. We can then
open
a PR upstream from there, while allowing PRs in this repository. This
should help provide an easier and streamlined way for people to
experiment and work on this project while it is in the process of
being
merged upstream.
For a status update about tests:
- passed: 12797
- failed: 40
- ignored: 375
Yours Sincerely,
Ayush Singh
[1]: https://edk2.groups.io/g/devel/message/91989
[2]: https://github.com/rust-lang/rust
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#92021): https://edk2.groups.io/g/devel/message/92021
Mute This Topic: https://groups.io/mt/92752888/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-