diff options
| -rw-r--r-- | rules.mk | 21 | ||||
| -rw-r--r-- | target/Makefile | 3 | ||||
| -rw-r--r-- | toolchain/Makefile | 12 | ||||
| -rw-r--r-- | tools/Makefile | 12 | 
4 files changed, 23 insertions, 25 deletions
| @@ -131,27 +131,6 @@ $(call shvar,$(1))=$$(call $(1))  export $(call shvar,$(1))  endef -# Default targets for subdirectory calls -# Parameters: -# 	1: dependencies for the prepare step -define default_subtargets -  %-download: FORCE -	$$(MAKE) -C $$(patsubst %-download,%,$$@) download - -  %-prepare: $(1) FORCE -	$$(MAKE) -C $$(patsubst %-prepare,%,$$@) prepare - -  %-compile: %-prepare  -	$$(MAKE) -C $$(patsubst %-compile,%,$$@) compile - -  %-install:  -	$$(MAKE) -C $$(patsubst %-install,%,$$@) install - -  %-clean: FORCE -	@$$(MAKE) -C $$(patsubst %-clean,%,$$@) clean -endef - -  all:  FORCE: ;  .PHONY: FORCE diff --git a/target/Makefile b/target/Makefile index 1b6cbb54e..9a7dff2a7 100644 --- a/target/Makefile +++ b/target/Makefile @@ -51,4 +51,5 @@ image_install: image_compile  imagebuilder_install: image_install  	$(MAKE) -C imagebuilder install -$(eval $(call default_subtargets,)) +%-prereq %-prepare %-download %-clean %-compile %-install: FORCE +	$(MAKE) -C $* $(patsubst $*-%,%,$@) diff --git a/toolchain/Makefile b/toolchain/Makefile index a8bf7d606..673fec2bc 100644 --- a/toolchain/Makefile +++ b/toolchain/Makefile @@ -15,6 +15,7 @@ ifeq ($(CONFIG_NATIVE_TOOLCHAIN),)  endif  TARGETS_DOWNLOAD:=$(patsubst %,%-download,$(TARGETS-y)) +TARGETS_PREPARE:=$(patsubst %,%-prepare,$(TARGETS-y))  TARGETS_COMPILE:=$(patsubst %,%-compile,$(TARGETS-y))  TARGETS_INSTALL:=$(patsubst %,%-install,$(TARGETS-y))  TARGETS_CLEAN:=$(patsubst %,%-clean,$(TARGETS-y)) @@ -49,5 +50,14 @@ $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME):  $(TOOLCHAIN_BUILD_DIR):  	@mkdir -p $@ -$(eval $(call default_subtargets,$(STAGING_DIR)/$(REAL_GNU_TARGET_NAME) $(TOOLCHAIN_BUILD_DIR))) +%-prereq %-download %-clean: FORCE +	$(MAKE) -C $* $(patsubst $*-%,%,$@) +%-prepare: $(STAGING_DIR)/$(REAL_GNU_TARGET_NAME) $(TOOLCHAIN_BUILD_DIR)	 +	$(MAKE) -C $* $(patsubst $*-%,%,$@) + +%-compile: %-prepare FORCE +	$(MAKE) -C $* $(patsubst $*-%,%,$@) +	 +%-install: %-compile FORCE +	$(MAKE) -C $* $(patsubst $*-%,%,$@) diff --git a/tools/Makefile b/tools/Makefile index 9c315549e..31b0becc3 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -40,9 +40,17 @@ $(STAGING_DIR)/include-host:  $(TOOL_BUILD_DIR):  	@mkdir -p $@ -$(TARGETS_COMPILE) $(TARGETS_INSTALL): $(STAGING_DIR)/include-host $(TOOL_BUILD_DIR) +%-prereq %-download %-clean: FORCE +	$(MAKE) -C $* $(patsubst $*-%,%,$@) -$(eval $(call default_subtargets,)) +%-prepare: $(STAGING_DIR)/include-host $(TOOL_BUILD_DIR) FORCE +	$(MAKE) -C $* $(patsubst $*-%,%,$@) + +%-compile: %-prepare FORCE +	$(MAKE) -C $* $(patsubst $*-%,%,$@) +	 +%-install: %-compile FORCE +	$(MAKE) -C $* $(patsubst $*-%,%,$@)  ifeq ($(MAKECMDGOALS),install-targets)  MAKEFLAGS:=$(MAKEFLAGS) -j$(CONFIG_JLEVEL) | 
