On Fri, 12 Apr 2019, Vivien Kraus wrote:
Hello,
Please excuse me if this is not relevant. I'm only trying to help.
The version definition can be done in configure.ac, but if you use git, and
especially git tags (full tags, i.e. signed:
this is important), there is a little-known script named git-version-gen that
computes the git version from:
1. The git tags, commit hash, number of commits since the tags, and whether the
code corresponds to a clean commit;
2. A ".version" file;
3. A ".tarball-version" that is added so that the version can be used even in a
distribution.
You can get a copy of the script through gnulib, it is named "git-version-gen".
It contains instructions in the script file for how to add it to the project.
So if this is not what you want, maybe
you could mimic that script to define your package version otherwise.
Recently I encountered strace release 5.0 which uses this script.
Since I downloaded strace source code via a tarball I was unable to
modify the autotools portions of this package. At least, the
git-version-gen script and others mentioned by configure.ac were not
included in the tarball so 'autoreconf' completely failed. This
hindered my freedom to use the software as I intended and in my
opinion, failing to deliver all scripts in the tarball is contrary to
GNU GPL principles.
After this, I noticed that the version number for the strace provided
by Ubuntu Linux 18.04 is declared as the string "UNDEFINED" (rather
than a number), which was not helpful for me, and indicates a complete
failure to communicate the version to me. Perhaps Ubuntu applied a
patch to work-around the lack of access to a git repository in their
build process.
In my opinion, release tarballs should be produced in such a way that
the recipient is free to readily perform modifications of any
component in the tarball without requiring access to the version
control system where the tarball originated from.
Bob
--
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer, http://www.GraphicsMagick.org/
Public Key, http://www.simplesystems.org/users/bfriesen/public-key.txt
_______________________________________________
Autoconf mailing list
Autoconf@gnu.org
https://lists.gnu.org/mailman/listinfo/autoconf