Merge branch 'jc/merge-msg' into next
[gitweb.git] / t / Makefile
index 6882e23be568ccf14f3adb0c766139086f2ee952..ba6ddbec976f2ea0e4808d6549f93270e0c2b676 100644 (file)
@@ -4,12 +4,29 @@
 #
 
 #GIT_TEST_OPTS=--verbose --debug
+SHELL_PATH ?= $(SHELL)
+TAR ?= $(TAR)
+
+# Shell quote;
+# Result of this needs to be placed inside ''
+shq = $(subst ','\'',$(1))
+# This has surrounding ''
+shellquote = '$(call shq,$(1))'
 
 T = $(wildcard t[0-9][0-9][0-9][0-9]-*.sh)
 
-all:
-       @$(foreach t,$T,echo "*** $t ***"; sh $t $(GIT_TEST_OPTS) || exit; )
-       @rm -fr trash
+ifdef NO_PYTHON
+       GIT_TEST_OPTS += --no-python
+endif
+
+all: $(T) clean
+
+$(T):
+       @echo "*** $@ ***"; $(call shellquote,$(SHELL_PATH)) $@ $(GIT_TEST_OPTS)
 
 clean:
        rm -fr trash
+
+.PHONY: $(T) clean
+.NOPARALLEL:
+