|
1 |
| -<div align="center"> |
2 |
| - <picture> |
3 |
| - <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/rust-lang/www.rust-lang.org/master/static/images/rust-social-wide-dark.svg"> |
4 |
| - <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/rust-lang/www.rust-lang.org/master/static/images/rust-social-wide-light.svg"> |
5 |
| - <img alt="The Rust Programming Language: A language empowering everyone to build reliable and efficient software" |
6 |
| - src="https://raw.githubusercontent.com/rust-lang/www.rust-lang.org/master/static/images/rust-social-wide-light.svg" |
7 |
| - width="50%"> |
8 |
| - </picture> |
| 1 | +# The Rust Programming Language for Espressif chips |
9 | 2 |
|
10 |
| -[Website][Rust] | [Getting started] | [Learn] | [Documentation] | [Contributing] |
11 |
| -</div> |
| 3 | +This fork enables projects to be built for the Xtensa-based ESP32, ESP32-SXX and ESP8266 using [Espressif's llvm fork](https://github.com/espressif/llvm-project). (RiscV chips like ESP32-CXX are already supported in stock Rust.) |
12 | 4 |
|
13 |
| -This is the main source code repository for [Rust]. It contains the compiler, |
14 |
| -standard library, and documentation. |
| 5 | +Moreover, this fork enables Rust STD support (networking, threads, and filesystem) for all chips in the ESP32 family (Xtensa and RiscV), by optionally linking with the ESP-IDF framework. |
15 | 6 |
|
16 |
| -[Rust]: https://www.rust-lang.org/ |
17 |
| -[Getting Started]: https://www.rust-lang.org/learn/get-started |
18 |
| -[Learn]: https://www.rust-lang.org/learn |
19 |
| -[Documentation]: https://www.rust-lang.org/learn#learn-use |
20 |
| -[Contributing]: CONTRIBUTING.md |
| 7 | +The [esp-rs](https://github.com/esp-rs) organization has been formed to develop runtime, pac and hal crates for the Espressif chips (bare-metal as well as ESP-IDF based). |
21 | 8 |
|
22 |
| -## Why Rust? |
| 9 | +Join in on the discussion: https://matrix.to/#/#esp-rs:matrix.org! |
23 | 10 |
|
24 |
| -- **Performance:** Fast and memory-efficient, suitable for critical services, embedded devices, and easily integrated with other languages. |
| 11 | +## Installation |
25 | 12 |
|
26 |
| -- **Reliability:** Our rich type system and ownership model ensure memory and thread safety, reducing bugs at compile-time. |
| 13 | +Please see the most up to date instructions in the [esp rust book](https://esp-rs.github.io/book/). |
27 | 14 |
|
28 |
| -- **Productivity:** Comprehensive documentation, a compiler committed to providing great diagnostics, and advanced tooling including package manager and build tool ([Cargo]), auto-formatter ([rustfmt]), linter ([Clippy]) and editor support ([rust-analyzer]). |
| 15 | +## Building from source |
29 | 16 |
|
30 |
| -[Cargo]: https://github.com/rust-lang/cargo |
31 |
| -[rustfmt]: https://github.com/rust-lang/rustfmt |
32 |
| -[Clippy]: https://github.com/rust-lang/rust-clippy |
33 |
| -[rust-analyzer]: https://github.com/rust-lang/rust-analyzer |
| 17 | +If you wish to build this fork from source, the instructions are almost identical to the ones upstream ([follow here](https://github.com/rust-lang/rust#installing-from-source)), however before beginning the build, run the following `./configure` command: |
34 | 18 |
|
35 |
| -## Quick Start |
36 |
| - |
37 |
| -Read ["Installation"] from [The Book]. |
38 |
| - |
39 |
| -["Installation"]: https://doc.rust-lang.org/book/ch01-01-installation.html |
40 |
| -[The Book]: https://doc.rust-lang.org/book/index.html |
41 |
| - |
42 |
| -## Installing from Source |
43 |
| - |
44 |
| -If you really want to install from source (though this is not recommended), see |
45 |
| -[INSTALL.md](INSTALL.md). |
46 |
| - |
47 |
| -## Getting Help |
48 |
| - |
49 |
| -See https://www.rust-lang.org/community for a list of chat platforms and forums. |
50 |
| - |
51 |
| -## Contributing |
52 |
| - |
53 |
| -See [CONTRIBUTING.md](CONTRIBUTING.md). |
| 19 | +``` |
| 20 | +./configure --experimental-targets=Xtensa --release-channel=nightly --enable-extended --tools=clippy,cargo,rustfmt --enable-lld |
| 21 | +``` |
54 | 22 |
|
55 | 23 | ## License
|
56 | 24 |
|
|
0 commit comments