add 'npm' and 'npm-update' make targets and lockfile (#7246)
* add 'npm' and 'npm-update' make targets and lockfile - `make npm` installs and updates node_modules, triggered automatically on `make css` and `make js` as it completes reasonably fast and ensures consistent modules. - `make npm-update` updates all dependencies to their latest version, regenerates `node_modules` from scratch and updates `package-lock.json`. It uses npm modules `updates` written by yours truly to find the latest version of each dependency. * add suggested make dependencies * remove package-lock.json during npm-update * regenerate package-lock.json
This commit is contained in:
parent
33ad554800
commit
a71cabbd53
7 changed files with 4913 additions and 36 deletions
33
Makefile
33
Makefile
|
@ -366,29 +366,32 @@ release-compress:
|
|||
fi
|
||||
cd $(DIST)/release/; for file in `find . -type f -name "*"`; do echo "compressing $${file}" && gxz -k -9 $${file}; done;
|
||||
|
||||
.PHONY: js
|
||||
js:
|
||||
@if ([ ! -d "$(PWD)/node_modules" ]); then \
|
||||
echo "node_modules directory is absent, please run 'npm install' first"; \
|
||||
npm-check:
|
||||
@hash npm > /dev/null 2>&1; if [ $$? -ne 0 ]; then \
|
||||
echo "Please install Node.js 8.x or greater with npm"; \
|
||||
exit 1; \
|
||||
fi;
|
||||
@hash npx > /dev/null 2>&1; if [ $$? -ne 0 ]; then \
|
||||
echo "Please install npm version 5.2+"; \
|
||||
echo "Please install Node.js 8.x or greater with npm"; \
|
||||
exit 1; \
|
||||
fi;
|
||||
|
||||
.PHONY: npm
|
||||
npm: npm-check
|
||||
npm install --no-save
|
||||
|
||||
.PHONY: npm-update
|
||||
npm-update: npm-check
|
||||
npx updates -cu
|
||||
rm -rf node_modules package-lock.json
|
||||
npm install --package-lock
|
||||
|
||||
.PHONY: js
|
||||
js: npm
|
||||
npx eslint public/js
|
||||
|
||||
.PHONY: css
|
||||
css:
|
||||
@if ([ ! -d "$(PWD)/node_modules" ]); then \
|
||||
echo "node_modules directory is absent, please run 'npm install' first"; \
|
||||
exit 1; \
|
||||
fi;
|
||||
@hash npx > /dev/null 2>&1; if [ $$? -ne 0 ]; then \
|
||||
echo "Please install npm version 5.2+"; \
|
||||
exit 1; \
|
||||
fi;
|
||||
|
||||
css: npm
|
||||
npx lesshint public/less/
|
||||
npx lessc --clean-css="--s0 -b" public/less/index.less public/css/index.css
|
||||
$(foreach file, $(filter-out public/less/themes/_base.less, $(wildcard public/less/themes/*)),npx lessc --clean-css="--s0 -b" public/less/themes/$(notdir $(file)) > public/css/theme-$(notdir $(call strip-suffix,$(file))).css;)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue