In the manual, we are given the following pattern for using help2man without breaking make distcheck:
foo.1: foo.c $(top_srcdir)/
configure.ac $(MAKE) $(AM_MAKEFLAGS) foo$(EXEEXT)
help2man --output=foo.1 ./foo$(EXEEXT)
The problem is that with make -j this can result in two attempts to make a library in parallel (suppose that we have:
). This can fail, and in any case is wasteful.
I'm using automake 1.15. I can't see anything since then that fixes this problem.
The best workaround I could come up with was to revert the dependency to
foo.1: foo$(EXEEXT)
and then set distcleancheck_listfiles appropriately. Obviously, since this could hide other problems in the build system, it's not ideal.
Am I missing a better solution? If so, it should be added to the manual. If not, this problem should probably be documented. I'm finding that parallel make is becoming a must-have rather than a nice boost, given the proliferation of slow multi-core machines (for example: -j makes it feasible to hack on my phone; without it, builds are painfully slow).
--