# SUBDIRS = dir1 dir2 dir3 SUBDIRS := $(shell find . -mindepth 1 -maxdepth 1 -type d -exec test -e "{}/Makefile" \; -print) build: $(SUBDIRS) @for dir in $(SUBDIRS); do \ $(MAKE) -j$(nproc) -C $$dir; \ done clean: @for dir in $(SUBDIRS); do \ make -C $$dir clean; \ done .PHONY: build clean