-
Notifications
You must be signed in to change notification settings - Fork 157
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
Latest release of cortex-m-semihosting seems broken? #271
Comments
Relevant build script code: CC @jonas-schievink who I think worked on the prebuild static archives most recently in #262 |
We should probably mirror the build.rs changes made in this commit: 73a9d29#diff-d0d98998092552a1d3259338c2c71e118a5b8343dd4703c0c7f552ada7f9cb42 |
Seems like What if we symlink |
Yanked 0.4.0 |
@jonas-schievink, it seems to me like we could forward the |
yeah that should work |
Though it will mean c-m-sh 0.4 requires c-m 0.7 (not yet released) which is unfortunate, hm. |
273: c-m-sh: fix missing prebuilt binaries. closes #271 r=adamgreig a=adamgreig Adding a symlink to `../bin` allows `cargo package` to include a copy of the binary files in the resulting tarball, which means the build script is able to link them as normal. * We include the `-lto.a` files, but don't have an LTO_PLUGIN feature and so never use them * While this should work for all platforms to use from crates.io, it's not clear what e.g. Windows will do with the symlink when trying to use this as a path/patch dependency directly from the git repository. If it seems useful I could probably add a LTO feature the same as cortex-m, but I'd rather wait until we can have c-m-sh just directly use cortex-m's `syscall` method and then users can enable that feature in cortex-m themselves instead. If anyone has this set up on Windows and is able to see if you can still use this repository as a path dependency, that would be great! Co-authored-by: Adam Greig <adam@adamgreig.com>
Well, that didn't work so well.
|
What's the status on this? If I have a library that uses I'm a bit confused :) |
This should now be fixed by the new cortex-m-semihosting release v0.3.6, which supports either cortex-m 0.6 or cortex-m 0.7. |
299: Expose __syscall and add new bootstrap method r=jonas-schievink a=adamgreig We added `__syscall` in the new inline asm, but did not expose it in the crate API, and the cortex-m-semihosting crate can't use it directly because the pre-built binaries would contain duplicate symbols (#271). This PR renames it to `__sh_syscall` (since we could imagine other different syscalls; this one is explicitly semihosting with the `bkpt 0xAB`) and exposes it in `cortex_m::asm::sh_syscall`. This PR also adds the new methods discussed in #297 to permit sound bootstrapping, either from an MSP and RV or a vector table address. Co-authored-by: Adam Greig <adam@adamgreig.com>
After the 0.4.0 update of cortex-m-semihosting we are seeing breakage in RTIC CI pipeline as follows:
No idea what is actually wrong here, but it seems something broke in the latest release?
The text was updated successfully, but these errors were encountered: