From 2ed2bc9f2ef986b150159c2245c908adfd81f606 Mon Sep 17 00:00:00 2001 From: n-peugnet Date: Tue, 22 Oct 2019 13:17:10 +0200 Subject: first add of Makefile --- Makefile | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 Makefile (limited to 'Makefile') diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..8978954 --- /dev/null +++ b/Makefile @@ -0,0 +1,44 @@ +GIT_VERSION := $(shell git --no-pager describe --always --tags) + +js_sources := $(wildcard src/*.js) +js_bundles := $(js_sources:src/%.js=assets/js/%.bundle.js) +zip_release := $(GIT_VERSION:%=dist/wcms-%.zip) + +release: clean $(zip_release) + +dist/wcms-%.zip: php_dependencies $(js_bundles) + @echo "Building Zip release..." + mkdir -p $(dir $@) + zip -r $@ \ + app \ + assets \ + vendor \ + .htaccess \ + index.php \ + LICENSE.md \ + README.md \ + -x "*test*" \ + -x "*docs*" + +assets/js/%.bundle.js: src/%.js js_dependencies + @echo "Building JS Bundles..." + mkdir -p $(dir $@) + npm run build + +php_dependencies: + @echo "Installing PHP dependencies..." + composer install --no-dev --prefer-dist + +php_clean: + @echo "Cleaning PHP..." + rm -rf vendor + +js_dependencies: + @echo "Installing JS dependencies..." + npm install + +js_clean: + @echo "Cleaning JS..." + rm -rf node_modules + +clean: php_clean js_clean -- cgit v1.2.3 From 6066bc7dec3ff45be83c646be31b7eff9f7a54eb Mon Sep 17 00:00:00 2001 From: n-peugnet Date: Tue, 22 Oct 2019 16:48:55 +0200 Subject: finish Makefile and update README --- Makefile | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index 8978954..c0840b1 100644 --- a/Makefile +++ b/Makefile @@ -1,12 +1,15 @@ +PATH := vendor/bin:node_modules/.bin:$(PATH) GIT_VERSION := $(shell git --no-pager describe --always --tags) js_sources := $(wildcard src/*.js) -js_bundles := $(js_sources:src/%.js=assets/js/%.bundle.js) -zip_release := $(GIT_VERSION:%=dist/wcms-%.zip) +js_bundles := $(js_sources:src/%.js=assets/js/%.bundle.js) +zip_release := $(GIT_VERSION:%=dist/w_cms_%.zip) -release: clean $(zip_release) +build: clean $(zip_release) -dist/wcms-%.zip: php_dependencies $(js_bundles) +install: php_dependencies $(js_bundles) + +dist/w_cms_%.zip: install @echo "Building Zip release..." mkdir -p $(dir $@) zip -r $@ \ @@ -23,7 +26,7 @@ dist/wcms-%.zip: php_dependencies $(js_bundles) assets/js/%.bundle.js: src/%.js js_dependencies @echo "Building JS Bundles..." mkdir -p $(dir $@) - npm run build + webpack --env prod php_dependencies: @echo "Installing PHP dependencies..." @@ -42,3 +45,4 @@ js_clean: rm -rf node_modules clean: php_clean js_clean + rm -rf dist -- cgit v1.2.3 From 01cb82b514ef9dcb1cb9e63492ebab621961babd Mon Sep 17 00:00:00 2001 From: n-peugnet Date: Wed, 23 Oct 2019 00:24:43 +0200 Subject: use GNU Standard Makefile Targets --- Makefile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index c0840b1..fd30261 100644 --- a/Makefile +++ b/Makefile @@ -5,11 +5,11 @@ js_sources := $(wildcard src/*.js) js_bundles := $(js_sources:src/%.js=assets/js/%.bundle.js) zip_release := $(GIT_VERSION:%=dist/w_cms_%.zip) -build: clean $(zip_release) +all: php_dependencies $(js_bundles) -install: php_dependencies $(js_bundles) +dist: distclean $(zip_release) -dist/w_cms_%.zip: install +dist/w_cms_%.zip: all @echo "Building Zip release..." mkdir -p $(dir $@) zip -r $@ \ @@ -43,6 +43,9 @@ js_dependencies: js_clean: @echo "Cleaning JS..." rm -rf node_modules + rm -rf $(js_bundles) clean: php_clean js_clean + +distclean: rm -rf dist -- cgit v1.2.3 From aeb582d8b66d256a4c9c989589daab79b535e484 Mon Sep 17 00:00:00 2001 From: n-peugnet Date: Wed, 23 Oct 2019 01:04:30 +0200 Subject: better dist zip target using git archive the removing useless files and adding generated files --- Makefile | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index fd30261..bef37ef 100644 --- a/Makefile +++ b/Makefile @@ -12,14 +12,17 @@ dist: distclean $(zip_release) dist/w_cms_%.zip: all @echo "Building Zip release..." mkdir -p $(dir $@) + git archive --format=zip HEAD -o $@ + zip -d $@ \ + "src*" \ + .gitignore \ + composer.lock \ + Makefile \ + "package*" \ + webpack.config.js zip -r $@ \ - app \ - assets \ + assets/js \ vendor \ - .htaccess \ - index.php \ - LICENSE.md \ - README.md \ -x "*test*" \ -x "*docs*" -- cgit v1.2.3