Revert "parallel_emerge: drop support for old portage"
This reverts CL:196860. We are reverting this to see if
it caused bug 366988.
BUG=chromium:366988
TEST=None
Change-Id: Idc02bc818dab41831b9389cd383c5ee8d930e621
Reviewed-on: https://chromium-review.googlesource.com/197033
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: David James <davidjames@chromium.org>
Tested-by: David James <davidjames@chromium.org>
diff --git a/scripts/parallel_emerge.py b/scripts/parallel_emerge.py
index 811c6cc..94b9881 100644
--- a/scripts/parallel_emerge.py
+++ b/scripts/parallel_emerge.py
@@ -79,6 +79,7 @@
from portage._global_updates import _global_updates
import portage
import portage.debug
+from portage.versions import vercmp
# pylint: enable=F0401
@@ -579,7 +580,10 @@
emerge_pkg = self.package_db.get(pkg)
if emerge_pkg and emerge_pkg.type_name == "binary":
this_pkg["binary"] = True
- defined_phases = emerge_pkg.metadata.defined_phases
+ if 0 <= vercmp(portage.VERSION, "2.1.11.50"):
+ defined_phases = emerge_pkg.defined_phases
+ else:
+ defined_phases = emerge_pkg.metadata.defined_phases
defined_binpkg_phases = binpkg_phases.intersection(defined_phases)
if not defined_binpkg_phases:
this_pkg["nodeps"] = True
@@ -907,7 +911,12 @@
2: output.fileno(),
sys.stdin.fileno(): sys.stdin.fileno(),
output.fileno(): output.fileno()}
- portage.process._setup_pipes(fd_pipes) # pylint: disable=W0212
+ if 0 <= vercmp(portage.VERSION, "2.1.11.50"):
+ # pylint: disable=W0212
+ portage.process._setup_pipes(fd_pipes, close_fds=False)
+ else:
+ # pylint: disable=W0212
+ portage.process._setup_pipes(fd_pipes)
# Portage doesn't like when sys.stdin.fileno() != 0, so point sys.stdin
# at the filehandle we just created in _setup_pipes.