瀏覽代碼

package/uboot-tools: resolve host uboot env/script error

The host build of uboot-tools can occur early in the build process and may
require the creation of BINARIES_DIR before generation of an enabled envimage
and/or boot script binary. So to resolve this in proper way, separated the
build and installation part of uboot env/script in their respective commands.

Signed-off-by: Kalpesh Panchal <kalpesh.panchal@rockwellcollins.com>
Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit d8db91fc6fa8d113bd8012302328cae2bf7f40c0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Kalpesh Panchal 4 年之前
父節點
當前提交
9bec67f56d
共有 1 個文件被更改,包括 31 次插入19 次删除
  1. 31 19
      package/uboot-tools/uboot-tools.mk

+ 31 - 19
package/uboot-tools/uboot-tools.mk

@@ -87,6 +87,8 @@ define UBOOT_TOOLS_INSTALL_TARGET_CMDS
 	$(UBOOT_TOOLS_INSTALL_FIT_CHECK_SIGN)
 	$(UBOOT_TOOLS_INSTALL_FIT_CHECK_SIGN)
 endef
 endef
 
 
+# host-uboot-tools
+
 define HOST_UBOOT_TOOLS_CONFIGURE_CMDS
 define HOST_UBOOT_TOOLS_CONFIGURE_CMDS
 	mkdir -p $(@D)/include/config
 	mkdir -p $(@D)/include/config
 	touch $(@D)/include/config/auto.conf
 	touch $(@D)/include/config/auto.conf
@@ -106,10 +108,6 @@ HOST_UBOOT_TOOLS_MAKE_OPTS += CONFIG_FIT_SIGNATURE=y CONFIG_FIT_SIGNATURE_MAX_SI
 HOST_UBOOT_TOOLS_DEPENDENCIES += host-openssl
 HOST_UBOOT_TOOLS_DEPENDENCIES += host-openssl
 endif
 endif
 
 
-define HOST_UBOOT_TOOLS_BUILD_CMDS
-	$(BR2_MAKE1) -C $(@D) $(HOST_UBOOT_TOOLS_MAKE_OPTS) tools-only
-endef
-
 ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE),y)
 ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE),y)
 
 
 UBOOT_TOOLS_GENERATE_ENV_FILE = $(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SOURCE))
 UBOOT_TOOLS_GENERATE_ENV_FILE = $(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SOURCE))
@@ -122,16 +120,7 @@ define HOST_UBOOT_TOOLS_GENERATE_ENV_DEFAULTS
 		> $(UBOOT_TOOLS_GENERATE_ENV_FILE)
 		> $(UBOOT_TOOLS_GENERATE_ENV_FILE)
 endef
 endef
 HOST_UBOOT_TOOLS_DEPENDENCIES += uboot
 HOST_UBOOT_TOOLS_DEPENDENCIES += uboot
-endif
-
-define HOST_UBOOT_TOOLS_GENERATE_ENV_IMAGE
-	$(HOST_UBOOT_TOOLS_GENERATE_ENV_DEFAULTS)
-	$(HOST_DIR)/bin/mkenvimage -s $(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SIZE) \
-		$(if $(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_REDUNDANT),-r) \
-		$(if $(filter "BIG",$(BR2_ENDIAN)),-b) \
-		-o $(BINARIES_DIR)/uboot-env.bin \
-		$(UBOOT_TOOLS_GENERATE_ENV_FILE)
-endef
+endif #UBOOT_TOOLS_GENERATE_ENV_FILE:BR2_TARGET_UBOOT
 
 
 ifeq ($(BR_BUILDING),y)
 ifeq ($(BR_BUILDING),y)
 ifeq ($(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SIZE)),)
 ifeq ($(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SIZE)),)
@@ -146,6 +135,17 @@ endif
 endif #BR2_TARGET_UBOOT
 endif #BR2_TARGET_UBOOT
 endif #BR_BUILDING
 endif #BR_BUILDING
 
 
+define HOST_UBOOT_TOOLS_GENERATE_ENVIMAGE
+	$(HOST_UBOOT_TOOLS_GENERATE_ENV_DEFAULTS)
+	$(@D)/tools/mkenvimage -s $(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_SIZE) \
+		$(if $(BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE_REDUNDANT),-r) \
+		$(if $(filter "BIG",$(BR2_ENDIAN)),-b) \
+		-o $(@D)/tools/uboot-env.bin \
+		$(UBOOT_TOOLS_GENERATE_ENV_FILE)
+endef
+define HOST_UBOOT_TOOLS_INSTALL_ENVIMAGE
+	$(INSTALL) -m 0755 -D $(@D)/tools/uboot-env.bin $(BINARIES_DIR)/uboot-env.bin
+endef
 endif #BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE
 endif #BR2_PACKAGE_HOST_UBOOT_TOOLS_ENVIMAGE
 
 
 ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT),y)
 ifeq ($(BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT),y)
@@ -154,17 +154,29 @@ ifeq ($(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE)),)
 $(error Please define a source file for U-Boot boot script (BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE setting))
 $(error Please define a source file for U-Boot boot script (BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE setting))
 endif
 endif
 endif #BR_BUILDING
 endif #BR_BUILDING
+
+define HOST_UBOOT_TOOLS_GENERATE_BOOT_SCRIPT
+	$(@D)/tools/mkimage -C none -A $(MKIMAGE_ARCH) -T script \
+		-d $(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE)) \
+		$(@D)/tools/boot.scr)
+endef
+define HOST_UBOOT_TOOLS_INSTALL_BOOT_SCRIPT
+	$(INSTALL) -m 0755 -D $(@D)/tools/boot.scr $(BINARIES_DIR)/boot.scr
+endef
 endif #BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT
 endif #BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT
 
 
+define HOST_UBOOT_TOOLS_BUILD_CMDS
+	$(BR2_MAKE1) -C $(@D) $(HOST_UBOOT_TOOLS_MAKE_OPTS) tools-only
+	$(HOST_UBOOT_TOOLS_GENERATE_ENVIMAGE)
+	$(HOST_UBOOT_TOOLS_GENERATE_BOOT_SCRIPT)
+endef
+
 define HOST_UBOOT_TOOLS_INSTALL_CMDS
 define HOST_UBOOT_TOOLS_INSTALL_CMDS
 	$(INSTALL) -m 0755 -D $(@D)/tools/mkimage $(HOST_DIR)/bin/mkimage
 	$(INSTALL) -m 0755 -D $(@D)/tools/mkimage $(HOST_DIR)/bin/mkimage
 	$(INSTALL) -m 0755 -D $(@D)/tools/mkenvimage $(HOST_DIR)/bin/mkenvimage
 	$(INSTALL) -m 0755 -D $(@D)/tools/mkenvimage $(HOST_DIR)/bin/mkenvimage
 	$(INSTALL) -m 0755 -D $(@D)/tools/dumpimage $(HOST_DIR)/bin/dumpimage
 	$(INSTALL) -m 0755 -D $(@D)/tools/dumpimage $(HOST_DIR)/bin/dumpimage
-	$(HOST_UBOOT_TOOLS_GENERATE_ENV_IMAGE)
-	$(if $(BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT),
-		$(MKIMAGE) -C none -A $(MKIMAGE_ARCH) -T script \
-			-d $(call qstrip,$(BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE)) \
-			$(BINARIES_DIR)/boot.scr)
+	$(HOST_UBOOT_TOOLS_INSTALL_ENVIMAGE)
+	$(HOST_UBOOT_TOOLS_INSTALL_BOOT_SCRIPT)
 endef
 endef
 
 
 $(eval $(generic-package))
 $(eval $(generic-package))