| 1234567891011121314151617181920212223242526272829303132333435 |
- .PHONY:all %.all install %.install clean %.clean cleandist %.cleandist release
- SUBMAKE:=make -s -C
- SUBMAKABLE:=$(shell find -mindepth 2 -name '[Mm]akefile' | sed 's%^./%%;s%/[^/]*%%')
- define submake
- @tput setaf 3
- @echo make[$1] $2
- @tput sgr0
- @$3 $(SUBMAKE) $1 $2
- endef
- all: $(patsubst %,%.all,$(SUBMAKABLE))
- %.all:
- $(call submake,$*,,)
- install: $(patsubst %,%.install,$(SUBMAKABLE))
- %.install:
- $(call submake,$*,install,sudo)
- clean: $(patsubst %,%.clean,$(SUBMAKABLE))
- %.clean:
- $(call submake,$*,clean,)
- cleandist: $(patsubst %,%.cleandist,$(SUBMAKABLE))
- %.cleandist:
- $(call submake,$*,cleandist,)
- release:
- $(call submake,.,,)
- $(call submake,.,clean,)
|