Add build recipe

This commit is contained in:
urob 2024-08-07 16:20:32 -04:00
parent ec499f9692
commit a3a0090d23
3 changed files with 22 additions and 7 deletions

2
.gitignore vendored
View file

@ -1,5 +1,7 @@
.build
.direnv .direnv
.venv .venv
.west .west
modules modules
firmware
zmk zmk

View file

@ -1,13 +1,25 @@
default: default:
@just --list --unsorted @just --list --unsorted
# build firmware build := ".build"
build: out := "firmware"
echo "Building firmware..."
# clear build cache # build firmware
build board *args:
#!/usr/bin/env bash
set -euo pipefail
BUILD="{{build}}/{{board}}"
echo "Building firmware..."
west build -d "$BUILD" -s zmk/app -b {{board}} {{args}} -- -DZMK_CONFIG="{{absolute_path('config')}}"
if [[ -f "$BUILD/zephyr/zmk.uf2" ]]; then
mkdir -p {{out}} && cp "$BUILD/zephyr/zmk.uf2" "{{out}}/{{board}}.uf2"
else
mkdir -p {{out}} && cp "$BUILD/zephyr/zmk.bin" "{{out}}/{{board}}.bin"
fi
# clear build cache and artifacts
clean: clean:
rm -rf build rm -rf {{build}} {{out}}
# list all build targets # list all build targets
list: list:

View file

@ -20,10 +20,11 @@
in { in {
devShells.${system}.default = pkgs.mkShell { devShells.${system}.default = pkgs.mkShell {
packages = [ packages = [
zephyr.sdkFull zephyr.hosttools
zephyr.pythonEnv zephyr.pythonEnv
# zephyr.hosttools zephyr.sdkFull
pkgs.cmake pkgs.cmake
pkgs.dtc
pkgs.ninja pkgs.ninja
]; ];
}; };