diff -r ee2d5716ef0a -r 90ab79764ce4 Makefile --- a/Makefile Tue Feb 28 17:00:17 2017 +0100 +++ b/Makefile Tue Mar 14 14:38:10 2017 -0700 @@ -1,5 +1,6 @@ VERSION=$(shell python setup.py --version) +PYTHON=python help: @echo 'Commonly used make targets:' @@ -15,3 +16,42 @@ mv hg-evolve-$(VERSION) ../mercurial-evolve_$(VERSION).orig cp -r debian/ ../mercurial-evolve_$(VERSION).orig/ @cd ../mercurial-evolve_$(VERSION).orig && echo 'debian build directory ready at' `pwd` + +install-home: + $(PYTHON) setup.py install --home="$(HOME)" --prefix="" --force + +# test targets +TESTFLAGS ?= $(shell echo $$HGTESTFLAGS) + +HGTESTS=$(HGROOT)/tests + +help: + @echo 'Commonly used make targets:' + @echo ' tests - run all tests in the automatic test suite' + @echo ' all-version-tests - run all tests against many hg versions' + @echo ' tests-%s - run all tests in the specified hg version' + +all: help + +_check_hgroot: + ifeq ($(HGROOT),) + $(error HGROOT is not set to the root of the hg source tree) + endif + +tests: _check_hgroot + cd tests && $(PYTHON) $(HGTESTS)/run-tests.py $(TESTFLAGS) + +# /!\ run outside of the compatibility branch output test will likely fails + +test-%: _check_hgroot + cd tests && $(PYTHON) $(HGTESTS)/run-tests.py $(TESTFLAGS) $@ + +tests-%: _check_hgroot + hg -R $(HGROOT) checkout $$(echo $@ | sed s/tests-//) && \ + (cd $(HGROOT) ; $(MAKE) clean ) && \ + cd tests && $(PYTHON) $(HGTESTS)/run-tests.py $(TESTFLAGS) + +# build a script to extract declared version +all-version-tests: tests-@ + +.PHONY: tests all-version-tests