Install Rust in docker image, add Rust library and build rules (#41)

* Install Rust in docker image

* Also install thumbv7em-none-eabi target

* Install Rust in docker image

* Also install thumbv7em-none-eabi target

* Add Rust example

* Link to the Rust example

* Call function from the Rust lib

* Move PROJECT_DIR to the 'paths' section

* Fix target_f1 build

* Link to the Rust library in target_f1

* Generate cbindgen bindings

* Add forgotten dependency line

* Use panic=abort instead of eh_personality lang item

* Install Rust in docker image

* Also install thumbv7em-none-eabi target

* Add Rust example

* Link to the Rust example

* Call function from the Rust lib

* Move PROJECT_DIR to the 'paths' section

* Link to the Rust library in target_f1

* Generate cbindgen bindings

* Add forgotten dependency line

* Use panic=abort instead of eh_personality lang item

* add rust call test

Co-authored-by: aanper <mail@s3f.ru>
This commit is contained in:
Vadim Kaushan
2020-08-26 13:08:20 +03:00
committed by GitHub
parent 046a20fa0e
commit 1bec8dd23a
11 changed files with 478 additions and 11 deletions

View File

@@ -2,9 +2,13 @@ FROM ubuntu:18.04
RUN apt-get update && apt-get install -y --no-install-recommends \
make gcc-arm-none-eabi binutils-arm-none-eabi libnewlib-arm-none-eabi \
autoconf automake libtool curl wget g++ unzip && \
autoconf automake libtool curl wget g++ unzip build-essential curl && \
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN apt-get update && apt-get install -y --no-install-recommends \
python python-pip libstdc++-arm-none-eabi-newlib && \
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
RUN curl https://sh.rustup.rs -sSf | sh -s -- -y --profile=minimal --target thumbv7em-none-eabi thumbv7em-none-eabihf
ENV PATH="/root/.cargo/bin:${PATH}"
ENV USER=root