Bruno Haible via Gnulib discussion list <bug-gnulib@gnu.org> writes: >> > - a POSIX file system (not the Haiku file system, which assigns slightly >> > different mtimes at random when the tarball is unpacked). >> >> There is the idea to store modification times of files in a text file >> suitable for parsing and re-setting the modifications time of files via >> some script. Would that work on Haiku, or is it impossible to get a >> predictable mtime on a file? > > On Haiku, it is possible to get a predictable mtime if it is different > from the mtimes of all the other files on the file system. > > A script like this essentially works: > > #!/bin/sh > touch `find . -type f -print` > sleep 1 > touch aclocal.m4 > sleep 1 > touch configure > sleep 1 > touch config.h.in > sleep 1 > touch `find . -name Makefile.am -print | sed -e 's/am$/in/'` > > Tested with libtasn1-4.20.0.tar.gz on an older Haiku without automake 1.16: > - By default, it fails like this: > > CDPATH="${ZSH_VERSION+.}:" && cd .. && /bin/sh > '/boot/home/libtasn1-4.20.0/build-aux/missing' aclocal-1.16 > /boot/home/libtasn1-4.20.0/build-aux/missing: line 81: aclocal-1.16: command > not found > WARNING: 'aclocal-1.16' is missing on your system. > You should only need it if you modified 'acinclude.m4' or > 'configure.ac' or m4 files included by 'configure.ac'. > The 'aclocal' program is part of the GNU Automake package: > <https://www.gnu.org/software/automake> > It also requires GNU Autoconf, GNU m4 and Perl in order to run: > <https://www.gnu.org/software/autoconf> > <https://www.gnu.org/software/m4/> > <https://www.perl.org/> > Makefile:1640: recipe for target '../aclocal.m4' failed > make: *** [../aclocal.m4] Error 127 > > - With the script applied after unpacking the tarball, the build > mostly succeeds. It fails because 'help2man' is missing. > I guess this can be fixed by adding some 'touch doc/*.1' command > to the script.
Thank you for testing! It seems the Haiku community is fairly active, I wonder how hard it is to get a GitLab runner (or GitHub Actions, if that's even possible) up and running for it... One alternative on that platform is to say "don't bother with the make dist tarball, try building directly from git". I don't like it as a general escape mechanism, but if a filesystem doesn't support reliable modtime and we depend on them maybe that warrant exceptional recommendations... or maybe your vc-mtime could help here, I must admit I have not yet wrapped my head around it. /Simon
signature.asc
Description: PGP signature