From c2b79dd8e0020c1c10b61fa1a6c58afd53738c85 Mon Sep 17 00:00:00 2001 From: John Keeping Date: Sat, 18 May 2013 15:17:08 +0100 Subject: Makefile: fix parallel "make test" When building the "test" target we depend on both cgit and building the Git tools. By doing this with two targets we end up running make in the git/ directory twice, concurrently if using parallel make, which causes us to build more than we need and potentially builds incorrectly if multi-step build-then-move operations overlap. Fix this by instead calling back into the makefile so that we alter the "cgit" target to also build the Git tools. Signed-off-by: John Keeping --- Makefile | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 77c676d..0fe0bc2 100644 --- a/Makefile +++ b/Makefile @@ -64,12 +64,10 @@ endif all:: cgit cgit: - $(QUIET_SUBDIR0)git $(QUIET_SUBDIR1) -f ../cgit.mk ../cgit NO_CURL=1 + $(QUIET_SUBDIR0)git $(QUIET_SUBDIR1) -f ../cgit.mk ../cgit $(EXTRA_GIT_TARGETS) NO_CURL=1 -git: - $(QUIET_SUBDIR0)git $(QUIET_SUBDIR1) NO_CURL=1 - -test: all git +test: + @$(MAKE) --no-print-directory cgit EXTRA_GIT_TARGETS=all $(QUIET_SUBDIR0)tests $(QUIET_SUBDIR1) all install: all -- cgit