[oe-commits] Dexuan Cui : base.bbclass: show layer's branches/ revisions in the banner info

git version control git at git.openembedded.org
Tue Jul 5 12:45:03 UTC 2011


Module: openembedded-core.git
Branch: master
Commit: f271498638a9da271ed5da973666fe4a7bd0ac63
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=f271498638a9da271ed5da973666fe4a7bd0ac63

Author: Dexuan Cui <dexuan.cui at intel.com>
Date:   Tue Jun 28 13:18:59 2011 +0800

base.bbclass: show layer's branches/revisions in the banner info

The patch removes METADATA_BRANCH and METADATA_REVISION, and treats the meta/
in the same way as other layers.
In the case some layers belonging to the same repo, the branch and revision
are only printed once, but all the layer names are still printed.

An example output can be:

OE Build Configuration:
BB_VERSION        = "1.13.1"
TARGET_ARCH       = "i586"
TARGET_OS         = "linux"
MACHINE           = "emenlow"
DISTRO            = "poky"
DISTRO_VERSION    = "1.0+snapshot-20110702"
TARGET_FPU        = ""
meta
meta-yocto        = "dcui/banner_v3:4b712dba68a98c827b8f3d0242da9153c4f65473"
meta-emenlow
meta-sugarbay
meta-n450         = "dcui/test1:76d1178ba1a43cf6457c89717134aeb9f1275fae"

Signed-off-by: Dexuan Cui <dexuan.cui at intel.com>

---

 meta/classes/base.bbclass |   23 ++++++++++++++++++++++-
 1 files changed, 22 insertions(+), 1 deletions(-)

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index c82dae8..0c2c546 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -166,8 +166,29 @@ python base_eventhandler() {
 
 	if name.startswith("BuildStarted"):
 		bb.data.setVar( 'BB_VERSION', bb.__version__, e.data )
-		statusvars = ['BB_VERSION', 'METADATA_BRANCH', 'METADATA_REVISION', 'TARGET_ARCH', 'TARGET_OS', 'MACHINE', 'DISTRO', 'DISTRO_VERSION','TARGET_FPU']
+		statusvars = ['BB_VERSION', 'TARGET_ARCH', 'TARGET_OS', 'MACHINE', 'DISTRO', 'DISTRO_VERSION','TARGET_FPU']
 		statuslines = ["%-17s = \"%s\"" % (i, bb.data.getVar(i, e.data, 1) or '') for i in statusvars]
+
+		layers = (data.getVar("BBLAYERS", e.data, 1) or "").split()
+		layers_branch_rev = ["%-17s = \"%s:%s\"" % (os.path.basename(i), \
+			base_get_metadata_git_branch(i, None).strip(), \
+			base_get_metadata_git_revision(i, None)) \
+				for i in layers]
+		i = len(layers_branch_rev)-1
+		p1 = layers_branch_rev[i].find("=")
+		s1= layers_branch_rev[i][p1:]
+		while i > 0:
+			p2 = layers_branch_rev[i-1].find("=")
+			s2= layers_branch_rev[i-1][p2:]
+			if s1 == s2:
+				layers_branch_rev[i-1] = layers_branch_rev[i-1][0:p2]
+				i -= 1
+			else:
+				i -= 1
+				p1 = layers_branch_rev[i].find("=")
+				s1= layers_branch_rev[i][p1:]
+
+		statuslines += layers_branch_rev
 		statusmsg = "\nOE Build Configuration:\n%s\n" % '\n'.join(statuslines)
 		print statusmsg
 





More information about the Openembedded-commits mailing list