Subject: automake gnits version check vs. gnulib's git-version-gen?

From: Bernhard Voelker <[email-masked]>
Date: Tue, 21 Nov 2017 08:44:53 +0100

At GNU findutils, we're trying to use gnulib's git-version-gen [1]
to derive the version string from the current git commit.

Until now, we've been using a 3-level versioning scheme X.Y.Z, e.g. the
latest tag was 'v4.6.0'.  Now for any non-release commit version
before the next release, 'git-version-gen' determines a version
like e.g. '4.6.0.149-2f6a' for the 149th commit past the v4.6.0 tag;
but the automake gnits check complains:

   ...
   running: AUTOPOINT=true LIBTOOLIZE=true autoreconf --verbose --install --force -I gl/m4  --no-recursive
   autoreconf: Entering directory `.'
   autoreconf: running: true --force
   autoreconf: running: aclocal -I gl/m4 --force -I gl/m4 -I m4
   autoreconf: configure.ac: tracing
   autoreconf: configure.ac: not using Libtool
   autoreconf: running: /usr/bin/autoconf --include=gl/m4 --force
   autoreconf: running: /usr/bin/autoheader --include=gl/m4 --force
   autoreconf: running: automake --add-missing --copy --force-missing
   configure.ac:95: installing 'build-aux/compile'
   configure.ac:51: installing 'build-aux/config.guess'
   configure.ac:51: installing 'build-aux/config.sub'
   configure.ac:46: installing 'build-aux/install-sh'
   configure.ac:46: installing 'build-aux/missing'
   configure.ac:195: installing 'build-aux/mkinstalldirs'
   Makefile.am: installing './INSTALL'
   configure.ac:25: error: version '4.6.0.149-2f6a' doesn't follow Gnits standards

So my question: aren't 3-level version strings allowed by the gnits check
in combination with gnulib's git-version-gen script?  Do we have to change
the strictness from gnits to gnu?

[1] https://git.sv.gnu.org/cgit/gnulib.git/tree/build-aux/git-version-gen

Thanks & have a nice day,
Berny