diff options
Diffstat (limited to 'target/linux/adm5120eb-2.6/image/Makefile')
-rw-r--r-- | target/linux/adm5120eb-2.6/image/Makefile | 39 |
1 files changed, 30 insertions, 9 deletions
diff --git a/target/linux/adm5120eb-2.6/image/Makefile b/target/linux/adm5120eb-2.6/image/Makefile index 82ecedc1d0..ce4644da17 100644 --- a/target/linux/adm5120eb-2.6/image/Makefile +++ b/target/linux/adm5120eb-2.6/image/Makefile @@ -7,21 +7,31 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/image.mk -define Build/Compile - rm -f $(KDIR)/loader-zynos.gz $(KDIR)/loader-zynos.bin - $(MAKE) -C lzma-loader \ - BUILD_DIR="$(KDIR)" \ - TARGET="$(KDIR)" \ - LOADER=loader-zynos \ - install +LOADER_MAKE = $(MAKE) -C lzma-loader KDIR=$(KDIR) + +define CompileLoader + $(LOADER_MAKE) LOADER=$(1) LOADER_DATA="" \ + LZMA_TEXT_START=$(2) LZMA_STARTUP_ORG=$(3) \ + compile +endef + +define CompileLZMAKernel + $(LOADER_MAKE) LOADER=vmlinux-lzma-$(1) LOADER_DATA=$(KDIR)/vmlinux.lzma \ + LZMA_TEXT_START=$(2) LZMA_STARTUP_ORG=$(3) \ + compile endef define Build/Clean - $(MAKE) -C lzma-loader clean + $(LOADER_MAKE) clean endef define Image/Prepare cat $(KDIR)/vmlinux | $(STAGING_DIR)/bin/lzma e -si -so -eos -lc1 -lp2 -pb2 > $(KDIR)/vmlinux.lzma +ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y) + $(call CompileLoader,zyxel,0x80500000,0) +else + $(call CompileLZMAKernel,zyxel,0x80500000,0) +endif endef define trxalign/jffs2-128k @@ -41,8 +51,19 @@ endef define Image/Build $(STAGING_DIR)/bin/trx -o $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(1)-noloader.trx -f $(KDIR)/vmlinux.lzma $(call trxalign/$(1)) -f $(KDIR)/root.$(1) ifneq ($(1),jffs2-128K) - #FIXME: no supported boards yet + #FIXME: firware images yet endif endef +define Image/Build/LZMAKernel + $(CP) $(KDIR)/loader-vmlinux-lzma-$(2).$(3) \ + $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-vmlinux-lzma-$(1).$(3) +endef + +define Image/Build/Initramfs + $(call Image/Build/LZMAKernel,p-334wt,zyxel,bin) + $(call Image/Build/LZMAKernel,p-335wt,zyxel,bin) +endef + $(eval $(call BuildImage)) + |