~schooltool-owners/schooltool.gradebook/flourish

2 by ignas
Initial commit for schooltool.gradebook
1
#!/usr/bin/make
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
2
3
PACKAGE=schooltool.gradebook
255.3.23 by Gediminas Paulauskas
Make sandbox with virtualenv, and other build improvements
4
LOCALES=src/schooltool/gradebook/locales
5
TRANSLATIONS_ZCML=schooltool/gradebook/translations.zcml
2 by ignas
Initial commit for schooltool.gradebook
6
360 by Gediminas Paulauskas
Upload/download from flourish directory
7
DIST=/home/ftp/pub/schooltool/flourish
255.3.23 by Gediminas Paulauskas
Make sandbox with virtualenv, and other build improvements
8
PYTHON=python
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
9
109.1.5 by Justas Sadzevicius
Switch to 'schooltool' instance; update CHANGES.txt
10
INSTANCE_TYPE=schooltool
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
11
BUILDOUT_FLAGS=
2 by ignas
Initial commit for schooltool.gradebook
12
13
.PHONY: all
14
all: build
15
16
.PHONY: build
246 by Gediminas Paulauskas
Update Makefile.
17
build: .installed.cfg
2 by ignas
Initial commit for schooltool.gradebook
18
255.3.23 by Gediminas Paulauskas
Make sandbox with virtualenv, and other build improvements
19
python:
20
	rm -rf python
21
	virtualenv --no-site-packages -p $(PYTHON) python
22
2 by ignas
Initial commit for schooltool.gradebook
23
.PHONY: bootstrap
546 by Gediminas Paulauskas
Local buildout.cfg and other build improvements
24
bootstrap bin/buildout: | buildout.cfg python
255.3.23 by Gediminas Paulauskas
Make sandbox with virtualenv, and other build improvements
25
	python/bin/python bootstrap.py
2 by ignas
Initial commit for schooltool.gradebook
26
546 by Gediminas Paulauskas
Local buildout.cfg and other build improvements
27
buildout.cfg:
28
	cp deploy.cfg buildout.cfg
29
2 by ignas
Initial commit for schooltool.gradebook
30
.PHONY: buildout
546 by Gediminas Paulauskas
Local buildout.cfg and other build improvements
31
buildout .installed.cfg: python bin/buildout buildout.cfg base.cfg deploy.cfg setup.py
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
32
	bin/buildout $(BUILDOUT_FLAGS)
2 by ignas
Initial commit for schooltool.gradebook
33
546 by Gediminas Paulauskas
Local buildout.cfg and other build improvements
34
.PHONY: develop
35
develop bin/coverage: buildout.cfg develop.cfg
36
	sed -e 's/base.cfg/develop.cfg/' -i buildout.cfg
37
	$(MAKE) buildout
38
2 by ignas
Initial commit for schooltool.gradebook
39
.PHONY: update
132 by Gediminas Paulauskas
Makefile improvements from schooltool
40
update:
79 by Gediminas Paulauskas
Add support for translating gradebook.
41
	bzr up
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
42
	$(MAKE) buildout BUILDOUT_FLAGS=-n
2 by ignas
Initial commit for schooltool.gradebook
43
255.3.8 by Gediminas Paulauskas
Some cleanup
44
instance: | build
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
45
	bin/make-schooltool-instance instance instance_type=$(INSTANCE_TYPE)
46
47
.PHONY: run
48
run: build instance
49
	bin/start-schooltool-instance instance
50
51
.PHONY: tags
52
tags: build
546 by Gediminas Paulauskas
Local buildout.cfg and other build improvements
53
	bin/ctags
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
54
55
.PHONY: clean
56
clean:
246 by Gediminas Paulauskas
Update Makefile.
57
	rm -rf python
58
	rm -rf bin develop-eggs parts .installed.cfg
59
	rm -rf build
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
60
	rm -f ID TAGS tags
255.3.8 by Gediminas Paulauskas
Some cleanup
61
	rm -rf coverage ftest-coverage
