Makefile: Allow specifying PYTHON environment variable.
[garming/samba-autobuild/.git] / Makefile
1 # simple makefile wrapper to run waf
2
3 PYTHON?=python
4 WAF_BINARY=$(PYTHON) ./buildtools/bin/waf
5 WAF=WAF_MAKE=1 $(WAF_BINARY)
6
7 all:
8         $(WAF) build
9
10 install:
11         $(WAF) install
12
13 uninstall:
14         $(WAF) uninstall
15
16 test:
17         $(WAF) test $(TEST_OPTIONS)
18
19 help:
20         @echo NOTE: to run extended waf options use $(WAF_BINARY) or modify your PATH
21         $(WAF) --help
22
23 subunit-test:
24         $(WAF) test --filtered-subunit $(TEST_OPTIONS)
25
26 testenv:
27         $(WAF) test --testenv $(TEST_OPTIONS)
28
29 quicktest:
30         $(WAF) test --quick $(TEST_OPTIONS)
31
32 dist:
33         touch .tmplock
34         WAFLOCK=.tmplock $(WAF) dist
35
36 distcheck:
37         touch .tmplock
38         WAFLOCK=.tmplock $(WAF) distcheck
39
40 clean:
41         $(WAF) clean
42
43 distclean:
44         $(WAF) distclean
45
46 reconfigure: configure
47         $(WAF) reconfigure
48
49 show_waf_options:
50         $(WAF) --help
51
52 # some compatibility make targets
53 everything: all
54
55 testsuite: all
56
57 check: test
58
59 torture: all
60
61 # this should do an install as well, once install is finished
62 installcheck: test
63
64 etags:
65         $(WAF) etags
66
67 ctags:
68         $(WAF) ctags
69
70 # this allows for things like "make bin/smbtorture"
71 bin/%:: FORCE
72         $(WAF) --targets=$@
73 FORCE:
74
75 pydoctor:
76         $(WAF) pydoctor
77
78 pep8:
79         $(WAF) pep8