diff options
Diffstat (limited to 'lib/_emerge/clear_caches.py')
-rw-r--r-- | lib/_emerge/clear_caches.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/_emerge/clear_caches.py b/lib/_emerge/clear_caches.py new file mode 100644 index 000000000..cb0db105b --- /dev/null +++ b/lib/_emerge/clear_caches.py @@ -0,0 +1,16 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +import gc + +def clear_caches(trees): + for d in trees.values(): + d["porttree"].dbapi.melt() + d["porttree"].dbapi._aux_cache.clear() + d["bintree"].dbapi._clear_cache() + if d["vartree"].dbapi._linkmap is None: + # preserve-libs is entirely disabled + pass + else: + d["vartree"].dbapi._linkmap._clear_cache() + gc.collect() |