mirror of
https://github.com/vacp2p/zerokit.git
synced 2026-01-06 20:33:53 -05:00
40 lines
1.1 KiB
Makefile
40 lines
1.1 KiB
Makefile
.PHONY: all installdeps build test bench clean
|
|
|
|
all: installdeps build
|
|
|
|
.fetch-submodules:
|
|
@git submodule update --init --recursive
|
|
|
|
.pre-build: .fetch-submodules
|
|
@cargo install cargo-make
|
|
ifdef CI
|
|
@cargo install cross --git https://github.com/cross-rs/cross.git --rev 1511a28
|
|
endif
|
|
|
|
installdeps: .pre-build
|
|
ifeq ($(shell uname),Darwin)
|
|
@brew install ninja
|
|
else ifeq ($(shell uname),Linux)
|
|
@if [ -f /etc/os-release ] && grep -q "ID=nixos" /etc/os-release; then \
|
|
echo "Detected NixOS, skipping apt installation."; \
|
|
else \
|
|
sudo apt update; \
|
|
sudo apt install -y cmake ninja-build; \
|
|
fi
|
|
endif
|
|
@which wasm-pack > /dev/null && wasm-pack --version | grep -q "0.13.1" || cargo install wasm-pack --version=0.13.1
|
|
@test -s "$$HOME/.nvm/nvm.sh" || curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.2/install.sh | bash
|
|
@bash -c '. "$$HOME/.nvm/nvm.sh"; [ "$$(node -v 2>/dev/null)" = "v22.14.0" ] || nvm install 22.14.0; nvm use 22.14.0; nvm alias default 22.14.0'
|
|
|
|
build: installdeps
|
|
@cargo make build
|
|
|
|
test: build
|
|
@cargo make test
|
|
|
|
bench: build
|
|
@cargo make bench
|
|
|
|
clean:
|
|
@cargo clean
|