Tune ROOTFS_PATCHED_IMG target
If the recipe fails for whatever reason one can not do further
incremental builds reliably. The output, ROOTFS_PATCHED_IMG, is
created at the top of the recipe. Next build it's current and in
a bad state. Instead start with ROOTFS_RAW_IMG and only create
ROOTFS_PATCHED_IMG when all is done.
Change-Id: I7e4cb95d3373cc20caacc15f1b0512112ce4ee76
diff --git a/rootfs.mk b/rootfs.mk
index 6ac3c0e..1e29127 100644
--- a/rootfs.mk
+++ b/rootfs.mk
@@ -129,11 +129,11 @@
$(ROOTDIR)/cache/packages.tgz \
| $(PRODUCT_OUT)/boot.img \
modules
- cp -r $(ROOTFS_RAW_IMG) $(ROOTFS_PATCHED_IMG)
+ cp $(ROOTFS_RAW_IMG) $(ROOTFS_PATCHED_IMG).wip
mkdir -p $(ROOTFS_DIR)
-sudo umount $(ROOTFS_DIR)/boot
-sudo umount $(ROOTFS_DIR)
- sudo mount -o loop $(ROOTFS_PATCHED_IMG) $(ROOTFS_DIR)
+ sudo mount -o loop $(ROOTFS_PATCHED_IMG).wip $(ROOTFS_DIR)
sudo mount -o loop $(PRODUCT_OUT)/boot.img $(ROOTFS_DIR)/boot
sudo cp $(ROOTDIR)/board/fstab.emmc $(ROOTFS_DIR)/etc/fstab
@@ -149,8 +149,9 @@
sudo umount $(ROOTFS_DIR)/boot
sudo umount $(ROOTFS_DIR)
sudo rmdir $(ROOTFS_DIR)
- sudo sync $(ROOTFS_PATCHED_IMG)
- sudo chown ${USER} $(ROOTFS_PATCHED_IMG)
+ sudo sync $(ROOTFS_PATCHED_IMG).wip
+ sudo chown ${USER} $(ROOTFS_PATCHED_IMG).wip
+ mv $(ROOTFS_PATCHED_IMG).wip $(ROOTFS_PATCHED_IMG)
$(PRODUCT_OUT)/rootfs.img: $(HOST_OUT)/bin/img2simg $(ROOTFS_PATCHED_IMG)
$(HOST_OUT)/bin/img2simg $(ROOTFS_PATCHED_IMG) $(PRODUCT_OUT)/rootfs.img