Index: parallel_emerge |
diff --git a/parallel_emerge b/parallel_emerge |
index be5b3908ef19a308b7b30a6b5d5f32978be5f2e6..35c089cdf5fcd0b3c004c7be2e34b25f19462aeb 100755 |
--- a/parallel_emerge |
+++ b/parallel_emerge |
@@ -327,6 +327,13 @@ class DepGraphGenerator(object): |
# lying around and they cause problems, so for now we disable the flag. |
# TODO(davidjames): Look for a better solution. |
features = os.environ.get("FEATURES", "") + " -collision-protect" |
+ |
+ # If we're cross-compiling, updating the environment every time we install |
+ # a package isn't necessary, and leads to race conditions. Do environment |
+ # updates at the end, instead. |
+ if self.board: |
+ features = features + " no-env-update" |
+ |
os.environ["FEATURES"] = features |
# Now that we've setup the necessary environment variables, we can load the |
@@ -1315,6 +1322,10 @@ def main(): |
if new_world_pkgs: |
world_set.update(new_world_pkgs) |
+ # Update environment (library cache, symlinks, etc.) |
+ if deps.board and "--pretend" not in emerge.opts: |
+ portage.env_update() |
+ |
print "Done" |
if __name__ == "__main__": |