Merge branch 'jm/mailmap'
[gitweb.git] / t / Makefile
index b81fb91b52af7cd127d243f6d96170cc757d7e5e..73c6ec473da2d13b9e5bf3d6feb7cfca4937e109 100644 (file)
@@ -11,16 +11,25 @@ SHELL_PATH ?= $(SHELL)
 PERL_PATH ?= /usr/bin/perl
 TAR ?= $(TAR)
 RM ?= rm -f
+PROVE ?= prove
+DEFAULT_TEST_TARGET ?= test
 
 # Shell quote;
 SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
 
 T = $(wildcard t[0-9][0-9][0-9][0-9]-*.sh)
 TSVN = $(wildcard t91[0-9][0-9]-*.sh)
+TGITWEB = $(wildcard t95[0-9][0-9]-*.sh)
 
-all: pre-clean
+all: $(DEFAULT_TEST_TARGET)
+
+test: 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)
 
@@ -29,7 +38,6 @@ pre-clean:
 
 clean:
        $(RM) -r 'trash directory'.* test-results
-       $(RM) t????/cvsroot/CVSROOT/?*
        $(RM) -r valgrind/bin
        $(RM) .prove
 
@@ -47,6 +55,9 @@ full-svn-test:
        $(MAKE) $(TSVN) GIT_SVN_NO_OPTIMIZE_COMMITS=1 LC_ALL=C
        $(MAKE) $(TSVN) GIT_SVN_NO_OPTIMIZE_COMMITS=0 LC_ALL=en_US.UTF-8
 
+gitweb-test:
+       $(MAKE) $(TGITWEB)
+
 valgrind:
        GIT_TEST_OPTS=--valgrind $(MAKE)
 
@@ -58,7 +69,7 @@ uname_M := $(shell sh -c 'uname -m 2>/dev/null || echo unknown')
 test-results:
        mkdir -p test-results
 
-test-results/git-smoke.tar.gz:
+test-results/git-smoke.tar.gz: test-results
        $(PERL_PATH) ./harness \
                --archive="test-results/git-smoke.tar.gz" \
                $(T)