[oe] [meta-oe][master][zeus][PATCH] gitpkgv.bbclass: Add support for extending the supported tag formats
Peter Kjellerstedt
peter.kjellerstedt at axis.com
Sat Jan 25 17:55:09 UTC 2020
Please cherry-pick this to zeus.
//Peter
> -----Original Message-----
> From: openembedded-devel-bounces at lists.openembedded.org <openembedded-
> devel-bounces at lists.openembedded.org> On Behalf Of Peter Kjellerstedt
> Sent: den 17 januari 2020 21:34
> To: openembedded-devel at lists.openembedded.org
> Subject: [oe] [meta-oe][master][zeus][PATCH] 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 at axis.com>
> ---
>
> In our case, the tags looks like either R1.2.3 or IR1.2.3-4, so we
> want to use GITPKGV_TAG_REGEXP = "(?:[vR]|IR)(\d.*)" to drop our
> prefixes.
>
> meta-oe/classes/gitpkgv.bbclass | 14 ++++++++++----
> 1 file changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/meta-oe/classes/gitpkgv.bbclass b/meta-
> oe/classes/gitpkgv.bbclass
> index ab591bd45..180421ed3 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:
> --
> 2.21.1
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
More information about the Openembedded-devel
mailing list