-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
35 lines (23 loc) · 914 Bytes
/
Makefile
File metadata and controls
35 lines (23 loc) · 914 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
SHELL:=/bin/sh
CARGO := cargo
.PHONY: all
help: ## this help
@awk 'BEGIN {FS = ":.*?## "; printf "Usage:\n make \033[36m<target> \033[0m\n\nTargets:\n"} /^[a-zA-Z0-9_-]+:.*?## / {gsub("\\\\n",sprintf("\n%22c",""), $$2);printf " \033[36m%-20s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
test: ## Run tests with nextest
$(CARGO) nextest run
test-verbose: ## Run tests and show output
$(CARGO) test -- --nocapture
fmt: ## Format code with rustfmt
$(CARGO) fmt --all --
lint: ## Lint code with clippy
$(CARGO) clippy -- -D warnings
build: ## Build
$(CARGO) build
release: ## Build release version
$(CARGO) build --release
clean: ## Clean build artifacts
$(CARGO) clean
ci: fmt lint test ## Run all checks for CI
goreleaser: ## Generate binaries using goreleaser (brew install goreleaser and brew install zig)
# Needs cargo install cargo-zigbuild
goreleaser release --snapshot --clean --skip sign