When TOP dir changes and we reuse the same output between the old and new checkouts, we need to rewrite all the symlinks used by Bazel and other tools in the out-directory to point to the new top directory. Otherwise, if the old source dir is deleted, the build will fail.
I used the OUT_DIR/soong/soong.environment.available file to find out the previous PWD.
Tested:
1. Create source dir 1, run build, create source dir 2, remote source dir 1, reuse out dir and rerun build => build succeeded with this change.
2. m libc after moving build TOP. Only the analysis phase was rerun, the actual build was not rerun.
Bug: b/300498226
Change-Id: I196625baa1f4efe7a4734accfa1f0be7c98a7920