aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorRuben Beltran del Rio <jj@r.bdr.sh>2025-12-12 14:30:45 +0100
committerRuben Beltran del Rio <jj@r.bdr.sh>2025-12-13 21:32:44 +0100
commit9163c3ae5b55abcb27f15dd39203143b8e1e443b (patch)
treeee7760a8e91110812e7e6c90e95fc23ccc443e0f /Makefile
Initial implementationHEAD1.0.0main
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile38
1 files changed, 38 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..0d4b7d3
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,38 @@
+profile := dev
+target = $(shell rustc -vV | grep host | awk '{print $$2}')
+
+default: build
+
+set_rust:
+ rustup default stable
+
+prepare:
+ rustup target add $(target)
+
+build: prepare
+ cargo build --profile $(profile) --target $(target)
+
+test:
+ cargo test
+
+coverage:
+ cargo tarpaulin --fail-under 100
+
+benchmark:
+ cargo bench
+
+format:
+ cargo fmt && cargo clippy --fix
+
+lint:
+ cargo fmt -- --check && cargo clippy
+
+release:
+ cargo publish
+
+ci: lint coverage
+ifneq (,$(findstring refs/tags/,$(GIT_REF)))
+ $(MAKE) release
+endif
+
+.PHONY: default set_rust prepare build test coverage format lint benchmark release ci