1 # simple makefile wrapper to run waf
3 WAF_BINARY
=$(PYTHON
) .
/buildtools
/bin
/waf
4 WAF
=PYTHONHASHSEED
=1 WAF_MAKE
=1 $(WAF_BINARY
)
16 $(WAF
) test $(TEST_OPTIONS
)
19 $(WAF
) testonly
$(TEST_OPTIONS
)
22 $(WAF
) test --perf-test
$(TEST_OPTIONS
)
25 @echo NOTE
: to run extended waf options use
$(WAF_BINARY
) or modify your PATH
29 $(WAF
) test --filtered-subunit
$(TEST_OPTIONS
)
32 $(WAF
) test --testenv
$(TEST_OPTIONS
)
37 @echo .
/configure
--enable-coverage
39 @echo make
test TESTS
=mytest
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
48 $(WAF
) test --testenv
--gdbtest
$(TEST_OPTIONS
)
51 $(WAF
) test --quick
$(TEST_OPTIONS
)
54 $(WAF
) test --random-order
$(TEST_OPTIONS
)
57 $(WAF
) test --list
$(TEST_OPTIONS
)
60 $(WAF
) test --no-subunit-filter
--test-list
=selftest
/no-python-tests.txt
$(TEST_OPTIONS
)
64 WAFLOCK
=.tmplock
$(WAF
) dist
68 WAFLOCK
=.tmplock
$(WAF
) distcheck
76 reconfigure
: configure
82 # some compatibility make targets
91 # this should do an install as well, once install is finished
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
107 $(WAF
) --targets
=smbd
/smbd
110 $(WAF
) --targets
=winbindd
/winbindd
113 $(WAF
) --targets
=nmbd
/nmbd
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
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
129 # This rule has to be the last one
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 parralel builds if
134 # instructed to do so
136 .PHONY
: FORCE everything testsuite
check torture