ath25: rework image building
[oweals/openwrt.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))