Skip to content

RISC-V GNU/Linux as host platform #72973

New issue

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

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

Already on GitHub? # to your account

Merged
merged 1 commit into from
Jul 16, 2020
Merged

Conversation

msizanoen1
Copy link
Contributor

This PR add a new builder named dist-riscv64-linux that builds the compiler toolchain for RISC-V 64-bit GNU/Linux.

r? @alexcrichton

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jun 4, 2020
@msizanoen1
Copy link
Contributor Author

@rustbot modify labels: +O-riscv +O-linux +T-infra

@rustbot rustbot added O-linux Operating system: Linux O-riscv Target: RISC-V architecture T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. labels Jun 4, 2020
@msizanoen1
Copy link
Contributor Author

@tblah

@tblah
Copy link
Contributor

tblah commented Jun 4, 2020

Looks good to me, thanks!

@alexcrichton
Copy link
Member

Code-wise this looks ok, but I'll leave it up to @pietroalbini for the final approval to confirm the infra team has capacity for this.

r? @pietroalbini

@pietroalbini
Copy link
Member

This adds RISC-V as a Tier 2 platform, has the compiler team approved the change?

@msizanoen1
Copy link
Contributor Author

It is already a tier 2 platform.

@msizanoen1
Copy link
Contributor Author

rust-lang/rust-forge#356

@pietroalbini
Copy link
Member

It is already a tier 2 platform.

Well, it's a tier 2 cross-compilation platform, but this PR moves it to a tier 2 host platform, which increases the amount of things we test on CI.

@nikomatsakis does the compiler team want to weight on moving RISC-V Linux to a tier 2 host platform (it's just a tier 2 cross-compilation platform now)?

@kinnison
Copy link
Contributor

kinnison commented Jun 8, 2020

For reference, rustup is ready to provide a binary on this target thanks to the work of @tblah

@nikomatsakis
Copy link
Contributor

I'm comfortable with adding new tier platforms if the infra support is there and if we setup a group of folks to notify for help when problems arise. I've been a bit slow in doing the work to create that group for windows, but I think we could readily create a group for RISC-V at the same time.

@nikomatsakis
Copy link
Contributor

(I didn't mean that to be the "opinion of the @rust-lang/compiler team", though. We don't really have a clear set of rules for what it takes to move something from Tier to Tier. I have to review what we said in our design meeting to remember how we felt about this.)

@nikomatsakis
Copy link
Contributor

So you may have seen the recent announcement of our Windows and ARM notification groups -- I'd like to setup something similar for RISC-V, but otherwise I am happy to accept the group as Tier 2.

I don't think we've quite worked out what are the requirements to "move forward" around Tiers and the like. The draft RFC states that "Any new tier 2 target requires compiler team approval based on these requirements", but it's not very clear on what "compiler team approval" means.

I think something like an MCP would be a reasonable way to advertise this change. I would happily second such a proposal, presuming that Infra gives the ok and that we can find >=2 volunteers to be on the "notification list" for RISC-V.

@pietroalbini
Copy link
Member

By the way, we need to discuss a bit inside the infrastructure team on whether we have the capacity to add extra builders or not.

@chaozju
Copy link

chaozju commented Jun 13, 2020

@msizanoen1
Hi !

Is there a beta way to boot riscv host rust?

I tried on your branch for native compiling in qemu but in some ways still failed

@pietroalbini
Copy link
Member

In today's infrastructure team meeting we approved allocating one builder for riscv64-unknown-linux-gnu. I'll defer to the compiler team for a final approval of the uplift to Host Tier 2.

@Elinvynia Elinvynia removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 2, 2020
@nikomatsakis
Copy link
Contributor

nikomatsakis commented Jul 9, 2020

@pietroalbini rust-lang/compiler-team#312 has been approved, so compiler team signs off on this

@pietroalbini
Copy link
Member

Thanks!

@bors r+ rollup=iffy

@bors
Copy link
Collaborator

bors commented Jul 15, 2020

📌 Commit 933ba82 has been approved by pietroalbini

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-team Status: Awaiting decision from the relevant subteam (see the T-<team> label). labels Jul 15, 2020
bors added a commit to rust-lang-ci/rust that referenced this pull request Jul 16, 2020
…arth

Rollup of 14 pull requests

Successful merges:

 - rust-lang#72973 (RISC-V GNU/Linux as host platform)
 - rust-lang#73918 (Clean up E0715 explanation)
 - rust-lang#73959 (Clean up E0716 explanation)
 - rust-lang#74119 (Remove `Compiler::compile()`.)
 - rust-lang#74196 (Add option to collapse automatically implementors)
 - rust-lang#74218 (Add margin after doc search results)
 - rust-lang#74276 (improve DiscriminantKind handling)
 - rust-lang#74291 (Added docs for `From<c_int>` for `ExitStatus`)
 - rust-lang#74294 (Update cross-compilation README)
 - rust-lang#74337 (Handle case of incomplete local ty more gracefully)
 - rust-lang#74344 (Remove string comparison and use diagnostic item instead)
 - rust-lang#74347 (Initialize default providers only once)
 - rust-lang#74353 (Edit docs for rustc_middle::dep_graph::dep_node)
 - rust-lang#74374 (Add a 1.45 release note on lto vs. embed-bitcode)

Failed merges:

 - rust-lang#74251 (Teach bootstrap about target files vs target triples)

r? @ghost
@bors bors merged commit af3d4cb into rust-lang:master Jul 16, 2020
@msizanoen1 msizanoen1 deleted the riscv-host branch July 16, 2020 06:31
Manishearth added a commit to Manishearth/rust that referenced this pull request Jul 16, 2020
… r=pietroalbini

Add RISC-V GNU/Linux to src/tools/build-manifest as a host platform

Missed during rust-lang#72973
Manishearth added a commit to Manishearth/rust that referenced this pull request Jul 16, 2020
… r=pietroalbini

Add RISC-V GNU/Linux to src/tools/build-manifest as a host platform

Missed during rust-lang#72973
tblah added a commit to tblah/rustup that referenced this pull request Jul 16, 2020
tblah added a commit to tblah/rustup that referenced this pull request Jul 16, 2020
Manishearth added a commit to Manishearth/rust that referenced this pull request Jul 16, 2020
… r=pietroalbini

Add RISC-V GNU/Linux to src/tools/build-manifest as a host platform

Missed during rust-lang#72973
Manishearth added a commit to Manishearth/rust that referenced this pull request Jul 16, 2020
… r=pietroalbini

Add RISC-V GNU/Linux to src/tools/build-manifest as a host platform

Missed during rust-lang#72973
Manishearth added a commit to Manishearth/rust that referenced this pull request Jul 16, 2020
… r=pietroalbini

Add RISC-V GNU/Linux to src/tools/build-manifest as a host platform

Missed during rust-lang#72973
Manishearth added a commit to Manishearth/rust that referenced this pull request Jul 17, 2020
… r=pietroalbini

Add RISC-V GNU/Linux to src/tools/build-manifest as a host platform

Missed during rust-lang#72973
Manishearth added a commit to Manishearth/rust that referenced this pull request Jul 17, 2020
… r=pietroalbini

Add RISC-V GNU/Linux to src/tools/build-manifest as a host platform

Missed during rust-lang#72973
workingjubilee pushed a commit to workingjubilee/rustup that referenced this pull request Aug 10, 2020
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
O-linux Operating system: Linux O-riscv Target: RISC-V architecture S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.