1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- # get Makefile directory name: http://stackoverflow.com/a/5982798/376773
- THIS_MAKEFILE_PATH:=$(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
- THIS_DIR:=$(shell cd $(dir $(THIS_MAKEFILE_PATH));pwd)
- # BIN directory
- BIN := $(THIS_DIR)/node_modules/.bin
- # applications
- NODE ?= node
- NPM ?= $(NODE) $(shell which npm)
- BROWSERIFY ?= $(NODE) $(BIN)/browserify
- MOCHA ?= $(NODE) $(BIN)/mocha
- ZUUL ?= $(NODE) $(BIN)/zuul
- REPORTER ?= spec
- all: dist/plist.js dist/plist-build.js dist/plist-parse.js
- install: node_modules
- clean:
- @rm -rf node_modules dist
- dist:
- @mkdir -p $@
- dist/plist-build.js: node_modules lib/build.js dist
- @$(BROWSERIFY) \
- --standalone plist \
- lib/build.js > $@
- dist/plist-parse.js: node_modules lib/parse.js dist
- @$(BROWSERIFY) \
- --standalone plist \
- lib/parse.js > $@
- dist/plist.js: node_modules lib/*.js dist
- @$(BROWSERIFY) \
- --standalone plist \
- --ignore lib/node.js \
- lib/plist.js > $@
- node_modules: package.json
- @NODE_ENV= $(NPM) install
- @touch node_modules
- test:
- @if [ "x$(BROWSER_NAME)" = "x" ]; then \
- $(MAKE) test-node; \
- else \
- $(MAKE) test-zuul; \
- fi
- test-node:
- @$(MOCHA) \
- --reporter $(REPORTER) \
- test/*.js
- test-zuul:
- @if [ "x$(BROWSER_PLATFORM)" = "x" ]; then \
- $(ZUUL) \
- --ui mocha-bdd \
- --browser-name $(BROWSER_NAME) \
- --browser-version $(BROWSER_VERSION) \
- test/*.js; \
- else \
- $(ZUUL) \
- --ui mocha-bdd \
- --browser-name $(BROWSER_NAME) \
- --browser-version $(BROWSER_VERSION) \
- --browser-platform "$(BROWSER_PLATFORM)" \
- test/*.js; \
- fi
- .PHONY: all install clean test test-node test-zuul
|