X-Git-Url: http://git.samba.org/samba.git/?p=gd%2Fsamba-autobuild%2F.git;a=blobdiff_plain;f=Makefile;h=5cc907710001b47fd459c5edbf6a56647d5d7486;hp=3b40c73d9578505499def9bedb9e0ee1f6cff597;hb=0e571054a61e9de69190ae023199d1670e097e88;hpb=6da26870e0ae5acd6ff49a30ec2f6886b44d095e diff --git a/Makefile b/Makefile index 3b40c73d957..5cc90771000 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,7 @@ # simple makefile wrapper to run waf -WAF_BINARY=./buildtools/bin/waf +PYTHON?=python +WAF_BINARY=$(PYTHON) ./buildtools/bin/waf WAF=WAF_MAKE=1 $(WAF_BINARY) all: @@ -15,6 +16,9 @@ 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 @@ -25,9 +29,18 @@ subunit-test: 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 @@ -66,10 +79,43 @@ 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" -bin/%:: FORCE +# 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=$@ -FORCE: -pydoctor: - $(WAF) pydoctor +# 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