Add initial project structure and implement async main for Pico W

This commit is contained in:
2026-06-04 15:15:22 -05:00
parent 14d0015845
commit 7b44d1b0c2
+22 -9
View File
@@ -1,26 +1,39 @@
DIRENV := $(shell command -v direnv 2> /dev/null) DIRENV := $(shell command -v direnv 2> /dev/null)
# If we have direnv and we're not already in the environment, re-exec via direnv
ifdef DIRENV ifdef DIRENV
EXEC := direnv exec . ifeq ($(origin DIRENV_DIR), undefined)
# Ensure direnv is allowed
_ALLOW := $(shell direnv allow . > /dev/null 2>&1)
# Re-exec make via direnv
EXEC := direnv exec . $(MAKE)
build run test clean flatpak-build:
@$(EXEC) $@
else
# We are already inside direnv, or direnv is not available
EXEC :=
endif
else else
EXEC := EXEC :=
endif endif
ifndef EXEC
build: build:
$(EXEC) cargo build cargo build
run: run:
$(EXEC) cargo run cargo run
test: test:
$(EXEC) cargo test cargo test
clean: clean:
$(EXEC) cargo clean cargo clean
.PHONY: build run test clean
# Flatpak build target # Flatpak build target
.PHONY: flatpak-build .PHONY: flatpak-build
flatpak-build: flatpak-build:
$(EXEC) flatpak-builder --force-clean build-flatpak flatpak/app.flatpak.json flatpak-builder --force-clean build-flatpak flatpak/app.flatpak.json
endif
.PHONY: build run test clean