diff options
author | Zac Medico <zmedico@gentoo.org> | 2006-10-14 04:07:49 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2006-10-14 04:07:49 +0000 |
commit | e7ac068da63fc6764fe097714aeea480992bb168 (patch) | |
tree | da6165a2dd422c0a7d2e2f759bf60569cf516406 /bin/repoman | |
parent | 4c37e971066766d8dc4a294e20b56cca33a23cb4 (diff) | |
download | portage-e7ac068da63fc6764fe097714aeea480992bb168.tar.gz portage-e7ac068da63fc6764fe097714aeea480992bb168.tar.bz2 portage-e7ac068da63fc6764fe097714aeea480992bb168.zip |
Implement per-package default USE flags at the ebuild and profile levels for bug #61732.
svn path=/main/trunk/; revision=4679
Diffstat (limited to 'bin/repoman')
-rwxr-xr-x | bin/repoman | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/bin/repoman b/bin/repoman index b8ab7312f..7b0a0fe67 100755 --- a/bin/repoman +++ b/bin/repoman @@ -1059,7 +1059,12 @@ for x in scanlist: badlicsyntax = False badprovsyntax = False catpkg = catdir+"/"+y - myiuse = myaux["IUSE"].split() + repoman_settings.archlist() + myiuse = set(repoman_settings.archlist()) + for myflag in myaux["IUSE"].split(): + if myflag.startswith("+"): + myflag = myflag[1:] + myiuse.add(myflag) + type_list, badsyntax = [], [] for mytype in ("DEPEND", "RDEPEND", "PDEPEND", "LICENSE", "PROVIDE"): mydepstr = myaux[mytype] @@ -1214,7 +1219,13 @@ for x in scanlist: stats["ebuild.nesteddie"]=stats["ebuild.nesteddie"]+1 fails["ebuild.nesteddie"].append(x+"/"+y+".ebuild") # uselist checks - global - myuse = myaux["IUSE"].split() + myuse = [] + default_use = [] + for myflag in myaux["IUSE"].split(): + if myflag.startswith("+"): + default_use.append(myflag) + myflag = myflag[1:] + myuse.append(myflag) for mypos in range(len(myuse)-1,-1,-1): if myuse[mypos] and (myuse[mypos] in uselist): del myuse[mypos] @@ -1224,6 +1235,8 @@ for x in scanlist: for mypos in range(len(myuse)-1,-1,-1): if myuse[mypos] and (myuse[mypos] in luselist[mykey]): del myuse[mypos] + if default_use and myaux["EAPI"] == "0": + myuse += default_use for mypos in range(len(myuse)): stats["IUSE.invalid"]=stats["IUSE.invalid"]+1 fails["IUSE.invalid"].append(x+"/"+y+".ebuild: %s" % myuse[mypos]) |