On Thu, Oct 14, 2010 at 08:53, Michael J Gruber <git@xxxxxxxxxxxxxxxxxxxx> wrote: > Introduce a new make target "prove" which runs the tests via "prove" (or > $(PROVE) if set) so that one does not have to cd around any more. One > can simply use "make prove" for "make test" or go wild as in: > > GIT_SKIP_TESTS='t[0-4]??? t91?? t9200.8' GIT_PROVE_OPTS="-j9 -v" GIT_TEST_OPTS="--verbose --debug" make prove > > Signed-off-by: Michael J Gruber <git@xxxxxxxxxxxxxxxxxxxx> > --- > RFC also because of lack of doc, and: > > Currently, one can do > > make -C t t6010-merge-base.sh > > or even > > make -C t t601* > > which is cool but undocumented. If we want this with prove it requires more > effort, or shoving prove into the $(T) target rule which is doable, of course. > I'm just wondering whether it's accepted to introduce a specific rule for prove > at all. I like the rationale behind this, but fwiw. I already had a patch that was ejected for this: http://article.gmane.org/gmane.comp.version-control.git/146566 Quoth Junio: "Besides, "make -j15 test" from the toplevel already runs the tests in parallel. I don't see much point in this change." But I'd like to have it so that I could `make && make test_harness` and get readable test output. But we should probably be using t/harness to run them, not prove(1). Then we would make the test_harness target respect the HARNESS_OPTIONS variable, which I e.g. have set to HARNESS_OPTIONS=j9 on my system. > > ÂMakefile  |  Â3 +++ > Ât/Makefile |  Â5 +++++ > Â2 files changed, 8 insertions(+), 0 deletions(-) > > diff --git a/Makefile b/Makefile > index 1f1ce04..3478515 100644 > --- a/Makefile > +++ b/Makefile > @@ -2046,6 +2046,9 @@ export NO_SVN_TESTS > Âtest: all >    Â$(MAKE) -C t/ all > > +prove: all > +    $(MAKE) -C t/ prove > + > Âtest-ctype$X: ctype.o > > Âtest-date$X: date.o ctype.o > diff --git a/t/Makefile b/t/Makefile > index c7baefb..e4661c0 100644 > --- a/t/Makefile > +++ b/t/Makefile > @@ -11,6 +11,7 @@ SHELL_PATH ?= $(SHELL) > ÂPERL_PATH ?= /usr/bin/perl > ÂTAR ?= $(TAR) > ÂRM ?= rm -f > +PROVE ?= prove > > Â# Shell quote; > ÂSHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH)) > @@ -21,6 +22,10 @@ TSVN = $(wildcard t91[0-9][0-9]-*.sh) > Âall: pre-clean >    Â$(MAKE) aggregate-results-and-cleanup > > +prove: pre-clean > +    @echo "*** prove ***"; GIT_CONFIG=.git/config $(PROVE) --exec '$(SHELL_PATH_SQ)' $(GIT_PROVE_OPTS) $(T) :: $(GIT_TEST_OPTS) > +    $(MAKE) clean > + > Â$(T): >    Â@echo "*** $@ ***"; GIT_CONFIG=.git/config '$(SHELL_PATH_SQ)' $@ $(GIT_TEST_OPTS) > > -- > 1.7.3.1.184.g5b1fd > > -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html