node-bunyan-lite/Makefile

69 lines
1.8 KiB
Makefile

#---- Tools
TAP := ./node_modules/.bin/tap
#---- Files
JSSTYLE_FILES := $(shell find lib test tools examples -name "*.js")
#---- Targets
all:
# Ensure all version-carrying files have the same version.
.PHONY: versioncheck
versioncheck:
[[ `cat package.json | json version` == `grep '^var VERSION' bin/bunyan | awk -F'"' '{print $$2}'` ]]
[[ `cat package.json | json version` == `grep '^var VERSION' lib/bunyan.js | awk -F"'" '{print $$2}'` ]]
@echo Version check ok.
.PHONY: cutarelease
cutarelease: versioncheck
[[ ! -d tmp ]] # No 'tmp/' allowed: https://github.com/isaacs/npm/issues/2144 (fixed in npm 1.1.12 / node 0.6.14 I think)
./tools/cutarelease.py -p bunyan -f package.json -f lib/bunyan.js -f bin/bunyan
#---- test
.PHONY: test
test: $(TAP)
TAP=1 $(TAP) test/*.test.js
# Test will all node supported versions (presumes install locations I use on my machine).
.PHONY: testall
testall: test06 test07 testmaster
.PHONY: testmaster
testmaster:
@echo "# Test node master (with node `$(HOME)/opt/node-master/bin/node --version`)"
PATH="$(HOME)/opt/node-master/bin:$(PATH)" TAP=1 $(TAP) test/*.test.js
.PHONY: test07
test07:
@echo "# Test node 0.7.x (with node `$(HOME)/opt/node-0.7/bin/node --version`)"
PATH="$(HOME)/opt/node-0.7/bin:$(PATH)" TAP=1 $(TAP) test/*.test.js
.PHONY: test06
test06:
@echo "# Test node 0.6.x (with node `$(HOME)/opt/node-0.6/bin/node --version`)"
PATH="$(HOME)/opt/node-0.6/bin:$(PATH)" TAP=1 $(TAP) test/*.test.js
#---- check
.PHONY: check-jsstyle
check-jsstyle: $(JSSTYLE_FILES)
./tools/jsstyle -o indent=2,doxygen,unparenthesized-return=0,blank-after-start-comment=0,leading-right-paren-ok $(JSSTYLE_FILES)
.PHONY: check
check: check-jsstyle
@echo "Check ok."
.PHONY: prepush
prepush: check testall
@echo "Okay to push."