summaryrefslogtreecommitdiff
path: root/openwrt/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
commit8d627f3fc5b90bd3b2349888ec5eefbf3778da41 (patch)
tree6ae7a3842861995a7840e238ffcb58595335f99d /openwrt/target/linux/imagebuilder/Makefile
parent596ed99c0735a0e91147c3193e88005e46a5bcec (diff)
add new image builder
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@1661 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'openwrt/target/linux/imagebuilder/Makefile')
-rw-r--r--openwrt/target/linux/imagebuilder/Makefile42
1 files changed, 42 insertions, 0 deletions
diff --git a/openwrt/target/linux/imagebuilder/Makefile b/openwrt/target/linux/imagebuilder/Makefile
new file mode 100644
index 0000000000..8da50bdd78
--- /dev/null
+++ b/openwrt/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