1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-29 11:21:54 +03:00
samba-mirror/Makefile
Douglas Bagnall e908873757 make perftest: for performance testing
This runs a selection of subunit tests and reduces the output to only
the time it takes to run each test.

The tests are listed in selftest/perf_tests.py.

Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
2016-08-31 07:09:26 +02:00

122 lines
2.3 KiB
Makefile

# simple makefile wrapper to run waf
PYTHON?=python
WAF_BINARY=$(PYTHON) ./buildtools/bin/waf
WAF=WAF_MAKE=1 $(WAF_BINARY)
all:
$(WAF) build
install:
$(WAF) install
uninstall:
$(WAF) uninstall
test:
$(WAF) test $(TEST_OPTIONS)
perftest:
$(WAF) test --perf-test $(TEST_OPTIONS)
help:
@echo NOTE: to run extended waf options use $(WAF_BINARY) or modify your PATH
$(WAF) --help
subunit-test:
$(WAF) test --filtered-subunit $(TEST_OPTIONS)
testenv:
$(WAF) test --testenv $(TEST_OPTIONS)
gdbtestenv:
$(WAF) test --testenv --gdbtest $(TEST_OPTIONS)
quicktest:
$(WAF) test --quick $(TEST_OPTIONS)
randomized-test:
$(WAF) test --random-order $(TEST_OPTIONS)
testlist:
$(WAF) test --list $(TEST_OPTIONS)
dist:
touch .tmplock
WAFLOCK=.tmplock $(WAF) dist
distcheck:
touch .tmplock
WAFLOCK=.tmplock $(WAF) distcheck
clean:
$(WAF) clean
distclean:
$(WAF) distclean
reconfigure: configure
$(WAF) reconfigure
show_waf_options:
$(WAF) --help
# some compatibility make targets
everything: all
testsuite: all
check: test
torture: all
# this should do an install as well, once install is finished
installcheck: test
etags:
$(WAF) etags
ctags:
$(WAF) ctags
pydoctor:
$(WAF) pydoctor
pep8:
$(WAF) pep8
# Adding force on the depencies will force the target to be always rebuild form the Make
# point of view forcing make to invoke waf
bin/smbd: FORCE
$(WAF) --targets=smbd/smbd
bin/winbindd: FORCE
$(WAF) --targets=winbindd/winbindd
bin/nmbd: FORCE
$(WAF) --targets=nmbd/nmbd
bin/smbclient: FORCE
$(WAF) --targets=client/smbclient
# this allows for things like "make bin/smbtorture"
# mainly for the binary that don't have a broken mode like smbd that must
# be build with smbd/smbd
bin/%: FORCE
$(WAF) --targets=$(subst bin/,,$@)
# Catch all rule to be able to call make service_repl in order to find the name
# of the submodule you want to build, look at the wscript
%:
$(WAF) --targets=$@
# This rule has to be the last one
FORCE:
# Having .NOTPARALLEL will force make to do target once at a time but still -j
# will be present in the MAKEFLAGS that are in turn interpreted by WAF
# so only 1 waf at a time will be called but it will still be able to do parralel builds if
# instructed to do so
.NOTPARALLEL: %
.PHONY: FORCE everything testsuite check torture