export JOBS
-$(info $(shell printf '# [ perf build: Doing '\''make \033[33m-j'$(JOBS)'\033[m'\'' parallel build. ]\n'))
+define print_msg
+ @printf ' BUILD: Doing '\''make \033[33m-j'$(JOBS)'\033[m'\'' parallel build\n'
+endef
+
+define make
+ @$(MAKE) -f Makefile.perf --no-print-directory -j$(JOBS) $@
+endef
#
# Needed if no target specified:
#
all:
- @$(MAKE) -f Makefile.perf --no-print-directory -j$(JOBS) $@
+ $(print_msg)
+ $(make)
+
+#
+# The clean target is not really parallel, don't print the jobs info:
+#
+clean:
+ $(make)
+#
+# All other targets get passed through:
+#
%:
- @$(MAKE) -f Makefile.perf --no-print-directory -j$(JOBS) $@
+ $(print_msg)
+ $(make)
feature_print = $(eval $(feature_print_code))
define feature_print_code
ifeq ($(feature-$(1)), 1)
- MSG := $(shell printf '...%30s: [ \033[32mon\033[m ]' $(1))
+ MSG = $(shell printf '...%30s: [ \033[32mon\033[m ]' $(1))
else
- MSG := $(shell printf '...%30s: [ \033[31mOFF\033[m ]' $(1))
+ MSG = $(shell printf '...%30s: [ \033[31mOFF\033[m ]' $(1))
endif
$(info $(MSG))
endef