G. Branden Robinson wrote:
> > Is there a recipe for reproducing the problem that you ran into?
> 
> Sure.  Grab the groff 1.25.0.rc2 release candidate archive.
> 
> https://alpha.gnu.org/gnu/groff/
> 
> Run the attached script.  It assumes GCC but you can make it use Clang.
> 
> $ env CORES=10 ~/bin/make-groff-fast-from-archive-reducer
> $ env CORES=10 CC="clang -std=c99" CXX="clang++ -std=c++98" \
>     ~/bin/make-groff-fast-from-archive-reducer

I reproduce the compilation error with
  - an unmodified groff-1.25.0-rc2.tar.gz,
  - on Debian 11 (which went end-of-life 3 days ago),
  - CC="clang -std=gnu99" CXX="clang++ -std=gnu++98"
  - $ ./configure; make

And when I apply Lasse Collin's patch to lib/verify.h (commit
a4aa733b3651ed437d37fe51f14b8f5986e7ef8e), "make" succeeds.

So, you have nothing to complain about. Just make a new groff
prerelease with either the newest Gnulib ('master') or the
stable-202607 branch, and it will work on that platform.

> Could Gnulib maybe support a stamp file whose prerequisites are
> calculated to be all the header files it decides it needs to create,
> plus the libgnu.a static object?  I learned the hard way that making the
> latter alone before groff was not good enough.

Stamp files should only be used when plain dependencies are not sufficient.
Have you tried adding libgnu.a as a dependency (in Makefile.am) of your
programss?

Bruno




Reply via email to