diff -r c36e3195e3e9 -r 9c955076ffe3 make-rules/justmake.mk --- a/make-rules/justmake.mk Mon Jan 25 15:32:12 2016 -0800 +++ b/make-rules/justmake.mk Thu Jan 21 09:20:59 2016 -0800 @@ -36,8 +36,9 @@ # # Any additional pre/post configure, build, or install actions can be specified # in your Makefile by setting them in on of the following macros: -# COMPONENT_PRE_BUILD_ACTION, COMPONENT_POST_BUILD_ACTION -# COMPONENT_PRE_INSTALL_ACTION, COMPONENT_POST_INSTALL_ACTION +# COMPONENT_PRE_BUILD_ACTION, COMPONENT_BUILD_ACTION, +# COMPONENT_POST_BUILD_ACTION, COMPONENT_PRE_INSTALL_ACTION, +# COMPONENT_INSTALL_ACTION, COMPONENT_POST_INSTALL_ACTION # # If component specific make targets need to be used for build or install, they # can be specified in @@ -47,24 +48,30 @@ COMPONENT_INSTALL_ARGS += DESTDIR=$(PROTO_DIR) COMPONENT_INSTALL_ARGS += $(COMPONENT_INSTALL_ARGS.$(BITS)) +COMPONENT_BUILD_ACTION ?= \ + cd $(@D); $(ENV) $(COMPONENT_BUILD_ENV) \ + $(GMAKE) $(COMPONENT_BUILD_ARGS) $(COMPONENT_BUILD_TARGETS) + # build the configured source $(BUILD_DIR)/%/.built: $(SOURCE_DIR)/.prep $(RM) -r $(@D) ; $(MKDIR) $(@D) $(CLONEY) $(SOURCE_DIR) $(@D) $(COMPONENT_PRE_BUILD_ACTION) - (cd $(@D) ; $(ENV) $(COMPONENT_BUILD_ENV) \ - $(GMAKE) $(COMPONENT_BUILD_ARGS) $(COMPONENT_BUILD_TARGETS)) + ($(COMPONENT_BUILD_ACTION)) $(COMPONENT_POST_BUILD_ACTION) ifeq ($(strip $(PARFAIT_BUILD)),yes) -$(PARFAIT) $(@D) endif $(TOUCH) $@ +COMPONENT_INSTALL_ACTION ?= \ + cd $(@D) ; $(ENV) $(COMPONENT_INSTALL_ENV) \ + $(GMAKE) $(COMPONENT_INSTALL_ARGS) $(COMPONENT_INSTALL_TARGETS) + # install the built source into a prototype area $(BUILD_DIR)/%/.installed: $(BUILD_DIR)/%/.built $(COMPONENT_PRE_INSTALL_ACTION) - (cd $(@D) ; $(ENV) $(COMPONENT_INSTALL_ENV) $(GMAKE) \ - $(COMPONENT_INSTALL_ARGS) $(COMPONENT_INSTALL_TARGETS)) + ($(COMPONENT_INSTALL_ACTION)) $(COMPONENT_POST_INSTALL_ACTION) $(TOUCH) $@