Files

40 lines
785 B
Makefile

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
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
EXEC :=
endif
ifndef EXEC
build:
cargo build
run:
cargo run
test:
cargo test
clean:
cargo clean
# Flatpak build target
.PHONY: flatpak-build
flatpak-build:
flatpak-builder --force-clean build-flatpak flatpak/app.flatpak.json
endif
.PHONY: build run test clean