[Buildroot] Adding support for the Rust programming language
Eric Le Bihan
eric.le.bihan.dev at free.fr
Fri Apr 8 20:45:41 UTC 2016
Hi all!
I've posted a series of articles about using the Rust programming
language in a Buildroot environment [1].
Rust [2] is a modern, compiled, programming language, oriented towards
safety, memory control and concurrency. Its performances are comparable
to C++.
Rust's features make it a good candidate for writing programs for
embedded systems.
This series will hopefully lead to some patches for properly supporting
Rust in Buildroot.
As explained in one article [3], the Rust compiler is based on LLVM
[4]. When configuring the build, the targeted architecture is given by
its GNU triplet (e.g. "arm-buildroot-linux-gnueabihf"). By default, the
compiler is built with support for x86, ARM and MIPS support
(unfortunately, there is no option to narrow the selection). Then the
Rust standard library is cross-compiled for the configured architecture.
Support for the target is achieved by providing two files:
- the target configuration file: a Makefile fragment where, among
others, the name of of the cross-compiler is given.
- the target specification file: a JSON file describing the
architecture (CPU type, OS, etc).
So, in the future patch series that will properly add support for Rust
in Buildroot:
1. Would it be acceptable to provide a script to generate these files
from the Buildroot configuration file?
2. Would Python be a suitable language for this script? It is better
suited for playing with complex structures and JSON than pure shell.
Comments welcomed.
[1] http://www.elebihan.com/categories/rust.html
[2] https://rust-lang.org/
[3] http://www.elebihan.com/posts/using-rust-with-buildroot-full-build.html
[4] https://llvm.org/
Best regards,
--
ELB
More information about the buildroot
mailing list