I recently updated GraphicsMagick to use the 5 argument form of
AC_INIT and the one argument form of AM_INIT_AUTOMAKE. I also used
m4_esyscmd to get version info from an external script. The
invokation looks like this:
AC_INIT(m4_esyscmd([./version.sh packagename]),
m4_esyscmd([./version.sh packageversion]),
m4_esyscmd([./version.sh packagebugreport]),
m4_esyscmd([./version.sh packagetarname]),
m4_esyscmd([./version.sh packageurl]))
Today I noticed that 'make dist' is producing the wrong tarball
package version. Instead of producing the expected version, the
tarball version matches the date of the configure.ac file.
This is what comes out of the version.sh script:
./version.sh packageversion
1.4.020210110%
The version.sh script bases the package version on the most recent
entry in the ChangeLog file.
This is what is claimed to be the tarball version several times
already:
GraphicsMagick-1.4.020210106.tar.gz
This is the timestamp on the Autotools files which appear to
reflect the claimed version:
% ls -lg configure.ac Makefile.am configure
-rw-r--r-- 1 home 12435 Jan 6 11:42 Makefile.am
-rwxr-xr-x 1 home 987623 Jan 6 11:48 configure*
-rw-r--r-- 1 home 122830 Jan 6 11:42 configure.ac
What is the trick to ensuring that autoconf and Automake do use the
version supplied to AC_INIT? It seems that now the configure script
needs to be re-generated but nothing seems to force that.
Looking at Autoconf itself, I see dreadful looking things such as an
extra GNUmakefile and targets which create hidden files which go into
the tarball. If this sort of thing is necessary, then I will revert
my few days of work.
Thanks,
Bob
--
Bob Friesenhahn
bfriesen@xxxxxxxxxxxxxxxxxxx, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer, http://www.GraphicsMagick.org/
Public Key, http://www.simplesystems.org/users/bfriesen/public-key.txt