Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.
Sign upBuild the rust-std component for embedded targets #49382
Comments
japaric
added
the
WG-embedded
label
Mar 26, 2018
This comment has been minimized.
This comment has been minimized.
|
cc @phil-opp |
This comment has been minimized.
This comment has been minimized.
|
Part of this is also integrating CI for embedded targets, especially
|
This comment has been minimized.
This comment has been minimized.
Are you sure it's "last resort"? IME nearly all embedded code is built with |
This comment has been minimized.
This comment has been minimized.
|
@whitequark sorry, "last resort" wasn't a very descriptive phrase. It was meant as a "last resort for someone trying to reduce their code size due to going over their target size limit when using In context, we were talking about making a regression test that would gate Rust releases if the size increased dramatically for embedded targets. Initially we were planning to use a |
japaric
added a commit
that referenced
this issue
Apr 1, 2018
japaric
referenced this issue
Apr 1, 2018
Merged
add a dist builder to build rust-std components for the THUMB targets #49563
This comment has been minimized.
This comment has been minimized.
|
PR #49563 build rust-std for ARM Cortex-M. |
alexcrichton
added a commit
to alexcrichton/rust
that referenced
this issue
Apr 5, 2018
alexcrichton
added a commit
to alexcrichton/rust
that referenced
this issue
Apr 5, 2018
kennytm
added a commit
to kennytm/rust
that referenced
this issue
Apr 5, 2018
kennytm
added a commit
to kennytm/rust
that referenced
this issue
Apr 5, 2018
This comment has been minimized.
This comment has been minimized.
necrose99
commented
May 25, 2018
oli-obk
added
the
P-high
label
Jun 3, 2018
This comment has been minimized.
This comment has been minimized.
|
This has been done for the thumb targets and there's an open PR for msp430 so I'm going to close this issue in favor of that open PR. |
japaric
closed this
Jun 21, 2018
This comment has been minimized.
This comment has been minimized.
The PR is #51250 |
japaric commentedMar 26, 2018
•
edited
This is a P-high embedded-WG issue that needs to be fixed to make embedded Rust work on stable.
Targets like
thumbv7m-none-eabineed to use Xargo, which requires nightly, because there's nopre-compiled
corecrate (i.e.rustup target add thumbv7m-none-eabidoesn't work).To fastest way to remove this nightly dependency is to provide a
rust-stdcomponent (pre-compiledcore) for the embedded targets. Then users would be able to use
rustup target thumbv7m-none-eabi; cargo build --target thumbv7m-none-eabifor embedded development.The embedded targets
rustccurrently supports are:thumbv6m-none-eabithumbv7m-none-eabithumbv7em-none-eabithumbv7em-none-eabihfmsp430-none-elfThe Thumb targets have a more stable LLVM backend so we can commit to always building
coreforthat target. The MSP430 backend is slightly less stable so we don't want to block the PR pipeline if
building
corefor the MSP430 target breaks.This issue can be split in two parts:
rust-stdbuilds for the 4 Thumb targets. Gating oncorebuilding for those targets.core/stdbuild fail, and enablerust-stdbuilds for theMSP430 target. We won't gate on
corebuilding for the MSP430 target.cc @alexcrichton who can give more info about how to implement this
cc @pftbest