| Index: parallel_emerge
|
| diff --git a/parallel_emerge b/parallel_emerge
|
| index da2d058660ce62b570dba9af1d87aaf4675f2077..cff384183940ba34a5e4751eef2562a22d43501a 100755
|
| --- a/parallel_emerge
|
| +++ b/parallel_emerge
|
| @@ -300,8 +300,12 @@ class DepGraphGenerator(object):
|
| # will be going away soon as we migrate to CROS_WORKON_SRCROOT.
|
| os.environ.setdefault("CHROMEOS_ROOT", os.environ["HOME"] + "/trunk")
|
|
|
| - # Modify the environment to disable locking.
|
| - os.environ["PORTAGE_LOCKS"] = "false"
|
| + # Modify the environment to disable locking by default.
|
| + # TODO(davidjames): This option can cause problems if packages muck
|
| + # with each other during the post-install step. There are a few host
|
| + # packages that do this, so we only do this environment modification for
|
| + # board builds.
|
| + os.environ.setdefault("PORTAGE_LOCKS", "false")
|
|
|
| # Turn off interactive delays
|
| os.environ["EBEEP_IGNORE"] = "1"
|
| @@ -344,9 +348,10 @@ class DepGraphGenerator(object):
|
| 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:
|
| + # a package isn't necessary, and leads to race conditions when
|
| + # PORTAGE_LOCKS is false. In this case, do environment updates at the end,
|
| + # instead.
|
| + if self.board and os.environ.get("PORTAGE_LOCKS") == "false":
|
| features = features + " no-env-update"
|
|
|
| os.environ["FEATURES"] = features
|
|
|