ath25: rework image building
[openwrt/staging/yousong.git] / target / linux / ath25 / image / Makefile
1 #
2 # Copyright (C) 2006-2010 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 include $(TOPDIR)/rules.mk
8 include $(INCLUDE_DIR)/image.mk
9
10 define Build/mkfwimage
11 $(STAGING_DIR_HOST)/bin/mkfwimage \
12 -B $(1).OpenWrt.$(REVISION) \
13 -k $(word 1,$^) \
14 -r $(word 2,$^) \
15 -o $@.new && \
16 mv $@.new $@
17 endef
18
19 define Build/combined-image
20 -sh $(TOPDIR)/scripts/combined-image.sh \
21 "$(word 1,$^)" \
22 "$(word 2,$^)" \
23 "$@.new" && \
24 mv $@.new $@
25 endef
26
27 define Build/mkmylofw
28 $(STAGING_DIR_HOST)/bin/mkmylofw -B $(1) \
29 -p0x020000:0x130000:ah:0x80041000:linux:$(word 1,$^) \
30 -p0x150000:0x2a0000:::rootfs:$(word 2,$^) \
31 $@.new && \
32 mv $@.new $@
33 endef
34
35 define Build/gzip-kernel
36 gzip -9n -c $@ > $@.gz
37 dd if=$@.gz of=$@ bs=65536 conv=sync
38 endef
39
40 define Build/lzma-kernel
41 $(STAGING_DIR_HOST)/bin/lzma e $@ $@.l7
42 dd if=$@.l7 of=$@ bs=65536 conv=sync
43 endef
44
45
46 define Device/Default
47 PROFILES = Default $$(DEVICE_NAME)
48 KERNEL := kernel-bin | lzma-kernel
49 IMAGES := sysupgrade.bin
50 FILESYSTEMS := squashfs
51 endef
52
53 define Device/generic
54 DEVICE_TITLE := Generic Images
55 IMAGES := kernel.lzma kernel.gz rootfs.bin sysupgrade.bin
56 IMAGE/kernel.gz := append-kernel | gzip-kernel
57 IMAGE/kernel.lzma := append-kernel | lzma-kernel
58 IMAGE/rootfs.bin := append-rootfs | pad-rootfs | pad-to 128k
59 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | combined-image
60 IMAGE_NAME = $$(IMAGE_PREFIX)-$$(if $$(findstring kernel,$$(2)),,$$(1)-)$$(2)
61 endef
62 TARGET_DEVICES += generic
63
64 define Device/ubnt2-pico2
65 DEVICE_TITLE := Ubiquiti XS2-8
66 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage XS2-8 -v XS2.ar2316
67 endef
68 TARGET_DEVICES += ubnt2-pico2
69
70 define Device/ubnt2
71 DEVICE_TITLE := Ubiquiti XS2
72 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage XS2 -v XS2.ar2316
73 endef
74 TARGET_DEVICES += ubnt2
75
76 define Device/ubnt5
77 DEVICE_TITLE := Ubiquiti XS5
78 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage XS5 -v XS5.ar2313
79 endef
80 TARGET_DEVICES += ubnt5
81
82 define Device/np25g
83 DEVICE_TITLE := np25g
84 KERNEL := kernel-bin | gzip-kernel
85 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw np25g
86 endef
87 #TARGET_DEVICES += np25g
88
89 define Device/wpe53g
90 DEVICE_TITLE := wpe53g
91 KERNEL := kernel-bin | gzip-kernel
92 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw wpe53g
93 endef
94 #TARGET_DEVICES += wpe53g
95
96 $(eval $(call BuildImage))