esp-rs / rust

Rust for the xtensa architecture. Built in targets for the ESP32 and ESP8266
https://www.rust-lang.org
Other
744 stars 39 forks source link

Build the core crate in the CI #79

Closed lexxvir closed 2 years ago

lexxvir commented 3 years ago

Hi there,

It would be nice, if the CI that builds Rust compiler for Xtensa also build and distribute the core crate for Xtensa arch.

I know that in the embedded world it's usual case to build the core crate with specific optimizations (debug vs release) that required in particular case. But in my daily work I never touch or rebuild the core crate.

Thanks in advance!

georgik commented 2 years ago

Thank you @lexxvir for the suggestion. We already included some tools in binary form in 1.57.0.2 build: --tools=clippy,cargo,rustfmt Example of build workflow: https://github.com/esp-rs/rust-build/blob/main/.github/actions/build/build-tools/action.yaml#L14

Any about which flag is required to build the binary core and include it in dist artifact? Configuration script in Rust source code dir is:src/bootstrap/configure.py

The issue scheduled for v1.58 build.

lexxvir commented 2 years ago

Hi @georgik !

Sorry, I don't certainly know what should be done. I think we need the same "settings" as for thumb* targets. After brief searching I found two places in the repo that need to tweak:

  1. The Dockerfile
  2. And maybe the build-manifest.
MabezDev commented 2 years ago

We heavily rely on the build-std feature for both core and std builds so I don't think we'll look to do this now, thanks for the suggestion though!