From ace4a93016099d0f0e5151a6a88e82175f9fe77c Mon Sep 17 00:00:00 2001 From: "S. Lockwood-Childs" Date: Mon, 20 Feb 2017 01:07:07 -0800 Subject: gitpkgv.bbclass: fix versioning with multiple repos gitpkgv class is supposed to use SRCREV_FORMAT variable to define how to smoosh together revision info from multiple repos that are used in a single recipe. It is incorrectly repeating the rev hash for the first repo instead of including the rev from each listed repo. Example: SRC_URI = "git://some-server/purple.git;destsuffix=git/purple;name=purple" SRC_URI += "git://other-server/blue.git;destsuffix=git/blue;name=blue" SRCREV_purple = "${AUTOREV}" SRCREV_blue = "${AUTOREV}" SRCREV_FORMAT = "purple_blue" Suppose gitpkgv calculates "67+ea121ea" for purple repo, and "123+feef001" for blue repo. This should result in a package version with them joined together like so: "67+ea121ea_123+feef001" It didn't. Instead the git hash part for the first repo got repeated: "67+ea121ea_123+ea121ea" Fix this by looking in the right place for the git revisions of 2nd (and following) repos when assembling the full version string. Signed-off-by: S. Lockwood-Childs Signed-off-by: Martin Jansa --- meta-oe/classes/gitpkgv.bbclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meta-oe/classes/gitpkgv.bbclass b/meta-oe/classes/gitpkgv.bbclass index 3949b43c24..2d9680a35c 100644 --- a/meta-oe/classes/gitpkgv.bbclass +++ b/meta-oe/classes/gitpkgv.bbclass @@ -110,9 +110,9 @@ def get_git_pkgv(d, use_tags): d, quiet=True).strip() ver = gitpkgv_drop_tag_prefix(output) except Exception: - ver = "0.0-%s-g%s" % (commits, rev[:7]) + ver = "0.0-%s-g%s" % (commits, vars['rev'][:7]) else: - ver = "%s+%s" % (commits, rev[:7]) + ver = "%s+%s" % (commits, vars['rev'][:7]) format = format.replace(name, ver) -- cgit 1.2.3-korg