-# Cleaning
-ifneq ($(findstring clean,$(MAKECMDGOALS)),)
- CFG_INFO := $(info cfg: including clean rules)
- include $(CFG_SRC_DIR)mk/clean.mk
+# Copy all the distributables to another directory for binary install
+ifneq ($(strip $(findstring prepare,$(MAKECMDGOALS)) \
+ $(findstring dist,$(MAKECMDGOALS)) \
+ $(findstring install,$(MAKECMDGOALS))),)
+ CFG_INFO := $(info cfg: including prepare rules)
+ include $(CFG_SRC_DIR)mk/prepare.mk
+endif
+
+# Source and binary distribution artifacts
+ifneq ($(strip $(findstring dist,$(MAKECMDGOALS)) \
+ $(findstring install,$(MAKECMDGOALS)) \
+ $(findstring clean,$(MAKECMDGOALS))),)
+ CFG_INFO := $(info cfg: including dist rules)
+ include $(CFG_SRC_DIR)mk/dist.mk