From 309a9d0760c6ff50a6323b9e76f5606adaa6bcbc Mon Sep 17 00:00:00 2001 From: Igor Canadi Date: Fri, 22 May 2015 09:11:29 -0700 Subject: [PATCH] Run tests sequentally if J=1 Summary: Sometimes we want to run tests sequentially. J=1 gives us that option Test Plan: make J=1 check -- sequential make J=2 check -- parallel Reviewers: sdong, yhchiang, meyering Reviewed By: meyering Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D38805 --- Makefile | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/Makefile b/Makefile index 46de0cebd..a494e8eb6 100644 --- a/Makefile +++ b/Makefile @@ -497,17 +497,19 @@ CLEAN_FILES += t LOG $(TMPD) watch-log: watch --interval=0 'sort -k7,7nr -k4,4gr LOG|$(quoted_perl_command)' -# If GNU parallel is installed, run the tests in parallel, +# If J != 1 and GNU parallel is installed, run the tests in parallel, # via the check_0 rule above. Otherwise, run them sequentially. check: all - $(AM_V_GEN)case $$(parallel --gnu --help 2>/dev/null) in \ - *'GNU Parallel'*) \ - t=$$($(test_names)); \ - $(MAKE) T="$$t" TMPD=$(TMPD) check_0;; \ - *) \ - for t in $(TESTS); do \ - echo "===== Running $$t"; ./$$t || exit 1; done;; \ - esac + $(AM_V_GEN)if test "$(J)" != 1 \ + && (parallel --gnu --help 2>/dev/null) | \ + grep -q 'GNU Parallel'; \ + then \ + t=$$($(test_names)); \ + $(MAKE) T="$$t" TMPD=$(TMPD) check_0; \ + else \ + for t in $(TESTS); do \ + echo "===== Running $$t"; ./$$t || exit 1; done; \ + fi rm -rf $(TMPD) check_some: $(SUBSET) ldb_tests -- GitLab