~bzr-pqm/bzr/bzr.dev

1773.4.1 by Martin Pool
Add pyflakes makefile target; fix many warnings
1
all:
1102 by Martin Pool
- merge test refactoring from robertc
2
3
check:
2080.2.2 by John Arbash Meinel
Teach the pqm to treat warnings as errors
4
	python -Werror ./bzr selftest -v $(tests)
1526.1.1 by Robert Collins
Run the test suite with no locale as well as the default locale. Also add a test for build_tree_shape to selftest.
5
	@echo "Running all tests with no locale."
1704.1.1 by Robert Collins
'bzr selftest' now shows a progress bar with the number of tests, and
6
	LC_CTYPE= LANG=C LC_ALL= ./bzr selftest -v $(tests)
2090.2.4 by Martin Pool
Make check should run under python -O too
7
	python -O -Werror ./bzr selftest -v $(tests)
1102 by Martin Pool
- merge test refactoring from robertc
8
1185.33.72 by Martin Pool
Fix commit message template for non-ascii files, and add test for handling of
9
check-msgeditor:
10
	./bzr --no-plugins selftest -v msgeditor
11
1773.4.1 by Martin Pool
Add pyflakes makefile target; fix many warnings
12
# Run Python style checker (apt-get install pyflakes)
13
pyflakes:
14
	pyflakes bzrlib
15
16
pyflakes-nounused:
17
	# There are many of these warnings at the moment and they're not a
18
	# high priority to fix
19
	pyflakes bzrlib | grep -v ' imported but unused'
20
21
clean:
2366.2.1 by Matthew Fuller
(trivial) Use 'python setup.py' instead of './setup.py'.
22
	python setup.py clean
1185.62.18 by John Arbash Meinel
From Jari Alto: Makefile fixes (clean target error suppression)
23
	-find . -name "*.pyc" -o -name "*.pyo" | xargs rm -f
1427 by Robert Collins
clean up test dirs on make clean
24
	rm -rf test????.tmp
