build:
	make compile
	make test

run:
	cd packages/skypager-webpack && make build
	cd packages/skypager-process-runner && make build
	cd packages/skypager-registry && make
	cd packages/skypager-util && make
	make build

compile: clean
	babel -d lib src
	rm -rf lib/**/*.spec.js lib/*.spec.js

dev:
	babel -w -d lib src

clean:
	rm -rf lib/*

test-watch:
	mocha --watch --growl --require babel-register --require test/setup.js **/*.spec.js --invert --fgrep=src

test:
	../skypager/node_modules/.bin/mocha-webpack \
			--webpack-config webpack.config.test.js 'src/**/*.js'

generate-docs:
	rm -rf data/docs
	mkdir -p dist/docs data/docs
	esdoc -c ./esdoc.json
	cp dist/docs/dump.json data/docs/metadata.json
	cp -r dist/docs/ast/source data/docs/ast

pre-release:
	make test
	make compile
	make generate-docs

.PHONY: test

install-modules:
	cd node_modules/skypager-cli && npm install
	cd node_modules/skypager-document && npm install && make
	cd node_modules/skypager-webpack && npm install && make
	cd node_modules/skypager-process-runner && npm install
	cd node_modules/skypager-util && npm install && make
	cd node_modules/skypager-registry && npm install && make

