.DEFAULT_GOAL := help
.PHONY: help
help:
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
METAL_FLAGS=
all: shaders
debug: METAL_FLAGS += -fdebug-info-for-profiling
debug: shaders
shaders:
xcrun -sdk macosx metal $(METAL_FLAGS) -c src/metal/shaders/shaders.metal -o src/metal/shaders/shaders.air
xcrun -sdk macosx metallib src/metal/shaders/shaders.air -o src/metal/shaders/shaders.metallib
.PHONY: clippy
clippy:
cargo clippy --all-targets --all-features -- -D warnings
.PHONY: fix
fix:
cargo fix --allow-staged --allow-dirty --all-targets --all-features
.PHONY: format
format:
cargo +nightly fmt --all
.PHONY: format-check
format-check:
cargo +nightly fmt --all --check
.PHONY: lint
lint:
$(MAKE) format
$(MAKE) fix
$(MAKE) clippy