-
Notifications
You must be signed in to change notification settings - Fork 43
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
Add xtensa-esp32-espidf
#76
Comments
Our main concern with adding targets that aren't in upstream Rust is that once we add a string, it's awkward to change its meaning or to remove it, if it later turns out that we want something different.
Is Beyond that, I myself am unfamiliar with the |
Oke, I generally understand your point. I am relatively new to the field of embedded rust as well, so I might not be the perfect person to ask. But to still give some reasoning:
Yes, Xtensa is quite well established with both a well defined ISA (instruction set architecture here) and it's widely popularity.
esp32 is the name of a specific chip. The company espressif builts widely used micro controllers that are very accessible (at least in Germany). They've recently increased their rust support with a compiler fork that supports the standard library and multiple other tooling in and for Rust. I don't know if it meets the criteria of a custom vendor, but it's at least "not specifically recognized by upstream Autotools, LLVM, Rust". There are also multiple other chip families built by espressif, current rust support is available for the chips The OS, or environment is called Generally esp32 and espidf aren't words that change in the future as one is a already well established chip and the other an interface for all espressif chips. |
Target strings aren't sequences of arbitrary identifiers; they're In the Rust toolchain, what are the values for |
target xtensa_esp32_espidf has: target riscv32imc_esp_espidf has: |
Ah oke I see. But how should target lexicon treat this then? The 'real' target string for I don't know if you would like to add this, but I think that as the availability of standard library usage on the espressif chips was enabled, more people could stumble accross this issue, just like me. |
It sounds like adding Alternatively, do you know which package is depending on |
Oke, I am going to file a PR for that I think. The crate I would like to build is the wasmer WASM runtime. It currently also doesn't compile with a fix for target-lexicon for other reasons, but it's generally rather difficult to change wasmer's usage of target lexicon I think. |
Would it be possible to add the
xtensa-esp32-espidf
target? It's the target for an esp32 chip with the standard library implemented in espressifs rust fork.The text was updated successfully, but these errors were encountered: