You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
262: Add testing linker=arm-none-eabi-gcc and MSRV to CI r=therealprof a=adamgreig
Replacing #260.
This PR extends our current tests with `linker=rust-lld` and `linker=arm-none-eabi-ld` to include `linker=arm-none-eabi-gcc`, since those options are all included in our example [`.cargo/config`](https://github.com/rust-embedded/cortex-m-rt/blob/master/.cargo/config). It looks like another linker only adds a handful of seconds to CI, since most time is spent building dependencies once.
It also adds a test with Rust 1.32.0 to the CI as a candidate MSRV. Building with 1.31.0 fails because of the dev-dependency on cortex-m-semihosting 0.3.5:
```
error[E0658]: using the `?` macro Kleene operator for "at most one" repetition is unstable (see issue #48075)
--> /home/adam/.cargo/registry/src/gb.xjqchip.workers.dev-1ecc6299db9ec823/cortex-m-semihosting-0.3.5/src/macros.rs:111:25
|
111 | ($($val:expr),+ $(,)?) => {
| ^
error: expected `*` or `+`
```
That's just a test error which end users wouldn't experience, so we could consider making 1.31.0 the MSRV and working around the c-m-semihosting issue. I don't know if there are other 1.31.0 issues.
Finally the PR removes the travis check preventing builds on pushes to master. In principle we know that builds to master succeed because bors tests them before pushing, so adding the extra check mostly means we get a well-defined build status from Travis for flags etc. The build times for cortex-m-rt (around 3min overall) are a bit longer than r0 (where we did the same thing), so we could just run a minimal test here instead. I don't think it's a significant overhead given how infrequently we push to master, though.
Co-authored-by: Adam Greig <[email protected]>
0 commit comments