summaryrefslogtreecommitdiffstats
path: root/target/linux/imagebuilder/Makefile
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-08-14 15:00:56 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-08-14 15:00:56 +0000
commit960b21b516f519374168ee3703c8dd034c147843 (patch)
tree3791379c53d15c6d907cc1a90a9a74ddbe7b154e /target/linux/imagebuilder/Makefile
parentcdb6fba9ac881a84358ef91529955b5240160467 (diff)
add new image builder
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@1661 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/imagebuilder/Makefile')
-rw-r--r--target/linux/imagebuilder/Makefile42
1 files changed, 42 insertions, 0 deletions
diff --git a/target/linux/imagebuilder/Makefile b/target/linux/imagebuilder/Makefile
new file mode 100644
index 000000000..8da50bdd7
--- /dev/null
+++ b/target/linux/imagebuilder/Makefile
@@ -0,0 +1,42 @@
+default: clean all
+
+TOPDIR:=${shell pwd}
+export TOPDIR
+IB:=1
+export IB
+include ./rules.mk
+
+LINUX_BUILD_DIR:=$(BUILD_DIR)/linux-$(KERNEL)-$(BOARD)
+IPKG_KERNEL:=IPKG_TMP=$(BUILD_DIR)/tmp IPKG_INSTROOT=$(LINUX_BUILD_DIR)/root IPKG_CONF_DIR=$(LINUX_BUILD_DIR) $(SCRIPT_DIR)/ipkg -force-defaults -force-depends
+
+define image_template
+
+all: all-$(1)-$(2)
+
+all-$(1)-$(2):
+ @for listfile in ./lists/*.$(1)-$(2); do \
+ $(MAKE) -s `echo $$$$listfile | sed 's,.*lists/\(.*\).$(1)-$(2),BOARD=$(1) KERNEL=$(2) LIST=\1,'` build; \
+ done
+endef
+
+include ./kernel.mk
+
+clean:
+ @rm -rf $(LINUX_BUILD_DIR)/root*
+ @rm -rf $(BIN_DIR)
+all:
+
+build:
+ echo
+ echo '### BUILDING IMAGE FROM lists/$(LIST).$(BOARD)-$(KERNEL)'
+ echo
+ rm -rf $(LINUX_BUILD_DIR)/root*
+ mkdir -p $(BIN_DIR)/$(LIST)
+ mkdir -p $(LINUX_BUILD_DIR)/tmp
+ mkdir -p $(LINUX_BUILD_DIR)/root
+ echo -e 'dest root /\noption offline_root $(LINUX_BUILD_DIR)/root' > $(LINUX_BUILD_DIR)/ipkg.conf
+ $(IPKG_KERNEL) install $(BUILD_DIR)/linux-$(KERNEL)-$(BOARD)/kernel[-_]*.ipk
+ for package in `cat lists/$(LIST).$(BOARD)-$(KERNEL)`; do \
+ $(IPKG_KERNEL) install `ls packages/$${package}_*`; \
+ done
+ $(MAKE) -S -C image KERNEL="$(KERNEL)" BOARD="$(BOARD)" BIN_DIR="$(BIN_DIR)/$(LIST)" install