summaryrefslogtreecommitdiffstats
path: root/bin/repoman
diff options
context:
space:
mode:
Diffstat (limited to 'bin/repoman')
-rwxr-xr-xbin/repoman15
1 files changed, 15 insertions, 0 deletions
diff --git a/bin/repoman b/bin/repoman
index 2c34ac919..e53ae076a 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -1072,6 +1072,16 @@ for x in scanlist:
stats["metadata.bad"]+=1
fails["metadata.bad"].append(x+"/metadata.xml")
+ #load USE flags from metadata.xml
+ muselist=[]
+ try:
+ f = open(os.path.join(checkdir, "metadata.xml"))
+ utilities.parse_metadata_use(f, muselist)
+ f.close()
+ except (IOError, OSError, ParseError), e:
+ logging.exception("Couldn't read from metadata.xml", e)
+ sys.exit(1)
+
allmasked = True
for y in ebuildlist:
@@ -1354,6 +1364,11 @@ for x in scanlist:
if flag_name not in uselist:
myuse.append(flag_name)
+ # uselist checks - metadata
+ for mypos in range(len(myuse)-1,-1,-1):
+ if myuse[mypos] and (myuse[mypos] in muselist):
+ del myuse[mypos]
+
# uselist checks - local
mykey = portage.dep_getkey(catpkg)
if mykey in luselist: