[oe] [meta-oe] gitpkgv.bbclass: fix versioning with multiple repos
S. Lockwood-Childs
sjl at vctlabs.com
Sat Feb 18 03:08:46 UTC 2017
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 <sjl at vctlabs.com>
---
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 8cd4bfd..26a758f 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)
--
1.9.4
More information about the Openembedded-devel
mailing list