246 by Gediminas Paulauskas
Update Makefile.
62
	find . -name '*.py[co]' -delete
63
	find . -name '*.mo' -delete
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
64
	find . -name 'LC_MESSAGES' -exec rmdir -p --ignore-fail-on-non-empty {} +
65
66
.PHONY: realclean
187.1.9 by Douglas Cerna
Improved 'realclean' make rule
67
realclean:
546 by Gediminas Paulauskas
Local buildout.cfg and other build improvements
68
	rm -f buildout.cfg
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
69
	rm -rf eggs
246 by Gediminas Paulauskas
Update Makefile.
70
	rm -rf dist
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
71
	rm -rf instance
187.1.9 by Douglas Cerna
Improved 'realclean' make rule
72
	$(MAKE) clean
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
73
74
# Tests
75
2 by ignas
Initial commit for schooltool.gradebook
76
.PHONY: test
77
test: build
78
	bin/test -u
79
80
.PHONY: ftest
81
ftest: build
82
	bin/test -f
83
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
84
.PHONY: testall
85
testall: build
86
	bin/test --at-level 2
87
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
88
# Coverage
2 by ignas
Initial commit for schooltool.gradebook
89
90
.PHONY: coverage
91
coverage: build
31.1.3 by Ignas Mikalajūnas
Fix coverage report building.
92
	rm -rf coverage
255.3.28 by Gediminas Paulauskas
Simplify `make coverage`
93
	bin/test --at-level 2 -u --coverage=$(CURDIR)/coverage
2 by ignas
Initial commit for schooltool.gradebook
94
95
.PHONY: coverage-reports-html
546 by Gediminas Paulauskas
Local buildout.cfg and other build improvements
96
coverage-reports-html coverage/reports: bin/coverage build
255.3.28 by Gediminas Paulauskas
Simplify `make coverage`
97
	test -d coverage || $(MAKE) coverage
31.1.3 by Ignas Mikalajūnas
Fix coverage report building.
98
	rm -rf coverage/reports
2 by ignas
Initial commit for schooltool.gradebook
99
	mkdir coverage/reports
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
100
	bin/coverage coverage coverage/reports
101
	ln -s $(PACKAGE).html coverage/reports/index.html
102
103
.PHONY: ftest-coverage
104
ftest-coverage: build
105
	rm -rf ftest-coverage
255.3.28 by Gediminas Paulauskas
Simplify `make coverage`
106
	bin/test --at-level 2 -f --coverage=$(CURDIR)/ftest-coverage
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
107
108
.PHONY: ftest-coverage-reports-html
546 by Gediminas Paulauskas
Local buildout.cfg and other build improvements
109
ftest-coverage-reports-html ftest-coverage/reports: bin/coverage build
255.3.28 by Gediminas Paulauskas
Simplify `make coverage`
110
	test -d ftest-coverage || $(MAKE) ftest-coverage
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
111
	rm -rf ftest-coverage/reports
112
	mkdir ftest-coverage/reports
113
	bin/coverage ftest-coverage ftest-coverage/reports
114
	ln -s $(PACKAGE).html ftest-coverage/reports/index.html
2 by ignas
Initial commit for schooltool.gradebook
115
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
116
# Translations
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
117
79 by Gediminas Paulauskas
Add support for translating gradebook.
118
.PHONY: extract-translations
119
extract-translations: build
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
120
	bin/i18nextract --egg $(PACKAGE) \
121
	                --domain $(PACKAGE) \
255.3.23 by Gediminas Paulauskas
Make sandbox with virtualenv, and other build improvements
122
	                --zcml $(TRANSLATIONS_ZCML) \
123
	                --output-file $(LOCALES)/$(PACKAGE).pot
