imagebuilder: fix parallel building (closes #11117)
[openwrt.git] / target / Makefile
index 0a14344..81ec602 100644 (file)
@@ -1,34 +1,24 @@
-include $(TOPDIR)/rules.mk
+# 
+# Copyright (C) 2007 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+curdir:=target
 
-all: install
+$(curdir)/builddirs:=linux sdk imagebuilder toolchain
+$(curdir)/builddirs-default:=linux
+$(curdir)/builddirs-install:=linux $(if $(CONFIG_SDK),sdk) $(if $(CONFIG_IB),imagebuilder) $(if $(CONFIG_MAKE_TOOLCHAIN),toolchain)
 
-$(BIN_DIR):
-       mkdir -p $(BIN_DIR)
+$(curdir)/imagebuilder/compile:=$(curdir)/linux/install
 
-TARGETS-y := linux utils
-TARGETS-$(CONFIG_SDK) += sdk
+# prerequisites for the individual targets
+$(curdir)//install = $(1)/compile
 
-linux-compile: utils-install
-linux-install: $(BIN_DIR)
-sdk-compile: linux-install
+$(eval $(call stampfile,$(curdir),target,prereq,.config))
+$(eval $(call stampfile,$(curdir),target,compile,$(TMP_DIR)/.build))
+$(eval $(call stampfile,$(curdir),target,install,$(TMP_DIR)/.build))
 
-download: $(patsubst %,%-source,$(TARGETS-y))
-prepare: linux-prepare
-compile: linux-compile
-install: image_clean $(patsubst %,%-install,$(TARGETS-y))
-clean: $(patsubst %,%-clean,$(TARGETS-y)) image_clean
-
-image_clean: FORCE
-       rm -f $(BIN_DIR)/openwrt-*
-
-%-clean: FORCE
-       $(MAKE) -C $(patsubst %-clean,%,$@) clean
-%-source: FORCE
-       $(MAKE) -C $(patsubst %-source,%,$@) source
-%-prepare: FORCE
-       $(MAKE) -C $(patsubst %-prepare,%,$@) prepare
-%-compile: %-prepare
-       $(MAKE) -C $(patsubst %-compile,%,$@) compile
-%-install: %-compile
-       $(MAKE) -C $(patsubst %-install,%,$@) install
+$($(curdir)/stamp-install): $($(curdir)/stamp-compile) 
 
+$(eval $(call subdir,$(curdir)))
This page took 0.022226 seconds and 4 git commands to generate.