[gnutls-devel] libtasn1 | autoreconf on 4.2.21 sets wromg mtime for doc/libtasn1.texi (#57)
Read-only notification of GnuTLS library development activities
gnutls-devel at lists.gnutls.org
Sun Jan 11 13:27:42 CET 2026
Andreas Metzler created an issue: https://gitlab.com/gnutls/libtasn1/-/issues/57
Hello,
4.2.21 fails to build on make check after autoreconf if texinfo is not installed:
```
WARNING: 'makeinfo' is missing on your system.
You should only need it if you modified a '.texi' file, or
any other file indirectly affecting the aspect of the manual.
You might want to install the Texinfo package:
<https://www.gnu.org/software/texinfo/>
The spurious makeinfo call might also be the consequence of
using a buggy 'make' (AIX, DU, IRIX), in which case you might
want to install GNU make:
<https://www.gnu.org/software/make/>
make[3]: *** [Makefile:1765: libtasn1.info] Error 127
```
I think this is the reason why, libtasn1.texi mtime is set to 0 by ./configure.
```
(sid)ametzler at argenau:/tmp/TASN/libtasn1$ ls -l doc/libtasn1.texi ; head doc/version.texi ; autoreconf ; ls -l doc/libtasn1.texi ; head doc/version.texi ; ./configure > /dev/null 2>&1 ; ls -l doc/libtasn1.texi ; head doc/version.texi
-rw-r--r-- 1 ametzler ametzler 10949 Jan 8 12:19 doc/libtasn1.texi
@set UPDATED 8 January 2026
@set UPDATED-MONTH January 2026
@set EDITION 4.21.0
@set VERSION 4.21.0
-rw-r--r-- 1 ametzler ametzler 10949 Jan 8 12:19 doc/libtasn1.texi
@set UPDATED 8 January 2026
@set UPDATED-MONTH January 2026
@set EDITION 4.21.0
@set VERSION 4.21.0
-rw-r--r-- 1 ametzler ametzler 10949 Jan 1 1970 doc/libtasn1.texi
@set UPDATED 8 January 2026
@set UPDATED-MONTH January 2026
@set EDITION 4.21.0
@set VERSION 4.21.0
```
At build time this code in doc/Makefile is triggered because the mtime recorded in version.texi does not match the relal mtime of libtasn1.texi:
```
$(srcdir)/version.texi: $(srcdir)/stamp-vti
$(srcdir)/stamp-vti: libtasn1.texi $(top_srcdir)/configure
@(dir=.; test -f ./libtasn1.texi || dir=$(srcdir); \
set `$(SHELL) $(top_srcdir)/build-aux/mdate-sh $$dir/libtasn1.texi`; \
echo "@set UPDATED $$1 $$2 $$3"; \
echo "@set UPDATED-MONTH $$2 $$3"; \
echo "@set EDITION $(VERSION)"; \
echo "@set VERSION $(VERSION)") > vti.tmp$$$$ && \
(cmp -s vti.tmp$$$$ $(srcdir)/version.texi \
|| (echo "Updating $(srcdir)/version.texi" && \
cp vti.tmp$$$$ $(srcdir)/version.texi.tmp$$$$ && \
mv $(srcdir)/version.texi.tmp$$$$ $(srcdir)/version.texi)) && \
rm -f vti.tmp$$$$ $(srcdir)/version.texi.$$$$
@cp $(srcdir)/version.texi $@
```
Now version.texi is newer than libtasn1.info and the latter is out of date and make thinks it needs to be rebuilt.
The code for settig the wrong time-stamp is in configure.ac
```
st_help2man=0
st_touch=197001010000.00
AC_MSG_CHECKING([for timestamps of last git commit])
if test -e "$srcdir"/.git && command -v git > /dev/null; then
if tmp=$(git log -1 --format=%cd --date=unix); then
st_help2man="$tmp"
fi
if tmp=$(env TZ=UTC0 git log -1 --format=%cd --date=format-local:%Y%m%d%H%M.%S); then
st_touch="$tmp"
fi
fi
AC_SUBST(SOURCETIME_HELP2MAN, "${SOURCETIME_HELP2MAN:-$st_help2man}")
AC_MSG_RESULT(help2man $SOURCETIME_HELP2MAN touch $st_touch)
env TZ=UTC0 \
touch -m -t "$st_touch" \
"$srcdir"/NEWS.md "$srcdir"/doc/$PACKAGE.texi
```
--
Reply to this email directly or view it on GitLab: https://gitlab.com/gnutls/libtasn1/-/issues/57
You're receiving this email because of your account on gitlab.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.gnupg.org/pipermail/gnutls-devel/attachments/20260111/70db4f17/attachment-0001.html>
More information about the Gnutls-devel
mailing list