40 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
		
		
			
		
	
	
			40 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| 
								 | 
							
								SHELL := bash
							 | 
						||
| 
								 | 
							
								.ONESHELL:
							 | 
						||
| 
								 | 
							
								.SHELLFLAGS := -eu -o pipefail -c
							 | 
						||
| 
								 | 
							
								.DELETE_ON_ERROR:
							 | 
						||
| 
								 | 
							
								MAKEFLAGS += --warn-undefined-variables
							 | 
						||
| 
								 | 
							
								MAKEFLAGS += --no-builtin-rules
							 | 
						||
| 
								 | 
							
								OS:=$(shell uname -s)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ifeq ($(origin .RECIPEPREFIX), undefined)
							 | 
						||
| 
								 | 
							
								  $(error This Make does not support .RECIPEPREFIX. Please use GNU Make 4.0 or later)
							 | 
						||
| 
								 | 
							
								endif
							 | 
						||
| 
								 | 
							
								.RECIPEPREFIX = >
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								IMAGE_NAME:=natter
							 | 
						||
| 
								 | 
							
								TARGET :=
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								.PHONY: help
							 | 
						||
| 
								 | 
							
								help:
							 | 
						||
| 
								 | 
							
								> @grep -h "##" $(MAKEFILE_LIST) | grep -v grep | sed -E 's/^([^:]*): *## */\1:  /'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								.PHONY: docker_test
							 | 
						||
| 
								 | 
							
								docker_test: ## Run the rust tests
							 | 
						||
| 
								 | 
							
								> $(MAKE) -C docker/natter_development build
							 | 
						||
| 
								 | 
							
								> docker run --rm -i -t --mount type=tmpfs,destination=/tmp -v "$(shell readlink -f .):/source" --workdir=/source --env CARGO_TARGET_DIR=/target -v "natter-cargo-registry:/usr/local/cargo/registry" natter-development cargo test
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								.PHONY: docker_clippy
							 | 
						||
| 
								 | 
							
								docker_clippy: ## Run static analysis of the code.
							 | 
						||
| 
								 | 
							
								> $(MAKE) -C docker/natter_development build
							 | 
						||
| 
								 | 
							
								> docker run --rm -i -t --mount type=tmpfs,destination=/tmp -v "$(shell readlink -f .):/source" --workdir=/source --env CARGO_TARGET_DIR=/target -v "natter-cargo-registry:/usr/local/cargo/registry" natter-development cargo clippy --no-deps --all-targets --all-features -- -D warnings
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								.PHONY: docker_format
							 | 
						||
| 
								 | 
							
								docker_format: ## Auto-format source files.
							 | 
						||
| 
								 | 
							
								> $(MAKE) -C docker/natter_development build
							 | 
						||
| 
								 | 
							
								> docker run --rm -i -t --mount type=tmpfs,destination=/tmp -v "$(shell readlink -f .):/source" --workdir=/source --env CARGO_TARGET_DIR=/target -v "natter-cargo-registry:/usr/local/cargo/registry" natter-development cargo fmt
							 | 
						||
| 
								 | 
							
								> docker run --rm -i -t --mount type=tmpfs,destination=/tmp -v "$(shell readlink -f .):/source" --workdir=/source --env CARGO_TARGET_DIR=/target -v "natter-cargo-registry:/usr/local/cargo/registry" natter-development prettier --write --no-error-on-unmatched-pattern "default_environment/**/*.js" "default_environment/**/*.css"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								.PHONY: clean
							 | 
						||
| 
								 | 
							
								clean:
							 | 
						||
| 
								 | 
							
								> $(MAKE) -C docker/natter_development clean
							 |