diff options
Diffstat (limited to 'target/linux/sunxi/image/Makefile')
-rw-r--r-- | target/linux/sunxi/image/Makefile | 112 |
1 files changed, 16 insertions, 96 deletions
diff --git a/target/linux/sunxi/image/Makefile b/target/linux/sunxi/image/Makefile index 3a9f64d9af..2d7a603ad1 100644 --- a/target/linux/sunxi/image/Makefile +++ b/target/linux/sunxi/image/Makefile @@ -7,21 +7,19 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/image.mk -define sanitize_profile_name -$(shell echo $(PROFILE) | tr '[:upper:]' '[:lower:]' | sed 's/_/-/g') -endef - -define Image/BuildKernel/Template +BOARDS:= \ + sun4i-a10-cubieboard \ + sun5i-a13-olinuxino \ + sun7i-a20-olinuxino-micro \ + sun7i-a20-cubieboard2 - $(CP) $(KDIR)/zImage $(BIN_DIR)/$(IMG_PREFIX)-zImage - echo -ne '\x00\x00\x00\x00' >> $(BIN_DIR)/$(IMG_PREFIX)-zImage - $(call Image/BuildKernel/MkuImage, \ - none, 0x40008000, 0x40008000, \ - $(BIN_DIR)/$(IMG_PREFIX)-zImage, \ - $(BIN_DIR)/$(IMG_PREFIX)-uImage \ - ) - - ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),) +define Image/BuildKernel + mkimage -A arm -O linux -T kernel -C none \ + -a 0x40008000 -e 0x40008000 \ + -n 'ARM OpenWrt Linux-$(LINUX_VERSION)' \ + -d $(KDIR)/zImage $(BIN_DIR)/$(IMG_PREFIX)-uImage + + ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),) $(CP) $(KDIR)/zImage-initramfs $(BIN_DIR)/$(IMG_PREFIX)-zImage-initramfs echo -ne '\x00\x00\x00\x00' >> $(BIN_DIR)/$(IMG_PREFIX)-zImage-initramfs $(call Image/BuildKernel/MkuImage, \ @@ -29,93 +27,15 @@ define Image/BuildKernel/Template $(BIN_DIR)/$(IMG_PREFIX)-zImage-initramfs, \ $(BIN_DIR)/$(IMG_PREFIX)-uImage-initramfs \ ) - endif - - ifneq ($(1),) - $(CP) $(LINUX_DIR)/arch/arm/boot/dts/$(1).dtb $(BIN_DIR)/$(IMG_PREFIX)-$(1).dtb - - $(CP) $(KDIR)/zImage $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-zImage - cat $(BIN_DIR)/$(IMG_PREFIX)-$(1).dtb >> $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-zImage - $(call Image/BuildKernel/MkuImage, \ - none, 0x40008000, 0x40008000, \ - $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-zImage, \ - $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-uImage \ - ) + endif - ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),) - $(CP) $(KDIR)/zImage-initramfs $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-zImage-initramfs - cat $(BIN_DIR)/$(IMG_PREFIX)-$(1).dtb >> $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-zImage-initramfs - $(call Image/BuildKernel/MkuImage, \ - none, 0x40008000, 0x40008000, \ - $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-zImage-initramfs, \ - $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-uImage-initramfs \ + $(foreach board,$(BOARDS), + $(CP) $(LINUX_DIR)/arch/arm/boot/dts/$(board).dtb $(BIN_DIR)/ ) - endif - endif -endef - -define Image/InstallKernel/Template - - ifneq ($(CONFIG_TARGET_ROOTFS_INCLUDE_KERNEL),) - $(INSTALL_DIR) $(TARGET_DIR)/boot - ifneq ($(CONFIG_TARGET_ROOTFS_INCLUDE_UIMAGE),) - $(CP) $(BIN_DIR)/$(IMG_PREFIX)-uImage $(TARGET_DIR)/boot/ - ln -sf $(IMG_PREFIX)-uImage $(TARGET_DIR)/boot/uImage - endif - ifneq ($(CONFIG_TARGET_ROOTFS_INCLUDE_ZIMAGE),) - $(CP) $(BIN_DIR)/$(IMG_PREFIX)-zImage $(TARGET_DIR)/boot/ - ln -sf $(IMG_PREFIX)-zImage $(TARGET_DIR)/boot/zImage - endif - endif - - ifneq ($(CONFIG_TARGET_ROOTFS_INCLUDE_DTB),) - $(INSTALL_DIR) $(TARGET_DIR)/boot - ifneq ($(1),) - $(CP) $(BIN_DIR)/$(IMG_PREFIX)-$(1).dtb $(TARGET_DIR)/boot/ - ln -sf $(IMG_PREFIX)-$(1).dtb $(TARGET_DIR)/boot/$(1).dtb - endif - endif -endef - -define Image/mkfs/targz - - $(TAR) -czpf $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-rootfs.tar.gz --numeric-owner --owner=0 --group=0 -C $(TARGET_DIR)/ . -endef - -define Image/Build/ubifs - - ifneq ($($(PROFILE)_UBIFS_OPTS),) - $(CP) $(KDIR)/root.ubifs $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-rootfs.ubifs - endif -endef - -define Image/Build/ubi - - ifneq ($($(PROFILE)_UBI_OPTS),) - $(CP) $(KDIR)/root.ubi $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-rootfs.ubi - endif -endef - - -Image/BuildKernel/Template/generic=$(call Image/BuildKernel/Template) -Image/InstallKernel/Template/generic=$(call Image/InstallKernel/Template) - -Image/BuildKernel/Template/CUBIEBOARD=$(call Image/BuildKernel/Template,sun4i-a10-cubieboard) -Image/InstallKernel/Template/CUBIEBOARD=$(call Image/InstallKernel/Template,sun4i-a10-cubieboard) - -define Image/BuildKernel - $(call Image/BuildKernel/Template/$(PROFILE)) -endef - -define Image/InstallKernel - $(call Image/InstallKernel/Template/$(PROFILE)) endef define Image/Build - $(if $(Image/Build/$(1)), \ - $(call Image/Build/$(1),$(1)), \ - $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(call sanitize_profile_name)-$(1).img \ - ) + $(call Image/Build/$(1),$(1)) endef $(eval $(call BuildImage)) |