Skip to content

Feat/split bindings #54

Feat/split bindings

Feat/split bindings #54

Workflow file for this run

name: Rust
on:
push:
branches: ["main"]
pull_request:
branches: ["main"]
env:
CARGO_TERM_COLOR: always
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: ⚡ Cache
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ runner.os }}-cargo
- name: Install ARM GCC toolchain
run: |
sudo apt-get update
sudo apt-get install -y gcc-arm-none-eabi
- name: Set permissions
run: chmod +x d
- name: Load sources
run: ./d download-all
- name: Run build
run: cargo run --release --bin stm32-bindings-gen
- name: Check wba-linklayer
run: cargo check --manifest-path wba-linklayer/Cargo.toml
- name: Run package build
run: |
export CARGO_BUILD_TARGET=thumbv8m.main-none-eabihf
for crate_dir in wba-bindings; do
echo "::group::Packaging ${crate_dir}"
(
cd build/${crate_dir}
cargo fix --lib --allow-no-vcs --target ${CARGO_BUILD_TARGET}
cargo build --target ${CARGO_BUILD_TARGET}
cargo package
ls target/package
)
echo "::endgroup::"
done
- name: Upload package build
uses: actions/upload-artifact@v4
with:
name: crate
path: build/*-bindings/target/package/*.crate