diff --git a/deb-git-version-gen b/deb-git-version-gen index e9a1fea676548580c90107a0d1ca041bffb81208..e84bcb11a9dc44f3df05f43e8bb2df1978d9d68b 100755 --- a/deb-git-version-gen +++ b/deb-git-version-gen @@ -65,7 +65,8 @@ class Versioner: dch=False, debug=False, release=True, # type: typing.Optional[bool] - upstream=True + upstream=True, + distro=None ): # type: (...) -> None self.branch_marker = branch_marker @@ -74,6 +75,7 @@ class Versioner: self.debug = debug self.release = release self.upstream = upstream + self.distro = distro def parse_description(self, description): # type: (str) -> typing.Tuple[str, Version, int, str] @@ -245,9 +247,10 @@ class Versioner: mangled_version = tagged_version.replace(':', '%') mangled_version = mangled_version.replace('~', '_') try: + prefix = self.distro if self.distro else '*' raw_description = check_output([ 'git', 'describe', '--tags', - '--match=*/' + mangled_version, + '--match=' + prefix + '/' + mangled_version, '--long', ], universal_newlines=True, stderr=diag_sink).strip() except subprocess.CalledProcessError: @@ -481,6 +484,10 @@ def main(): help='run debchange to update debian/changelog', action='store_true', default=False) + parser.add_argument( + '--distro', help='distribution prefix', + default=None) + parser.add_argument( '--counter-based', help='base version numbers on commit count (default)', @@ -516,6 +523,7 @@ def main(): debug=args.debug, release=args.release, upstream=args.upstream, + distro=args.distro ).main() except (Failure, subprocess.CalledProcessError) as e: if args.debug: