public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
* [PATCH v2] meta/classes/base: Fix showdata and liststasks after bitbake update
@ 2018-02-09 17:28 Alexander Smirnov
  2018-02-09 18:16 ` Henning Schild
  2018-02-12  7:44 ` Jan Kiszka
  0 siblings, 2 replies; 7+ messages in thread
From: Alexander Smirnov @ 2018-02-09 17:28 UTC (permalink / raw)
  To: isar-users; +Cc: Claudius Heine

From: Claudius Heine <ch@denx.de>

8<--

Just added references to origin code in comment. Didn't touch the code.

8<--

Those tasks were broken, this patchs fixes by implementing them similar
to how openembedded-core does it.

Signed-off-by: Claudius Heine <ch@denx.de>
---
 meta/classes/base.bbclass | 30 +++++++++++++++++++-----------
 1 file changed, 19 insertions(+), 11 deletions(-)

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 7d44f72..ae84677 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -37,25 +37,33 @@ bbfatal() {
 	exit 1
 }
 
+# Derived from bitbake: bitbake/classes/base.bbclass
 addtask showdata
 do_showdata[nostamp] = "1"
 python do_showdata() {
-	import sys
-	# emit variables and shell functions
-	bb.data.emit_env(sys.__stdout__, d, True)
-	# emit the metadata which isnt valid shell
-	for e in bb.data.keys(d):
-		if bb.data.getVarFlag(e, 'python', d):
-			sys.__stdout__.write("\npython %s () {\n%s}\n" % (e, bb.data.getVar(e, d, 1)))
+    for e in d.keys():
+        if d.getVarFlag(e, 'python'):
+            bb.plain("\npython %s () {\n%s}\n" % (e, d.getVar(e, True)))
 }
 
+# Derived from Open Embedded: openembedded-core/meta/classes/utility-tasks.bbclass
 addtask listtasks
 do_listtasks[nostamp] = "1"
 python do_listtasks() {
-	import sys
-	for e in bb.data.keys(d):
-		if bb.data.getVarFlag(e, 'task', d):
-			sys.__stdout__.write("%s\n" % e)
+    taskdescs = {}
+    maxlen = 0
+    for e in d.keys():
+        if d.getVarFlag(e, 'task'):
+            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]))
 }
 
 do_fetch[dirs] = "${DL_DIR}"
-- 
2.1.4


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-02-12  9:15 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-09 17:28 [PATCH v2] meta/classes/base: Fix showdata and liststasks after bitbake update Alexander Smirnov
2018-02-09 18:16 ` Henning Schild
2018-02-09 18:42   ` Alexander Smirnov
2018-02-09 19:33     ` Henning Schild
2018-02-09 20:18       ` Alexander Smirnov
2018-02-12  7:44 ` Jan Kiszka
2018-02-12  9:14   ` Alexander Smirnov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox