~launchpad-pqm/launchpad/devel

1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
1
# This file modified from Zope3/Makefile
2
# Licensed under the ZPL, (c) Zope Corporation and contributors.
3
1770 by Canonical.com Patch Queue Manager
[trivial] Move to Python 2.4
4
PYTHON_VERSION=2.4
1746 by Canonical.com Patch Queue Manager
[r=jamesh] Simple database restoration script and sampledata fixes
5
PYTHON=python${PYTHON_VERSION}
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
6
PYTHONPATH:=$(shell pwd)/lib:${PYTHONPATH}
1716.1.49 by Christian Reis
Removing cruft from the main Makefile
7
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
8
TESTFLAGS=-p -v
9
TESTOPTS=
1716.1.49 by Christian Reis
Removing cruft from the main Makefile
10
11
SHHH=${PYTHON} utilities/shhh.py
12
STARTSCRIPT=runlaunchpad.py
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
13
Z3LIBPATH=$(shell pwd)/sourcecode/zope/src
14
HERE:=$(shell pwd)
1716.1.49 by Christian Reis
Removing cruft from the main Makefile
15
1831 by Canonical.com Patch Queue Manager
New config machinery, database helpers and oddsnsods required for staging
16
LPCONFIG=default
17
CONFFILE=configs/${LPCONFIG}/launchpad.conf
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
18
63.1.71 by Robert Collins
do not make check by default "make" invocation
19
# DO NOT ALTER : this should just build by default
20
default: inplace
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
21
3024.1.1 by Christian Reis
You can't make schema without make building, so make it mandatory. Patch by Matt Zimmerman <mdz@canonical.com>
22
schema: build
23
	$(MAKE) -C database/schema
1716.1.42 by Christian Reis
merged and unconflicted
24
2915 by Canonical.com Patch Queue Manager
Workaround test failures on balleny: Disable hct and sourcerer tests, disable gpg_handler tests, add debugging assert for the failure in the foaf tests triggered by hct/sourcerer tests.
25
check_merge: build check importdcheck
26
27
28
###	# Work around the current idiom of 'make check' getting too long
29
###	# because of hct and related tests. note that this is a short
30
###	# term solution, the long term solution will need to be 
31
###	# finer grained testing anyway.
32
###	# Run all tests. test_on_merge.py takes care of setting up the
33
###	# database.
34
###	env PYTHONPATH=$(PYTHONPATH) \
35
###	    ${PYTHON} -t ./test_on_merge.py -vv \
2894.1.13 by Stuart Bishop
Make 'make check' log test times
36
###             --times=/tmp/test.times \
2915 by Canonical.com Patch Queue Manager
Workaround test failures on balleny: Disable hct and sourcerer tests, disable gpg_handler tests, add debugging assert for the failure in the foaf tests triggered by hct/sourcerer tests.
37
###		--dir hct --dir sourcerer
38
###	    $(MAKE) -C sourcecode check PYTHON=${PYTHON} \
39
###		PYTHON_VERSION=${PYTHON_VERSION}
63.1.107 by Robert Collins
add check_merge target for pqm to use when merging - runs hct and related tests
40
1810 by Canonical.com Patch Queue Manager
move importd code from buildbots tree to launchpad
41
importdcheck:
1818 by Canonical.com Patch Queue Manager
[r=spiv] teams of translators to be organised as groups by language
42
	cd database/schema; make test PYTHON=${PYTHON}
2703 by Canonical.com Patch Queue Manager
[r=stevea] kill the sourcerer twin
43
	PYTHONPATH=lib lib/importd/test_all.py
1810 by Canonical.com Patch Queue Manager
move importd code from buildbots tree to launchpad
44
63.1.94 by Robert Collins
enable cscvs and related test suites again
45
check: build
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
46
	# Run all tests. test_on_merge.py takes care of setting up the
2894.1.13 by Stuart Bishop
Make 'make check' log test times
47
	# database..
48
	# Store time information - we store this in /tmp instead of the cwd
49
	# so we can see the results after PQM runs.
1377 by Canonical.com Patch Queue Manager
fix makefile setting of PYTHONPATH
50
	env PYTHONPATH=$(PYTHONPATH) \
2894.1.13 by Stuart Bishop
Make 'make check' log test times
51
	${PYTHON} -t ./test_on_merge.py --times=/tmp/test.times
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
52
2279 by Canonical.com Patch Queue Manager
[trivial] add a make lint target (USE IT) and remove cruft
53
lint:
2513 by Canonical.com Patch Queue Manager
[trivial] Implement make lintmerge.
54
	@sh ./utilities/lint.sh
55
56
lintmerge:
57
	@# Thank Stuart, not me!
58
	@baz diff -s rocketfuel@canonical.com/launchpad--devel--0 | \
59
		grep -v "^*" | \
60
		grep -v "{arch}" | \
61
		cut -c4- | \
62
		xargs sh ./utilities/lint.sh
2279 by Canonical.com Patch Queue Manager
[trivial] add a make lint target (USE IT) and remove cruft
63
1746 by Canonical.com Patch Queue Manager
[r=jamesh] Simple database restoration script and sampledata fixes
64
pagetests: build
65
	env PYTHONPATH=$(PYTHONPATH) ${PYTHON} test.py test_pages
3044.1.15 by James Troup
Fix 'suspicious' line in Makefile to quiet emacs
66
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
67
inplace: build
68
69
build:
1831 by Canonical.com Patch Queue Manager
New config machinery, database helpers and oddsnsods required for staging
70
	${SHHH} $(MAKE) -C sourcecode build PYTHON=${PYTHON} \
71
	    PYTHON_VERSION=${PYTHON_VERSION} LPCONFIG=${LPCONFIG}
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
72
73
runners:
74
	echo "#!/bin/sh" > bin/runzope;
75
	echo "exec $(PYTHON) $(STARTSCRIPT) -C $(CONFFILE)" >> bin/runzope;
76
	chmod +x bin/runzope
77
	echo "#!/bin/sh" > bin/zopectl;
78
	echo "$(PYTHON) $(PWD)/src/zdaemon/zdctl.py \
79
	      -S schema.xml \
80
	      -C zdaemon.conf -d \$$*" >> bin/zopectl
81
	chmod +x bin/zopectl 
82
83
test_build: build
84
	$(PYTHON) test.py $(TESTFLAGS) $(TESTOPTS)
85
86
test_inplace: inplace
87
	$(PYTHON) test.py $(TESTFLAGS) $(TESTOPTS)
88
89
ftest_build: build
90
	env PYTHONPATH=$(PYTHONPATH) \
1746 by Canonical.com Patch Queue Manager
[r=jamesh] Simple database restoration script and sampledata fixes
91
	    $(PYTHON) test.py -f $(TESTFLAGS) $(TESTOPTS)
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
92
93
ftest_inplace: inplace
94
	env PYTHONPATH=$(PYTHONPATH) \
1746 by Canonical.com Patch Queue Manager
[r=jamesh] Simple database restoration script and sampledata fixes
95
	    $(PYTHON) test.py -f $(TESTFLAGS) $(TESTOPTS)
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
96
1939 by Canonical.com Patch Queue Manager
[trivial] Fix busted Makefile
97
run: inplace stop
1831 by Canonical.com Patch Queue Manager
New config machinery, database helpers and oddsnsods required for staging
98
	LPCONFIG=${LPCONFIG} PYTHONPATH=$(Z3LIBPATH):$(PYTHONPATH) \
1813 by Canonical.com Patch Queue Manager
[trivial] Specify config section using LPCONFIG
99
		 $(PYTHON) -t $(STARTSCRIPT) -C $(CONFFILE)
809 by Canonical.com Patch Queue Manager
Nuke some arch-tags
100
1884 by Canonical.com Patch Queue Manager
[trivial] run-as-daemon targets
101
# Run as a daemon - hack using nohup until we move back to using zdaemon
1937 by Canonical.com Patch Queue Manager
[r=jamesh] Common PID file handing module
102
# properly. We also should really wait until services are running before 
103
# exiting, as running 'make stop' too soon after running 'make start'
104
# will not work as expected.
105
start: inplace stop
1884 by Canonical.com Patch Queue Manager
[trivial] run-as-daemon targets
106
	LPCONFIG=${LPCONFIG} PYTHONPATH=$(Z3LIBPATH):$(PYTHONPATH) \
107
		 nohup $(PYTHON) -t $(STARTSCRIPT) -C $(CONFFILE) \
1937 by Canonical.com Patch Queue Manager
[r=jamesh] Common PID file handing module
108
		 > ${LPCONFIG}-nohup.out 2>&1 &
