2 # Copyright (C) 2006,2007 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
7 include $(TOPDIR
)/rules.mk
8 include $(INCLUDE_DIR
)/image.mk
10 LOADER_MAKE
= $(MAKE
) -C lzma-loader KDIR
=$(KDIR
)
13 $(LOADER_MAKE
) LOADER
=$(1) LOADER_DATA
="" \
14 LZMA_TEXT_START
=$(2) LZMA_STARTUP_ORG
=$(3) \
18 define PrepareLZMAKernel
19 $(LOADER_MAKE
) LOADER
=vmlinux-lzma-
$(1) LOADER_DATA
=$(KDIR
)/vmlinux.lzma \
20 LZMA_TEXT_START
=$(2) LZMA_STARTUP_ORG
=$(3) \
29 cat
$(KDIR
)/vmlinux |
$(STAGING_DIR
)/bin
/lzma e
-si
-so
-eos
-lc1
-lp2
-pb2
> $(KDIR
)/vmlinux.lzma
30 ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS
),y
)
31 $(call PrepareLoader
,generic
,0x80500000,0)
32 $(call PrepareLoader
,admboot
,0x80500000,0x6D8)
34 $(call PrepareLZMAKernel
,generic
,0x80500000,0)
35 $(call PrepareLZMAKernel
,admboot
,0x80500000,0x6D8)
39 define trxalign
/jffs2-128k
42 define trxalign
/jffs2-64k
45 define trxalign
/squashfs
49 define Image
/Build
/Compex
50 $(CP
) $(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-$(1).trx
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-$(3)-$(2).trx
53 define Image
/Build
/Edimax
54 $(STAGING_DIR
)/bin
/mkcsysimg
-B
$(4) -d
-w \
55 -r
$(KDIR
)/loader-admboot.gz \
56 -x
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-$(1)-noloader.trx \
57 $(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-$(3)-$(2).bin
60 define Image
/Build
/MyLoader
61 $(CP
) $(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-$(1)-noloader.trx
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-$(3)-$(2).trx
62 $(STAGING_DIR
)/bin
/mkmylofw
-B
$(4) \
63 -p0x20000
:0x10000:ahp
:0x80001000 \
65 -b0x20000
:0x10000:h
:$(KDIR
)/loader-generic.gz \
66 -b0x30000
:0::$(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-$(3)-$(2).trx \
67 $(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-$(3)-$(2).bin
70 define Image
/Build
/RouterBoard
71 $(CP
) $(KDIR
)/vmlinux.elf
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-vmlinux
75 $(STAGING_DIR
)/bin
/trx
-o
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-$(1).trx
-f
$(KDIR
)/loader-generic.gz
-f
$(KDIR
)/vmlinux.lzma
$(call trxalign
/$(1)) -f
$(KDIR
)/root.
$(1)
76 $(STAGING_DIR
)/bin
/trx
-o
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-$(1)-noloader.trx
-f
$(KDIR
)/vmlinux.lzma
$(call trxalign
/$(1)) -f
$(KDIR
)/root.
$(1)
77 ifneq ($(1),jffs2-128K
)
78 $(call Image
/Build
/Compex
,$(1),wp54g-wrt
,$(patsubst jffs2-
%,jffs2
,$(1)))
79 $(call Image
/Build
/Edimax
,$(1),br-6104k
,$(patsubst jffs2-
%,jffs2
,$(1)),BR-6104K
)
80 $(call Image
/Build
/Edimax
,$(1),br-6104kp
,$(patsubst jffs2-
%,jffs2
,$(1)),BR-6104KP
)
81 $(call Image
/Build
/Edimax
,$(1),br-6114wg
,$(patsubst jffs2-
%,jffs2
,$(1)),BR-6114WG
)
82 $(call Image
/Build
/Edimax
,$(1),br-6524k
,$(patsubst jffs2-
%,jffs2
,$(1)),BR-6524K
)
83 $(call Image
/Build
/Edimax
,$(1),br-6524kp
,$(patsubst jffs2-
%,jffs2
,$(1)),BR-6524KP
)
84 $(call Image
/Build
/Edimax
,$(1),br-6541k
,$(patsubst jffs2-
%,jffs2
,$(1)),BR-6541K
)
85 $(call Image
/Build
/Edimax
,$(1),br-6541kp
,$(patsubst jffs2-
%,jffs2
,$(1)),BR-6541KP
)
86 $(call Image
/Build
/Edimax
,$(1),ew-7207apg
,$(patsubst jffs2-
%,jffs2
,$(1)),EW-7207APg
)
87 $(call Image
/Build
/Edimax
,$(1),ps-1205uwg
,$(patsubst jffs2-
%,jffs2
,$(1)),PS-1205UWg
)
88 $(call Image
/Build
/Edimax
,$(1),ps-3205u
,$(patsubst jffs2-
%,jffs2
,$(1)),PS-3205U
)
89 $(call Image
/Build
/Edimax
,$(1),ps-3205uwg
,$(patsubst jffs2-
%,jffs2
,$(1)),PS-3205UWg
)
90 $(call Image
/Build
/Edimax
,$(1),br-6524wg
,$(patsubst jffs2-
%,jffs2
,$(1)),BR-6524WG
)
91 $(call Image
/Build
/Edimax
,$(1),br-6524wp
,$(patsubst jffs2-
%,jffs2
,$(1)),BR-6524WP
)
92 $(call Image
/Build
/MyLoader
,$(1),np27g
,$(patsubst jffs2-
%,jffs2
,$(1)),NP27G
)
93 $(call Image
/Build
/MyLoader
,$(1),np28g
,$(patsubst jffs2-
%,jffs2
,$(1)),NP28G
)
94 $(call Image
/Build
/MyLoader
,$(1),np28ghs
,$(patsubst jffs2-
%,jffs2
,$(1)),NP28GHS
)
95 $(call Image
/Build
/MyLoader
,$(1),wp54g
,$(patsubst jffs2-
%,jffs2
,$(1)),WP54G
)
96 $(call Image
/Build
/MyLoader
,$(1),wp54ag
,$(patsubst jffs2-
%,jffs2
,$(1)),WP54AG
)
97 $(call Image
/Build
/MyLoader
,$(1),wpp54g
,$(patsubst jffs2-
%,jffs2
,$(1)),WPP54G
)
98 $(call Image
/Build
/MyLoader
,$(1),wpp54ag
,$(patsubst jffs2-
%,jffs2
,$(1)),WPP54AG
)
101 $(call Image
/Build
/RouterBoard
)
105 define Image
/Build
/LZMAKernel
106 $(CP
) $(KDIR
)/loader-vmlinux-lzma-
$(2).
$(3) \
107 $(BIN_DIR
)/openwrt-
$(BOARD
)-$(KERNEL
)-vmlinux-lzma-
$(1).
$(3)
110 define Image
/Build
/Initramfs
111 $(call Image
/Build
/LZMAKernel
,generic
,generic
,elf
)
112 $(call Image
/Build
/LZMAKernel
,rb-100
,generic
,elf
)
113 $(call Image
/Build
/LZMAKernel
,np27g
,generic
,bin
)
114 $(call Image
/Build
/LZMAKernel
,wp54g
,generic
,bin
)
115 $(call Image
/Build
/LZMAKernel
,br-6104k
,admboot
,gz
)
116 $(call Image
/Build
/LZMAKernel
,cas-771
,admboot
,gz
)
119 $(eval
$(call BuildImage
))