Привет всем. Вся моя работа над UEFI Rust std была перенесена в tianocore/rust. Это должно помочь сделать больше вкладов как со стороны Tianocore, так и со стороны Rust. Этот пост — просто своего рода введение в новый репозиторий и как начать работу.
Документация
Документацию по std-реализации UEFI можно найти в src/doc/rustc/src/platform-support/unknown-uefi.md
. Его можно собрать с помощью x.py
:
./x.py doc src/doc/rustc/ --open
Здесь описаны требования и ограничения текущего std для UEFI. Он также содержит несколько примеров для начала работы.
Рабочий процесс разработки
Репозиторий tianocore/rust принимает PR. Я также буду принимать патчи в списке рассылки edk2 (мой e-mail: ayushdevel1325@gmail.com).
Запуск тестов локально
Запуск тестов для UEFI осуществляется с помощью remote-test-server
и remote-test-client
, как описано в моем предыдущем сообщении. Единственное, что я хотел бы изменить в этом руководстве, это команду для запуска тестов:
RUST_TEST_THREADS=1 TEST_DEVICE_ADDR="localhost:12345" ./x.py test src/test/ui/{FILE or Directory} --target x86_64-unknown-uefi --stage 1
Запуск тестов в однопоточном режиме, даже на стороне хоста, исправляет множество тестов, которые не работают из-за таймаута.
Заключение
Этот пост был написан с целью распространения информации об этой работе, чтобы больше людей могли экспериментировать и оставлять свои отзывы о ней.