sunxi: put u-boot images into image staging directory
authorJo-Philipp Wich <jo@mein.io>
Fri, 27 Jan 2017 15:18:05 +0000 (16:18 +0100)
committerJo-Philipp Wich <jo@mein.io>
Fri, 27 Jan 2017 15:53:31 +0000 (16:53 +0100)
Do not put the u-boot images into the kernel build directory as this directory
might get removed after kernel updates while the u-boot packages InstallDev
recipe is not getting re-executed because it is still considered current,
leading to image build failures later on due to missing images.

To ensure that built bootloader images persist over kernel version updates in
the buildroot, put them into the new STAGING_DIR_IMAGE directory.

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

index 311437a..bb58104 100644 (file)
@@ -131,9 +131,10 @@ UBOOT_TARGETS := \
 UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes
 
 define Build/InstallDev
-       $(CP) $(PKG_BUILD_DIR)/$(UBOOT_IMAGE) $(KERNEL_BUILD_DIR)/$(BUILD_DEVICES)-u-boot-with-spl.bin
+       $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
+       $(CP) $(PKG_BUILD_DIR)/$(UBOOT_IMAGE) $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-u-boot-with-spl.bin
        mkimage -C none -A arm -T script -d uEnv-$(UENV).txt \
-               $(KERNEL_BUILD_DIR)/$(BUILD_DEVICES)-boot.scr
+               $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-boot.scr
 endef
 
 define Package/u-boot/install/default
index bfb8e4e..c3f368f 100644 (file)
@@ -18,7 +18,7 @@ define Build/sunxi-sdcard
        rm -f $@.boot
        mkfs.fat $@.boot -C $(FAT32_BLOCKS)
 
-       mcopy -i $@.boot $(KDIR)/$(DEVICE_NAME)-boot.scr ::boot.scr
+       mcopy -i $@.boot $(STAGING_DIR_IMAGE)/$(DEVICE_NAME)-boot.scr ::boot.scr
        mcopy -i $@.boot $(DTS_DIR)/$(SUNXI_DTS).dtb ::dtb
        mcopy -i $@.boot $(IMAGE_KERNEL) ::uImage
        ./gen_sunxi_sdcard_img.sh $@ \
@@ -26,7 +26,7 @@ define Build/sunxi-sdcard
                $(IMAGE_ROOTFS) \
                $(CONFIG_SUNXI_SD_BOOT_PARTSIZE) \
                $(CONFIG_TARGET_ROOTFS_PARTSIZE) \
-               $(KDIR)/$(DEVICE_NAME)-u-boot-with-spl.bin
+               $(STAGING_DIR_IMAGE)/$(DEVICE_NAME)-u-boot-with-spl.bin
        rm -f $@.boot
 endef