03590715f0d6d6d2d6f33541b66cad6470daebb5
[openwrt/svn-archive/archive.git] / target / linux / atheros / image / Makefile
1 #
2 # Copyright (C) 2006 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 Image/BuildKernel
11 cp $(KDIR)/vmlinux.elf $(BIN_DIR)/openwrt-$(BOARD)-vmlinux.elf
12 gzip -9 -c $(KDIR)/vmlinux > $(KDIR)/vmlinux.bin.gz
13 $(STAGING_DIR_HOST)/bin/lzma e $(KDIR)/vmlinux $(KDIR)/vmlinux.bin.l7
14 dd if=$(KDIR)/vmlinux.bin.l7 of=$(BIN_DIR)/openwrt-$(BOARD)-vmlinux.lzma bs=65536 conv=sync
15 dd if=$(KDIR)/vmlinux.bin.gz of=$(BIN_DIR)/openwrt-$(BOARD)-vmlinux.gz bs=65536 conv=sync
16 endef
17
18 define Image/Build/squashfs
19 $(call prepare_generic_squashfs,$(KDIR)/root.squashfs)
20 endef
21
22 define Image/Build
23 $(call Image/Build/$(1))
24 dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/openwrt-$(BOARD)-root.$(1) bs=128k conv=sync
25
26 echo -en "kernel\t\t0x01\t0xBE030000\t0x" > $(BIN_DIR)/ls5-parts
27 echo -en "$(shell printf "%08X\n" $(shell cat $(BIN_DIR)/openwrt-$(BOARD)-vmlinux.lzma | wc -c))" >> $(BIN_DIR)/ls5-parts
28 echo -e "\t0x80041000\t0x80041000\t$(BIN_DIR)/openwrt-$(BOARD)-vmlinux.lzma" >> $(BIN_DIR)/ls5-parts
29 echo -en "rootfs\t\t0x02\t0x" >> $(BIN_DIR)/ls5-parts
30 echo -en "$(shell printf "%08X\n" $(shell expr $(shell cat $(BIN_DIR)/openwrt-$(BOARD)-vmlinux.lzma | wc -c) + 3187867648 ) )" >> $(BIN_DIR)/ls5-parts
31 echo -en "\t0x$(shell printf "%08X\n" $(shell expr 3735552 - $(shell cat $(BIN_DIR)/openwrt-$(BOARD)-vmlinux.lzma | wc -c) ) )" >> $(BIN_DIR)/ls5-parts
32 echo -e "\t0x00000000\t0x00000000\t$(BIN_DIR)/openwrt-$(BOARD)-root.jffs2-64k" >> $(BIN_DIR)/ls5-parts
33
34 echo -en "kernel\t\t0x01\t0xBFC30000\t0x" > $(BIN_DIR)/ls2-parts
35 echo -en "$(shell printf "%08X\n" $(shell cat $(BIN_DIR)/openwrt-$(BOARD)-vmlinux.lzma | wc -c))" >> $(BIN_DIR)/ls2-parts
36 echo -e "\t0x80041000\t0x80041000\t$(BIN_DIR)/openwrt-$(BOARD)-vmlinux.lzma" >> $(BIN_DIR)/ls2-parts
37 echo -en "rootfs\t\t0x02\t0x" >> $(BIN_DIR)/ls2-parts
38 echo -en "$(shell printf "%08X\n" $(shell expr $(shell cat $(BIN_DIR)/openwrt-$(BOARD)-vmlinux.lzma | wc -c) + 3217227776 ) )" >> $(BIN_DIR)/ls2-parts
39 echo -en "\t0x$(shell printf "%08X\n" $(shell expr 3866624 - $(shell cat $(BIN_DIR)/openwrt-$(BOARD)-vmlinux.lzma | wc -c) ) )" >> $(BIN_DIR)/ls2-parts
40 echo -e "\t0x00000000\t0x00000000\t$(BIN_DIR)/openwrt-$(BOARD)-root.$(1)" >> $(BIN_DIR)/ls2-parts
41
42 $(STAGING_DIR_HOST)/bin/mkfwimage -i $(BIN_DIR)/ls2-parts -v XS2.ar2316.OpenWRT -o $(BIN_DIR)/openwrt-$(BOARD)-litestation2-$(1).bin
43 $(STAGING_DIR_HOST)/bin/mkfwimage -i $(BIN_DIR)/ls5-parts -v XS5.ar2313.OpenWRT -o $(BIN_DIR)/openwrt-$(BOARD)-litestation5-$(1).bin
44 cp $(BIN_DIR)/openwrt-$(BOARD)-litestation5-$(1).bin $(BIN_DIR)/openwrt-$(BOARD)-nanostation5-$(1).bin
45 cp $(BIN_DIR)/openwrt-$(BOARD)-litestation2-$(1).bin $(BIN_DIR)/openwrt-$(BOARD)-nanostation2-$(1).bin
46 rm $(BIN_DIR)/ls2-parts $(BIN_DIR)/ls5-parts
47 endef
48
49 $(eval $(call BuildImage))