diff options
author | Mike Frysinger <vapier@google.com> | 2015-05-31 05:15:46 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@google.com> | 2015-05-31 05:15:46 -0400 |
commit | 031126cef43e4338873d97de2189fa9f2fe06eea (patch) | |
tree | 48f628bbcec0b7766c68796ab2d560132b0e8c50 /usr/lib/portage/pym/_emerge/DependencyArg.py | |
parent | 06303e6a87d55bdd9c880b2f4df65e0bbc6202ff (diff) | |
download | portage-031126cef43e4338873d97de2189fa9f2fe06eea.tar.gz |
initial import
This is the portage-prefix-2.2.14 release set up like:
./configure \
--prefix=/usr/local/google/home/vapier/src/android/mdk/build/portage/tmp/prefix-portage-2.2.14/destdir/usr \
--with-portage-user=vapier \
--with-portage-group=eng \
--with-offset-prefix=/usr/local/google/home/vapier/src/android/mdk/build/portage/tmp/prefix-portage-2.2.14/destdir
It does not work as-is; follow up commits will make it more usable.
BUG=b:20895978
Change-Id: I03d3de254bf9f7c3204bd6ac7254c15476b08ba7
Diffstat (limited to 'usr/lib/portage/pym/_emerge/DependencyArg.py')
-rw-r--r-- | usr/lib/portage/pym/_emerge/DependencyArg.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/usr/lib/portage/pym/_emerge/DependencyArg.py b/usr/lib/portage/pym/_emerge/DependencyArg.py new file mode 100644 index 0000000..29a0072 --- /dev/null +++ b/usr/lib/portage/pym/_emerge/DependencyArg.py @@ -0,0 +1,46 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +from __future__ import unicode_literals + +import sys + +from portage import _encodings, _unicode_encode + +class DependencyArg(object): + + __slots__ = ('arg', 'force_reinstall', 'internal', 'reset_depth', 'root_config') + + def __init__(self, arg=None, force_reinstall=False, internal=False, + reset_depth=True, root_config=None): + """ + Use reset_depth=False for special arguments that should not interact + with depth calculations (see the emerge --deep=DEPTH option). + """ + self.arg = arg + self.force_reinstall = force_reinstall + self.internal = internal + self.reset_depth = reset_depth + self.root_config = root_config + + def __eq__(self, other): + if self.__class__ is not other.__class__: + return False + return self.arg == other.arg and \ + self.root_config.root == other.root_config.root + + def __hash__(self): + return hash((self.arg, self.root_config.root)) + + def __str__(self): + # Use unicode_literals format string for python-2.x safety, + # ensuring that self.arg.__unicode__() is used + # when necessary. + return "%s" % (self.arg,) + + if sys.hexversion < 0x3000000: + + __unicode__ = __str__ + + def __str__(self): + return _unicode_encode(self.__unicode__(), encoding=_encodings['content']) |