X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/8f37c266a301fd8ff423018d9c8aa8360331977d..f44d14c5d138476aba2016a00632175ee675617c:/target/Makefile diff --git a/target/Makefile b/target/Makefile index 4f9c54144..81ec60234 100644 --- a/target/Makefile +++ b/target/Makefile @@ -1,58 +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 -# Default target skeleton stuff, may be overridden -TARGET_SKEL_DIR=default/target_skeleton +$(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) -all: install +$(curdir)/imagebuilder/compile:=$(curdir)/linux/install -$(TARGET_DIR): - mkdir -p $(TARGET_DIR) - if [ -f "$(TARGET_SKELETON)" ] ; then \ - zcat $(TARGET_SKELETON) | tar -C $(BUILD_DIR) -xf -; \ - fi; - if [ -d "$(TARGET_SKEL_DIR)" ] ; then \ - cp -a $(TARGET_SKEL_DIR)/* $(TARGET_DIR)/; \ - fi; - mkdir -p $(TARGET_DIR)/jffs - mkdir -p $(TARGET_DIR)/dev - mkdir -p $(TARGET_DIR)/proc - mkdir -p $(TARGET_DIR)/tmp - mkdir -p $(TARGET_DIR)/lib - mkdir -p $(TARGET_DIR)/usr/lib - mkdir -p $(TARGET_DIR)/usr/bin - ln -sf /tmp/resolv.conf $(TARGET_DIR)/etc/resolv.conf - rm -rf $(TARGET_DIR)/var - ln -sf /tmp $(TARGET_DIR)/var - -find $(TARGET_DIR) -type d -name CVS | xargs rm -rf - -find $(TARGET_DIR) -type d -name .svn | xargs rm -rf +# prerequisites for the individual targets +$(curdir)//install = $(1)/compile -$(BIN_DIR): - mkdir -p $(BIN_DIR) - -$(TARGET_DIR)/etc/sysconf: - mkdir -p $(TARGET_DIR)/etc - -grep \^BR2_SYSCONF $(TOPDIR)/.config > $(TARGET_DIR)/etc/sysconf - -linux-compile: utils-install lzma-install -linux-install: $(TARGET_DIR)/etc/sysconf $(BIN_DIR) - -prepare: $(TARGET_DIR) -compile: linux-compile -install: image_clean linux-install -clean: linux-clean utils-clean lzma-clean image_clean - -image_clean: - rm -f $(BIN_DIR)/openwrt-* - -%-clean: - $(MAKE) -C $(patsubst %-clean,%,$@) clean -%-prepare: - $(MAKE) -C $(patsubst %-prepare,%,$@) prepare -%-compile: %-prepare - $(MAKE) -C $(patsubst %-compile,%,$@) compile -%-rebuild: - $(MAKE) -C $(patsubst %-rebuild,%,$@) rebuild -%-install: %-compile - $(MAKE) -C $(patsubst %-install,%,$@) 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)) +$($(curdir)/stamp-install): $($(curdir)/stamp-compile) +$(eval $(call subdir,$(curdir)))