aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Kjellerstedt <pkj@axis.com>2020-01-17 21:34:21 +0100
committerArmin Kuster <akuster808@gmail.com>2020-01-30 18:17:17 -0800
commitb95100003df03c22eebe6ae5e4342b5281a2ef64 (patch)
tree004dd0021a517bed4abf93d3eb4c60e5161cf035
parent12390fd0d6f0ddca04783b2920a5d60fecd78b6a (diff)
downloadmeta-openembedded-contrib-b95100003df03c22eebe6ae5e4342b5281a2ef64.tar.gz
meta-openembedded-contrib-b95100003df03c22eebe6ae5e4342b5281a2ef64.tar.bz2
meta-openembedded-contrib-b95100003df03c22eebe6ae5e4342b5281a2ef64.zip
gitpkgv.bbclass: Add support for extending the supported tag formats
Introduce GITPKGV_TAG_REGEXP (which defaults to "v(\d.*)") to support dropping other unwanted parts of the found tags than just a leading "v". Any matching groups in the regexp will be concatenated to yield the final version. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> (cherry picked from commit b51af6b5b7a41b44d3539f44c10d21624c4cc4a7) Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r--meta-oe/classes/gitpkgv.bbclass14
1 files changed, 10 insertions, 4 deletions
diff --git a/meta-oe/classes/gitpkgv.bbclass b/meta-oe/classes/gitpkgv.bbclass
index ab591bd45c..180421ed35 100644
--- a/meta-oe/classes/gitpkgv.bbclass
+++ b/meta-oe/classes/gitpkgv.bbclass
@@ -40,10 +40,16 @@
GITPKGV = "${@get_git_pkgv(d, False)}"
GITPKGVTAG = "${@get_git_pkgv(d, True)}"
-def gitpkgv_drop_tag_prefix(version):
+# This regexp is used to drop unwanted parts of the found tags. Any matching
+# groups will be concatenated to yield the final version.
+GITPKGV_TAG_REGEXP ??= "v(\d.*)"
+
+def gitpkgv_drop_tag_prefix(d, version):
import re
- if re.match("v\d", version):
- return version[1:]
+
+ m = re.match(d.getVar('GITPKGV_TAG_REGEXP'), version)
+ if m:
+ return ''.join(group for group in m.groups() if group)
else:
return version
@@ -105,7 +111,7 @@ def get_git_pkgv(d, use_tags):
output = bb.fetch2.runfetchcmd(
"git --git-dir=%(repodir)s describe %(rev)s --tags --exact-match 2>/dev/null"
% vars, d, quiet=True).strip()
- ver = gitpkgv_drop_tag_prefix(output)
+ ver = gitpkgv_drop_tag_prefix(d, output)
except Exception:
ver = "0.0-%s-g%s" % (commits, vars['rev'][:7])
else: