Test ProtocolGraphWalker.all_wants_satisfied rather than private
[jelmer/dulwich.git] / Makefile
1 PYTHON = python
2 PYFLAKES = pyflakes
3 PEP8 = pep8
4 SETUP = $(PYTHON) setup.py
5 PYDOCTOR ?= pydoctor
6 TESTRUNNER ?= unittest
7 RUNTEST = PYTHONHASHSEED=random PYTHONPATH=.:$(PYTHONPATH) $(PYTHON) -m $(TESTRUNNER)
8
9 DESTDIR=/
10
11 all: build
12
13 doc:: pydoctor
14
15 pydoctor::
16         $(PYDOCTOR) --make-html -c dulwich.cfg
17
18 build::
19         $(SETUP) build
20         $(SETUP) build_ext -i
21
22 install::
23         $(SETUP) install --root="$(DESTDIR)"
24
25 check:: build
26         $(RUNTEST) dulwich.tests.test_suite
27
28 check-tutorial:: build
29         $(RUNTEST) dulwich.tests.tutorial_test_suite
30
31 check-nocompat:: build
32         $(RUNTEST) dulwich.tests.nocompat_test_suite
33
34 check-compat:: build
35         $(RUNTEST) dulwich.tests.compat_test_suite
36
37 check-pypy:: clean
38         $(MAKE) check-noextensions PYTHON=pypy
39
40 check-noextensions:: clean
41         $(RUNTEST) dulwich.tests.test_suite
42
43 check-all: check check-pypy check-noextensions
44
45 clean::
46         $(SETUP) clean --all
47         rm -f dulwich/*.so
48
49 flakes:
50         $(PYFLAKES) dulwich
51
52 pep8:
53         $(PEP8) dulwich
54
55 before-push: check
56         git diff origin/master | $(PEP8) --diff