Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

doc: C2Rust does not need patching any more. #17536

Merged
merged 1 commit into from
Mar 9, 2022

Conversation

chrysn
Copy link
Member

@chrysn chrysn commented Jan 18, 2022

Contribution description

C2Rust has accepted most of the patches in the current for-riot; what's left needs riot-sys fixes anyway on the long run.

Testing procedure

  • Look at the docs.

For full testing:

  • Install C2Rust as documented (replacing any old C2Rust installation)
  • Build any of the Rust examples (ideally rust-gcoap as it has the largest coverage) on native and a cortex-m board (and on a RISC-V board if overtaken by cpu/riscv_common: Enable Rust applications #17520)

Issues/PRs references

A sibling PR on riotdocker is RIOT-OS/riotdocker#173.

Status

This is on hold as a draft because it still depends on two things:

  • The no-llvm-asm branch of riot-wrappers to be merged, released and the Cargo.lock files here to be updated to use it, and
  • the sibling riotdocker PR that performs the same steps under automation. (That, in turn, will need to wait for the release to have completed).

[edit: Finish incomplete sentence, cross-link to sibling PR; turned into bulled list after first blocker is resolved].

@github-actions github-actions bot added the Area: doc Area: Documentation label Jan 18, 2022
bors bot added a commit to RIOT-OS/riotdocker that referenced this pull request Mar 9, 2022
173: C2Rust: Use upstream as patches are not required any more r=kaspar030 a=chrysn

C2Rust has accepted most of the patches in the current for-riot; what's left needs riot-sys fixes anyway on the long run.

### Issues/PRs references

A sibling PR on RIOT docs is RIOT-OS/RIOT#17536

### Status

This is on hold as a draft because it still depends on two things:

* [x] The no-llvm-asm branch of riot-wrappers to be merged, released and the Cargo.lock files here to be updated to use it, and
* [x] The unpatched C2Rust won't work for older Rust-on-RIOT versions (fixable with a `cargo update`, but that shouldn't be necessary for users to do to run the demos), so this will need to wait until the current release is through
 
-- and then maybe some time for good measure as to not cause any trouble for people on branches that haven't received the no-llvm-asm riot-wrappers update from RIOT yet.

[edit: Turned into a checklist, as first item is done]

Co-authored-by: chrysn <chrysn@fsfe.org>
@chrysn chrysn force-pushed the use-upstream-c2rust branch from 2283b02 to b5bcedd Compare March 9, 2022 11:07
@chrysn chrysn force-pushed the use-upstream-c2rust branch from b5bcedd to 01573a1 Compare March 9, 2022 11:10
@chrysn
Copy link
Member Author

chrysn commented Mar 9, 2022

With RIOT-OS/riotdocker#173 merged this is now ready for prime time too.

Tests for this are thus already performed in riotdocker (and additionally on every single build once the latest riotbuild images are rolled out).

Rebased to resolve conflicts and a grammar error.

@chrysn chrysn requested a review from kaspar030 March 9, 2022 11:10
@chrysn chrysn marked this pull request as ready for review March 9, 2022 11:10
@chrysn chrysn requested review from aabadie and jia200x as code owners March 9, 2022 11:10
@chrysn chrysn added CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR Impact: minor The PR is small in size and might only require a quick look of a knowledgeable reviewer labels Mar 9, 2022
@benpicco benpicco added the CI: skip compile test If set, CI server will run only non-compile jobs, but no compile jobs or their dependent jobs label Mar 9, 2022
@benpicco benpicco merged commit 6eb9a70 into RIOT-OS:master Mar 9, 2022
@chrysn chrysn deleted the use-upstream-c2rust branch March 10, 2022 11:59
@chrysn
Copy link
Member Author

chrysn commented Mar 10, 2022

Just "master" is insufficient; as they update their branch, the required nightly version may change. Last time I checked (which was admittedly some time before filing this PR), there was no usable tag on the branch (I just changed this when they merged all my relevant pending PRs).

Recent developments indicate that this will not happen until the point where they switch from nightly to stable, but that's all not fully clear yet.

@OlegHahm OlegHahm added this to the Release 2022.04 milestone Apr 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: doc Area: Documentation CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR CI: skip compile test If set, CI server will run only non-compile jobs, but no compile jobs or their dependent jobs Impact: minor The PR is small in size and might only require a quick look of a knowledgeable reviewer
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants