67 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| 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)
 | |
| RELEASEFLAGS :=
 | |
| 
 | |
| ifeq ($(OS),Linux)
 | |
|   TESTJOBS:=$(shell nproc)
 | |
|   RELEASEFLAGS=--target x86_64-unknown-linux-musl
 | |
| endif
 | |
| ifeq ($(OS),FreeBSD)
 | |
|   TESTJOBS:=$(shell sysctl -n hw.ncpu)
 | |
| endif
 | |
| 
 | |
| ifeq ($(origin .RECIPEPREFIX), undefined)
 | |
|   $(error This Make does not support .RECIPEPREFIX. Please use GNU Make 4.0 or later)
 | |
| endif
 | |
| .RECIPEPREFIX = >
 | |
| 
 | |
| .PHONY: build
 | |
| build:
 | |
| > cargo build
 | |
| 
 | |
| .PHONY: release
 | |
| release:
 | |
| > cargo build --release $(RELEASEFLAGS)
 | |
| 
 | |
| .PHONY: clean
 | |
| clean:
 | |
| > cargo clean
 | |
| 
 | |
| .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)
 | |
| 
 | |
| .PHONY: unittest
 | |
| unittest:
 | |
| > cargo test --lib -- --test-threads $(TESTJOBS)
 | |
| 
 | |
| .PHONY: run
 | |
| run:
 | |
| > cargo run
 | |
| 
 | |
| .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
 | 