1884 by Canonical.com Patch Queue Manager
[trivial] run-as-daemon targets
109
1937 by Canonical.com Patch Queue Manager
[r=jamesh] Common PID file handing module
110
# Kill launchpad last - other services will probably shutdown with it,
111
# so killing them after is a race condition.
2354 by Canonical.com Patch Queue Manager
[r=bjornt] Product and Project vocabularies should not contain inactive entries. Bug#1873
112
stop: build
1937 by Canonical.com Patch Queue Manager
[r=jamesh] Common PID file handing module
113
	@ LPCONFIG=${LPCONFIG} ${PYTHON} \
2603 by Canonical.com Patch Queue Manager
Build daemon task sequencer/serialiser. r=spiv
114
	    utilities/killservice.py librarian trebuchet \
115
                                     buildsequencer launchpad
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
116
1627 by Canonical.com Patch Queue Manager
Initial, very very hacky, zcml-for-scripts support. Also, got rid of vestigal principals.zcml.
117
debug:
1831 by Canonical.com Patch Queue Manager
New config machinery, database helpers and oddsnsods required for staging
118
	LPCONFIG=${LPCONFIG} PYTHONPATH=$(Z3LIBPATH):$(PYTHONPATH) \
119
		 $(PYTHON) -i -c \ "from zope.app import Application;\
120
		    app = Application('Data.fs', 'site.zcml')()"
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
121
122
clean:
1716.2.29 by kiko
Make sure we /really/ clean up pygettextpo, and any libtool cruft, when make cleaning
123
	(cd sourcecode/pygettextpo; make clean)
2237 by Canonical.com Patch Queue Manager
[trivial] Libraraian upstream tweaks, which demonstrate the the feature is broken (?)
124
	find . -type f \( -name '*.o' -o -name '*.so' \
1716.2.29 by kiko
Make sure we /really/ clean up pygettextpo, and any libtool cruft, when make cleaning
125
	    -o -name '*.la' -o -name '*.lo' \
2237 by Canonical.com Patch Queue Manager
[trivial] Libraraian upstream tweaks, which demonstrate the the feature is broken (?)
126
	    -o -name '*.py[co]' -o -name '*.dll' \) -exec rm -f {} \;
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
127
	rm -rf build
128
129
realclean: clean
130
	rm -f TAGS tags
131
	$(PYTHON) setup.py clean -a
132
133
zcmldocs:
134
	PYTHONPATH=`pwd`/src:$(PYTHONPATH) $(PYTHON) \
2373 by Canonical.com Patch Queue Manager
[r=SteveA,BjornT] Zope3FormErrorMessages
135
	    ./sourcecode/zope/configuration/stxdocs.py \
1746 by Canonical.com Patch Queue Manager
[r=jamesh] Simple database restoration script and sampledata fixes
136
	    -f ./src/zope/app/meta.zcml -o ./doc/zcml/namespaces.zope.org
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
137
2237 by Canonical.com Patch Queue Manager
[trivial] Libraraian upstream tweaks, which demonstrate the the feature is broken (?)
138
potemplates: launchpad.pot
139
140
# Generate launchpad.pot by extracting message ids from the source
141
launchpad.pot:
142
	$(PYTHON) sourcecode/zope/utilities/i18nextract.py \
143
	    -d launchpad -p lib/canonical/launchpad \
144
	    -o locales
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
145
146
TAGS:
3044.1.14 by James Troup
Use ctags to create emacs TAGS file.
147
	ctags -e -R lib sourcecode
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
148
149
tags:
2779.2.1 by Stuart Bishop
Refactor exception handling so that no database queries need to be made to determine if exceptions should be displayed to the user or not
150
	ctags -R lib sourcecode
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
151
1716.1.49 by Christian Reis
Removing cruft from the main Makefile
152
.PHONY: check tags TAGS zcmldocs realclean clean debug stop start run \
153
		ftest_build ftest_inplace test_build test_inplace pagetests \
2237 by Canonical.com Patch Queue Manager
[trivial] Libraraian upstream tweaks, which demonstrate the the feature is broken (?)
154
		check importdcheck check_merge schema default launchpad.pot
1102 by Canonical.com Patch Queue Manager
Lucille had some XXXs which should have been NOTEs
155