final fix for the profile selection
[openwrt.git] / target / Makefile
index 4f9c541..1b6cbb5 100644 (file)
@@ -1,58 +1,54 @@
+# 
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
 include $(TOPDIR)/rules.mk
 include $(TOPDIR)/rules.mk
-
-# Default target skeleton stuff, may be overridden
-TARGET_SKEL_DIR=default/target_skeleton
+include $(INCLUDE_DIR)/target.mk
 
 all: install
 
 
 all: 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
-
 $(BIN_DIR):
        mkdir -p $(BIN_DIR)
 
 $(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-install: $(BIN_DIR)
+image_install: linux-install
+
+IMAGE_DIR:=linux/$(BOARD)-$(KERNEL)/image
+
+download: $(patsubst %,%-download,$(TARGETS-y))
+prepare: linux-prepare
+compile: linux-compile image_compile
+install: linux-install image_install 
+
+ifeq ($(CONFIG_SDK),y)
+install: sdk_install
+endif
+ifeq ($(CONFIG_IB),y)
+install: imagebuilder_install
+endif
+
+clean: linux-clean sdk-clean imagebuilder-clean image_clean
 
 
-linux-compile: utils-install lzma-install
-linux-install: $(TARGET_DIR)/etc/sysconf $(BIN_DIR)
+prereq: FORCE
+       $(MAKE) -C linux/$(BOARD)-$(KERNEL) prereq
+       $(MAKE) -C $(IMAGE_DIR) prereq
 
 
-prepare: $(TARGET_DIR)
-compile: linux-compile
-install: image_clean linux-install
-clean: linux-clean utils-clean lzma-clean image_clean
+sdk_install: FORCE
+       $(MAKE) -C sdk install
 
 
-image_clean:
+image_clean: FORCE
+       $(MAKE) -C $(IMAGE_DIR) clean
        rm -f $(BIN_DIR)/openwrt-*
        rm -f $(BIN_DIR)/openwrt-*
+       
+image_compile: FORCE
+       $(MAKE) -C $(IMAGE_DIR) compile
 
 
-%-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
+image_install: image_compile
+       $(MAKE) -C $(IMAGE_DIR) install
 
 
+imagebuilder_install: image_install
+       $(MAKE) -C imagebuilder install
 
 
+$(eval $(call default_subtargets,))