.PHONY: lint test coverage test-ci browserify NPM_PACKAGE := $(shell node -e 'process.stdout.write(require("./package.json").name)') NPM_VERSION := $(shell node -e 'process.stdout.write(require("./package.json").version)') REMOTE_NAME ?= origin REMOTE_REPO ?= $(shell git config --get remote.${REMOTE_NAME}.url) GITHUB_PROJ := https://github.com/RedBug312/markdown-it-multimd-table MODULE_PATH := ./node_modules/.bin ${MODULE_PATH}: package.json npm install --save-dev touch $@ # update timestamp lint: ${MODULE_PATH} ${MODULE_PATH}/eslint . test: ${MODULE_PATH} lint ${MODULE_PATH}/mocha -R spec coverage: ${MODULE_PATH} lint ${MODULE_PATH}/istanbul cover ${MODULE_PATH}/_mocha test-ci: ${MODULE_PATH} lint # For Github integration test. You should use `make coverage` on local. ${MODULE_PATH}/istanbul cover ${MODULE_PATH}/_mocha --report lcovonly -- -R spec cat ./coverage/lcov.info | ${MODULE_PATH}/coveralls rm -rf ./coverage browserify: ${MODULE_PATH} lint test # Browserify ( printf "/*! ${NPM_PACKAGE} ${NPM_VERSION} ${GITHUB_PROJ} @license MIT */"; \ ${MODULE_PATH}/browserify . -s markdownitMultimdTable \ ) > dist/markdown-it-multimd-table.js # Minify ${MODULE_PATH}/terser dist/markdown-it-multimd-table.js -b beautify=false,ascii_only=true -c -m \ --preamble "/*! ${NPM_PACKAGE} ${NPM_VERSION} ${GITHUB_PROJ} @license MIT */" \ > dist/markdown-it-multimd-table.min.js