mercureact/Makefile

32 lines
923 B
Makefile
Executable File

.DEFAULT_GOAL := help
REPODIR="$(shell pwd)"
BUILDDIR="/tmp/mercureact.tmp"
.PHONY: help
help:
@echo "Available Targets:"; grep -E '(^[a-zA-Z_-]+:.*?##.*$$)|(^##)' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[32m%-20s\033[0m %s\n", $$1, $$2}' | sed -e 's/\[32m##/[33m/'
.PHONY: phar
phar: ## Build .phar using pharlite
rm -rf $(BUILDDIR)
git clone $(REPODIR) $(BUILDDIR) && \
cd $(BUILDDIR) && \
composer install --no-dev && \
echo "<?php return [ 'version' => '$(shell git describe --tags)', 'buildtime' => '$(shell date)' ];" > src/meta && \
pharlite
mv $(BUILDDIR)/*.phar $(REPODIR) && \
rm -rf $(BUILDDIR)
.PHONY: phpstan
phpstan: ## Run static analysis
@phpstan --no-progress
.PHONY: phpunit
phpunit: ## Run unit tests
@phpunit --testdox --no-progress --display-warnings
.PHONY: coverage
coverage: ## Code coverage
@XDEBUG_MODE=coverage phpunit --coverage-text --no-progress