diff options
author | Krzysztof Pawlik <nelchael@gentoo.org> | 2012-05-04 23:47:27 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2012-05-04 23:47:27 -0700 |
commit | 33545ea18e8816addb3c54bb26a0cc788b8512e6 (patch) | |
tree | d0cc3616908e23a43884af9b3f1d5a812b42d67a /pym/portage/dbapi | |
parent | composite_db._visible: fix AttributeError (diff) | |
download | portage-33545ea18e8816addb3c54bb26a0cc788b8512e6.tar.gz portage-33545ea18e8816addb3c54bb26a0cc788b8512e6.tar.bz2 portage-33545ea18e8816addb3c54bb26a0cc788b8512e6.zip |
Support COLLISION_IGNORE_UNOWNED="*.pyc *.pyo"
This will fix bug #410691.
Diffstat (limited to 'pym/portage/dbapi')
-rw-r--r-- | pym/portage/dbapi/vartree.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py index ec9f87c35..71b5d80e7 100644 --- a/pym/portage/dbapi/vartree.py +++ b/pym/portage/dbapi/vartree.py @@ -63,6 +63,7 @@ from _emerge.PollScheduler import PollScheduler from _emerge.MiscFunctionsProcess import MiscFunctionsProcess import errno +import fnmatch import gc import grp import io @@ -3080,6 +3081,9 @@ class dblink(object): portage.util.shlex_split( self.settings.get("COLLISION_IGNORE", ""))]) + unowned_ignore_patterns = self.settings.get( + "COLLISION_IGNORE_UNOWNED", "").split() + # For collisions with preserved libraries, the current package # will assume ownership and the libraries will be unregistered. if self.vartree.dbapi._plib_registry is None: @@ -3188,6 +3192,10 @@ class dblink(object): if f.startswith(myignore + os.path.sep): stopmerge = False break + for pattern in unowned_ignore_patterns: + if fnmatch.fnmatch(f, pattern): + stopmerge = False + break if stopmerge: collisions.append(f) return collisions, symlink_collisions, plib_collisions |