Files @ 03125dac50a2
Branch filter:

Location: light9/makefile - annotation

Drew Perttula
reorder makefile
Ignore-this: ea04b284790a85e8674b3c5b6952f736
03125dac50a2
9816e249ce2e
03125dac50a2
03125dac50a2
9816e249ce2e
03125dac50a2
03125dac50a2
5e76c8fd8a03
03125dac50a2
03125dac50a2
168262618f2d
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
233b81d9bd9d
15a13eba6fc3
8189f27679a1
fb830770c703
02415a3cebb2
a8942364e4ee
8189f27679a1
8189f27679a1
8189f27679a1
8189f27679a1
8189f27679a1
8189f27679a1
cca75951554a
8189f27679a1
8189f27679a1
8189f27679a1
8189f27679a1
8189f27679a1
8189f27679a1
8189f27679a1
8189f27679a1
83dfc2e87e62
0b2edd4de97a
0b2edd4de97a
8189f27679a1
03125dac50a2
03125dac50a2
1f877950ad28
9be85c08a69f
9be85c08a69f
9be85c08a69f
9be85c08a69f
9be85c08a69f
9be85c08a69f
9be85c08a69f
9be85c08a69f
9be85c08a69f
9be85c08a69f
9be85c08a69f
a36928f7cc35
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
eeadad4a998e
eeadad4a998e
eeadad4a998e
1f877950ad28
1f877950ad28
1f877950ad28
eeadad4a998e
499ef7c133eb
03125dac50a2
beb0688cbfd8
beb0688cbfd8
beb0688cbfd8
beb0688cbfd8
beb0688cbfd8
beb0688cbfd8
beb0688cbfd8
15a13eba6fc3
03125dac50a2
03125dac50a2
03125dac50a2
d6396679c121
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
37cbb245d93c
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
03125dac50a2
37cbb245d93c
03125dac50a2
03125dac50a2
03125dac50a2
1b42120d97f5
03125dac50a2
03125dac50a2
03125dac50a2
### setup ###

packages:
	sudo aptitude install coffeescript normalize-audio audacity python-pygame libffi-dev tix libzmq3-dev python-dev libssl-dev python-opencv python-cairo npm git python-virtualenv nginx python-tk

gst_packages:
	sudo aptitude install python-gi gir1.2-gst-plugins-base-1.0 libgirepository-1.0-1 gir1.2-gstreamer-1.0 gstreamer1.0-tools gstreamer1.0-plugins-good gstreamer1.0-pulseaudio python-gst-1.0 python-pygoocanvas gir1.2-goocanvas-2.0

PYTHON=/usr/bin/pypy
PYTHON=/usr/bin/python

create_virtualenv:
	mkdir -p env
	virtualenv -p $(PYTHON) env
	env/bin/pip install -U pip
	ln -sf ../env/bin/python bin/python


install_python_deps: link_to_sys_packages
	env/bin/pip install twisted
	env/bin/pip install -U -r requirements.txt

DP=/usr/lib/python2.7/dist-packages
SP=env/lib/python2.7/site-packages

link_to_sys_packages:
	# http://stackoverflow.com/questions/249283/virtualenv-on-ubuntu-with-no-site-packages
	ln -sf $(DP)/glib $(SP)/
	ln -sf $(DP)/gi $(SP)/
	ln -sf $(DP)/gobject $(SP)/
	ln -sf $(DP)/cairo $(SP)/
	ln -sf $(DP)/gtk-2.0 $(SP)/
	ln -sf $(DP)/pygtk.py $(SP)/
	ln -sf $(DP)/pygtk.pth $(SP)/
	ln -sf $(DP)/pygst.pth $(SP)/
	ln -sf $(DP)/pygst.py $(SP)/
	ln -sf $(DP)/gst-0.10 $(SP)/
	ln -sf $(DP)/goocanvasmodule.so $(SP)/
	ln -sf $(DP)/cv2.x86_64-linux-gnu.so $(SP)/
	ln -sf $(DP)/cv.py $(SP)/

binexec:
	chmod a+x bin/*


node_modules/bower/bin/bower:
	npm install

bin/node:
	ln -sf `which nodejs` bin/node

bower: node_modules/bower/bin/bower bin/node
	cd light9/web/lib; nodejs ../../../node_modules/bower/bin/bower install
	cd light9/web/lib/N3.js; npm install; PATH=../../../../bin:$(PATH) npm run browser
	cd light9/web/lib/d3; PATH=../../../../bin:$(PATH) npm install

bin/ascoltami2: gst_packages link_to_sys_packages

effect_node_setup: create_virtualenv packages binexec install_python_deps

tkdnd_build:
	# get tkdnd r95 with subversion
	# then apply tkdnd-patch-on-r95 to that
	cd tkdnd/trunk
	./configure
	make

env-mypy/bin/mypy:
	mkdir -p env-mypy
	virtualenv -p /usr/bin/python3  env-mypy/
	env-mypy/bin/pip install mypy==0.510 lxml==3.7.3

### build ###

coffee:
	zsh -c 'coffee -cw light9/web/{.,live,timeline,paint,effects}/*.coffee'

mypy-collector: env-mypy/bin/mypy
	env-mypy/bin/mypy --py2 --ignore-missing-imports --strict-optional --custom-typeshed-dir stubs --html-report /tmp/rep bin/collector light9/collector/*.py

mypy-paint: env-mypy/bin/mypy
	env-mypy/bin/mypy --py2 --ignore-missing-imports --strict-optional --custom-typeshed-dir stubs --html-report /tmp/rep light9/paint/*.py

### show ###

darcs_show_checkpoint:
	darcs add --quiet --recursive ${LIGHT9_SHOW} 
	darcs rec -a -m "checkpoint show data" ${LIGHT9_SHOW}

### pi setup ###

raspberry_pi_packages:
	sudo apt-get install python-picamera python-dev python-twisted python-virtualenv

raspberry_pi_virtualenv:
	mkdir -p env_pi
	virtualenv --system-site-packages env_pi
	env_pi/bin/pip install cyclone 'coloredlogs==6.0'

### arduino build ###

/usr/share/arduino/Arduino.mk:
	sudo aptitude install arduino-mk

arduino_upload: /usr/share/arduino/Arduino.mk
	cd rgbled
	make upload

### testing ###

NOSEARGS="--no-path-adjustment light9.rdfdb.rdflibpatch light9.rdfdb.patch light9.effecteval.test_effect light9.collector light9.rdfdb.graphfile_test light9.paint light9.effect"

tests:
	eval env/bin/nosetests -x $(NOSEARGS)

tests_watch:
	eval env/bin/nosetests --with-watcher $(NOSEARGS)


tests_coverage:
	eval env/bin/nosetests --with-coverage --cover-erase --cover-html --cover-html-dir=/tmp/light9-cov/  --cover-package=light9 --cover-branches $(NOSEARGS)

test_js_init:
	npm install

test_js:
	coffee -c light9/web/*.coffee
	node_modules/mocha/bin/mocha --compilers coffee:coffee-script/register --globals window,N3 light9/web/graph_test.coffee

test_js_watch:
	# have coffee continuously running
	watch -c node_modules/mocha/bin/mocha --compilers coffee:coffee-script/register --globals window,N3 light9/web/graph_test.coffee --colors