3 """find empty dirs and check for obsolete package.mask entries"""
5 from os.path import join, getsize, isfile, isdir
7 from portage.versions import pkgsplit
8 import portage.env.config
11 # find empty directories
12 for root, dirs, files in os.walk('.'):
13 for ignoredir in ('CVS','.svn','.git','eclass'):
15 dirs.remove(ignoredir)
16 if len(dirs)+len(files) == 0:
17 print root, "seems to be empty"
20 # find obsolete package.mask entries
21 PACKAGE_MASK = join(os.getcwd(), "profiles/package.mask")
24 if not isfile(PACKAGE_MASK):
25 print >> stderr, "can't find package.mask, you must be in the overlay root!"
28 PMASK = portage.env.config.PackageMaskFile(PACKAGE_MASK)
31 for key in PMASK.keys():
32 # remove =, >=, ~ etc.
33 while not key[0].isalpha():
35 # remove trailing * or . like in: ...-1.4.* or so
36 while key[-1] == "*" or key[-1] == ".":
40 TOCHECK.append(pkgsplit(key)[0])
46 print "package.mask entry for '%s' is obsolete!" % str(item)