|
|
|
ifneq "" "$(NODE_DIR)"
|
|
|
|
NPM:=$(NODE_DIR)/bin/npm
|
|
|
|
NODE:=$(NODE_DIR)/bin/npm
|
|
|
|
default: run
|
|
|
|
else
|
|
|
|
ifeq "" "$(shell which npm)"
|
|
|
|
default:
|
|
|
|
@echo "Please install node.js"
|
|
|
|
@echo "Visit http://nodejs.org/ for more details"
|
|
|
|
@echo "On Ubuntu/Debian try: sudo apt-get install nodejs npm"
|
|
|
|
exit 1
|
|
|
|
else
|
|
|
|
NPM:= $(shell which npm)
|
|
|
|
NODE:= $(shell which node || which nodejs)
|
|
|
|
default: run
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
.PHONY: clean run test run-amazon c-preload optional-d-support prereqs node_modules bower_modules
|
|
|
|
.PHONY: dist
|
|
|
|
prereqs: optional-d-support node_modules c-preload bower_modules
|
|
|
|
|
|
|
|
ifeq "" "$(shell which gdc)"
|
|
|
|
optional-d-support:
|
|
|
|
@echo "D language support disabled"
|
|
|
|
else
|
|
|
|
optional-d-support:
|
|
|
|
$(MAKE) -C d
|
|
|
|
endif
|
|
|
|
|
|
|
|
NODE_MODULES=.npm-updated
|
|
|
|
$(NODE_MODULES): package.json
|
|
|
|
$(NPM) install
|
|
|
|
@touch $@
|
|
|
|
|
|
|
|
BOWER_MODULES=.bower-updated
|
|
|
|
$(BOWER_MODULES): bower.json $(NODE_MODULES)
|
|
|
|
if ! test -f "${BOWER_MODULES}"; then rm -rf static/ext; fi
|
|
|
|
$(NODE) ./node_modules/bower/bin/bower install
|
|
|
|
@touch $@
|
|
|
|
|
|
|
|
LANG:=C++
|
|
|
|
|
|
|
|
node_modules: $(NODE_MODULES)
|
|
|
|
bower_modules: $(BOWER_MODULES)
|
|
|
|
|
|
|
|
test:
|
|
|
|
(cd test; $(NODE) test.js)
|
|
|
|
$(MAKE) -C c-preload test
|
|
|
|
@echo Tests pass
|
|
|
|
|
|
|
|
clean:
|
|
|
|
rm -rf bower_modules node_modules .npm-updated .bower-updated out static/ext
|
|
|
|
$(MAKE) -C d clean
|
|
|
|
$(MAKE) -C c-preload clean
|
|
|
|
|
|
|
|
run: prereqs
|
|
|
|
$(NODE) ./node_modules/.bin/supervisor -w app.js,lib,etc/config -e 'js|node|properties' --exec $(NODE) -- ./app.js --language $(LANG)
|
|
|
|
|
|
|
|
dist: prereqs
|
|
|
|
$(NODE) ./node_modules/requirejs/bin/r.js -o app.build.js
|
|
|
|
|
|
|
|
c-preload:
|
|
|
|
$(MAKE) -C c-preload
|
|
|
|
|