From 9c3052b55117e1380a2fd0646770d158437c9f55 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 30 Dec 2010 23:55:19 -0800 Subject: Binpkg: implement REPLACING_VERSIONS --- pym/_emerge/Binpkg.py | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'pym') diff --git a/pym/_emerge/Binpkg.py b/pym/_emerge/Binpkg.py index 8b93a2dfb..65a5ef4a5 100644 --- a/pym/_emerge/Binpkg.py +++ b/pym/_emerge/Binpkg.py @@ -9,6 +9,7 @@ from _emerge.CompositeTask import CompositeTask from _emerge.BinpkgVerifier import BinpkgVerifier from _emerge.EbuildMerge import EbuildMerge from _emerge.EbuildBuildDir import EbuildBuildDir +from portage.eapi import eapi_exports_replace_vars from portage.util import writemsg import portage from portage import os @@ -57,6 +58,13 @@ class Binpkg(CompositeTask): settings.configdict["pkg"]["EMERGE_FROM"] = "binary" settings.configdict["pkg"]["MERGE_TYPE"] = "binary" + if eapi_exports_replace_vars(settings["EAPI"]): + vardb = self.pkg.root_config.trees["vartree"].dbapi + settings["REPLACING_VERSIONS"] = " ".join( + set(portage.versions.cpv_getversion(x) \ + for x in vardb.match(self.pkg.slot_atom) + \ + vardb.match('='+self.pkg.cpv))) + # The prefetcher has already completed or it # could be running now. If it's running now, # wait for it to complete since it holds -- cgit v1.2.3-1-g7c22