79 by Gediminas Paulauskas
Add support for translating gradebook.
124
125
.PHONY: compile-translations
126
compile-translations:
255.3.23 by Gediminas Paulauskas
Make sandbox with virtualenv, and other build improvements
127
	for f in $(LOCALES)/*.po; do \
85.1.2 by Gediminas Paulauskas
Update to new *.po file locations
128
	    mkdir -p $${f%.po}/LC_MESSAGES; \
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
129
	    msgfmt -o $${f%.po}/LC_MESSAGES/$(PACKAGE).mo $$f;\
79 by Gediminas Paulauskas
Add support for translating gradebook.
130
	done
131
132
.PHONY: update-translations
251 by Gediminas Paulauskas
Declare supported python versions (2.5-2.7)
133
update-translations:
255.3.23 by Gediminas Paulauskas
Make sandbox with virtualenv, and other build improvements
134
	for f in $(LOCALES)/*.po; do \
135
	    msgmerge -qUN $$f $(LOCALES)/$(PACKAGE).pot ;\
79 by Gediminas Paulauskas
Add support for translating gradebook.
136
	done
115 by Gediminas Paulauskas
Adapt build improvements from schooltool
137
	$(MAKE) compile-translations
79 by Gediminas Paulauskas
Add support for translating gradebook.
138
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
139
# Release
140
141
.PHONY: release
255.3.19 by Gediminas Paulauskas
Add ``make upload`` target
142
release: compile-translations
546 by Gediminas Paulauskas
Local buildout.cfg and other build improvements
143
	-cp buildout.cfg buildout.cfg~dev~
144
	cp deploy.cfg buildout.cfg
246 by Gediminas Paulauskas
Update Makefile.
145
	grep -qv 'dev' version.txt.in || echo -n `cat version.txt.in`-r`bzr revno` > version.txt
255.3.25 by Gediminas Paulauskas
Include Makefile in .tar.gz
146
	$(PYTHON) setup.py sdist
160 by Gediminas Paulauskas
`make release` now does not add revno for final releases.
147
	rm -f version.txt
546 by Gediminas Paulauskas
Local buildout.cfg and other build improvements
148
	-mv buildout.cfg~dev~ buildout.cfg
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
149
150
.PHONY: move-release
255.3.19 by Gediminas Paulauskas
Add ``make upload`` target
151
move-release: upload
152
	rm -v dist/$(PACKAGE)-*dev-r*.tar.gz
153
154
.PHONY: upload
155
upload:
548 by Gediminas Paulauskas
More build updates
156
	set -e ;\
157
	VERSION=`cat version.txt.in` ;\
255.3.19 by Gediminas Paulauskas
Add ``make upload`` target
158
	DIST=$(DIST) ;\
159
	grep -qv 'dev' version.txt.in || VERSION=`cat version.txt.in`-r`bzr revno` ;\
160
	grep -qv 'dev' version.txt.in || DIST=$(DIST)/dev ;\
161
	if [ -w $${DIST} ] ; then \
162
	    echo cp dist/$(PACKAGE)-$${VERSION}.tar.gz $${DIST} ;\
163
	    cp dist/$(PACKAGE)-$${VERSION}.tar.gz $${DIST} ;\
164
	else \
374 by Gediminas Paulauskas
Back to development: 1.9.2
165
	    echo scp dist/$(PACKAGE)-$${VERSION}.tar.gz* schooltool.org:$${DIST} ;\
166
	    scp dist/$(PACKAGE)-$${VERSION}.tar.gz* schooltool.org:$${DIST} ;\
255.3.19 by Gediminas Paulauskas
Add ``make upload`` target
167
	fi
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
168
169
# Helpers
170
2 by ignas
Initial commit for schooltool.gradebook
171
.PHONY: ubuntu-environment
172
ubuntu-environment:
548 by Gediminas Paulauskas
More build updates
173
	sudo apt-get install build-essential gettext enscript \
174
	    python-dev python-virtualenv \
175
	    ttf-ubuntu-font-family ttf-liberation \
176
	    libicu-dev libxslt1-dev libfreetype6-dev libjpeg-dev
157 by Gediminas Paulauskas
Makefile improvements from schooltool, use default python
177