the default_subtargets template was a bad idea, since different makefiles require...
authorFelix Fietkau <nbd@openwrt.org>
Wed, 18 Apr 2007 17:35:46 +0000 (17:35 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Wed, 18 Apr 2007 17:35:46 +0000 (17:35 +0000)
SVN-Revision: 7003

rules.mk
target/Makefile
toolchain/Makefile
tools/Makefile

index 9ec9896..0ce75f5 100644 (file)
--- a/rules.mk
+++ b/rules.mk
@@ -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
index 1b6cbb5..9a7dff2 100644 (file)
@@ -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 $*-%,%,$@)
index a8bf7d6..673fec2 100644 (file)
@@ -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 $*-%,%,$@)
index 9c31554..31b0bec 100644 (file)
@@ -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)