~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to Makefile

  • Committer: Patch Queue Manager
  • Date: 2015-10-05 13:45:00 UTC
  • mfrom: (6603.3.1 bts794146)
  • Revision ID: pqm@pqm.ubuntu.com-20151005134500-v244rho557tv0ukd
(vila) Resolve Bug #1480015: Test failure: hexify removed from paramiko
 (Andrew Starr-Bochicchio) (Andrew Starr-Bochicchio)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2005-2010 Canonical Ltd
 
1
# Copyright (C) 2005-2011 Canonical Ltd
2
2
#
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
28
28
PLUGIN_TARGET=plugin-release
29
29
PYTHON_BUILDFLAGS=
30
30
 
31
 
.PHONY: all clean extensions pyflakes api-docs check-nodocs check
 
31
.PHONY: all clean realclean extensions pyflakes api-docs check-nodocs check
32
32
 
33
33
all: extensions
34
34
 
39
39
check: docs check-nodocs
40
40
 
41
41
check-nodocs: extensions
 
42
        set -e
42
43
        # Generate a stream for PQM to watch.
43
 
        $(PYTHON) -Werror -O ./bzr selftest --subunit $(tests) | tee selftest.log
 
44
        -$(RM) -f selftest.log
 
45
        echo `date` ": selftest starts" 1>&2
 
46
        $(PYTHON) -Werror -Wignore::ImportWarning -O ./bzr selftest -Oselftest.timeout=120 \
 
47
          --subunit $(tests) | tee selftest.log
 
48
        echo `date` ": selftest ends" 1>&2
 
49
        # An empty log file should catch errors in the $(PYTHON)
 
50
        # command above (the '|' swallow any errors since 'make'
 
51
        # sees the 'tee' exit code for the whole line
 
52
        if [ ! -s selftest.log ] ; then exit 1 ; fi
44
53
        # Check that there were no errors reported.
45
54
        subunit-stats < selftest.log
46
55
 
60
69
        $(PYTHON) setup.py clean
61
70
        -find . -name "*.pyc" -o -name "*.pyo" -o -name "*.so" | xargs rm -f
62
71
 
 
72
realclean: clean
 
73
        # Remove files which are autogenerated but included by the tarball.
 
74
        rm -f bzrlib/*_pyx.c
 
75
        rm -f bzrlib/_simple_set_pyx.h bzrlib/_simple_set_pyx_api.h
 
76
 
63
77
# Build API documentation
64
78
docfiles = bzr bzrlib
65
79
api-docs:
66
80
        mkdir -p api/html
67
 
        PYTHONPATH=$(PWD) $(PYTHON) tools/bzr_epydoc --html -o api/html --docformat 'restructuredtext en' $(docfiles)
68
 
check-api-docs:
69
 
        PYTHONPATH=$(PWD) $(PYTHON) tools/bzr_epydoc --check --docformat 'restructuredtext en' $(docfiles)
 
81
        pydoctor --make-html --docformat='restructuredtext' --html-output=api/html $(docfiles)
70
82
 
71
83
# build tags for emacs and vim
72
84
TAGS:
133
145
        doc/developers/Makefile \
134
146
        doc/developers/make.bat
135
147
 
 
148
NEWS_FILES = $(wildcard doc/en/release-notes/bzr-*.txt)
 
149
 
136
150
doc/en/user-reference/index.txt: $(MAN_DEPENDENCIES)
137
151
        $(PYTHON) tools/generate_docs.py -o $@ rstx
138
152
 
139
 
doc/en/release-notes/index.txt: NEWS tools/generate_release_notes.py
140
 
        $(PYTHON) tools/generate_release_notes.py NEWS $@
 
153
doc/en/release-notes/index.txt: $(NEWS_FILES) tools/generate_release_notes.py
 
154
        $(PYTHON) tools/generate_release_notes.py $@ $(NEWS_FILES)
141
155
 
142
156
doc/%/Makefile: doc/en/Makefile
143
157
        $(PYTHON) -c "import shutil; shutil.copyfile('$<', '$@')"
178
192
        cd doc/developers && make htmlhelp
179
193
 
180
194
 
 
195
# Build the texinfo files using Sphinx.
 
196
texinfo-sphinx: $(SPHINX_DEPENDENCIES)
 
197
        cd doc/en && make texinfo
 
198
        cd doc/es && make texinfo
 
199
        cd doc/ru && make texinfo
 
200
        cd doc/ja && make texinfo
 
201
        cd doc/developers && make texinfo
 
202
 
181
203
### Documentation Website ###
182
204
 
183
205
# Where to build the website
296
318
        $(rst2html) --stylesheet=default.css $< $@
297
319
 
298
320
%.html: %.txt
299
 
        $(rst2html) --stylesheet=../../default.css $< $@
 
321
        $(rst2html) --stylesheet=../../default.css $< "$@"
300
322
 
301
 
doc/en/release-notes/NEWS.txt: NEWS
302
 
        $(PYTHON) -c "import shutil; shutil.copyfile('$<', '$@')"
 
323
doc/en/release-notes/NEWS.txt: $(NEWS_FILES) tools/generate_release_notes.py
 
324
        $(PYTHON) tools/generate_release_notes.py "$@" $(NEWS_FILES)
303
325
 
304
326
upgrade_guide_dependencies =  $(wildcard $(addsuffix /*.txt, doc/en/upgrade-guide)) 
305
327
 
407
429
        $(PYTHON) tools/win32/ostools.py remove dist
408
430
 
409
431
 
 
432
# i18n targets
 
433
 
 
434
.PHONY: update-pot po/bzr.pot
 
435
update-pot: po/bzr.pot
 
436
 
 
437
TRANSLATABLE_PYFILES:=$(shell find bzrlib -name '*.py' \
 
438
                | grep -v 'bzrlib/tests/' \
 
439
                | grep -v 'bzrlib/doc' \
 
440
                )
 
441
 
 
442
po/bzr.pot: $(PYFILES) $(DOCFILES)
 
443
        $(PYTHON) ./bzr export-pot --include-duplicates > po/bzr.pot
 
444
        echo $(TRANSLATABLE_PYFILES) | xargs \
 
445
          xgettext --package-name "bzr" \
 
446
          --msgid-bugs-address "<bazaar@canonical.com>" \
 
447
          --copyright-holder "Canonical" \
 
448
          --from-code ISO-8859-1 --join --sort-by-file --add-comments=i18n: \
 
449
          -d bzr -p po -o bzr.pot
 
450
 
 
451
 
410
452
### Packaging Targets ###
411
453
 
412
454
.PHONY: dist check-dist-tarball