[OE-core] [PATCH 3/4] classes/utility-tasks: make do_listtasks a little more friendly

Paul Eggleton paul.eggleton at linux.intel.com
Mon Feb 24 16:05:46 UTC 2014


* Sort the list so it's at least in some form of logical order. I looked
  at sorting by dependencies, but that's a topological sort, and given
  no such function is shipped as part of the python standard libraries
  it would seem excessive to pull one in just for this. In any case, I'm
  not sure that for the data we have this would lead to any particularly
  pleasing result.
* Show the doc values as defined in documentation.conf (where present)
  as a description

Addresses [YOCTO #4856].

Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
---
 meta/classes/utility-tasks.bbclass | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/meta/classes/utility-tasks.bbclass b/meta/classes/utility-tasks.bbclass
index 507e0f1..1792f18 100644
--- a/meta/classes/utility-tasks.bbclass
+++ b/meta/classes/utility-tasks.bbclass
@@ -1,13 +1,20 @@
 addtask listtasks
 do_listtasks[nostamp] = "1"
 python do_listtasks() {
-    import sys
-    # emit variables and shell functions
-    #bb.data.emit_env(sys.__stdout__, d)
-    # emit the metadata which isnt valid shell
+    taskdescs = {}
+    maxlen = 0
     for e in d.keys():
         if d.getVarFlag(e, 'task'):
-            bb.plain("%s" % e)
+            maxlen = max(maxlen, len(e))
+            if e.endswith('_setscene'):
+                desc = "%s (setscene version)" % (d.getVarFlag(e[:-9], 'doc') or '')
+            else:
+                desc = d.getVarFlag(e, 'doc') or ''
+            taskdescs[e] = desc
+
+    tasks = sorted(taskdescs.keys())
+    for taskname in tasks:
+        bb.plain("%s  %s" % (taskname.ljust(maxlen), taskdescs[taskname]))
 }
 
 CLEANFUNCS ?= ""
-- 
1.8.5.3




More information about the Openembedded-core mailing list