43 lines
1.4 KiB
Makefile
43 lines
1.4 KiB
Makefile
ROOT_DIR=$(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
|
|
SRC_DIR=$(ROOT_DIR)/src
|
|
BIN_DIR=$(ROOT_DIR)/bin
|
|
export PATH := $(PATH):$(ROOT_DIR)/dot
|
|
|
|
deps:
|
|
@echo "==> Installing dependencies"
|
|
@curl -L https://getcomposer.org/composer.phar -o $(BIN_DIR)/composer
|
|
@COMPOSER_HOME=/tmp php -d memory_limit=-1 $(BIN_DIR)/composer install
|
|
|
|
test:
|
|
@echo "==> Running tests"
|
|
@cd $(ROOT_DIR)
|
|
ifeq ($(wildcard .env), )
|
|
@echo "==> Creating .env file for testing purposes..."
|
|
@cp .env.dist .env
|
|
endif
|
|
@php -d memory_limit=-1 $(BIN_DIR)/phpunit -c phpunit.xml.dist --log-junit $(ROOT_DIR)/test-report.xml
|
|
@echo "==> Testing complete"
|
|
|
|
stan:
|
|
@echo "==> Running analysis"
|
|
@php $(BIN_DIR)/phpstan analyse -l 4 -c $(ROOT_DIR)/phpstan.neon $(SRC_DIR)
|
|
@echo "==> Analysis complete"
|
|
|
|
docs:
|
|
@echo "==> Building docs"
|
|
ifeq ($(wildcard *.phar), )
|
|
@wget https://github.com/phpDocumentor/phpDocumentor2/releases/download/v3.0.0-alpha.3/phpDocumentor.phar -O phpDocumentor.phar
|
|
@wget https://github.com/phpDocumentor/phpDocumentor2/releases/download/v3.0.0-alpha.3/phpDocumentor.phar.pubkey -O phpDocumentor.phar.pubkey
|
|
@chmod +x phpDocumentor.phar
|
|
endif
|
|
ifeq (, $(shell which dot))
|
|
ifeq ($(wildcard dot/dot), )
|
|
@mkdir -p $(ROOT_DIR)/dot
|
|
@wget https://github.com/Neur0toxine/mwgraphviz/raw/master/dot_static -O $(ROOT_DIR)/dot/dot
|
|
@chmod +x $(ROOT_DIR)/dot/dot
|
|
endif
|
|
endif
|
|
@php phpDocumentor.phar --config $(ROOT_DIR)/phpdoc.dist.xml
|
|
|
|
travis: test docs
|
|
@echo "==> Done."
|