organic/Makefile

62 lines
1.2 KiB
Makefile
Raw Normal View History

SHELL := bash
.ONESHELL:
.SHELLFLAGS := -eu -o pipefail -c
.DELETE_ON_ERROR:
MAKEFLAGS += --warn-undefined-variables
MAKEFLAGS += --no-builtin-rules
TESTJOBS := 4
OS:=$(shell uname -s)
ifeq ($(OS),Linux)
TESTJOBS:=$(shell nproc)
endif
ifeq ($(origin .RECIPEPREFIX), undefined)
$(error This Make does not support .RECIPEPREFIX. Please use GNU Make 4.0 or later)
endif
.RECIPEPREFIX = >
.PHONY: build
2023-03-25 18:10:22 +00:00
build:
> cargo build
2023-04-19 04:09:25 +00:00
.PHONY: release
release:
2023-04-19 04:42:08 +00:00
> cargo build --release --target x86_64-unknown-linux-musl
2023-04-19 04:09:25 +00:00
.PHONY: clean
clean:
> cargo clean
2023-03-25 18:10:22 +00:00
.PHONY: test
test:
> cargo test --lib --test test_loader -- --test-threads $(TESTJOBS)
.PHONY: integrationtest
integrationtest:
> cargo test --no-fail-fast --test test_loader -- --test-threads $(TESTJOBS)
2023-03-25 18:10:22 +00:00
2023-04-19 19:29:46 +00:00
.PHONY: unittest
unittest:
> cargo test --lib -- --test-threads $(TESTJOBS)
2023-04-19 19:29:46 +00:00
2023-03-25 18:10:22 +00:00
.PHONY: run
run:
> cargo run
2023-03-27 19:08:29 +00:00
.PHONY: debug
debug:
> RUST_LOG=debug cargo run
.PHONY: jaeger
jaeger:
> docker run -d --rm --name toylanguagedocker -p 6831:6831/udp -p 6832:6832/udp -p 16686:16686 -p 14268:14268 jaegertracing/all-in-one:latest
.PHONY: jaegerweb
jaegerweb:
> xdg-open 'http://localhost:16686'
.PHONY: jaegerstop
jaegerstop:
> docker stop toylanguagedocker