Merge branch 'gb/apply-ignore-whitespace'
[gitweb.git] / t / Makefile
index fc9f734fef697e77f8b3ac1811a863636354b958..bd09390d3208d7eac362cd9cf45f7dde623c4ae6 100644 (file)
@@ -2,13 +2,45 @@
 #
 # Copyright (c) 2005 Junio C Hamano
 #
-#OPTS=--verbose --debug
+
+-include ../config.mak
+
+#GIT_TEST_OPTS=--verbose --debug
+SHELL_PATH ?= $(SHELL)
+TAR ?= $(TAR)
+RM ?= rm -f
+
+# 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)
+
+all: pre-clean
+       $(MAKE) aggregate-results-and-cleanup
+
+$(T):
+       @echo "*** $@ ***"; GIT_CONFIG=.git/config '$(SHELL_PATH_SQ)' $@ $(GIT_TEST_OPTS)
 
-all:
-       @$(foreach t,$T,echo "*** $t ***"; sh $t $(OPTS) || exit; )
-       @rm -fr trash
+pre-clean:
+       $(RM) -r test-results
 
 clean:
-       rm -fr trash
+       $(RM) -r 'trash directory'.* test-results
+
+aggregate-results-and-cleanup: $(T)
+       $(MAKE) aggregate-results
+       $(MAKE) clean
+
+aggregate-results:
+       '$(SHELL_PATH_SQ)' ./aggregate-results.sh test-results/t*-*
+
+# we can test NO_OPTIMIZE_COMMITS independently of LC_ALL
+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
+
+valgrind:
+       GIT_TEST_OPTS=--valgrind $(MAKE)
+
+.PHONY: pre-clean $(T) aggregate-results clean valgrind