#-------------------------------------------------------
#
#	Standard rules for executing sub-makefiles.
#
#--------------------------------------------------------

#--------------------------------------------------------
#	Include this file to define a standard set of rules
#	for a global makefile that builds a set of sub-makefiles.
#
#	Input:
#		SUBMAKES: A list of sub-makefiles to build.
#
#	Output:
#		default (rule): Perform the default make action.
#		depends (rule): Compute dependencies.
#		clean (rule): Clean all built files.
#--------------------------------------------------------

ifndef LOCAL_MAKE
	ALLMAKES := $(DEPMAKES) $(SUBMAKES)
else
	ALLMAKES := $(SUBMAKES)
endif

ifdef DIST_TARGET
	SET_DIST := DIST_TARGET="$(DIST_TARGET)"
else
	SET_DIST :=
endif

default:
	@for i in $(ALLMAKES); do (		\
		echo "==> Making $$i";		\
		cd `dirname $$i`;			\
		make LOCAL_MAKE=1 -f `basename $$i`;		\
	) done

depends:
	@for i in $(ALLMAKES); do (				\
		echo "==> Depending $$i";			\
		cd `dirname $$i`;					\
		make LOCAL_MAKE=1 -f `basename $$i` depends;		\
	) done

clean:
	@for i in $(ALLMAKES); do (				\
		echo "==> Cleaning $$i";			\
		cd `dirname $$i`;					\
		make LOCAL_MAKE=1 -f `basename $$i` clean;		\
	) done

dist:
	@for i in $(SUBMAKES); do (				\
		echo "==> Distributing $$i";		\
		cd `dirname $$i`;					\
		make LOCAL_MAKE=1 $(SET_DIST) -f `basename $$i` dist;		\
	) done
