From: Slawek Date: Tue, 15 Feb 2011 05:24:25 +0000 (+0100) Subject: Fixed bug from: http://bugs.gentoo.org/show_bug.cgi?id=353518 X-Git-Tag: gentoolkit-0.3.0.5~48 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=ba2773480f8737e92dbbdc8c6f3e1a671200a35c;p=gentoolkit.git Fixed bug from: bugs.gentoo.org/show_bug.cgi?id=353518 --- diff --git a/pym/gentoolkit/revdep_rebuild/analyse.py b/pym/gentoolkit/revdep_rebuild/analyse.py index 004163e..c1c755b 100644 --- a/pym/gentoolkit/revdep_rebuild/analyse.py +++ b/pym/gentoolkit/revdep_rebuild/analyse.py @@ -131,7 +131,7 @@ def analyse(logger=logging, libraries=None, la_libraries=None, libraries_links=N else: #TODO: add partial cache (for ex. only libraries) when found for some reason - logger.info(green(' * ') + bold('Collecting system binaries and libraries')) + logger.warn(green(' * ') + bold('Collecting system binaries and libraries')) bin_dirs, lib_dirs = prepare_search_dirs(logger) masked_dirs, masked_files, ld = parse_revdep_config() diff --git a/pym/gentoolkit/revdep_rebuild/revdep-rebuild.py b/pym/gentoolkit/revdep_rebuild/revdep-rebuild.py index f2fda2e..4ad5e58 100644 --- a/pym/gentoolkit/revdep_rebuild/revdep-rebuild.py +++ b/pym/gentoolkit/revdep_rebuild/revdep-rebuild.py @@ -25,7 +25,7 @@ from portage import portdb from portage.output import bold, red, blue, yellow, green, nocolor from analyse import analyse -from stuff import exithandler +from stuff import exithandler, get_masking_status from cache import check_temp_files, read_cache from assign import get_slotted_cps from settings import SETTINGS @@ -155,6 +155,21 @@ if __name__ == "__main__": logger.warn('\n' + bold('Your system is consistent')) sys.exit(0) + + has_masked = False + tmp = [] + for a in assigned: + if get_masking_status(a): + has_masked = True + logger.warn('!!! ' + red('All ebuilds that could satisfy: ') + green(a) + red(' have been masked')) + else: + tmp.append(a) + assigned = tmp + + if has_masked: + logger.info(red(' * ') + 'Unmask all ebuild listed above and call revdep-rebuild again or manually emerge given packages.') + + if SETTINGS['EXACT']: emerge_command = '=' + ' ='.join(assigned) else: diff --git a/pym/gentoolkit/revdep_rebuild/stuff.py b/pym/gentoolkit/revdep_rebuild/stuff.py index dd8e572..d153908 100644 --- a/pym/gentoolkit/revdep_rebuild/stuff.py +++ b/pym/gentoolkit/revdep_rebuild/stuff.py @@ -1,6 +1,7 @@ #!/usr/bin/python import subprocess +import portage # util. functions @@ -34,6 +35,12 @@ def exithandler(signum, frame): sys.exit(1) +def get_masking_status(ebuild): + try: + status = portage.getmaskingstatus(ebuild) + except KeyError: + status = ['deprecated'] + return status if __name__ == '__main__': print "There is nothing to run here."