From 2b8b526df0fabc51f7ea2f6bf87860db8983931a Mon Sep 17 00:00:00 2001 From: BuFran Date: Wed, 10 Jul 2013 13:46:51 +0200 Subject: [PATCH] [BUILD] Paralelize cleaning of examples make clean 1:50 -> 1:55 (no change) make clean -j8 1:30 -> 0:28 (strongly faster) Measured on Core i7 (4 cores, each HT) @ 3GHz --- Makefile | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index e079ca9..7865426 100644 --- a/Makefile +++ b/Makefile @@ -54,15 +54,15 @@ $(EXAMPLE_DIRS): lib examples: $(EXAMPLE_DIRS) $(Q)true -# Bleh http://www.makelinux.net/make3/make3-CHP-6-SECT-1#make3-CHP-6-SECT-1 -clean: +clean: $(EXAMPLE_DIRS:=.clean) $(Q)$(MAKE) -C libopencm3 clean - $(Q)for i in $(EXAMPLE_DIRS); do \ - if [ -d $$i ]; then \ - printf " CLEAN $$i\n"; \ - $(MAKE) -C $$i clean SRCLIBDIR=$(SRCLIBDIR) || exit $?; \ - fi; \ - done + +%.clean: + $(Q)if [ -d $* ]; then \ + printf " CLEAN $*\n"; \ + $(MAKE) -C $* clean SRCLIBDIR=$(SRCLIBDIR) || exit $?; \ + fi; + .PHONY: build lib examples $(EXAMPLE_DIRS) install clean