talloc: version 2.1.15
[Samba.git] / Makefile
blobc2de1df7b608c9e6c79ec52659f53ce4ee788867
1 # simple makefile wrapper to run waf
3 WAF_BINARY=$(PYTHON) ./buildtools/bin/waf
4 WAF=PYTHONHASHSEED=1 WAF_MAKE=1 $(WAF_BINARY)
6 all:
7 $(WAF) build
9 install:
10 $(WAF) install
12 uninstall:
13 $(WAF) uninstall
15 test:
16 $(WAF) test $(TEST_OPTIONS)
18 perftest:
19 $(WAF) test --perf-test $(TEST_OPTIONS)
21 help:
22 @echo NOTE: to run extended waf options use $(WAF_BINARY) or modify your PATH
23 $(WAF) --help
25 subunit-test:
26 $(WAF) test --filtered-subunit $(TEST_OPTIONS)
28 testenv:
29 $(WAF) test --testenv $(TEST_OPTIONS)
31 gdbtestenv:
32 $(WAF) test --testenv --gdbtest $(TEST_OPTIONS)
34 quicktest:
35 $(WAF) test --quick $(TEST_OPTIONS)
37 randomized-test:
38 $(WAF) test --random-order $(TEST_OPTIONS)
40 testlist:
41 $(WAF) test --list $(TEST_OPTIONS)
43 dist:
44 touch .tmplock
45 WAFLOCK=.tmplock $(WAF) dist
47 distcheck:
48 touch .tmplock
49 WAFLOCK=.tmplock $(WAF) distcheck
51 clean:
52 $(WAF) clean
54 distclean:
55 $(WAF) distclean
57 reconfigure: configure
58 $(WAF) reconfigure
60 show_waf_options:
61 $(WAF) --help
63 # some compatibility make targets
64 everything: all
66 testsuite: all
68 check: test
70 torture: all
72 # this should do an install as well, once install is finished
73 installcheck: test
75 etags:
76 $(WAF) etags
78 ctags:
79 $(WAF) ctags
81 pydoctor:
82 $(WAF) pydoctor
84 pep8:
85 $(WAF) pep8
87 # Adding force on the depencies will force the target to be always rebuild form the Make
88 # point of view forcing make to invoke waf
90 bin/smbd: FORCE
91 $(WAF) --targets=smbd/smbd
93 bin/winbindd: FORCE
94 $(WAF) --targets=winbindd/winbindd
96 bin/nmbd: FORCE
97 $(WAF) --targets=nmbd/nmbd
99 bin/smbclient: FORCE
100 $(WAF) --targets=client/smbclient
102 # this allows for things like "make bin/smbtorture"
103 # mainly for the binary that don't have a broken mode like smbd that must
104 # be build with smbd/smbd
105 bin/%: FORCE
106 $(WAF) --targets=$(subst bin/,,$@)
108 # Catch all rule to be able to call make service_repl in order to find the name
109 # of the submodule you want to build, look at the wscript
111 $(WAF) --targets=$@
113 # This rule has to be the last one
114 FORCE:
115 # Having .NOTPARALLEL will force make to do target once at a time but still -j
116 # will be present in the MAKEFLAGS that are in turn interpreted by WAF
117 # so only 1 waf at a time will be called but it will still be able to do parralel builds if
118 # instructed to do so
119 .NOTPARALLEL: %
120 .PHONY: FORCE everything testsuite check torture