2 # Copyright (C) 2006 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
11 $(CP
) $(LINUX_DIR
)/arch
/x86
/boot
/bzImage
$(KDIR
)/bzImage
14 define trxalign
/jffs2-128k
17 define trxalign
/jffs2-64k
20 define trxalign
/squashfs
24 define Image
/Build
/ar525w
25 touch
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2).img
26 touch
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2)-web.img
27 dd if
=$(KDIR
)/root.
$(1) of
=$(KDIR
)/root.tmp
$(call trxalign
/$(1)) conv
=sync
28 mv
$(KDIR
)/root.tmp
$(KDIR
)/root.
$(1)
29 $(STAGING_DIR_HOST
)/bin
/airlink
-b
1 -j
$(shell bash
-c
'echo $$[$(3)]') $(KDIR
)/bzImage
$(KDIR
)/root.
$(1) $(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2).img
30 $(STAGING_DIR_HOST
)/bin
/airlink
-e
-b
1 -j
$(shell bash
-c
'echo $$[$(3)]') $(KDIR
)/bzImage
$(KDIR
)/root.
$(1) $(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2)-web.img
33 define Image
/Build
/wl153
34 ls
-l
$(KDIR
)/bzImage | sed
-r
's/^[^[:blank:]]+[[:blank:]]+[^[:blank:]]+[[:blank:]]+[^[:blank:]]+[[:blank:]]+[^[:blank:]]+[[:blank:]]+([^[:blank:]]+).+$$$$/\1/' | xargs printf
'%.8x' > $(KDIR
)/bzSize
35 gzip
-9c
$(KDIR
)/root.
$(1) > $(KDIR
)/root.
$(1).gz
36 ls
-l
$(KDIR
)/root.
$(1).gz | sed
-r
's/^[^[:blank:]]+[[:blank:]]+[^[:blank:]]+[[:blank:]]+[^[:blank:]]+[[:blank:]]+[^[:blank:]]+[[:blank:]]+([^[:blank:]]+).+$$$$/\1/' | xargs printf
'%.8x' > $(KDIR
)/rdSize
37 echo
-ne
"\x$$$$(cut -c 7,8 < $(KDIR)/bzSize)\x$$$$(cut -c 5,6 < $(KDIR)/bzSize)\x$$$$(cut -c 3,4 < $(KDIR)/bzSize)\x$$$$(cut -c 1,2 < $(KDIR)/bzSize)" > $(KDIR
)/bzSize.tmp
38 echo
-n
'CSYS' > $(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2).img
39 cat
$(KDIR
)/bzSize.tmp
>> $(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2).img
40 echo
-ne
"\x$$$$(cut -c 7,8 < $(KDIR)/rdSize)\x$$$$(cut -c 5,6 < $(KDIR)/rdSize)\x$$$$(cut -c 3,4 < $(KDIR)/rdSize)\x$$$$(cut -c 1,2 < $(KDIR)/rdSize)WRRM" >> $(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2).img
41 cat
$(KDIR
)/bzSize.tmp
$(KDIR
)/bzImage
$(KDIR
)/root.
$(1).gz
>> $(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2).img
42 $(RM
) $(KDIR
)/bzSize.tmp
$(KDIR
)/bzSize
$(KDIR
)/rdSize
43 if
[ `ls -l $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2).img | sed -r 's/^[^[:blank:]]+[[:blank:]]+[^[:blank:]]+[[:blank:]]+[^[:blank:]]+[[:blank:]]+[^[:blank:]]+[[:blank:]]+([^[:blank:]]+).+$$$$/\1/'` -gt
$$$$((0xffff0000-0xffe08000)) ]; then mv
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2).img
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2).img.too_big
; echo
"#ERR image too big"; fi
46 define Image
/Build
/dir450
47 touch
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-$(2).img
48 dd if
=$(KDIR
)/root.
$(1) of
=$(KDIR
)/root.tmp
$(call trxalign
/$(1)) conv
=sync
49 mv
$(KDIR
)/root.tmp
$(KDIR
)/root.
$(1)
50 $(CP
) $(KDIR
)/root.
$(1) $(BIN_DIR
)/onlyrootfs-
$(BOARD
)-$(1)-$(2).img
53 define Image
/Build
/g570s
54 mv
$(KDIR
)/root.
$(1) $(KDIR
)/root.tmp
55 dd of
=$(KDIR
)/root.
$(1) if
=$(KDIR
)/root.tmp
$(call trxalign
/$(1)) conv
=sync
56 $(CP
) $(KDIR
)/bzImage
$(BIN_DIR
)/openwrt-tftp-
$(BOARD
)-$(1)-$(2).img
57 dd of
=$(BIN_DIR
)/openwrt-tftp-
$(BOARD
)-$(1)-$(2).img if
=/dev
/null bs
=1024 seek
=1024
58 cat
$(KDIR
)/root.
$(1) >> $(BIN_DIR
)/openwrt-tftp-
$(BOARD
)-$(1)-$(2).img
59 if
[ ! -x
$(STAGING_DIR_HOST
)/bin
/zyxel_combine
]; then echo
"#ERR Please copy the ZyXEL \"combine\" tool as $(STAGING_DIR_HOST)/bin/zyxel_combine to build."; fi
60 sh
-c
"mkdir $(KDIR)/zyxel.tmp && cd $(KDIR)/zyxel.tmp && mv ../root.tmp initrd.bin && cp ../bzImage kernel.bin && $(STAGING_DIR_HOST)/bin/zyxel_combine -mcf kernel.bin initrd.bin && mv image $(BIN_DIR)/openwrt-$(BOARD)-$(1)-$(2).rmt" ||
:
61 $(RM
) -r
$(KDIR
)/zyxel.tmp
64 define Image
/Build
/amit
65 if
[ ! -x
$(STAGING_DIR_HOST
)/bin
/amit_makebin
]; then echo
"#ERR Please copy the AMIT \"makebin\" tool from http://mgb111.pradnik.net/ as $(STAGING_DIR_HOST)/bin/amit_makebin to build."; fi
66 sh
-c
"mkdir -p $(KDIR)/amit.tmp/linux_src/arch/i386/boot $(KDIR)/amit.tmp/rom_disk && cd $(KDIR)/amit.tmp && ln -s ../../root.$(1) rom_disk/fs.img && ln -s ../../../../../bzImage linux_src/arch/i386/boot && $(STAGING_DIR_HOST)/bin/amit_makebin && mv upgrade.img $(BIN_DIR)/openwrt-$(BOARD)-$(1)-anas350.bin" ||
:
67 $(RM
) -r
$(KDIR
)/amit.tmp
68 $(STAGING_DIR_HOST
)/bin
/makeamitbin
-o
$(BIN_DIR
)/openwrt-
$(BOARD
)-$(1)-ar360w3g.bin
-1 ALK_ATG001
-2 Atropos linux3g
$(KDIR
)/bzImage ramdisk3g
$(KDIR
)/root.
$(1)
71 define Image
/Build
/Initramfs
72 $(CP
) $(KDIR
)/bzImage
$(BIN_DIR
)/openwrt-
$(BOARD
)-ramfs.bzImage
76 $(CP
) $(KDIR
)/bzImage
$(BIN_DIR
)/openwrt-
$(BOARD
).bzImage
77 $(call Image
/Build
/$(PROFILE
),$(1),$(PROFILE
),$(patsubst jffs2-
%k
,%,$(1)))
78 ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS
),y
)
79 $(call Image
/Build
/Initramfs
)
83 $(eval
$(call BuildImage
))