]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
taskdata: refactor get_providermap
authorEd Bartosh <ed.bartosh@linux.intel.com>
Fri, 8 Jan 2016 11:17:15 +0000 (11:17 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 8 Jan 2016 23:03:48 +0000 (23:03 +0000)
Added optional parameter 'prefix' to filter out names that
don't start with specified prefix. Changed existing call
of get_providermap according to changed API.

Optimized the code: got rid of extra loop and temporary
list variable virts.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
lib/bb/runqueue.py
lib/bb/taskdata.py

index da7059b17f7bc4d87a3b3931b89b13d7811417ed..57b1cca525fa63c9aa67348c31daeb390b49f853 100644 (file)
@@ -808,7 +808,7 @@ class RunQueueData:
                     invalidate_task(fn, st, True)
 
         # Create and print to the logs a virtual/xxxx -> PN (fn) table
-        virtmap = taskData.get_providermap()
+        virtmap = taskData.get_providermap(prefix="virtual/")
         virtpnmap = {}
         for v in virtmap:
             virtpnmap[v] = self.dataCache.pkg_fn[virtmap[v]]
index 4d12b3325bfa868649a01628fe6e115403b2e847..b08387067e4c4de920a270b5bf9683a5a8f15617 100644 (file)
@@ -612,17 +612,14 @@ class TaskData:
                 break
         # self.dump_data()
 
-    def get_providermap(self):
-        virts = []
-        virtmap = {}
-
+    def get_providermap(self, prefix=None):
+        provmap = {}
         for name in self.build_names_index:
-            if name.startswith("virtual/"):
-                virts.append(name)
-        for v in virts:
-            if self.have_build_target(v):
-                virtmap[v] = self.fn_index[self.get_provider(v)[0]]
-        return virtmap
+            if prefix and not name.startswith(prefix):
+                continue
+            if self.have_build_target(name):
+                provmap[name] = self.fn_index[self.get_provider(name)[0]]
+        return provmap
 
     def dump_data(self):
         """