# 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