Browse Source

taskdata: Add a function to return the virtual/ mapping data

When building an execution task graph, bitbake does resolve virtual/xxx
namespaces into specific providers. This data isn't exported anywhere
however.

This adds a function so that runqueue can at least retrieve this data
which can then be used by the system.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie 8 years ago
parent
commit
ce51a51482
1 changed files with 12 additions and 0 deletions
  1. 12 0
      lib/bb/taskdata.py

+ 12 - 0
lib/bb/taskdata.py

@@ -612,6 +612,18 @@ class TaskData:
                 break
         # self.dump_data()
 
+    def get_providermap(self):
+        virts = []
+        virtmap = {}
+
+        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
+
     def dump_data(self):
         """
         Dump some debug information on the internal data structures