Have Soong try to enforce that genrules declare all their outputs.
This causes Soong to put the outputs of each genrule into a temporary
location and copy the declared outputs back to the output directory.
This gets the process closer to having an actual sandbox.
Bug: 35562758
Test: make
Change-Id: I8048fbf1a3899a86fb99d71b60669b6633b07b3e
diff --git a/ui/build/build.go b/ui/build/build.go
index 83dbcb6..1400c48 100644
--- a/ui/build/build.go
+++ b/ui/build/build.go
@@ -125,6 +125,8 @@
checkCaseSensitivity(ctx, config)
+ ensureEmptyDirectoriesExist(ctx, config.TempDir())
+
if what&BuildProductConfig != 0 {
// Run make for product config
runMakeProductConfig(ctx, config)