Fix incrementality issues for vendor_boot_filesystem_config.txt
Similar to the issue described in https://r.android.com/3524966,
vendor_boot_filesystem_config.txt runs into incrementality issues since
the fs_config call is in a separate rule from the rule which assembles
VENDOR_BOOT/RAMDISK.
This CL fixes this by inlining the fs_config cmd in the rule that builds
target_files.zip
Test: In a clean build, diffed vendor_boot_filesystem_config.txt between
make and soong
Change-Id: Ide86b81b7b97316eb2dee56b0e3658ad84b1bc6e
diff --git a/filesystem/android_device.go b/filesystem/android_device.go
index a616ee0..7387c8a 100644
--- a/filesystem/android_device.go
+++ b/filesystem/android_device.go
@@ -673,7 +673,13 @@
}
if partition == "vendor_ramdisk" {
// Create vendor_boot_filesystem_config from the assembled VENDOR_BOOT/RAMDISK intermediates directory
- a.generateFilesystemConfigForTargetFiles(ctx, builder, nil, targetFilesDir.String(), targetFilesDir.String()+"/VENDOR_BOOT/RAMDISK", "vendor_boot_filesystem_config.txt")
+ vendorRamdiskStagingDir := targetFilesDir.String() + "/VENDOR_BOOT/RAMDISK"
+ vendorRamdiskFsConfigOut := targetFilesDir.String() + "/META/vendor_boot_filesystem_config.txt"
+ fsConfigBin := ctx.Config().HostToolPath(ctx, "fs_config")
+ builder.Command().Textf(
+ `(cd %s; find . -type d | sed 's,$,/,'; find . \! -type d) | cut -c 3- | sort | sed 's,^,,' | %s -C -D %s -R \"\" > %s`,
+ vendorRamdiskStagingDir, fsConfigBin, vendorRamdiskStagingDir, vendorRamdiskFsConfigOut).
+ Implicit(fsConfigBin)
}
}
// Copy ramdisk_node_list