+clean: $(foreach d,$(SUBDIRS),rec@clean@$(d))
+distclean: $(foreach d,$(SUBDIRS),rec@distclean@$(d))
+ $(H)rm -rf .matita library-stamp depend-stamp
+install: $(foreach d,$(SUBDIRS),rec@install@$(d))
+uninstall: $(foreach d,$(SUBDIRS),rec@uninstall@$(d))
+
+rec@%:
+ $(MAKE) -C $(word 2, $(subst @, ,$*)) $(word 1, $(subst @, ,$*))
+
+# {{{ Distribution stuff
+
+ifeq ($(DISTRIBUTED),yes)
+library: library-stamp
+library-stamp:
+ $(MAKE) -C matita/ dist_library
+ touch $@
+endif