s3:winbind: Add callback winbind_call_flow()
[samba4-gss.git] / Makefile
blob5308d745e498bedf9f7e9f46f5ff65301ebbfae3
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 testonly:
19 $(WAF) testonly $(TEST_OPTIONS)
21 perftest:
22 $(WAF) test --perf-test $(TEST_OPTIONS)
24 help:
25 @echo NOTE: to run extended waf options use $(WAF_BINARY) or modify your PATH
26 $(WAF) --help
28 subunit-test:
29 $(WAF) test --filtered-subunit $(TEST_OPTIONS)
31 testenv:
32 $(WAF) test --testenv $(TEST_OPTIONS)
34 lcov:
35 @echo usage:
36 @echo ""
37 @echo ./configure --enable-coverage
38 @echo make -j
39 @echo make test TESTS=mytest
40 @echo make lcov
41 @echo ""
42 rm -f lcov.info
43 lcov --capture --directory . --output-file lcov.info && \
44 genhtml lcov.info --output-directory public --prefix=$$(pwd) && \
45 echo Please open public/index.html in browser to view the coverage report
47 gdbtestenv:
48 $(WAF) test --testenv --gdbtest $(TEST_OPTIONS)
50 quicktest:
51 $(WAF) test --quick $(TEST_OPTIONS)
53 randomized-test:
54 $(WAF) test --random-order $(TEST_OPTIONS)
56 testlist:
57 $(WAF) test --list $(TEST_OPTIONS)
59 test-nopython:
60 $(WAF) test --no-subunit-filter --test-list=selftest/no-python-tests.txt $(TEST_OPTIONS)
62 dist:
63 touch .tmplock
64 WAFLOCK=.tmplock $(WAF) dist
66 distcheck:
67 touch .tmplock
68 WAFLOCK=.tmplock $(WAF) distcheck
70 clean:
71 $(WAF) clean
73 distclean:
74 $(WAF) distclean
76 reconfigure: configure
77 $(WAF) reconfigure
79 show_waf_options:
80 $(WAF) --help
82 # some compatibility make targets
83 everything: all
85 testsuite: all
87 check: test
89 torture: all
91 # this should do an install as well, once install is finished
92 installcheck: test
94 etags:
95 $(WAF) etags
97 ctags:
98 $(WAF) ctags
100 pep8:
101 $(WAF) pep8
103 # Adding force on the dependencies will force the target to be always rebuild form the Make
104 # point of view forcing make to invoke waf
106 bin/smbd: FORCE
107 $(WAF) --targets=smbd/smbd
109 bin/winbindd: FORCE
110 $(WAF) --targets=winbindd/winbindd
112 bin/nmbd: FORCE
113 $(WAF) --targets=nmbd/nmbd
115 bin/smbclient: FORCE
116 $(WAF) --targets=client/smbclient
118 # this allows for things like "make bin/smbtorture"
119 # mainly for the binary that don't have a broken mode like smbd that must
120 # be build with smbd/smbd
121 bin/%: FORCE
122 $(WAF) --targets=$(subst bin/,,$@)
124 # Catch all rule to be able to call make service_repl in order to find the name
125 # of the submodule you want to build, look at the wscript
127 $(WAF) --targets=$@
129 # This rule has to be the last one
130 FORCE:
131 # Having .NOTPARALLEL will force make to do target once at a time but still -j
132 # will be present in the MAKEFLAGS that are in turn interpreted by WAF
133 # so only 1 waf at a time will be called but it will still be able to do parallel builds if
134 # instructed to do so
135 .NOTPARALLEL: %
136 .PHONY: FORCE everything testsuite check torture