cgit

commit 2ef4edee19c3f935dfffc3e0f4a56f5e2f183fa4

Author: John Keeping <john@keeping.me.uk>

tests: allow shell to be overridden

On some systems (e.g. Solaris), /bin/sh is not a POSIX shell.  Git
already provides suitable overrides in its config.mak.uname file and we
provide cgit.conf to allow the user to further change this.

The code for this is taken from Git's t/Makefile, meaning that we now
invoke the tests in the same way that Git does.

Signed-off-by: John Keeping <john@keeping.me.uk>

 tests/Makefile | 6 +++++-


diff --git a/tests/Makefile b/tests/Makefile
index 1556475cbb22f0f71b483f0f573fab36a06efd51..65e111733803b2049e011ac44ff8dae15eeeba17 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -1,11 +1,15 @@
+include ../git/config.mak.uname
+-include ../cgit.conf
 
+SHELL_PATH ?= $(SHELL)
+SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
 
 T = $(wildcard t[0-9][0-9][0-9][0-9]-*.sh)
 
 all: $(T)
 
 $(T):
-	@./$@ $(CGIT_TEST_OPTS)
+	@'$(SHELL_PATH_SQ)' $@ $(CGIT_TEST_OPTS)
 
 clean:
 	$(RM) -rf trash