Firmware for the b-parasite board, but in Rust.

Use Zig and cargo-zigbuild for CI

+19 -1
+18
.tangled/workflows/test.yml
··· 7 7 dependencies: 8 8 nixpkgs: 9 9 - rustup 10 + - stdenv 11 + - clang 12 + - libclang 10 13 11 14 steps: 15 + - name: Env Setup 16 + command: | 17 + export LIBCLANG_PATH=$(nix eval --raw nixpkgs#libclang)/lib 18 + export BINDGEN_EXTRA_CLANG_ARGS="$(< $(nix eval --raw nixpkgs#stdenv.cc)/nix-support/libc-crt1-cflags) \ 19 + $(< $(nix eval --raw nixpkgs#stdenv.cc)/nix-support/libc-cflags) \ 20 + $(< $(nix eval --raw nixpkgs#stdenv.cc)/nix-support/cc-cflags) \ 21 + $(< $(nix eval --raw nixpkgs#stdenv.cc)/nix-support/libcxx-cxxflags) \ 22 + -isystem $(nix eval --raw nixpkgs#stdenv.cc.cc)/include/c++/$(nix eval --raw nixpkgs#stdenv.cc.cc --apply '(builtins.getFlake "nixpkgs").lib.getVersion' --impure) \ 23 + -isystem $(nix eval --raw nixpkgs#stdenv.cc.cc)/include/c++/$(nix eval --raw nixpkgs#stdenv.cc.cc --apply '(builtins.getFlake "nixpkgs").lib.getVersion' --impure)/$(nix eval --raw nixpkgs#stdenv.hostPlatform.config) \ 24 + -idirafter $(nix eval --raw nixpkgs#stdenv.cc.cc)/lib/gcc/$(nix eval --raw nixpkgs#stdenv.hostPlatform.config)/$(nix eval --raw nixpkgs#stdenv.cc.cc --apply '(builtins.getFlake "nixpkgs").lib.getVersion' --impure)/include \ 25 + " 12 26 - name: Install Nightly 13 27 command: rustup toolchain install nightly 14 28 - name: Install toolchain 15 29 command: rustup +nightly target install thumbv7em-none-eabihf 16 30 - name: Format Check 17 31 command: cargo fmt --check 32 + - name: Defmt Build 33 + command: cargo build --release --locked 34 + - name: Plain Build 35 + command: cargo build --release --locked --no-default-features
+1 -1
Cargo.toml
··· 20 20 codegen-units = 1 21 21 22 22 [profile.release] 23 - debug = false 23 + debug = true 24 24 lto = true 25 25 opt-level = "z" 26 26 codegen-units = 1