--- portage.py 2003-07-29 09:58:11.000000000 +0200 +++ /tmp/portage.py 2003-08-06 12:42:20.000000000 +0200 @@ -897,7 +897,8 @@ sys.exit(1) self.configlist.append(self.mygcfg) self.configdict["conf"]=self.configlist[-1] - + self.configdict["conf"]["PKG_KEYWORDS"]=grabfile("/etc/portage/package.keyword") + for x in incrementals: if os.environ.has_key(x): self.backupenv[x]=os.environ[x] @@ -993,6 +1027,10 @@ usesplit.insert(0,self.configdict["defaults"]["ARCH"]) self.configlist[-1]["USE"]=string.join(usesplit," ") + self.configlist[-1]["PKG_KEYWORDS"]="" + for x in self.configdict["conf"]["PKG_KEYWORDS"]: + self.configlist[-1]["PKG_KEYWORDS"]=x+" "+self.configlist[-1]["PKG_KEYWORDS"] + def __getitem__(self,mykey): if mykey=="CONFIG_PROTECT_MASK": suffix=" /etc/env.d" @@ -3790,7 +3862,11 @@ continue mygroups=myaux[0].split() match=0 + mypkg=catpkgsplit(mycpv)[0]+"/"+catpkgsplit(mycpv)[1] for gp in mygroups: + if mypkg in settings["PKG_KEYWORDS"].split() and gp[0] == "~" and gp[1:] in groups: + match=1 + break if gp=="*": match=1 break