diff options
author | John Crispin <john@phrozen.org> | 2016-05-15 09:44:34 +0200 |
---|---|---|
committer | John Crispin <john@phrozen.org> | 2016-06-14 13:00:30 +0200 |
commit | e030c31e3577f41581d43e3cd959a11643764937 (patch) | |
tree | 92152244de6cb9d13083b1c4d99a162484fbe311 | |
parent | bfcbca3e049e39878f26294642c4638aea2d7900 (diff) | |
download | upstream-e030c31e3577f41581d43e3cd959a11643764937.tar.gz upstream-e030c31e3577f41581d43e3cd959a11643764937.tar.bz2 upstream-e030c31e3577f41581d43e3cd959a11643764937.zip |
octeon: convert to new image building code
Signed-off-by: John Crispin <john@phrozen.org>
-rw-r--r-- | target/linux/octeon/image/Makefile | 79 | ||||
-rw-r--r-- | target/linux/octeon/profiles/000-Generic.mk | 12 |
2 files changed, 41 insertions, 50 deletions
diff --git a/target/linux/octeon/image/Makefile b/target/linux/octeon/image/Makefile index e74b06dd4b..9e35a7dee2 100644 --- a/target/linux/octeon/image/Makefile +++ b/target/linux/octeon/image/Makefile @@ -7,59 +7,50 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/image.mk -define Image/Prepare - # Workaround pre-SDK-1.9.0 u-boot versions not handling the .notes section - $(TARGET_CROSS)strip -R .notes $(KDIR)/vmlinux.elf -o $(KDIR)/vmlinux.elf.stripped +DEVICE_VARS += KERNEL_PREFIX + +define Device/Default + PROFILES = Default $$(DEVICE_NAME) + KERNEL_NAME := vmlinux.elf + KERNEL_INITRAMFS_NAME := vmlinux-initramfs.elf + KERNEL := kernel-bin | strip-kernel | patch-cmdline + IMAGES := sysupgrade.tar + FILESYSTEMS := squashfs + IMAGE/sysupgrade.tar := tar-file $$(FILESYSTEMS) +endef + +define Build/tar-file + mkdir -p $(KDIR)/sysupgrade-$(DEVICE_NAME)/ + echo "BOARD=$(BOARD)" > $(KDIR)/sysupgrade-$(DEVICE_NAME)/CONTROL + $(CP) $(KDIR)/$(KERNEL_IMAGE) $(KDIR)/sysupgrade-$(DEVICE_NAME)/kernel + $(CP) $(KDIR)/root.$(1) $(KDIR)/sysupgrade-$(DEVICE_NAME)/root + (cd $(KDIR); $(TAR) cvf \ + $@ sysupgrade-$(DEVICE_NAME)) endef -define Image/BuildKernel/Template - $(CP) $(KDIR)/vmlinux.elf.stripped $(BIN_DIR)/$(IMG_PREFIX)-$(1)-vmlinux.64 - $(STAGING_DIR_HOST)/bin/patch-cmdline $(BIN_DIR)/$(IMG_PREFIX)-$(1)-vmlinux.64 '$(strip $(2))' - md5sum $(BIN_DIR)/$(IMG_PREFIX)-$(1)-vmlinux.64 | cut -d " " -f 1 | tee $(BIN_DIR)/$(IMG_PREFIX)-$(1)-vmlinux.64.md5 +define Build/strip-kernel + # Workaround pre-SDK-1.9.0 u-boot versions not handling the .notes section + $(TARGET_CROSS)strip -R .notes $@ -o $@.stripped && mv $@.stripped $@ endef -define Image/BuildKernel/Initramfs/Template - $(TARGET_CROSS)strip -R .notes $(KDIR)/vmlinux-initramfs.elf -o $(BIN_DIR)/$(IMG_PREFIX)-$(1)-vmlinux-initramfs.elf - $(STAGING_DIR_HOST)/bin/patch-cmdline $(BIN_DIR)/$(IMG_PREFIX)-$(1)-vmlinux-initramfs.elf '$(strip $(2))' +define Device/generic + FILESYSTEMS := ext4 + DEVICE_TITLE := Generic endef +TARGET_DEVICES += generic ER_CMDLINE:=-mtdparts=phys_mapped_flash:640k(boot0)ro,640k(boot1)ro,64k(eeprom)ro block2mtd.block2mtd=/dev/mmcblk0p2,65536,rootfs,5 root=/dev/mtdblock3 rootfstype=squashfs rootwait -ERLITE_CMDLINE:=-mtdparts=phys_mapped_flash:512k(boot0),512k(boot1),64k@1024k(eeprom) block2mtd.block2mtd=/dev/sda2,65536,rootfs,5 root=/dev/mtdblock3 rootfstype=squashfs rootwait - -define Image/BuildKernel - $(call Image/BuildKernel/Template,generic,) - $(call Image/BuildKernel/Template,er,$(ER_CMDLINE)) - $(call Image/BuildKernel/Template,erlite,$(ERLITE_CMDLINE)) -endef - -define Image/BuildKernel/Initramfs - $(call Image/BuildKernel/Initramfs/Template,generic,) - $(call Image/BuildKernel/Initramfs/Template,er,$(ER_CMDLINE)) - $(call Image/BuildKernel/Initramfs/Template,erlite,$(ERLITE_CMDLINE)) +define Device/er + CMDLINE := $(ER_CMDLINE) + DEVICE_TITLE := Ubiquiti EdgeRouter endef +TARGET_DEVICES += er -define Image/Build/sysupgrade - mkdir -p $(KDIR)/sysupgrade-$(1)/ - echo "BOARD=$(1)" > $(KDIR)/sysupgrade-$(1)/CONTROL - $(CP) $(BIN_DIR)/$(IMG_PREFIX)-$(2)-vmlinux.64 $(KDIR)/sysupgrade-$(1)/kernel - $(CP) $(KDIR)/root.$(3) $(KDIR)/sysupgrade-$(1)/root - (cd $(KDIR); $(TAR) cvf \ - $(BIN_DIR)/$(IMG_PREFIX)-$(1)-$(3)-sysupgrade.tar sysupgrade-$(1)) -endef - -define Image/Build/ext4 - $(call Image/Build/sysupgrade,erlite,generic,ext4) -endef - -define Image/Build/squashfs - $(call prepare_generic_squashfs,$(KDIR)/root.squashfs) - $(call Image/Build/sysupgrade,er,er,squashfs) - $(call Image/Build/sysupgrade,erlite,erlite,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 +ERLITE_CMDLINE:=-mtdparts=phys_mapped_flash:512k(boot0),512k(boot1),64k@1024k(eeprom) block2mtd.block2mtd=/dev/sda2,65536,rootfs,5 root=/dev/mtdblock3 rootfstype=squashfs rootwait +define Device/erlite + CMDLINE := $(ERLITE_CMDLINE) + DEVICE_TITLE := Ubiquiti EdgeRouter Lite endef +TARGET_DEVICES += erlite $(eval $(call BuildImage)) diff --git a/target/linux/octeon/profiles/000-Generic.mk b/target/linux/octeon/profiles/000-Generic.mk index cf9a0137ba..d4c5767577 100644 --- a/target/linux/octeon/profiles/000-Generic.mk +++ b/target/linux/octeon/profiles/000-Generic.mk @@ -5,13 +5,13 @@ # See /LICENSE for more information. # -define Profile/generic - NAME:=Generic Octeon board - PACKAGES:= +define Profile/Default + NAME:=Default Profile + PRIORITY:=1 endef -define Profile/generic/Description - Base packages for Octeon boards. +define Profile/Default/Description + Base packages for Octeon boards. endef -$(eval $(call Profile,generic)) +$(eval $(call Profile,Default)) |