Make the effect of */* atoms in package.{use,license,properties} show up in emerge...
authorSebastian Luther <SebastianLuther@gmx.de>
Tue, 3 Aug 2010 08:10:56 +0000 (10:10 +0200)
committerZac Medico <zmedico@gentoo.org>
Tue, 3 Aug 2010 08:30:06 +0000 (01:30 -0700)
pym/portage/package/ebuild/config.py

index a58cd0c3b5ed4a3300fce3190d69dfde22fddb9f..dcbf4d498c5bd9a8ca49c4767ed1ae9df8356fc6 100644 (file)
@@ -829,7 +829,13 @@ class config(object):
                                pusedict = grabdict_package(
                                        os.path.join(abs_user_config, "package.use"), recursive=1, allow_wildcard=True)
                                for k, v in pusedict.items():
-                                       self.pusedict.setdefault(k.cp, {})[k] = v
+                                       if k == "*/*":
+                                               if "USE" in self.configdict["conf"]:
+                                                       self.configdict["conf"]["USE"] += " " + " ".join(v)
+                                               else:
+                                                       self.configdict["conf"]["USE"] = " ".join(v)
+                                       else:
+                                               self.pusedict.setdefault(k.cp, {})[k] = v
 
                                #package.keywords
                                pkgdict = grabdict_package(
@@ -854,6 +860,12 @@ class config(object):
                                licdict = grabdict_package(os.path.join(
                                        abs_user_config, "package.license"), recursive=1, allow_wildcard=True)
                                for k, v in licdict.items():
+                                       if k == "*/*":
+                                               if "ACCEPT_LICENSE" in self.configdict["conf"]:
+                                                       self.configdict["conf"]["ACCEPT_LICENSE"] += " " + " ".join(v)
+                                               else:
+                                                       self.configdict["conf"]["ACCEPT_LICENSE"] = " ".join(v)
+                                               continue
                                        cp = k.cp
                                        cp_dict = self._plicensedict.get(cp)
                                        if not cp_dict:
@@ -865,6 +877,12 @@ class config(object):
                                propdict = grabdict_package(os.path.join(
                                        abs_user_config, "package.properties"), recursive=1, allow_wildcard=True)
                                for k, v in propdict.items():
+                                       if k == "*/*":
+                                               if "ACCEPT_PROPERTIES" in self.configdict["conf"]:
+                                                       self.configdict["conf"]["ACCEPT_PROPERTIES"] += " " + " ".join(v)
+                                               else:
+                                                       self.configdict["conf"]["ACCEPT_PROPERTIES"] = " ".join(v)
+                                               continue
                                        cp = k.cp
                                        cp_dict = self._ppropertiesdict.get(cp)
                                        if not cp_dict: