summaryrefslogtreecommitdiff
path: root/package/sdk/files/Makefile.ib
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-04-20 17:01:30 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-04-20 17:01:30 +0000
commit08479c3ef6123d8b8156fd8e5e9c1763216e0503 (patch)
treed1fffacb2df96b810546676651d6f394a8c54fe3 /package/sdk/files/Makefile.ib
parent7fb7f1c43b806786372a023814fc914a2fb7cc76 (diff)
add openwrt image builder to sdk
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@688 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/sdk/files/Makefile.ib')
-rw-r--r--package/sdk/files/Makefile.ib61
1 files changed, 61 insertions, 0 deletions
diff --git a/package/sdk/files/Makefile.ib b/package/sdk/files/Makefile.ib
new file mode 100644
index 0000000000..9fbfeee510
--- /dev/null
+++ b/package/sdk/files/Makefile.ib
@@ -0,0 +1,61 @@
+# OpenWrt SDK Makefile
+TOPDIR:=${shell pwd}
+BIN_DIR:=$(TOPDIR)/bin
+BUILD_DIR:=$(TOPDIR)/build
+TARGET_PATH := $(TOPDIR)/utils
+MKFS_JFFS2:=$(TOPDIR)/utils/mkfs.jffs2
+IMAGE:=$(BUILD_DIR)/root_fs
+TARGET_DIR:=$(TOPDIR)/root
+SED:=PATH="$(TARGET_PATH)" sed -i -e
+PACKAGE_DIR=$(TOPDIR)/packages
+IPKG:=IPKG_INSTROOT=$(TARGET_DIR) IPKG_CONF_DIR=$(BUILD_DIR)/etc $(TARGET_DIR)/bin/ipkg -force-defaults -force-depends
+
+all: build
+
+include ./include/jffs2.mk
+include ./include/squashfs-lzma.mk
+
+IMAGE_TARGETS := $(JFFS2_TARGETS) $(SQUASHFS_TARGETS)
+TARGET_FS:=squashfs jffs2
+
+define IMAGE_template
+$(BIN_DIR)/openwrt-wrt54g-$(1).bin: $(BIN_DIR)/openwrt-generic-$(patsubst jffs2,jffs2-4MB,$(1)).trx
+ PATH=$(TARGET_PATH) addpattern -2 -i $$< -o $$@ -g
+ $(SED) "1s,^W54S,W54G," $$@
+
+$(BIN_DIR)/openwrt-wrt54gs-$(1).bin: $(BIN_DIR)/openwrt-generic-$(patsubst jffs2,jffs2-8MB,$(1)).trx
+ PATH=$(TARGET_PATH) addpattern -2 -i $$< -o $$@ -g
+
+IMAGE_TARGETS += $(BIN_DIR)/openwrt-wrt54g-$(1).bin
+IMAGE_TARGETS += $(BIN_DIR)/openwrt-wrt54gs-$(1).bin
+
+
+$(BIN_DIR)/openwrt-motorola-$(1).bin: $(BIN_DIR)/openwrt-generic-$(patsubst jffs2,jffs2-8MB,$(1)).trx
+ PATH=$(TARGET_PATH) motorola-bin $$< $$@
+
+IMAGE_TARGETS += $(BIN_DIR)/openwrt-motorola-$(1).bin
+endef
+
+$(foreach fs,$(TARGET_FS),$(eval $(call IMAGE_template,$(fs))))
+
+$(IMAGE_TARGETS): $(TARGET_DIR) $(BIN_DIR) packages_install
+
+$(BIN_DIR):
+ mkdir -p $@
+
+$(TARGET_DIR):
+ mkdir -p $@
+ cp -a $(TOPDIR)/target_skeleton/* $(TARGET_DIR)/
+
+$(BUILD_DIR)/etc/ipkg.conf:
+ mkdir -p $(BUILD_DIR)/etc
+ echo -e 'dest root /\noption offline_root $(TARGET_DIR)' > $@
+
+packages_install: $(TARGET_DIR) $(BUILD_DIR)/etc/ipkg.conf
+ for package in $(PACKAGE_DIR)/*.ipk; do \
+ $(IPKG) install $$package; \
+ done
+
+build: clean $(IMAGE_TARGETS)
+clean:
+ rm -rf $(TARGET_DIR) $(BIN_DIR) $(IMAGE)-* $(BUILD_DIR)/etc