1185.1.21 by Robert Collins
add a clean target
25
1102 by Martin Pool
- merge test refactoring from robertc
26
.PHONY: all
1158 by Martin Pool
- make target to build emacs TAGS file
27
28
29
# build emacs cross-reference
30
tag_files=./bzr ./bzrlib/*py ./bzrlib/selftest/*.py
31
TAGS: $(tag_files)
32
	ctags-exuberant -e $(tag_files)
1536.1.1 by Martin Pool
Move in tutorial text from wiki.
33
1821.1.1 by Alexander Belchenko
win32 installer for bzr.dev.0.9
34
1928.2.1 by Alexander Belchenko
New target to produce html docs to upload on server
35
# Produce HTML docs to upload on Canonical server
36
HTMLDIR := html_docs
2054.2.14 by Aaron Bentley
Add 'pretty-docs' target to makefile
37
PRETTYDIR := pretty_docs
1928.2.1 by Alexander Belchenko
New target to produce html docs to upload on server
38
1711.2.129 by John Arbash Meinel
change htmldocs => html-docs, to be consistent with other -docs functions
39
html-docs: docs
1928.2.1 by Alexander Belchenko
New target to produce html docs to upload on server
40
	python tools/win32/ostools.py copytodir $(htm_files) doc/default.css $(HTMLDIR)
41
1821.1.1 by Alexander Belchenko
win32 installer for bzr.dev.0.9
42
43
# translate txt docs to html
44
doc_dir := doc 
2054.2.14 by Aaron Bentley
Add 'pretty-docs' target to makefile
45
txt_files := $(wildcard $(addsuffix /*.txt, $(doc_dir))) doc/bzr_man.txt
46
htm_files := $(patsubst %.txt, %.htm, $(txt_files)) 
47
2054.2.16 by Aaron Bentley
More updates from review comments
48
pretty-html-docs: pretty_files
2054.2.14 by Aaron Bentley
Add 'pretty-docs' target to makefile
49
50
pretty_docs:
51
	python -c "import os; os.mkdir('$(PRETTYDIR)')"
52
53
pretty_files: $(patsubst doc/%.txt, $(PRETTYDIR)/%.htm, $(txt_files))
54
2405.2.1 by Andrew Bennetts
Build HACKING.htm from 'make docs'.
55
doc/HACKING.htm: HACKING
56
	python tools/rst2html.py --link-stylesheet --stylesheet=default.css HACKING doc/HACKING.htm
57
58
doc/%.htm: doc/%.txt 
2054.2.14 by Aaron Bentley
Add 'pretty-docs' target to makefile
59
	python tools/rst2html.py --link-stylesheet --stylesheet=default.css doc/$*.txt doc/$*.htm
60
61
$(PRETTYDIR)/%.htm: pretty_docs doc/%.txt
62
	python tools/rst2prettyhtml.py doc/bazaar-vcs.org.kid doc/$*.txt \
63
	$(PRETTYDIR)/$*.htm
1821.1.1 by Alexander Belchenko
win32 installer for bzr.dev.0.9
64
2425.1.1 by Robert Collins
``make docs`` now creates a man page at ``man1/bzr.1`` fixing bug 107388.
65
MAN_DEPENDENCIES = bzrlib/builtins.py \
1928.2.1 by Alexander Belchenko
New target to produce html docs to upload on server
66
		 bzrlib/bundle/commands.py \
67
		 bzrlib/conflicts.py \
68
		 bzrlib/sign_my_commits.py \
69
		 generate_docs.py \
70
		 tools/doc_generate/__init__.py \
71
		 tools/doc_generate/autodoc_rstx.py
2425.1.1 by Robert Collins
``make docs`` now creates a man page at ``man1/bzr.1`` fixing bug 107388.
72
73
doc/bzr_man.txt: $(MAN_DEPENDENCIES)
74
	python generate_docs.py -o $@ rstx
75
76
MAN_PAGES = man1/bzr.1
77
man1/bzr.1: $(MAN_DEPENDENCIES)
78
	python generate_docs.py -o $@ man
79
80
docs: $(htm_files) $(MAN_PAGES) doc/HACKING.htm
1821.1.1 by Alexander Belchenko
win32 installer for bzr.dev.0.9
81
1928.2.1 by Alexander Belchenko
New target to produce html docs to upload on server
82
copy-docs: docs
1861.2.18 by Alexander Belchenko
Makefile: cross-platform actions for building installer
83
	python tools/win32/ostools.py copytodir $(htm_files) doc/default.css NEWS README  win32_bzr.exe/doc
1821.1.1 by Alexander Belchenko
win32 installer for bzr.dev.0.9
84
1928.2.1 by Alexander Belchenko
New target to produce html docs to upload on server
85
# clean produced docs
86
clean-docs:
2425.1.1 by Robert Collins
``make docs`` now creates a man page at ``man1/bzr.1`` fixing bug 107388.
87
	python tools/win32/ostools.py remove $(htm_files) \
88
	$(HTMLDIR) $(PRETTYDIR) doc/bzr_man.txt $(MAN_PAGES)
1928.2.1 by Alexander Belchenko
New target to produce html docs to upload on server
89
90
91
# make bzr.exe for win32 with py2exe
92
exe:
93
	@echo *** Make bzr.exe
94
	python setup.py py2exe > py2exe.log
95
	python tools/win32/ostools.py copytodir tools/win32/start_bzr.bat win32_bzr.exe
96
	python tools/win32/ostools.py copytodir tools/win32/bazaar.url win32_bzr.exe
97
1821.1.1 by Alexander Belchenko
win32 installer for bzr.dev.0.9
98
# win32 installer for bzr.exe
1982.2.1 by Alexander Belchenko
small but important fix for 'make installer' dependencies
99
installer: exe copy-docs
1861.2.18 by Alexander Belchenko
Makefile: cross-platform actions for building installer
100
	@echo *** Make windows installer
101
	cog.py -d -o tools/win32/bzr.iss tools/win32/bzr.iss.cog
102
	iscc /Q tools/win32/bzr.iss
1821.1.1 by Alexander Belchenko
win32 installer for bzr.dev.0.9
103
1821.1.2 by Alexander Belchenko
resurrected python's distutils based installer for win32
104
# win32 python's distutils-based installer
105
# require to have python interpreter installed on win32
1860.1.3 by Alexander Belchenko
python-installer:
106
python-installer: docs
2245.4.5 by Alexander Belchenko
bzr-win32-bdist-postinstall.py: good win98 support
107
	python setup.py bdist_wininst --install-script="bzr-win32-bdist-postinstall.py" -d .
1821.1.2 by Alexander Belchenko
resurrected python's distutils based installer for win32
108
109
1821.1.1 by Alexander Belchenko
win32 installer for bzr.dev.0.9
110
# clean on win32 all installer-related files and directories
1928.2.1 by Alexander Belchenko
New target to produce html docs to upload on server
111
clean-win32:
1861.2.18 by Alexander Belchenko
Makefile: cross-platform actions for building installer
112
	python tools/win32/ostools.py remove build
113
	python tools/win32/ostools.py remove win32_bzr.exe
114
	python tools/win32/ostools.py remove py2exe.log
115
	python tools/win32/ostools.py remove doc/*.htm
116
	python tools/win32/ostools.py remove doc/bzr_man.txt
117
	python tools/win32/ostools.py remove tools/win32/bzr.iss
118
	python tools/win32/ostools.py remove bzr-setup*.exe
2245.4.5 by Alexander Belchenko
bzr-win32-bdist-postinstall.py: good win98 support
119
	python tools/win32/ostools.py remove bzr-*win32.exe
1861.2.18 by Alexander Belchenko
Makefile: cross-platform actions for building installer
120
	python tools/win32/ostools.py remove dist