Skip to content

Commit

Permalink
Makefile fixes for non GNU systems
Browse files Browse the repository at this point in the history
* 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 <[email protected]>
  • Loading branch information
shtrom committed Aug 18, 2018
1 parent 1421236 commit 681e04b
Show file tree
Hide file tree
Showing 7 changed files with 55 additions and 52 deletions.
53 changes: 53 additions & 0 deletions GNUmakefile
Original file line number Diff line number Diff line change
@@ -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
54 changes: 2 additions & 52 deletions Makefile
100755 → 100644
Original file line number Diff line number Diff line change
@@ -1,52 +1,2 @@
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
@sh scripts/install.sh $(ENV)

update: ## Update the wallabag installation to the latest version
@sh scripts/update.sh $(ENV)

dev: ## Install the latest dev version
@sh 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
@sh 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
.DEFAULT:
gmake $@
Empty file modified scripts/dev.sh
100644 → 100755
Empty file.
Empty file modified scripts/install.sh
100644 → 100755
Empty file.
Empty file modified scripts/release.sh
100644 → 100755
Empty file.
Empty file modified scripts/require.sh
100644 → 100755
Empty file.
Empty file modified scripts/update.sh
100644 → 100755
Empty file.

0 comments on commit 681e04b

Please sign in to comment.