From cd5523fafae37be4f55d6279e7fcc737b82936ed Mon Sep 17 00:00:00 2001 From: Jakub Jirutka <jakub@jirutka.cz> Date: Mon, 6 Mar 2017 22:08:57 +0100 Subject: [PATCH] makefile: add tasks test-debug and test-release I've intentionally omitted dependency of test-* on build-*, to not require building all modules when one have executables in bin-*. However, when debug or release is invoked and RUN_TESTS is 1, then it invokes build and test in this order. --- makefile | 36 ++++++++++++++++++++++++------------ 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/makefile b/makefile index 49d901ddfa..92597bdb3e 100644 --- a/makefile +++ b/makefile @@ -84,14 +84,22 @@ endif SUBDIRS_WITH_MAKE = $(dir $(wildcard */makefile)) -.PHONY: build-debug clean-debug \ - build-release clean-release \ - debug release clean doc all +.PHONY: build-debug test-debug clean-debug \ + build-release test-release clean-release \ + debug release clean doc all all: @echo "What to do master?" -debug build-debug: +ifeq ($(RUN_TESTS), 1) +debug: | build-debug test-debug +release: | build-release test-release +else +debug: build-debug +release: build-release +endif + +build-debug: for dir in $(SUBDIRS_LIBS); do \ $(MAKE) $@ -C $$dir || exit 1; \ done @@ -114,12 +122,9 @@ debug build-debug: cp $$dir/bin-debug/* $(addsuffix -debug, $(BINFOLDER)); \ done cp translateAddresses $(addsuffix -debug, $(BINFOLDER)); \ - cp xmlFormat $(addsuffix -debug, $(BINFOLDER)); \ - if [ "$@" == "debug" ] && [ $(RUN_TESTS) -eq 1 ]; then for test in $(wildcard tests.*.sh); do \ - ./$$test debug $(JOBS); \ - done; fi + cp xmlFormat $(addsuffix -debug, $(BINFOLDER)) -release build-release: +build-release: for dir in $(SUBDIRS_LIBS); do \ $(MAKE) $@ -C $$dir || exit 1; \ done @@ -142,10 +147,17 @@ release build-release: cp $$dir/bin-release/* $(addsuffix -release, $(BINFOLDER)); \ done cp translateAddresses $(addsuffix -release, $(BINFOLDER)); \ - cp xmlFormat $(addsuffix -release, $(BINFOLDER)); \ - if [ "$@" == "release" ] && [ $(RUN_TESTS) -eq 1 ]; then for test in $(wildcard tests.*.sh); do \ + cp xmlFormat $(addsuffix -release, $(BINFOLDER)) + +test-debug: + for test in $(wildcard tests.*.sh); do \ + ./$$test debug $(JOBS); \ + done + +test-release: + for test in $(wildcard tests.*.sh); do \ ./$$test release $(JOBS); \ - done; fi + done clean: clean-debug clean-release $(RM) -r bin-debug bin-release -- GitLab