With the help of zmedico Prefix binary support should be working fully optimal and...
authorFabian Groffen <grobian@gentoo.org>
Fri, 12 Oct 2007 09:32:39 +0000 (09:32 -0000)
committerFabian Groffen <grobian@gentoo.org>
Fri, 12 Oct 2007 09:32:39 +0000 (09:32 -0000)
svn path=/main/branches/prefix/; revision=8079

pym/emerge/__init__.py
pym/portage/dbapi/bintree.py

index afcce9d35c3fdbefb37d4c8371e3c4cc5fbb8c0e..50cfaaec539462b4433800ecf816fa65d55d1e05 100644 (file)
@@ -901,6 +901,11 @@ def visible(pkgsettings, cpv, metadata, built=False, installed=False):
        if built and not installed and \
                metadata["CHOST"] != pkgsettings["CHOST"]:
                return False
+       if built:
+               if not metadata["EPREFIX"]:
+                       return False
+               if len(metadata["EPREFIX"].strip()) < len(pkgsettings["EPREFIX"]):
+                       return False
        if not portage.eapi_is_supported(metadata["EAPI"]):
                return False
        if pkgsettings.getMissingKeywords(cpv, metadata):
@@ -5649,7 +5654,7 @@ def action_info(settings, trees, myopts, myfiles):
        if mypkgs:
                # Get our global settings (we only print stuff if it varies from
                # the current config)
-               mydesiredvars = [ 'CHOST', 'CFLAGS', 'CXXFLAGS' ]
+               mydesiredvars = [ 'CHOST', 'CFLAGS', 'CXXFLAGS', 'EPREFIX' ]
                auxkeys = mydesiredvars + [ "USE", "IUSE"]
                global_vals = {}
                pkgsettings = portage.config(clone=settings)
index e29beeb267151f13531019977bb177feef096715..23b0832ac5ca3a36695867294829476fffcd7586 100644 (file)
@@ -147,11 +147,11 @@ class binarytree(object):
                        self._pkgindex_aux_keys = \
                                ["CHOST", "DEPEND", "DESCRIPTION", "EAPI",
                                "IUSE", "KEYWORDS", "LICENSE", "PDEPEND",
-                               "PROVIDE", "RDEPEND", "SLOT", "USE"]
+                               "PROVIDE", "RDEPEND", "SLOT", "USE", "EPREFIX"]
                        self._pkgindex_aux_keys = list(self._pkgindex_aux_keys)
                        self._pkgindex_header_keys = set(["ACCEPT_KEYWORDS", "CBUILD",
                                "CHOST", "CONFIG_PROTECT", "CONFIG_PROTECT_MASK", "FEATURES",
-                               "GENTOO_MIRRORS", "INSTALL_MASK", "SYNC", "USE"])
+                               "GENTOO_MIRRORS", "INSTALL_MASK", "SYNC", "USE", "EPREFIX"])
                        self._pkgindex_default_pkg_data = {
                                "EAPI"    : "0",
                                "IUSE"    : "",
@@ -159,7 +159,7 @@ class binarytree(object):
                                "SLOT"    : "0",
                                "USE"     : ""
                        }
-                       self._pkgindex_inherited_keys = ["CHOST"]
+                       self._pkgindex_inherited_keys = ["CHOST", "EPREFIX"]
 
        def move_ent(self, mylist):
                if not self.populated: