From: Arnout Vandecappelle Date: Wed, 6 Nov 2013 23:12:35 +0000 (+0100) Subject: uboot-tools: factor out common mkimage infrastructure X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=13ae0075a94895c1b021d20905867ee5f354bd49;p=buildroot.git uboot-tools: factor out common mkimage infrastructure Signed-off-by: Arnout Vandecappelle (Essensium/Mind) Signed-off-by: Peter Korsgaard --- diff --git a/fs/cpio/cpio.mk b/fs/cpio/cpio.mk index e39e215553..771306ced9 100644 --- a/fs/cpio/cpio.mk +++ b/fs/cpio/cpio.mk @@ -31,21 +31,8 @@ define ROOTFS_CPIO_CMD cd $(TARGET_DIR) && find . | cpio --quiet -o -H newc > $@ endef -# mkimage supports arm avr32 blackfin m68k microblaze mips mips64 nios2 powerpc ppc sh sparc sparc64 x86 -# KERNEL_ARCH can be arm64 arc arm avr32 blackfin m68k microblaze mips nios2 powerpc sh sparc i386 x86_64 xtensa -# For arm64, arc, xtensa we'll just keep KERNEL_ARCH -# For mips64, we'll just keep mips -# For i386 and x86_64, we need to convert -ifeq ($(KERNEL_ARCH),x86_64) -UIMAGE_ARCH = x86 -else ifeq ($(KERNEL_ARCH),i386) -UIMAGE_ARCH = x86 -else -UIMAGE_ARCH = $(KERNEL_ARCH) -endif - $(BINARIES_DIR)/rootfs.cpio.uboot: $(BINARIES_DIR)/rootfs.cpio host-uboot-tools - $(HOST_DIR)/usr/bin/mkimage -A $(UIMAGE_ARCH) -T ramdisk \ + $(MKIMAGE) -A $(MKIMAGE_ARCH) -T ramdisk \ -C none -d $<$(ROOTFS_CPIO_COMPRESS_EXT) $@ ifeq ($(BR2_TARGET_ROOTFS_CPIO_UIMAGE),y) diff --git a/linux/linux.mk b/linux/linux.mk index 29a3fd3ac0..33931e53fc 100644 --- a/linux/linux.mk +++ b/linux/linux.mk @@ -228,9 +228,9 @@ ifeq ($(BR2_LINUX_KERNEL_APPENDED_UIMAGE),y) # of the image. To do so, we first need to retrieve both load # address and entry point for the kernel from the already # generate uboot image before using mkimage -l. -LINUX_APPEND_DTB += $(sep) MKIMAGE_ARGS=`$(HOST_DIR)/usr/bin/mkimage -l $(LINUX_IMAGE_PATH) |\ +LINUX_APPEND_DTB += $(sep) MKIMAGE_ARGS=`$(MKIMAGE) -l $(LINUX_IMAGE_PATH) |\ sed -n -e 's/Image Name:[ ]*\(.*\)/-n \1/p' -e 's/Load Address:/-a/p' -e 's/Entry Point:/-e/p'`; \ - $(HOST_DIR)/usr/bin/mkimage -A $(KERNEL_ARCH) -O linux \ + $(MKIMAGE) -A $(MKIMAGE_ARCH) -O linux \ -T kernel -C none $${MKIMAGE_ARGS} \ -d $(KERNEL_ARCH_PATH)/boot/zImage $(LINUX_IMAGE_PATH); endif diff --git a/package/uboot-tools/uboot-tools.mk b/package/uboot-tools/uboot-tools.mk index 73e1d327d4..5c77887c8f 100644 --- a/package/uboot-tools/uboot-tools.mk +++ b/package/uboot-tools/uboot-tools.mk @@ -64,3 +64,20 @@ endef $(eval $(generic-package)) $(eval $(host-generic-package)) + +# Convenience variables for other mk files that make use of mkimage + +MKIMAGE = $(HOST_DIR)/usr/bin/mkimage + +# mkimage supports arm avr32 blackfin m68k microblaze mips mips64 nios2 powerpc ppc sh sparc sparc64 x86 +# KERNEL_ARCH can be arm64 arc arm avr32 blackfin m68k microblaze mips nios2 powerpc sh sparc i386 x86_64 xtensa +# For arm64, arc, xtensa we'll just keep KERNEL_ARCH +# For mips64, we'll just keep mips +# For i386 and x86_64, we need to convert +ifeq ($(KERNEL_ARCH),x86_64) +MKIMAGE_ARCH = x86 +else ifeq ($(KERNEL_ARCH),i386) +MKIMAGE_ARCH = x86 +else +MKIMAGE_ARCH = $(KERNEL_ARCH) +endif