ath25: rework image building
authorJo-Philipp Wich <jo@mein.io>
Fri, 29 Jul 2016 14:47:45 +0000 (16:47 +0200)
committerJo-Philipp Wich <jo@mein.io>
Fri, 29 Jul 2016 14:53:03 +0000 (16:53 +0200)
* Remove legacy macros
* Emit generic LZMA and Gzip kernel images from the combined device recipe
* Rename combined device to generic

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
target/linux/ath25/image/Makefile

index 94d38e8d69176108fa1af22093c3f083e4431687..784cee847c7a7db07de43c67c67c6c09b8519d33 100644 (file)
@@ -7,73 +7,59 @@
 include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/image.mk
 
-DEVICE_VARS += KERNEL_PREFIX FILESYSTEMS
-
-define Image/BuildKernel
-       cp $(KDIR)/vmlinux.elf $(BIN_DIR)/$(IMG_PREFIX)-vmlinux.elf
-       gzip -9n -c $(KDIR)/vmlinux > $(KDIR)/vmlinux.bin.gz
-       $(STAGING_DIR_HOST)/bin/lzma e $(KDIR)/vmlinux $(KDIR)/vmlinux.bin.lzma
-       dd if=$(KDIR)/vmlinux.bin.gz of=$(BIN_DIR)/$(IMG_PREFIX)-vmlinux.gz bs=65536 conv=sync
-       dd if=$(KDIR)/vmlinux.bin.lzma of=$(BIN_DIR)/$(IMG_PREFIX)-vmlinux.lzma bs=65536 conv=sync
-endef
-
-define Image/Build/squashfs
-       $(call prepare_generic_squashfs,$(KDIR)/root.squashfs)
-endef
-
-define Image/Build
-       $(call Image/Build/$(1))
-       dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync
-endef
-
-define Device/Default
-  PROFILES = Default $$(DEVICE_NAME)
-  KERNEL := lzma-kernel
-  IMAGES := sysupgrade.bin
-  FILESYSTEMS := squashfs
-endef
-
 define Build/mkfwimage
        $(STAGING_DIR_HOST)/bin/mkfwimage \
                -B $(1).OpenWrt.$(REVISION) \
-               -k $(KDIR)/$(KERNEL_IMAGE) \
-               -r $@ \
+               -k $(word 1,$^) \
+               -r $(word 2,$^) \
                -o $@.new && \
        mv $@.new $@
 endef
 
 define Build/combined-image
        -sh $(TOPDIR)/scripts/combined-image.sh \
-               "$(KDIR)/$(KERNEL_IMAGE)" \
-               "$@" \
+               "$(word 1,$^)" \
+               "$(word 2,$^)" \
                "$@.new" && \
        mv $@.new $@
 endef
 
 define Build/mkmylofw
        $(STAGING_DIR_HOST)/bin/mkmylofw -B $(1) \
-               -p0x020000:0x130000:ah:0x80041000:linux:$(KDIR)/$(KERNEL_IMAGE) \
-               -p0x150000:0x2a0000:::rootfs:$@ \
+               -p0x020000:0x130000:ah:0x80041000:linux:$(word 1,$^) \
+               -p0x150000:0x2a0000:::rootfs:$(word 2,$^) \
                $@.new && \
        mv $@.new $@
 endef
 
 define Build/gzip-kernel
-       gzip -9n -c $(KDIR)/vmlinux > $@
-       dd if=$@ of=$@.new bs=65536 conv=sync
-       mv $@.new $@
+       gzip -9n -c $@ > $@.gz
+       dd if=$@.gz of=$@ bs=65536 conv=sync
 endef
 
 define Build/lzma-kernel
-       $(STAGING_DIR_HOST)/bin/lzma e $(KDIR)/vmlinux $@.l7
+       $(STAGING_DIR_HOST)/bin/lzma e $@ $@.l7
        dd if=$@.l7 of=$@ bs=65536 conv=sync
 endef
 
-define Device/combined
-  DEVICE_TITLE := Combined Image
+
+define Device/Default
+  PROFILES = Default $$(DEVICE_NAME)
+  KERNEL := kernel-bin | lzma-kernel
+  IMAGES := sysupgrade.bin
+  FILESYSTEMS := squashfs
+endef
+
+define Device/generic
+  DEVICE_TITLE := Generic Images
+  IMAGES := kernel.lzma kernel.gz rootfs.bin sysupgrade.bin
+  IMAGE/kernel.gz := append-kernel | gzip-kernel
+  IMAGE/kernel.lzma := append-kernel | lzma-kernel
+  IMAGE/rootfs.bin := append-rootfs | pad-rootfs | pad-to 128k
   IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | combined-image
+  IMAGE_NAME = $$(IMAGE_PREFIX)-$$(if $$(findstring kernel,$$(2)),,$$(1)-)$$(2)
 endef
-TARGET_DEVICES += combined
+TARGET_DEVICES += generic
 
 define Device/ubnt2-pico2
   DEVICE_TITLE := Ubiquiti XS2-8
@@ -95,14 +81,14 @@ TARGET_DEVICES += ubnt5
 
 define Device/np25g
   DEVICE_TITLE := np25g
-  KERNEL := gzip-kernel
+  KERNEL := kernel-bin | gzip-kernel
   IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw np25g
 endef
 #TARGET_DEVICES += np25g
 
 define Device/wpe53g
   DEVICE_TITLE := wpe53g
-  KERNEL := gzip-kernel
+  KERNEL := kernel-bin | gzip-kernel
   IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw wpe53g
 endef
 #TARGET_DEVICES += wpe53g