From 681e04b0605d2e526f6adc2f99c2ff8fc9e842a7 Mon Sep 17 00:00:00 2001 From: Olivier Mehani Date: Sat, 18 Aug 2018 15:39:37 +1000 Subject: Makefile fixes for non GNU systems * Move `Makefile` to `GNUmakefile`, which GNU `make` picks first * Add `Makefile` so other `make`s forward to `gmake` * Set the `SHELL` variable and let `make` handle the shell Signed-off-by: Olivier Mehani --- GNUmakefile | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100755 GNUmakefile (limited to 'GNUmakefile') diff --git a/GNUmakefile b/GNUmakefile new file mode 100755 index 00000000..a04468cb --- /dev/null +++ b/GNUmakefile @@ -0,0 +1,53 @@ +SHELL=bash +TMP_FOLDER=/tmp +RELEASE_FOLDER=wllbg-release + +ENV ?= prod + +help: ## Display this help menu + @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' + +clean: ## Clear the application cache + rm -rf var/cache/* + +install: ## Install wallabag with the latest version + @./scripts/install.sh $(ENV) + +update: ## Update the wallabag installation to the latest version + @./scripts/update.sh $(ENV) + +dev: ## Install the latest dev version + @./scripts/dev.sh + +run: ## Run the wallabag built-in server + @php bin/console server:run --env=dev + +build: ## Run webpack + @npm run build:$(ENV) + +prepare: clean ## Prepare database for testsuite +ifdef DB + cp app/config/tests/parameters_test.$(DB).yml app/config/parameters_test.yml +endif + -php bin/console doctrine:database:drop --force --env=test + php bin/console doctrine:database:create --env=test + php bin/console doctrine:migrations:migrate --no-interaction --env=test + +fixtures: ## Load fixtures into database + php bin/console doctrine:fixtures:load --no-interaction --env=test + +test: prepare fixtures ## Launch wallabag testsuite + bin/simple-phpunit -v + +release: ## Create a package. Need a VERSION parameter (eg: `make release VERSION=master`). +ifndef VERSION + $(error VERSION is not set) +endif + @./scripts/release.sh $(VERSION) $(TMP_FOLDER) $(RELEASE_FOLDER) $(ENV) + +deploy: ## Deploy wallabag + @bundle exec cap staging deploy + +.PHONY: help clean prepare install fixtures update build test release deploy run dev + +.DEFAULT_GOAL := install -- cgit v1.2.3